/* Self-hosted from Google Fonts (SIL Open Font Licence). Latin and Latin Extended only. */
/* Lora 400 italic, latin-ext */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/lora-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Lora 400 italic, latin */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/lora-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Lora 400 normal, latin-ext */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/lora-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Lora 400 normal, latin */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/lora-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Lora 600 normal, latin-ext */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/lora-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Lora 600 normal, latin */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/lora-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Nunito Sans 400 normal, latin-ext */
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fonts/nunito-sans-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Nunito Sans 400 normal, latin */
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fonts/nunito-sans-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Nunito Sans 600 normal, latin-ext */
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fonts/nunito-sans-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Nunito Sans 600 normal, latin */
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fonts/nunito-sans-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Nunito Sans 700 normal, latin-ext */
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fonts/nunito-sans-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Nunito Sans 700 normal, latin */
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fonts/nunito-sans-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Baptizo components: plain HTML, every class prefixed bz-. Load after tokens.css. */
body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:24px;background:var(--surface);color:var(--ink)}
.bz-pad{padding:var(--space-5)}
.bz-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
.bz-stack{display:flex;flex-direction:column;gap:var(--space-3)}
.bz-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* the mark: fills come from these four, set by context */
.bz-mark{--m1:var(--water-sky);--m2:var(--water-mid);--m3:var(--water-deep);--mr:var(--water-mid);--mg:var(--surface)}
.bz-card .bz-mark,.bz-mark.on-raised{--mg:var(--surface-raised)}
.bz-mark-rev,.bz-sidebar .bz-mark{--m1:var(--mark-rev-sky);--m2:var(--mark-rev-mid);--m3:var(--mark-rev-deep);--mr:var(--mark-rev-ring);--mg:var(--sidebar)}

/* Lockup */
.bz-lockup{display:inline-block;white-space:nowrap;line-height:1;font-family:var(--font-serif);font-weight:600;font-size:40px;color:var(--wordmark)}
.bz-lockup>svg{display:inline-block;width:1.52cap;height:1.52cap;vertical-align:-0.26cap;margin-right:.2em}
.bz-lockup-rev{color:var(--on-sidebar)}
.bz-lockup-stacked{display:inline-flex;flex-direction:column;align-items:center;gap:.22em}
.bz-lockup-stacked>svg{width:1.7em;height:1.7em;margin:0;vertical-align:0}
.bz-tagline{font-family:var(--font-serif);font-style:italic;font-size:18px;line-height:26px;color:var(--ink-muted)}

/* Button */
.bz-btn{font:700 15px/20px var(--font-sans);min-height:var(--touch-min);padding:0 var(--space-5);border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;text-decoration:none;box-sizing:border-box}
.bz-btn-primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.bz-btn-quiet{background:transparent;border-color:transparent;color:var(--brand);padding:0 var(--space-3)}
.bz-btn-block{width:100%;min-height:56px;font-size:18px}
.bz-btn:hover{filter:brightness(.94)}
.bz-btn:active{transform:scale(.98)}
.bz-btn:focus-visible,.bz-input:focus-visible,.bz-nav-item:focus-visible{outline:2px solid var(--focus);outline-offset:2px}

/* StatusPill */
.bz-pill{display:inline-flex;align-items:center;gap:var(--space-1);font:600 13px/18px var(--font-sans);padding:3px 10px;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-muted);border:1px solid var(--line);white-space:nowrap}
.bz-pill .bz-icon{width:14px;height:14px;stroke-width:2}
.bz-pill-brand{background:var(--brand-soft);color:var(--brand);border-color:transparent}
.bz-pill-attention{background:var(--attention-soft);color:var(--attention);border-color:transparent}
.bz-pill-done{background:var(--done-soft);color:var(--done);border-color:transparent}
.bz-pill-private{background:var(--attention-soft);color:var(--attention);border:1px dashed var(--attention)}

/* Card */
.bz-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5)}
.bz-card-glow{background:var(--glow-soft);border-color:var(--glow);color:var(--ink)}
.bz-overline{font:700 12px/16px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}
.bz-card-glow .bz-overline{color:var(--ink)}
.bz-card-title{font:600 22px/28px var(--font-serif);margin:var(--space-1) 0 2px}
.bz-meta{color:var(--ink-muted)}

/* Sidebar */
.bz-sidebar{width:var(--sidebar-width);box-sizing:border-box;background:var(--sidebar);color:var(--on-sidebar);padding:var(--space-5) 14px;display:flex;flex-direction:column;gap:2px}
.bz-sidebar .bz-lockup{font-size:26px;color:var(--on-sidebar);padding:0 var(--space-3)}
.bz-sidebar-church{font-size:14px;line-height:20px;color:var(--on-sidebar-muted);padding:6px var(--space-3) var(--space-4)}
.bz-sidebar-label{font:700 12px/16px var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--on-sidebar-muted);padding:var(--space-5) var(--space-3) var(--space-2)}
.bz-nav-item{display:flex;align-items:center;gap:11px;min-height:var(--touch-min);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--on-sidebar);text-decoration:none;font:600 15px/20px var(--font-sans)}
.bz-nav-count{margin-left:auto;font-size:13px;color:var(--on-sidebar-muted)}
.bz-nav-item[aria-current="page"]{background:var(--surface);color:var(--ink);font-weight:700;box-shadow:inset 0 0 0 1px var(--line)}
.bz-nav-item[aria-current="page"] .bz-icon{color:var(--brand)}
.bz-nav-item[aria-current="page"] .bz-nav-count{color:var(--ink-muted)}
.bz-sidebar :focus-visible{outline-color:var(--on-sidebar)}
.bz-sidebar .bz-card-glow{padding:14px;font-size:14px;line-height:20px;border-radius:var(--radius-md)}

/* TextField */
.bz-field{display:flex;flex-direction:column;gap:6px;max-width:360px}
.bz-label{font:700 15px/20px var(--font-sans);color:var(--ink)}
.bz-input{font:400 16px/24px var(--font-sans);min-height:var(--touch-min);padding:0 var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--ink);box-sizing:border-box;width:100%}
.bz-input::placeholder{color:var(--ink-muted)}
.bz-hint{font:600 13px/18px var(--font-sans);color:var(--ink-muted)}
.bz-field-error .bz-input{border-color:var(--attention)}
.bz-field-error .bz-hint{color:var(--attention)}

/* Baptizo public site. Token variables copied from the design system's tokens.json:
   .bzt-light, .bzt-dark, and .bzt-auto (follows the visitor's system setting). Then shared site parts. */
:root,.bzt-light,.bzt-auto,.bzt-dark{
  --font-serif:"Lora",Georgia,"Times New Roman",serif;
  --font-sans:"Nunito Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;
  --radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;
  --touch-min:44px;--sidebar-width:232px;
}
:root,.bzt-light,.bzt-auto{
  --surface:#F8FAFB;--surface-raised:#FFFFFF;--line:#DCE5EC;--line-strong:#7A8896;
  --ink:#12202C;--ink-muted:#526170;--brand:#155E95;--on-brand:#FFFFFF;--brand-soft:#D7E9F6;
  --wordmark:#0B3A5E;--sidebar:#155E95;--on-sidebar:#FFFFFF;--on-sidebar-muted:#D7E9F6;
  --water-sky:#3E8CC9;--water-mid:#155E95;--water-deep:#0B3A5E;
  --mark-rev-sky:#8EC3EA;--mark-rev-mid:#D7E9F6;--mark-rev-deep:#FFFFFF;--mark-rev-ring:#FFFFFF;
  --glow:#F5C042;--glow-soft:#FDF1CF;--attention:#B44A1B;--attention-soft:#FCEEE6;--on-attention:#FFFFFF;
  --done:#2E7050;--done-soft:#DCEFE4;--focus:#155E95;
}
.bzt-dark{
  --surface:#0F171F;--surface-raised:#17222D;--line:#2A3946;--line-strong:#6B8095;
  --ink:#E7EEF4;--ink-muted:#A9B7C4;--brand:#8EC3EA;--on-brand:#0F171F;--brand-soft:#1C3346;
  --wordmark:#E7EEF4;--sidebar:#132331;--on-sidebar:#E7EEF4;--on-sidebar-muted:#A9B7C4;
  --water-sky:#4A9BD6;--water-mid:#8EC3EA;--water-deep:#D7E9F6;
  --mark-rev-sky:#4A9BD6;--mark-rev-mid:#8EC3EA;--mark-rev-deep:#D7E9F6;--mark-rev-ring:#8EC3EA;
  --glow:#F5C042;--glow-soft:#3A2E10;--attention:#F0A27A;--attention-soft:#3A2016;--on-attention:#0F171F;
  --done:#8FCBA9;--done-soft:#16301F;--focus:#8EC3EA;
}
@media (prefers-color-scheme:dark){
  .bzt-auto{
    --surface:#0F171F;--surface-raised:#17222D;--line:#2A3946;--line-strong:#6B8095;
    --ink:#E7EEF4;--ink-muted:#A9B7C4;--brand:#8EC3EA;--on-brand:#0F171F;--brand-soft:#1C3346;
    --wordmark:#E7EEF4;--sidebar:#132331;--on-sidebar:#E7EEF4;--on-sidebar-muted:#A9B7C4;
    --water-sky:#4A9BD6;--water-mid:#8EC3EA;--water-deep:#D7E9F6;
    --mark-rev-sky:#4A9BD6;--mark-rev-mid:#8EC3EA;--mark-rev-deep:#D7E9F6;--mark-rev-ring:#8EC3EA;
    --glow:#F5C042;--glow-soft:#3A2E10;--attention:#F0A27A;--attention-soft:#3A2016;--on-attention:#0F171F;
    --done:#8FCBA9;--done-soft:#16301F;--focus:#8EC3EA;
  }
}

/* page */
.site{background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:24px;overflow-x:clip}
.site *{box-sizing:border-box}
.site h1,.site h2,.site h3,.site h4{font-family:var(--font-serif);font-weight:600;margin:0;color:var(--ink)}
.site p{margin:0}
.site a:where(:not(.bz-btn)){color:var(--brand)}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--space-6)}
.sec{padding:96px 0}
.h-sec{font-size:40px;line-height:48px;max-width:760px}
.lede{font-size:20px;line-height:30px;color:var(--ink-muted)}
.muted{color:var(--ink-muted)}
.bz-lockup{text-decoration:none}
.bz-btn-lg{min-height:56px;font-size:17px;padding:0 28px}
.link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:700;text-decoration:none;min-height:44px}

/* the mark's surround inherits from wherever it sits */
.on-rail{--mg:var(--sidebar)}
.on-soft .bz-mark{--mg:var(--brand-soft)}

/* header */
.hdr{border-bottom:1px solid var(--line);background:var(--surface)}
.hdr .wrap{display:flex;align-items:center;gap:var(--space-5);min-height:76px}
.hdr .bz-lockup{font-size:28px}
.hdr-nav{display:flex;gap:2px;margin-left:auto}
.hdr-nav a{color:var(--ink);text-decoration:none;font:600 15px/20px var(--font-sans);padding:0 12px;border-radius:var(--radius-md);min-height:44px;display:inline-flex;align-items:center}
.hdr-nav a[aria-current="page"]{color:var(--brand)}
.hdr-act{display:flex;gap:var(--space-2);align-items:center}
.hdr-menu{display:none;padding:0;width:44px}
.hdr a:focus-visible,.ftr a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}

/* footer */
.ftr{border-top:1px solid var(--line);padding:56px 0 32px;background:var(--surface)}
.ftr-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:var(--space-6)}
.ftr .bz-lockup{font-size:28px}
.ftr-h{font:700 12px/16px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 10px}
.ftr-col a{display:flex;align-items:center;min-height:36px;color:var(--ink);text-decoration:none}
.ftr-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;color:var(--ink-muted);font-size:14px;line-height:20px}

/* shared bits */
.ftile{width:48px;height:48px;border-radius:var(--radius-md);background:var(--brand-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:none}
.ftile .bz-icon{width:24px;height:24px}
.sample{display:inline-flex;align-items:center;gap:6px;font:600 13px/18px var(--font-sans);color:var(--ink-muted)}
.sample .bz-icon{width:16px;height:16px}
.wl{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}
.wl .bz-field{flex:1 1 260px;max-width:340px}
.water{overflow:hidden;line-height:0}
.water svg{display:block;width:100%;min-width:1440px}

@media (max-width:900px){
  .hdr-nav{display:none}
  .hdr-act{margin-left:auto}
  .hdr-menu{display:inline-flex}
  .hdr-act .hide-sm{display:none}
  .ftr-col a{overflow-wrap:anywhere}
  .ftr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ftr-brand{grid-column:1/-1}
}
@media (max-width:600px){
  .site{font-size:18px;line-height:27px}
  .wrap{padding:0 var(--space-4)}
  .sec{padding:56px 0}
  .h-sec{font-size:30px;line-height:36px}
  .lede{font-size:19px;line-height:28px}
  .hdr .wrap{min-height:64px;gap:var(--space-2)}
  .hdr .bz-lockup{font-size:24px}
  .wl .bz-field{max-width:none}
  .wl .bz-btn{width:100%}
}

/* Baptizo site pages, direction D (Immersed). Loads after bundle.css and baptizo-site.css. */

/* new: photo scrim and text that sits on it (same in light and dark) */
.site{--photo-scrim:linear-gradient(90deg,rgba(11,58,94,.92),rgba(11,58,94,.66));--on-photo:#FFFFFF;--on-photo-muted:#D7E9F6;--photo-shadow:0 24px 60px rgba(5,20,35,.32)}
.bzt-dark .d-photo{filter:brightness(.8)}
@media (prefers-color-scheme:dark){.bzt-auto .d-photo{filter:brightness(.8)}}

/* current page in the header: weight and underline as well as colour */
.hdr-nav a[aria-current="page"]{font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}

/* light/dark photo swap: .d-ph-l shows in light, .d-ph-d in dark */
.d-ph-d{display:none}
.bzt-dark .d-ph-l{display:none}
.bzt-dark .d-ph-d{display:block}
@media (prefers-color-scheme:dark){.bzt-auto .d-ph-l{display:none}.bzt-auto .d-ph-d{display:block}}

/* inner-page hero: text beside a framed photo panel */
.pg-hero-in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:stretch;padding-top:56px;padding-bottom:72px}
.pg-hero-in>div:first-child{align-self:center}
.site .pg-h1{font-size:52px;line-height:60px;margin-top:12px;max-width:860px}
.pg-lede{margin-top:20px;max-width:720px}
.pg-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.pg-panel{position:relative;min-height:340px;border-radius:24px;overflow:hidden;background:var(--brand-soft)}
.pg-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* photo bands */
.d-band{position:relative;isolation:isolate;overflow:hidden}
.d-band-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.d-scrim:before{content:'';position:absolute;inset:0;background:var(--photo-scrim);z-index:-1}
.d-scrim .bz-overline,.d-scrim .on-photo-muted{color:var(--on-photo-muted)}
.site .d-scrim h2,.site .d-scrim h3,.d-scrim .on-photo{color:var(--on-photo)}

/* section heads and two-column rows */
.sec-head .h-sec{margin-top:12px}
.sec-head .lede{margin-top:16px;max-width:720px}
.alt{background:var(--surface-raised);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.row2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center}
.row2.rev>.r-txt{order:2}
.site .row2 h3{font-size:30px;line-height:36px;margin:12px 0 12px}
.r-txt p.muted{font-size:18px;line-height:28px}
.r-list{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.r-list li{display:flex;gap:10px;align-items:flex-start}
.r-list .bz-icon{color:var(--brand);margin-top:3px;flex:none}
.rows{display:flex;flex-direction:column;gap:88px;margin-top:64px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.site .grid3 h3,.site .grid4 h3{font-size:21px;line-height:27px;margin:16px 0 8px}

/* product mock-ups, drawn from the Gathered boards */
.mock{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);font-size:15px;line-height:21px;padding:22px}
.mock .bz-pill{font-size:13px}
.mk-t{font:600 24px/30px var(--font-serif);margin:4px 0 12px}
.mk-li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.mk-li:last-child{border-bottom:0}
.mk-li .bz-btn{min-height:40px;font-size:14px;padding:0 14px}
.mk-search{display:flex;gap:10px;align-items:center;border:1px solid var(--line-strong);border-radius:12px;min-height:48px;padding:0 14px;color:var(--ink-muted);margin:14px 0 6px;background:var(--surface-raised)}
.mk-sr{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.4fr) minmax(0,.8fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line);align-items:center}
.mk-sr:last-child{border-bottom:0}
.mk-sr.h{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--ink-muted);padding-top:0}
.mk-cap{margin-top:14px;display:flex;justify-content:flex-end}

/* frequently asked */
.faq{margin-top:40px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;font:600 20px/28px var(--font-serif);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .bz-icon{flex:none;color:var(--brand);transition:transform .2s}
.faq details[open] summary .bz-icon{transform:rotate(45deg)}
.faq details p{padding:0 0 24px;max-width:760px;color:var(--ink-muted)}

/* closing call to action, beside a photo of a visit */
.d-end{padding:96px 0}
.site .d-end-card{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);padding:0;overflow:hidden}
.d-end-txt{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:56px 48px}
.d-end-txt .bz-mark{width:56px;height:56px;--mg:var(--surface-raised)}
.d-end-txt .wl{align-self:stretch}
.d-end-photo{position:relative;min-height:380px;background:var(--brand-soft)}
.d-end-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}

/* placeholder marker: anything still to be supplied or confirmed */
.ph{display:inline-flex;align-items:center;gap:6px;background:var(--attention-soft);color:var(--ink);border:1px dashed var(--attention);border-radius:6px;padding:0 8px;font-weight:700;font-size:.85em;line-height:1.7}

@media (max-width:900px){
  .pg-hero-in,.site .d-end-card{grid-template-columns:minmax(0,1fr)}
  .pg-hero-in{gap:32px}
  .pg-panel{min-height:220px}
  .d-end-photo{min-height:260px}
  .row2{grid-template-columns:minmax(0,1fr);gap:40px}
  .row2.rev>.r-txt{order:0}
  .grid3,.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .pg-hero-in{padding-top:32px;padding-bottom:48px}
  .pg-panel{min-height:160px}
  .site .pg-h1{font-size:34px;line-height:42px}
  .pg-cta{flex-direction:column}
  .rows{gap:56px;margin-top:40px}
  .site .row2 h3{font-size:26px;line-height:32px}
  .mock{padding:16px}
  .mk-sr{grid-template-columns:minmax(0,1fr);gap:2px}
  .mk-sr.h{display:none}
  .grid3,.grid4{grid-template-columns:minmax(0,1fr)}
  .mk-cap{justify-content:center}
  .faq summary{font-size:19px;line-height:26px}
  .d-end{padding:56px 0}
  .d-end-txt{padding:32px 20px}
  .d-end-photo{min-height:220px}
}

/* Production-only additions on top of the design's CSS. */

/* Call-to-action mode. The middleware sets <html data-cta> and removes the other mode's
   blocks; these rules keep the page right even when it's served without the middleware. */
.cta-start,.cta-waitlist{display:contents}
html:not([data-cta="start"]) .cta-start{display:none}
html[data-cta="start"] .cta-waitlist{display:none}

/* Phone menu, opened by the header's menu button below 900px. */
.m-sheet{border-top:1px solid var(--line);padding:8px 0 20px}
.hdr .m-sheet .wrap{display:block;min-height:0}
.m-sheet nav{display:flex;flex-direction:column}
.site .m-sheet nav a{display:flex;align-items:center;justify-content:space-between;min-height:56px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font:600 20px/26px var(--font-serif)}
.site .m-sheet nav a[aria-current="page"]{color:var(--brand);text-decoration:underline;text-underline-offset:6px}
.m-sheet nav a .bz-icon{color:var(--ink-muted)}
.m-sheet .acts{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.m-sheet .acts .bz-btn{width:100%;min-height:52px;font-size:17px}
.m-sheet .fine{margin-top:16px;font-size:15px;color:var(--ink-muted)}
@media (min-width:901px){.m-sheet{display:none !important}}

/* Forms */
.hp{position:absolute !important;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-msg{margin-top:12px;font-weight:700;display:flex;gap:8px;align-items:flex-start}
.form-msg .bz-icon{flex:none;margin-top:2px}
.form-msg.ok .bz-icon{color:var(--done)}
.form-msg.err .bz-icon{color:var(--attention)}
.js-form [type=submit][disabled]{opacity:.6;cursor:progress}
#join{scroll-margin-top:24px}

