@font-face{font-family:"Playfair Display";font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/playfair-display-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:500;font-display:swap;src:url(/_astro/playfair-display-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:600;font-display:swap;src:url(/_astro/playfair-display-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:600;font-display:swap;src:url(/_astro/playfair-display-latin-600-italic.woff2) format("woff2")}
@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(/_astro/caveat-latin-500-normal.woff2) format("woff2")}

:root{--display:"Playfair Display",Georgia,"Times New Roman",serif;--script:Caveat,"Bradley Hand","Segoe Print",cursive;--teal:#2d5b8f;--teal-deep:#1d3f66;--accent:#3b6ea5;--ivory:#f8f6f1;--ivory-2:#f1eee6;--ink:#141a24;--text:#1b2230;--muted:#5a6170;--muted-ink:#5a6170;--line:#141a241a;--line-strong:#141a2440;--bg:#fff;--bg-2:#f8f6f1}
body{background:#fff;color:var(--text)}
h1,h2,h3{font-family:var(--display);font-weight:500;letter-spacing:-.015em;line-height:1.06}
h3{letter-spacing:-.005em}
.kicker{letter-spacing:.18em;text-transform:uppercase;font-size:.74rem;font-weight:600;color:var(--teal)}

/* Header: wordmark left, links center, pill CTA right */
.announce{background:var(--teal-deep);color:#fff;font-size:.84rem;text-align:center;padding:.5rem var(--gutter);line-height:1.35}
.announce a{color:#fff;text-underline-offset:3px}
.announce .announce-tag{display:inline-block;margin-right:.55rem;padding:.1rem .55rem;border:1px solid #ffffff73;border-radius:999px;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;vertical-align:1px}
.site-header{background:#fffffff2;border-bottom:1px solid var(--line);gap:1.25rem}
.wordmark{font-family:var(--display);font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:1.02rem;color:var(--teal-deep)}
.mark{border-radius:999px;border-color:var(--teal);color:var(--teal);font-family:var(--display);font-style:italic;letter-spacing:0;font-size:.82rem;text-transform:none}
.primary-nav{flex:1 1 auto;display:flex;justify-content:center}
.nav-list a{font-size:.93rem;color:var(--text)}
.nav-list a:hover{color:var(--teal)}
.header-cta{flex:0 0 auto;display:inline-flex;align-items:center;gap:.45rem;min-height:42px;padding:.55rem 1.15rem;border-radius:999px;background:var(--teal);color:#fff;font-weight:600;font-size:.9rem;text-decoration:none;white-space:nowrap}
.header-cta:hover{background:var(--teal-deep)}
@media (max-width:1180px) and (min-width:861px){.header-cta{padding:.5rem .9rem;font-size:.84rem}.wordmark .mark{display:none}}
@media (max-width:860px){.primary-nav{flex:0 0 auto;order:3}.header-cta{margin-left:auto;min-height:40px;padding:.45rem .95rem;font-size:.84rem}}
@media (max-width:420px){.header-cta{display:none}}
html.js .nav-panel.is-open .nav-list a{font-family:var(--display);font-weight:500;letter-spacing:-.01em}
html.js .nav-panel.is-open{background:var(--ivory)}

/* Pill buttons site-wide */
.button{border-radius:999px;padding:.8rem 1.45rem;background:var(--teal)}
.button:hover{background:var(--teal-deep)}
.button-ghost{background:#fff;color:var(--ink)}
.button-ghost:hover{background:var(--ivory)}
.footer-ig{border-radius:999px}
.site-footer{background:var(--ivory)}
.footer-name{font-family:var(--display);font-weight:600}

/* ===== Home (editorial) ===== */
.ed{--maxw:1240px}
.ed-wrap{width:min(var(--maxw),calc(100% - 2*var(--gutter)));margin:0 auto}
.ed :is(h1,h2) em{font-style:italic;color:var(--accent);font-weight:500}
.ed .eyebrow{display:inline-block;letter-spacing:.2em;text-transform:uppercase;font-size:.74rem;font-weight:600;color:var(--teal);margin:0 0 1rem}
.ed .script{font-family:var(--script);color:var(--teal);font-weight:500;line-height:1.05}
.ed-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.4rem;margin-top:1.8rem}
.ed-link{display:inline-flex;align-items:center;gap:.55rem;color:var(--teal-deep);font-weight:600;text-decoration:none;min-height:44px}
.ed-link .ed-play{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--teal);color:#fff;font-size:.7rem}
.ed-link:hover span:last-child{text-decoration:underline;text-underline-offset:4px}

/* Hero */
.ed-hero{background:linear-gradient(100deg,#fff 0%,#fff 46%,var(--ivory) 46%,var(--ivory) 100%);border-bottom:1px solid var(--line)}
.ed-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;padding:clamp(2.5rem,6vw,5.5rem) 0 clamp(2.5rem,5vw,4.5rem)}
.ed-hero h1{font-size:clamp(2.9rem,6.2vw,5.6rem);line-height:1.02;margin:0 0 1.4rem;color:var(--ink)}
.ed-hero h1 span{display:block}
.ed-hero .ed-sub{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--muted);max-width:34rem;margin:0}
.ed-meta{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;margin:2rem 0 0;padding:0;list-style:none;font-size:.86rem;color:var(--muted)}
.ed-meta li{display:inline-flex;align-items:center;gap:.5rem}
.ed-meta li:before{content:"";width:7px;height:7px;border-radius:999px;background:var(--accent);opacity:.7}
.ed-hero-photo{position:relative;margin:0}
.ed-hero-photo .ed-frame{border-radius:28px 28px 220px 28px;overflow:hidden;box-shadow:0 30px 60px -30px #141a2459;aspect-ratio:821/900;background:var(--ivory-2)}
.ed-hero-photo img{display:block;width:100%;height:100%;object-fit:cover}
.ed-note{position:absolute;font-size:clamp(1.25rem,1.9vw,1.6rem);transform:rotate(-5deg);pointer-events:none}
.ed-note-hero{left:-2.2rem;bottom:2.2rem;background:#fff;padding:.55rem .95rem .65rem;border-radius:14px;box-shadow:0 14px 30px -18px #141a2466;max-width:15rem}
.ed-sign{position:absolute;right:1.2rem;top:1.2rem;background:#ffffffe6;border-radius:14px;padding:.45rem .9rem .55rem;text-align:right}
.ed-sign .script{font-size:1.75rem;display:block}
.ed-sign small{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.ed-arrow{display:block;width:70px;height:40px;color:var(--teal);margin:.15rem 0 0 auto}

/* Featured strip */
.ed-featured{border-bottom:1px solid var(--line);background:#fff}
.ed-featured-row{display:flex;align-items:center;justify-content:space-between;gap:1.2rem 2.4rem;flex-wrap:wrap;padding:1.6rem 0}
.ed-featured-label{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0}
.ed-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2.6rem;margin:0;padding:0;list-style:none;flex:1 1 auto;color:#3c4350}
.ed-logos li{white-space:nowrap;line-height:1}
.lg-steve{font-family:var(--display);font-weight:600;font-size:1.35rem;letter-spacing:.02em}
.lg-steve small{font-family:var(--sans);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;margin-left:.35rem;color:var(--muted)}
.lg-sister{font-family:var(--display);font-style:italic;font-size:1.4rem}
.lg-word{font-family:var(--sans);font-size:.82rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase}
.lg-nbc{font-family:var(--sans);font-weight:600;font-size:1.45rem;letter-spacing:.04em}
.lg-fox{font-family:var(--display);font-weight:600;font-size:1.5rem;letter-spacing:.12em}

/* Founder */
.ed-founder{padding:clamp(4rem,8vw,7rem) 0}
.ed-founder-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,5.5rem);align-items:center}
.ed-portrait{position:relative;margin:0}
.ed-portrait .ed-frame{border-radius:240px 240px 24px 24px;overflow:hidden;aspect-ratio:4/5;background:var(--ivory-2)}
.ed-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.ed-badge{position:absolute;right:-1.2rem;bottom:-1.6rem;width:clamp(140px,15vw,190px);text-decoration:none;color:inherit;background:#fff;border-radius:18px;padding:.6rem .6rem .7rem;box-shadow:0 22px 44px -22px #141a2466;transform:rotate(3deg)}
.ed-badge img{display:block;width:100%;height:auto;border-radius:10px}
.ed-badge span{display:block;text-align:center;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--teal);margin-top:.45rem}
.ed-founder h2{font-size:clamp(2.3rem,4.4vw,3.9rem);margin:0 0 1.3rem;color:var(--ink)}
.ed-founder p{color:var(--muted);max-width:36rem}
.ed-founder .ed-lead{font-size:1.18rem;color:var(--text);font-weight:500}
.ed-signoff{margin-top:1.6rem;display:flex;align-items:center;gap:1rem}
.ed-signoff .script{font-size:2.4rem}
.ed-signoff small{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

/* Stats band */
.ed-stats{background:var(--ivory);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ed-stats ul{list-style:none;margin:0 auto;padding:clamp(2.2rem,4vw,3.2rem) 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.ed-stats li{text-align:center;padding:.4rem 1.2rem;border-left:1px solid var(--line)}
.ed-stats li:first-child{border-left:0}
.ed-stat-num{display:block;font-family:var(--display);font-size:clamp(2rem,3.4vw,2.9rem);font-weight:600;color:var(--teal-deep);line-height:1.05}
.ed-stat-label{display:block;margin-top:.5rem;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--ink)}
.ed-stat-note{display:block;margin-top:.3rem;font-size:.85rem;color:var(--muted)}

/* Turning point split */
.ed-split{padding:clamp(4rem,8vw,7rem) 0}
.ed-split-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.ed-collage{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:auto auto;gap:14px;margin:0}
.ed-collage .c{border-radius:20px;overflow:hidden;background:var(--ivory-2);margin:0;position:relative}
.ed-collage img{display:block;width:100%;height:100%;object-fit:cover}
.ed-collage .c1{grid-row:1 / span 2;aspect-ratio:3/4.3}
.ed-collage .c2,.ed-collage .c3{aspect-ratio:4/3.4}
.ed-collage .c1 .ed-tagstack{position:absolute;left:1rem;bottom:1rem;right:1rem;margin:0;padding:0;list-style:none;color:#fff;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;text-shadow:0 1px 10px #0009}
.ed-split h2{font-size:clamp(2.2rem,4vw,3.6rem);margin:0 0 1.2rem;color:var(--ink)}
.ed-split p{color:var(--muted)}
.ed-checks{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.85rem}
.ed-checks li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:.8rem;align-items:start}
.ed-checks li:before{content:"✓";display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--teal);color:#fff;font-size:.75rem;font-weight:700;margin-top:.1rem}
.ed-checks strong{color:var(--ink);font-weight:600}

/* Cards */
.ed-cards{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--ivory);border-top:1px solid var(--line)}
.ed-head{display:flex;justify-content:space-between;align-items:end;gap:1rem 2rem;flex-wrap:wrap;margin-bottom:2.2rem}
.ed-head h2{font-size:clamp(2rem,3.6vw,3.1rem);margin:0;color:var(--ink)}
.ed-head p{margin:.6rem 0 0;color:var(--muted);max-width:34rem}
.ed-card-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.ed-card a{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:22px;overflow:hidden;text-decoration:none;color:inherit;border:1px solid var(--line);transition:transform .2s ease,box-shadow .2s ease}
.ed-card a:hover{transform:translateY(-3px);box-shadow:0 22px 40px -26px #141a2466}
.ed-card .ed-card-img{aspect-ratio:16/10;overflow:hidden;background:var(--ivory-2)}
.ed-card .ed-card-img img{display:block;width:100%;height:100%;object-fit:cover}
.ed-card .ed-card-img.contain{background:#f3f3f3}
.ed-card .ed-card-img.contain img{object-fit:contain;padding:.6rem}
.ed-card-body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.ed-card-body .eyebrow{margin:0;font-size:.68rem}
.ed-card-body h3{font-size:1.5rem;margin:0;color:var(--ink)}
.ed-card-body p{margin:0;color:var(--muted);font-size:.97rem}
.ed-card-body .ed-more{margin-top:auto;padding-top:.6rem;color:var(--teal-deep);font-weight:600;font-size:.92rem}

/* Blog teaser */
.ed-blog{padding:clamp(3.5rem,7vw,6rem) 0}
.ed-notes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}
.ed-notes a{display:flex;flex-direction:column;gap:.6rem;height:100%;padding:1.4rem;border-radius:20px;border:1px solid var(--line);text-decoration:none;color:inherit;background:#fff}
.ed-notes a:hover{border-color:var(--teal)}
.ed-notes .note-topic{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--teal)}
.ed-notes h3{font-size:1.22rem;margin:0;color:var(--ink);line-height:1.18}
.ed-notes p{margin:0;font-size:.92rem;color:var(--muted)}

/* Closing CTA */
.ed-cta{padding:0 0 clamp(3.5rem,7vw,6rem)}
.ed-cta-band{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2rem;align-items:center;background:var(--teal-deep);color:#fff;border-radius:28px;padding:clamp(2.2rem,5vw,4rem);overflow:hidden}
.ed-cta-band:after{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:999px;border:1px solid #ffffff26}
.ed-cta-band h2{font-size:clamp(2.2rem,4.4vw,3.8rem);margin:0 0 .9rem;color:#fff}
.ed-cta-band h2 em{color:#bcd3ee}
.ed-cta-band p{margin:0;color:#dbe5f2;max-width:34rem}
.ed-cta-band .script{color:#bcd3ee;font-size:1.6rem;display:block;margin-top:1rem;transform:rotate(-2deg)}
.ed-cta-actions{display:flex;flex-direction:column;gap:.9rem;align-items:stretch;position:relative;z-index:1}
.ed-cta-actions .button{background:#fff;color:var(--teal-deep)}
.ed-cta-actions .button:hover{background:var(--ivory)}
.ed-cta-actions .button-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px #ffffff80}
.ed-cta-actions .button-line:hover{background:#ffffff14;color:#fff}

@media (max-width:1100px){.ed-notes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
.ed-hero{background:#fff}
.ed-hero-grid,.ed-founder-grid,.ed-split-grid,.ed-cta-band{grid-template-columns:1fr}
.ed-hero-photo{max-width:520px;width:100%;margin:0 auto}
.ed-note-hero{left:.8rem;bottom:.8rem}
.ed-portrait{max-width:460px;width:100%;margin:0 auto 1.5rem}
.ed-badge{right:.4rem}
.ed-stats ul{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1.6rem}
.ed-stats li:nth-child(3){border-left:0}
.ed-card-grid{grid-template-columns:1fr}
.ed-featured-row{flex-direction:column;align-items:flex-start}
.ed-logos{justify-content:flex-start;gap:1rem 1.8rem}
}
@media (max-width:560px){
.ed-notes{grid-template-columns:1fr}
.ed-hero h1{font-size:clamp(2.5rem,11vw,3.2rem)}
.ed-actions .button{width:100%}
.ed-collage{grid-template-columns:1fr 1fr}
.ed-collage .c1{grid-row:auto;grid-column:1 / span 2;aspect-ratio:4/3}
.ed-stats li{padding:.4rem .5rem}
.ed-badge{width:120px;bottom:-1rem}
.ed-sign .script{font-size:1.4rem}
}
@media (prefers-reduced-motion:no-preference){.ed-hero-copy>*{animation:.7s cubic-bezier(.2,.7,.2,1) both rise}.ed-hero-copy>:nth-child(2){animation-delay:.06s}.ed-hero-copy>:nth-child(3){animation-delay:.12s}.ed-hero-copy>:nth-child(4){animation-delay:.18s}}
.ed-cta-band .eyebrow{color:#bcd3ee}
.ed picture{display:block;width:100%;height:100%}
.ed-collage .c1{aspect-ratio:auto;min-height:100%}
.ed-hero h1{font-size:clamp(2.9rem,5.6vw,5.1rem)}
@media (max-width:560px){.ed-collage .c1{aspect-ratio:4/3;min-height:0}}
figure.shot{margin:0}
.ed-keyword{margin:1.1rem 0 0;font-size:.92rem;color:var(--muted)}
.ed-keyword strong{color:var(--teal-deep);letter-spacing:.08em}
.ed-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.ed-steps li{background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.6rem 1.5rem 1.7rem}
.ed-step-num{display:block;font-family:var(--display);font-style:italic;font-size:2.2rem;color:var(--accent);line-height:1;margin-bottom:.8rem}
.ed-steps h3{font-size:1.5rem;margin:0 0 .5rem;color:var(--ink)}
.ed-steps p{margin:0;color:var(--muted)}
.ed-support>li>div{display:flex;flex-direction:column;gap:.6rem;height:100%;padding:1.4rem;border-radius:20px;border:1px solid var(--line);background:#fff}
.ed-disclaimer{margin:1.4rem auto 0;font-size:.8rem;color:var(--muted);text-align:center;max-width:46rem}
.ed-aside{margin:.6rem 0 0;text-align:center;font-size:.92rem;color:var(--muted)}
.ed-aside a{color:var(--teal-deep)}
.ed-join{padding:clamp(3.5rem,7vw,5.5rem) 0;background:var(--ivory);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ed-join-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:end}
.ed-join h2{font-size:clamp(2rem,3.6vw,3.1rem);margin:0;color:var(--ink)}
.ed-join p{margin:0;color:var(--muted)}
@media (max-width:900px){.ed-steps,.ed-join-grid{grid-template-columns:1fr}}
.ed-join{background:#fff}
/* logo strip */
.ed-featured-row{flex-direction:column;align-items:stretch;gap:1.1rem;padding:1.8rem 0 2rem}
.ed-featured-label{text-align:center}
.ed-logos-img{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:1.6rem;width:100%}
.ed-logos-img li{display:flex;align-items:center;justify-content:center;flex:0 1 auto;min-width:0}
.ed-logos-img img{display:block;width:auto;max-width:100%;opacity:.82}
.ed-logos-img .lg-wide img{height:34px}
.ed-logos-img .lg-xwide img{height:22px}
.ed-logos-img .lg-mid img{height:32px}
.ed-logos-img .lg-square img{height:42px}
.ed-logos-img .lg-text{font-family:var(--display);font-style:italic;font-weight:600;font-size:1.45rem;color:#1d3f66;opacity:.82;white-space:nowrap}
@media (max-width:1100px){.ed-logos-img{flex-wrap:wrap;justify-content:center;gap:1.4rem 2.4rem}}
@media (max-width:900px){.ed-featured-row{align-items:stretch}.ed-logos-img{justify-content:center}}
@media (max-width:560px){
.ed-logos-img{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.3rem .9rem;justify-items:center}
.ed-logos-img .lg-wide img{height:22px}.ed-logos-img .lg-xwide img{height:13px}.ed-logos-img .lg-mid img{height:22px}.ed-logos-img .lg-square img{height:30px}
.ed-logos-img .lg-text{font-size:.98rem;white-space:normal;text-align:center;line-height:1.05}
.ed-logos-img .lg-xwide{grid-column:span 2}
}
.ed-logos-img .lg-twn img{height:42px}
@media (max-width:560px){
.ed-logos-img{display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem 1.7rem}
.ed-logos-img .lg-xwide{grid-column:auto}
.ed-logos-img .lg-xwide img{height:15px}
.ed-logos-img .lg-twn img{height:30px}
.ed-logos-img .lg-text{white-space:nowrap;font-size:1.05rem}
}
/* text wordmark variant */
.ed-logos-text{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem 2.4rem;width:100%;color:#1d3f66}
.ed-logos-text li{opacity:.85}
.lg-gc{font-family:var(--sans);font-weight:600;font-size:1.05rem;letter-spacing:.14em;text-transform:uppercase}
.lg-tempo{font-family:var(--sans);font-weight:600;font-size:1.2rem;letter-spacing:.2em;text-transform:uppercase}
.lg-one{font-family:var(--display);font-weight:600;font-size:1.3rem;letter-spacing:.04em}
.ed-logos-text .lg-steve{font-size:1.3rem}
@media (max-width:560px){.ed-logos-text{gap:.9rem 1.5rem}.ed-logos-text .lg-steve,.lg-one{font-size:1.05rem}.ed-logos-text .lg-sister{font-size:1.15rem}.lg-gc{font-size:.85rem}.lg-tempo{font-size:.95rem}.ed-logos-text .lg-word{font-size:.72rem}.ed-logos-text .lg-nbc,.ed-logos-text .lg-fox{font-size:1.2rem}}
/* Nav fix: backdrop-filter on the sticky header made it the containing block for the
   position:fixed mobile menu panel, trapping the open menu inside the ~70px header. */
.site-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}
@media (max-width:860px){html.js .nav-panel.is-open{position:fixed;inset:0;height:100vh;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:60}}
/* Speaking photos */
.speak-photos{padding:clamp(2rem,5vw,4rem) 0 clamp(1.5rem,4vw,3rem);background:#fff}
.speak-photos figure{margin:0}
.speak-photos img{display:block;width:100%;height:100%;object-fit:cover}
.speak-photos picture{display:block;width:100%;height:100%}
.speak-photos figcaption{margin-top:.7rem;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.sp-lead{max-width:1100px;margin:0 auto}
.sp-lead picture{aspect-ratio:16/9;border-radius:24px;overflow:hidden;background:var(--ivory-2)}
.sp-lead img{object-position:59% 28%}
.sp-wide{margin:clamp(1.8rem,4vw,3rem) 0 0}
.sp-wide picture{aspect-ratio:2048/611;min-height:180px;background:var(--ivory-2)}
.sp-wide img{object-position:55% 35%}
.sp-wide figcaption{width:min(1240px,calc(100% - 2*var(--gutter)));margin:.7rem auto 0}
@media (max-width:700px){
.sp-lead picture{aspect-ratio:4/3;border-radius:18px}
.sp-wide picture{aspect-ratio:2/1}
.sp-wide figcaption{margin-top:.6rem}
}
.sp-wrap{width:min(1100px,calc(100% - 2*var(--gutter)));margin:0 auto}
.speak-photos .sp-lead{max-width:none;margin:0}
.speak-photos .sp-wide{margin:clamp(1.8rem,4vw,3rem) 0 0}
/* selfie + gctv */
.sp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;align-items:start}
.speak-photos .sp-lead picture,.speak-photos .sp-selfie picture{aspect-ratio:4/3;border-radius:24px;overflow:hidden;background:var(--ivory-2)}
.sp-selfie img{object-position:0% 50%}
.sp-wrap{width:min(1240px,calc(100% - 2*var(--gutter)))}
.gctv-feature{padding:clamp(1.5rem,4vw,3rem) 0;background:#fff}
.gctv-fig{margin:0;max-width:1100px;margin-inline:auto}
.gctv-fig picture{display:block;aspect-ratio:16/10;border-radius:24px;overflow:hidden;background:var(--ivory-2)}
.gctv-fig img{display:block;width:100%;height:100%;object-fit:cover;object-position:48% 28%}
.gctv-fig figcaption{margin-top:.7rem;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
@media (max-width:760px){.sp-grid{grid-template-columns:1fr}.gctv-fig picture{aspect-ratio:4/3;border-radius:18px}.speak-photos .sp-lead picture,.speak-photos .sp-selfie picture{border-radius:18px}}
