/* ============================================================
   SOMA MILLER — site styles
   Archivo (single sans family) · monochrome warm black / white
   Full-bleed photography carries the color. Minimal, bold, quiet.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500&display=swap');

:root{
  --bone:#F3F1EA;
  --bone-2:#E7E2D5;
  --ink:oklch(0.25 0.016 245);
  --ink-soft:#3A362F;
  --muted:rgba(34,39,43,0.62);
  --muted-2:rgba(34,39,43,0.46);
  --gold:oklch(0.55 0.075 72);
  --gold-lt:oklch(0.85 0.06 80);
  --dark:oklch(0.265 0.016 245);
  --dark-2:oklch(0.30 0.016 245);
  --line:rgba(34,39,43,0.14);
  --line-dark:rgba(243,241,234,0.16);
  --maxw:1240px;
  --serif:'Archivo',Helvetica,Arial,sans-serif;
  --hw:800;
  --moss:#3E4230;
  --moss-acc:oklch(0.55 0.075 72);
  --btn-gold:oklch(0.79 0.07 78);
  --btn-gold-hi:oklch(0.84 0.065 80);
  --moss-dk:#2B2E21;
  --ochre:#6E6A45;
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0; background:var(--bone); color:var(--ink);
  font-family:'Archivo',Helvetica,Arial,sans-serif;
  font-size:18px; line-height:1.62; -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{display:block; max-width:100%;}
a{color:inherit;}
a{color:var(--ink);}
a:hover{color:var(--gold);}
.on-dark a{color:var(--bone);}
.on-dark a:hover{color:var(--gold-lt);}

/* ---------- type ---------- */
.serif{font-family:var(--serif); font-weight:var(--hw); letter-spacing:-0.01em;}
.mono{font-family:'Archivo',sans-serif; font-weight:600; letter-spacing:0.09em; text-transform:uppercase;}

h1,h2,h3{font-family:'Archivo',Helvetica,Arial,sans-serif; font-weight:var(--hw); margin:0; letter-spacing:-0.022em;}
.h-hero{font-size:clamp(3.2rem,8.6vw,6.9rem); line-height:0.94; letter-spacing:-0.03em;}
.h-page{font-size:clamp(2.9rem,7.2vw,5.8rem); line-height:0.96; letter-spacing:-0.028em;}
.h-sec{font-size:clamp(2.1rem,4.6vw,4rem); line-height:1.0; letter-spacing:-0.025em;}
.h-card{font-size:clamp(1.5rem,2.4vw,2.05rem); line-height:1.05; letter-spacing:-0.015em;}
.gold-word{color:var(--gold); font-weight:var(--hw);}
.on-dark .gold-word{color:var(--gold-lt);}

.eyebrow{
  font-family:'Archivo',sans-serif; font-size:0.76rem; font-weight:600;
  letter-spacing:0.2em; text-transform:uppercase; color:var(--gold);
  display:inline-flex; align-items:center; gap:0.85em; margin:0;
}
.eyebrow.center{justify-content:center;}
.on-dark .eyebrow{color:var(--gold-lt);}

p{margin:0 0 1.25em;}
.lead{font-size:clamp(1.1rem,1.6vw,1.32rem); line-height:1.5; color:var(--ink-soft); font-weight:400;}
.measure{max-width:38ch;}
.measure-wide{max-width:60ch;}
.col{max-width:850px;}
.col.wide{max-width:1060px;}
.col.center{margin-left:auto; margin-right:auto;}

/* ---------- layout ---------- */
.container{max-width:var(--maxw); margin:0 auto; padding:0 clamp(22px,5vw,72px);}
.section{padding:clamp(58px,7.5vw,116px) 0;}
.section.tight{padding:clamp(44px,5vw,84px) 0;}
.bg-bone-2{background:var(--bone-2);}
.bg-dark{background:var(--dark); color:var(--bone);}
.bg-dark p{color:rgba(243,241,234,0.78);}
/* soft transition wash — place at top of a section following a dark block to ease the cut */
.soft-in{position:relative;}
.soft-in::before{content:''; position:absolute; top:0; left:0; right:0; height:clamp(40px,7vw,90px);
  background:linear-gradient(180deg, rgba(34,39,43,0.10), transparent); pointer-events:none;}

/* ---------- header / nav (sits over the dark hero) ---------- */
.nav{
  position:absolute; top:0; left:0; right:0; z-index:40;
  display:flex; align-items:center; justify-content:space-between;
  padding:clamp(20px,2.6vw,34px) clamp(22px,5vw,64px);
}
.brand{
  display:inline-flex; align-items:center; gap:12px;
}
.brand{flex-direction:row;}
.brand{align-items:center; gap:12px;}
.brand img.wordmark{height:clamp(22px,2vw,28px); width:auto; display:block; order:1;}
.brand img.icon-mark{height:clamp(26px,2.4vw,34px); width:auto; display:block; order:2;}
.section-mark{width:34px; height:auto; opacity:0.85; display:block; margin:0 auto 1.4em;}
.on-dark .section-mark{opacity:0.9;}
.footer .icon-mark{height:30px; width:auto; margin-bottom:14px; opacity:0.85;}
.brand small{display:block; font-family:'Archivo',sans-serif; font-size:0.6rem; letter-spacing:0.12em; text-transform:uppercase; font-weight:500; opacity:0.7; margin-top:2px;}
.nav-links{
  display:flex; align-items:center; gap:clamp(14px,1.6vw,26px);
  padding:11px 14px 11px 22px;
  background:rgba(38,43,48,0.4);
  backdrop-filter:blur(11px) saturate(1.1); -webkit-backdrop-filter:blur(11px) saturate(1.1);
  border:1px solid rgba(243,241,234,0.16);
  border-radius:100px;
}
.nav-links a{
  font-family:'Archivo',sans-serif; font-size:0.72rem; font-weight:600; letter-spacing:0.09em;
  text-transform:uppercase; color:#F6F4EE; text-decoration:none; opacity:0.85;
  transition:opacity .25s; white-space:nowrap;
}
.nav-links a:hover{opacity:1; color:#F6F4EE;}
.nav-links a.nav-cta{
  background:var(--bone); color:var(--ink); opacity:1; padding:8px 16px; border-radius:100px;
  font-weight:700;
}
.nav-links a.nav-cta:hover{background:var(--gold-lt); color:var(--ink);}
.nav-toggle{display:none;}

/* ---------- hero (homepage, full-bleed) ---------- */
.hero{position:relative; min-height:100svh; overflow:hidden; background:var(--dark); color:var(--bone);}
.hero__img,.ph__img{position:absolute; inset:0; background-size:cover; background-position:center; z-index:1;}
.hero__grade{position:absolute; inset:0; z-index:2; pointer-events:none;
  background:
    linear-gradient(to top, rgba(38,43,48,0.93) 0%, rgba(38,43,48,0.5) 24%, rgba(38,43,48,0) 50%),
    linear-gradient(to right, rgba(38,43,48,0.5) 0%, rgba(38,43,48,0) 46%),
    radial-gradient(130% 100% at 50% 22%, rgba(38,43,48,0) 52%, rgba(38,43,48,0.5) 100%);
}
.warm-tint{position:absolute; inset:0; z-index:3; pointer-events:none; mix-blend-mode:soft-light;
  background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0) 42%);}
.grain{position:absolute; inset:0; pointer-events:none; z-index:6; opacity:0.045; mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url%28%23n%29'/%3E%3C/svg%3E");}

.hero__inner{position:relative; z-index:10; min-height:100svh; display:flex; flex-direction:column; justify-content:flex-end;
  padding:clamp(110px,16svh,160px) clamp(22px,5vw,64px) clamp(54px,7vw,92px); max-width:var(--maxw); margin:0 auto;}
.hero__title{max-width:18ch;}
.hero--right .hero__inner{width:100%;display:grid;align-content:end;justify-content:end;grid-template-columns:minmax(0,min(600px,50%));}
.hero--right .hero__title,.hero--right .hero__row{width:auto;max-width:none;margin-left:0;}
.hero--right .hero__row .lead{max-width:none;}
.hero--right .vcap{right:auto;left:max(20px,2vw);}
.hero--right .scrollcue{left:clamp(22px,5vw,64px);transform:none;}
.hero--right .hero__title,.hero--right .hero__row{width:min(46%,620px);}
.hero--right .h-hero{font-size:clamp(2.6rem,5.4vw,5rem);}
.hero--right .hero__row{flex-direction:column;align-items:flex-start;gap:24px;}
@media (max-width:880px){.hero--right .hero__inner{grid-template-columns:minmax(0,1fr);justify-content:stretch}.hero--right .hero__title,.hero--right .hero__row{width:auto}}
.hero h1{margin:0.5em 0 0;}
.hero .lead{color:rgba(243,241,234,0.82);}
.hero__row{display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:34px; margin-top:2.2em;}
.vcap{position:absolute; right:max(20px,2vw); top:50%; transform:translateY(-50%) rotate(180deg);
  writing-mode:vertical-rl; z-index:10; font-family:'Archivo',sans-serif; font-size:0.62rem; font-weight:600;
  letter-spacing:0.32em; text-transform:uppercase; color:rgba(243,241,234,0.55);}

/* ---------- page hero (inner pages, shorter) ---------- */
.ph{position:relative; min-height:92svh; overflow:hidden; background:var(--dark); color:var(--bone); display:flex;}
.ph__grade{position:absolute; inset:0; z-index:2; pointer-events:none;
  background:
    linear-gradient(to top, rgba(38,43,48,0.92) 0%, rgba(38,43,48,0.45) 34%, rgba(38,43,48,0.15) 70%),
    linear-gradient(to bottom, rgba(38,43,48,0.55) 0%, rgba(38,43,48,0) 30%),
    linear-gradient(to right, rgba(38,43,48,0.4) 0%, rgba(38,43,48,0) 55%);
}
.ph__inner{position:relative; z-index:10; align-self:flex-end; width:100%; max-width:var(--maxw); margin:0 auto;
  padding:clamp(110px,16svh,160px) clamp(22px,5vw,64px) clamp(48px,6vw,84px);}
.ph h1{margin:0.45em 0 0; max-width:16ch;}
.ph .lead{color:rgba(243,241,234,0.84); max-width:46ch; margin-top:1.1em;}

/* ---------- buttons ---------- */
.btn{display:inline-flex; align-items:center; gap:0.7em; font-family:'Archivo',sans-serif; font-weight:700;
  font-size:0.82rem; letter-spacing:0.03em; text-transform:none; text-decoration:none;
  padding:17px 30px; border-radius:100px; transition:transform .3s, background .3s, color .3s; white-space:nowrap;}
.btn .arr{transition:transform .3s;}
.btn:hover .arr{transform:translateX(5px);}
.btn-solid{background:var(--ink); color:var(--bone);}
.btn-solid:hover{background:#363D44;}
.btn-light{background:var(--bone); color:var(--ink);}
.btn-light:hover{background:var(--gold-lt);}
.on-dark .btn-light{color:var(--ink);}
.btn-ghost{border:1px solid var(--line); color:var(--ink); padding:16px 29px;}
.on-dark .btn-ghost{border-color:rgba(243,241,234,0.4); color:var(--bone);}
.link-arrow{font-family:'Archivo',sans-serif; font-weight:600; font-size:0.82rem; letter-spacing:0.02em; text-transform:none;
  text-decoration:none; color:var(--ink); display:inline-flex; align-items:center; gap:0.6em; border-bottom:1px solid var(--line); padding-bottom:6px;}
.on-dark .link-arrow{color:var(--bone); border-color:rgba(243,241,234,0.3);}
.link-arrow .arr{transition:transform .3s;} .link-arrow:hover .arr{transform:translateX(4px);}

/* ---------- editorial blocks ---------- */
.split{display:grid; grid-template-columns:0.8fr 1.2fr; gap:clamp(28px,4vw,64px); align-items:start;}
.split.top{align-items:start;}
.stack-eyebrow{margin-bottom:1.6em;}
.split .h-sec{font-size:clamp(1.7rem,2.6vw,2.6rem); line-height:1.15;}
.bigquote{font-family:var(--serif); font-size:clamp(1.9rem,3.8vw,3.2rem); line-height:1.1; letter-spacing:-0.02em; margin:0 0 0.7em; max-width:22ch; font-weight:var(--hw);}
.bigquote .gold-word{color:var(--gold);}

/* full-bleed image divider */
.imgbreak{position:relative; height:clamp(58vh,70vh,80vh); overflow:hidden; display:flex; align-items:center; justify-content:center; background:var(--dark);}
.imgbreak .ph__img{filter:none;}
.imgbreak__grade{position:absolute; inset:0; z-index:2;
  background:linear-gradient(180deg, rgba(38,43,48,0.35), rgba(38,43,48,0.15) 40%, rgba(38,43,48,0.55));}
.imgbreak__cap{position:relative; z-index:5; color:var(--bone); text-align:center; max-width:min(30ch,86vw); padding:0 24px;}
.imgbreak__cap .serif{font-size:clamp(1.5rem,4vw,2.9rem); line-height:1.15; text-wrap:pretty;}
@media (max-width:520px){.imgbreak__cap .serif{font-size:clamp(1.3rem,6vw,1.9rem);}}

/* ---------- three ways cards ---------- */
.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(18px,2vw,30px);}
.card{display:flex; flex-direction:column; text-decoration:none; color:inherit; background:var(--bone);
  border:1px solid var(--line); border-radius:3px; overflow:hidden; transition:transform .4s, box-shadow .4s;}
.card:hover{transform:translateY(-5px); box-shadow:0 26px 50px -30px rgba(34,39,43,0.45);}
.card__img{aspect-ratio:4/3; background-size:cover; background-position:center;}
.card__body{padding:clamp(22px,2.2vw,32px); display:flex; flex-direction:column; flex:1;}
.card__num{font-family:'Archivo',sans-serif; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; font-size:0.82rem; color:var(--gold); margin-bottom:0.8em;}
.card h3{margin-bottom:0.5em;}
.card p{font-size:0.97rem; color:var(--muted); flex:1;}
.card .more{margin-top:1.4em; font-family:'Archivo',sans-serif; font-weight:600; font-size:0.78rem; letter-spacing:0.02em; text-transform:none; color:var(--ink); display:inline-flex; gap:0.5em;}
.card:hover .more{color:var(--gold);}

/* ---------- lists ---------- */
.checklist{list-style:none; padding:0; margin:0; display:grid; gap:0.1em;}
.checklist li{padding:0.85em 0; border-bottom:1px solid var(--line); display:flex; gap:0.9em; align-items:baseline;}
.checklist li::before{content:''; flex:none; width:7px; height:7px; margin-top:0.55em; border-radius:50%; background:var(--gold);}
.on-dark .checklist li{border-color:var(--line-dark);}

/* feature row (image + text) */
.feature{display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,80px); align-items:center;}
.feature.flip .feature__media{order:2;}
.feature__media{border-radius:3px; overflow:hidden;}
.feature__media img{width:100%; height:100%; object-fit:cover;}
.figure-cap{font-family:'Archivo',sans-serif; font-weight:500; font-size:0.85rem; letter-spacing:0.02em; text-transform:none; color:var(--muted-2); margin-top:0.9em;}

/* arc / steps */
.arc{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(22px,3vw,48px);}
.arc__step{padding-top:1.4em; border-top:1px solid var(--line);}
.on-dark .arc__step{border-color:var(--line-dark);}
.arc__num{font-family:'Archivo',sans-serif; font-size:2.6rem; line-height:1; color:var(--gold); display:block; margin-bottom:0.5em; font-weight:800;}
.on-dark .arc__num{color:var(--gold-lt);}
.arc__step h3{font-size:1.3rem; font-family:'Archivo',sans-serif; font-weight:700; letter-spacing:-0.01em; text-transform:none; margin-bottom:0.5em;}
.arc__step p{font-size:0.97rem; color:var(--muted); margin:0;}
.on-dark .arc__step p{color:rgba(243,241,234,0.7);}

/* inline note / reassurance band */
.note{border-left:2px solid var(--gold); padding:0.2em 0 0.2em 1.5em; max-width:60ch;}
.on-dark .note{border-color:var(--gold-lt);}
@media (max-width:880px){.arc{grid-template-columns:1fr;}}

/* ---------- testimonials ---------- */
.tst-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 clamp(40px,5vw,80px); align-items:start;}
.tst{border-top:1px solid var(--line); padding:clamp(26px,3vw,40px) 0; break-inside:avoid;}
.on-dark .tst{border-top-color:var(--line-dark);}
.tst blockquote{margin:0 0 1.3em; font-family:var(--serif); font-size:clamp(1.15rem,1.7vw,1.45rem); line-height:1.35; color:var(--ink); font-weight:700; letter-spacing:-0.01em;}
.on-dark .tst blockquote{color:rgba(243,241,234,0.94);}
.tst .who{font-family:'Archivo',sans-serif; font-weight:600; font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--gold); margin:0;}
.tst .stars{display:block; color:var(--gold); font-size:0.78rem; letter-spacing:0.3em; margin-bottom:1.1em;}
.tst-note{font-family:'Archivo',sans-serif; font-weight:500; font-size:0.74rem; letter-spacing:0.04em; text-transform:none; color:var(--ink-soft, rgba(34,39,43,0.6));}


/* closing CTA */
.cta-block{position:relative; overflow:hidden; background:var(--dark); color:var(--bone); text-align:center;}
.cta-block .ph__img{opacity:1;}
.cta-block__grade{position:absolute; inset:0; z-index:2; background:linear-gradient(180deg, rgba(38,43,48,0.74), rgba(38,43,48,0.86));}
.cta-block__inner{position:relative; z-index:5; padding:clamp(84px,12vw,176px) 24px;}
.cta-block h2{margin:0.35em auto 0.5em; max-width:16ch;}
.cta-block .lead{color:rgba(243,241,234,0.82); max-width:42ch; margin:0 auto 2em;}
.cta-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;text-align:left}.cta-split__media img{display:block;width:100%;height:auto}.cta-split .cta-block__inner{padding:clamp(48px,7vw,120px) clamp(24px,6vw,96px)}.cta-split h2{margin:0.35em 0 0.5em}.cta-split .lead{margin:0 0 2em}
@media (max-width:760px){.cta-split{grid-template-columns:1fr}.cta-split .cta-block__inner{padding:56px 24px 72px}}

/* ---------- footer ---------- */
.footer{background:var(--dark-2); color:rgba(243,241,234,0.7); padding:clamp(56px,7vw,92px) 0 40px;}
.footer .container{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px;}
.footer .brand{color:var(--bone); font-size:1.3rem;}
.footer h4{font-family:'Archivo',sans-serif; font-weight:700; font-size:0.78rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold-lt); margin:0 0 1.2em;}
.footer a{color:rgba(243,241,234,0.78); text-decoration:none; display:block; padding:0.32em 0; font-size:0.95rem;}
.footer a:hover{color:var(--bone);}
.footer__bottom{max-width:var(--maxw); margin:48px auto 0; padding:24px clamp(22px,5vw,72px) 0; border-top:1px solid var(--line-dark);
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; font-family:'Archivo',sans-serif; font-weight:500; font-size:0.76rem; letter-spacing:0.03em; text-transform:none; color:rgba(243,241,234,0.55);}
.footer__credentials{font-size:0.9rem; line-height:1.7; color:rgba(243,241,234,0.6); max-width:42ch; margin-top:1.2em;}

.hero__img,.ph__img{transform:scale(1.15); transform-origin:center; will-change:transform;}

/* reveal on scroll */
.reveal{opacity:0; transform:translateY(26px); transition:opacity 1s cubic-bezier(.2,.7,.2,1), transform 1s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1; transform:none; transition:none;}}
.no-motion .reveal{opacity:1 !important; transform:none !important; transition:none !important;}
.no-grain .grain{display:none !important;}

/* scroll cue */
.scrollcue{position:absolute; left:50%; bottom:24px; transform:translateX(-50%); z-index:10; font-family:'Archivo',sans-serif; font-weight:600;
  font-size:0.7rem; letter-spacing:0.06em; text-transform:uppercase; color:rgba(243,241,234,0.65); display:flex; flex-direction:column; align-items:center; gap:8px;}
.scrollcue .ln{width:1px; height:34px; background:linear-gradient(rgba(243,241,234,0.6),rgba(243,241,234,0)); animation:cue 2.4s ease-in-out infinite;}
@keyframes cue{0%,100%{opacity:.3; transform:scaleY(.7);}50%{opacity:1; transform:scaleY(1);}}

/* ---------- blog ---------- */
.blog-filters{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:clamp(28px,3.5vw,44px);}
.blog-filters button{font-family:'Archivo',sans-serif; font-weight:600; font-size:0.76rem; letter-spacing:0.06em; text-transform:uppercase;
  padding:9px 18px; border-radius:100px; border:1px solid var(--line); background:transparent; color:var(--ink-soft); cursor:pointer; transition:background .25s,color .25s,border-color .25s;}
.blog-filters button:hover{border-color:var(--gold);}
.blog-filters button.active{background:var(--ink); color:var(--bone); border-color:var(--ink);}
.featured-post{display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(28px,4vw,64px); align-items:center; margin-bottom:clamp(48px,6vw,84px); padding-bottom:clamp(48px,6vw,84px); border-bottom:1px solid var(--line);}
.featured-post__media{aspect-ratio:5/4; border-radius:3px; overflow:hidden; background-size:cover; background-position:center;}
.featured-post .tag{font-family:'Archivo',sans-serif; font-weight:700; font-size:0.74rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--gold); margin-bottom:0.8em; display:block;}
.blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(24px,3vw,40px);}
.blog-grid .post-card{text-decoration:none; color:inherit; display:flex; flex-direction:column;}
.post-card__media{aspect-ratio:4/3; border-radius:3px; overflow:hidden; background-size:cover; background-position:center; margin-bottom:1.1em;}
.post-card .tag{font-family:'Archivo',sans-serif; font-weight:700; font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--gold); margin-bottom:0.5em; display:block;}
.post-card h3{font-size:1.25rem; margin-bottom:0.4em;}
.post-card p{font-size:0.94rem; color:var(--muted); margin-bottom:0;}
.post-card .date{font-family:'Archivo',sans-serif; font-weight:500; font-size:0.78rem; color:var(--muted-2); margin-top:0.7em; display:block;}
.post-card[hidden]{display:none;}
.article-body{max-width:68ch; margin:0 auto;}
.article-body p{color:var(--ink-soft); font-size:1.08rem;}
.article-meta{display:flex; gap:14px; align-items:center; font-family:'Archivo',sans-serif; font-weight:600; font-size:0.78rem; letter-spacing:0.06em; text-transform:uppercase; color:var(--gold); margin-bottom:1.2em;}
@media (max-width:880px){.featured-post,.blog-grid{grid-template-columns:1fr;}}

/* ---------- responsive ---------- */
@media (max-width:880px){
  .split,.feature,.cards,.blog-grid,.featured-post{grid-template-columns:1fr;}
  .feature.flip .feature__media{order:0;}
  .footer .container{grid-template-columns:1fr 1fr;}
  .vcap{display:none;}
  .nav-toggle{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; width:44px; height:44px;
    background:rgba(38,43,48,0.4); border:1px solid rgba(243,241,234,0.16); border-radius:100px; cursor:pointer; flex:none; z-index:61;}
  .nav-toggle span{display:block; width:18px; height:2px; background:#F6F4EE; transition:transform .3s, opacity .3s;}
  .nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .nav-toggle.open span:nth-child(2){opacity:0;}
  .nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .nav-links{position:fixed; top:0; right:0; height:100svh; width:min(78vw,340px); max-width:340px;
    background:var(--dark); flex-direction:column; align-items:flex-start; justify-content:flex-start;
    padding:100px 32px 40px; gap:22px; border-radius:0; border:none; backdrop-filter:none;
    transform:translateX(100%); transition:transform .4s cubic-bezier(.2,.7,.2,1); z-index:60;}
  .nav-links.open{transform:translateX(0);}
  .nav-links a:not(.nav-cta){display:block; font-size:1rem; opacity:1;}
  .nav-links a.nav-cta{display:inline-flex; margin-top:8px;}
  .nav-overlay{display:none; position:fixed; inset:0; background:rgba(0,0,0,0.5); z-index:55;}
  .nav-overlay.open{display:block;}
}
@media (max-width:560px){
  body{font-size:16.5px;}
  .footer .container{grid-template-columns:1fr;}
}

.copy .h-sec{margin-bottom:.8em}.copy p{margin:0 0 1.1em}.copy p:last-child{margin-bottom:0}
.band{background:var(--dark);color:var(--bone);padding:clamp(40px,6vw,72px) clamp(20px,5vw,64px);text-align:center}.band p{margin:0;font-weight:800;font-size:clamp(1rem,2.6vw,2rem);line-height:1.25;letter-spacing:-0.01em;white-space:nowrap}
.photo-copy{position:relative;overflow:hidden;background:var(--dark);color:var(--bone)}.photo-copy .ph__img{position:absolute;inset:-8% 0;background-size:cover;z-index:0}.photo-copy__shade{position:absolute;inset:0;z-index:1;background:rgba(34,39,44,0.78)}.photo-copy .container{position:relative;z-index:2}.photo-copy .copy p{color:var(--bone)}

/* ---------- two-size caps type system ---------- */
html[data-type]{--fs-h:clamp(1.9rem,3.6vw,3rem);--fs-b:0.95rem}
html[data-type] body *{font-family:'Archivo',Helvetica,Arial,sans-serif!important;font-size:var(--fs-b)!important;font-style:normal!important}
html[data-type] body :is(h1,h2,h3,.h-hero,.h-page,.h-sec,.h-card,.bigquote,.band p,.statement,.stack-lg p,.serif,.imgbreak__cap p,.arc__num,.post-card h3,.featured-post h2,.footer .brand){font-size:var(--fs-h)!important;text-transform:uppercase;font-weight:800!important;letter-spacing:0.08em!important;line-height:1.15!important}
html[data-type] body :is(h1,h2,h3,.h-hero,.h-page,.h-sec,.h-card,.serif,.bigquote,.statement,.lead) *{font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;line-height:inherit!important;color:inherit;display:inline}
.brand,.brand img{flex-shrink:0}
@media (min-width:881px){html[data-type] body .nav-links a{font-size:0.74rem!important;letter-spacing:0.1em!important;text-transform:uppercase}html[data-type] .nav-links{gap:clamp(12px,1.4vw,24px)}}
html[data-type] body :is(h1,h2,h3,.h-hero,.h-page,.h-sec) br{display:none}
html[data-type] body :is(h1,h2,h3,.h-hero,.h-page,.h-sec) .gold-word::before{content:" "}
html[data-type] .hero__title,html[data-type] .ph__inner h1{max-width:22ch}
html[data-type="caps-all"] body *{text-transform:none;letter-spacing:0;font-weight:400;line-height:1.7}
html[data-type="caps-all"] body :is(h1,h2,h3,h4,.h-hero,.h-page,.h-sec,.h-card),html[data-type="caps-all"] body :is(h1,h2,h3,h4,.h-hero,.h-page,.h-sec,.h-card) *{text-transform:uppercase;letter-spacing:0.1em;font-weight:500;line-height:1.5}
html[data-type="caps-all"] body :is(p,li,dd,blockquote){max-width:none}
.ph--right .ph__inner{display:grid;justify-content:end;grid-template-columns:minmax(0,min(540px,46%))}
.ph--right .ph__grade{background:linear-gradient(to top,rgba(38,43,48,0.85) 0%,rgba(38,43,48,0.3) 40%,rgba(38,43,48,0.1) 70%),linear-gradient(to left,rgba(38,43,48,0.7) 0%,rgba(38,43,48,0) 55%)}
@media (max-width:880px){.ph--right .ph__inner{grid-template-columns:minmax(0,1fr);justify-content:stretch}}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:clamp(28px,4vw,48px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:clamp(22px,3vw,36px) clamp(12px,2vw,24px);border-left:1px solid var(--line)}.stat:first-child{border-left:none;padding-left:0}
html[data-type] body .stat__n,html[data-type] body .stat__plus{font-size:var(--fs-h)!important;font-weight:800!important;letter-spacing:0.02em!important;line-height:1!important;color:var(--ink);font-variant-numeric:tabular-nums}
.stat p{margin:0.7em 0 0;color:var(--muted)}
@media (max-width:880px){.stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){border-left:none;padding-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:480px){.stats{grid-template-columns:1fr}.stat{border-left:none;padding-left:0}.stat+.stat{border-top:1px solid var(--line)}}

.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(24px,3vw,44px) clamp(24px,4vw,56px)}.work-grid>div{border-top:1px solid var(--line);padding-top:1.1em}.work-grid p{margin:0 0 .5em}.work-grid p+p{color:var(--muted);margin:0}

/* testimonial gallery (all pages) */
.tst-grid,.tst-carousel{display:flex;gap:clamp(16px,2vw,28px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 0;align-items:stretch}
.tst-grid::-webkit-scrollbar,.tst-carousel::-webkit-scrollbar{display:none}
.tst-grid>.tst,.tst-carousel>.tst-item{flex:0 0 min(86%,400px);scroll-snap-align:start;display:flex}
.tst-grid .tst,.tst-carousel .tst{margin:0;width:100%;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:3px;padding:clamp(20px,2vw,28px)}
.on-dark .tst-grid .tst,.on-dark .tst-carousel .tst{border-color:var(--line-dark)}
.tst-grid .tst blockquote,.tst-carousel .tst blockquote{font-size:1rem;line-height:1.5;flex:1}
.tst-nav{display:flex;align-items:center;gap:10px;margin-top:clamp(18px,2vw,26px)}
.tst-nav button{all:unset;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);font-family:'Archivo',sans-serif;transition:background .2s,color .2s}
.tst-nav button:hover{background:var(--ink);color:var(--bone)}
.tst-nav button:disabled{opacity:.3;cursor:default;background:none;color:var(--ink)}
.on-dark .tst-nav button{border-color:var(--line-dark);color:var(--bone)}
.tst-nav span{font-family:'Archivo',sans-serif;font-size:.78rem;letter-spacing:.1em;color:var(--muted);margin-left:6px}

html[data-type] body .copy.wide p{max-width:none}.copy.wide{max-width:min(100%,1180px)!important}

html[data-type] body :is(p,li) strong{font-weight:800!important}

html[data-type] :is(.col,.col.wide,.measure,.measure-wide,.article-body){max-width:min(100%,1180px)}

.on-dark .lead{color:rgba(243,241,234,0.86)}

/* ---------- v2: work page + home doors ---------- */
.work-head{margin-bottom:clamp(32px,4.5vw,64px)}.work-head .h-sec{margin-top:.5em}
.work-index{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:0;margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--line)}
.work-index a{padding:1.1em 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-family:'Archivo',sans-serif;transition:color .2s}.work-index a:hover{color:var(--gold)}
.doors a{display:block;color:inherit;text-decoration:none;border-top:1px solid var(--line);padding-top:1.1em;transition:border-color .25s}.doors a:hover{border-color:var(--ink)}
.coach-split{margin-top:clamp(56px,7vw,96px)}
.psi{padding-top:clamp(80px,11vw,160px);padding-bottom:clamp(80px,11vw,160px)}
.wlist{list-style:none;margin:0;padding:0;display:grid}
.wlist li{display:grid;grid-template-columns:clamp(54px,6vw,84px) 1fr;gap:clamp(16px,2.5vw,40px);padding:clamp(26px,3vw,40px) 0;border-top:1px solid var(--line-dark);align-items:start}
.wlist .wnum{font-family:'Archivo',sans-serif;font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1;color:var(--gold-lt);font-weight:800}
.wlist h3{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--bone);margin:0.25em 0 0.8em}
.wlist p{margin:0;color:rgba(244,236,219,0.74)}
.cta-block .lead+.lead{margin-top:-1.4em}

.tst-band{padding:22px 0;background:radial-gradient(ellipse 70% 120% at 50% 50%,rgba(14,16,10,.55),rgba(14,16,10,.25) 80%),url('images/web/opt/moss-texture.jpg') center 50%/cover no-repeat;color:var(--bone);border:0}.tst-band .tst .who,.tst-band__label{color:var(--gold-lt)!important}.tst-band.on-dark{border-color:var(--line-dark)}.on-dark .tst-nav span{color:var(--gold-lt)}.on-dark .tst-nav button:disabled{color:var(--bone)}.tst-band .container{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(16px,2.5vw,36px)}.tst-band__label{margin:0!important;white-space:nowrap}.tst-band .tst-carousel{gap:0;padding:0}.tst-band .tst-carousel>.tst-item{flex:0 0 100%}.tst-band .tst{border:0!important;padding:0!important;flex-direction:row!important;align-items:baseline;gap:14px}.tst-band .tst blockquote{font-size:.92rem!important;line-height:1.4!important;margin:0!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-weight:500!important;font-style:italic;text-transform:none}.tst-band .tst .who{white-space:nowrap;flex:none}.tst-band .tst-nav{margin:0!important;gap:6px}.tst-band .tst-nav button{width:32px;height:32px;font-size:.85rem}@media(max-width:700px){.tst-band .container{grid-template-columns:minmax(0,1fr) auto}.tst-band__label{grid-column:1/-1}.tst-band .tst{flex-direction:column!important;gap:4px}}

html body .tst-band .tst blockquote,html[data-type] body .tst-band .tst blockquote{font-style:italic!important;text-transform:none!important}

.tst-band .tst blockquote{color:#FAF8F1!important;text-shadow:0 1px 2px rgba(0,0,0,.55),0 0 18px rgba(0,0,0,.35)}.tst-band .tst .who,.tst-band__label,.tst-band .tst-nav span{color:#E9E3D2!important;text-shadow:0 1px 2px rgba(0,0,0,.6)}.tst-band .tst-nav button{background:rgba(14,16,10,.35);border-color:rgba(243,241,234,.4)!important}

.em-teaser{display:grid;grid-template-columns:clamp(180px,22vw,300px) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}.em-teaser__img{width:100%;aspect-ratio:1;object-fit:cover;display:block}@media(max-width:600px){.em-teaser{grid-template-columns:1fr}.em-teaser__img{max-width:240px}}

@media (max-width:880px){.hero--right .hero__img{bottom:auto;height:62svh;background-position:50% 30%!important}.hero--right .hero__inner{min-height:0;padding-top:calc(62svh - 40px)}.hero--right .hero__grade{background:linear-gradient(180deg,rgba(38,43,48,.35) 0%,rgba(38,43,48,0) 18%,rgba(38,43,48,0) 40%,var(--dark) 62svh,var(--dark) 100%)!important}}

.smudge-wrap>section{position:relative;z-index:2;background:transparent!important}.smudge-wrap__bg{position:absolute;inset:-12% 0;will-change:transform;z-index:0;background-size:cover;background-position:center 20%}.smudge-wrap .photo-copy__shade{background:linear-gradient(180deg,rgba(34,39,44,.72),rgba(34,39,44,.8) 60%,rgba(34,39,44,.88))}.smudge-wrap .h-sec,.smudge-wrap p{color:var(--bone)}.smudge-wrap .doors a{border-top-color:var(--line-dark)}.smudge-wrap .doors a:hover{border-top-color:var(--bone)}

.doors a p{display:flex;align-items:center;gap:.6em}.door-arr{color:#fff;display:inline-flex;line-height:1;transition:transform .25s}.door-arr svg{display:block}.doors a{cursor:pointer}.doors a:hover .door-arr{transform:translateX(4px)}

/* moss accents */
:root{--line:rgba(62,66,48,0.24)}
.nav .nav-cta{background:var(--btn-gold)!important;border-color:var(--btn-gold)!important;color:var(--ink)!important}.nav .nav-cta:hover{background:var(--btn-gold-hi)!important;border-color:var(--btn-gold-hi)!important}
.cta-block__grade{background:linear-gradient(180deg,rgba(44,48,33,.78),rgba(30,33,22,.9))!important}
.work-index a:hover{color:var(--moss-acc)}.doors a:hover{border-color:var(--moss-acc)}.copy a:not(.btn),.article-body a:not(.btn){color:var(--moss-acc)}.copy a:not(.btn):hover,.article-body a:not(.btn):hover{color:var(--moss)}
.btn-solid{background:var(--btn-gold)!important;border-color:var(--btn-gold)!important;color:var(--ink)!important}.btn-solid:hover{background:var(--btn-gold-hi)!important;border-color:var(--btn-gold-hi)!important;color:var(--ink)!important}

.work-sub{margin:.8em 0 0;font-weight:700}

.intro-band{padding:clamp(32px,4vw,52px) 0;background:linear-gradient(rgba(20,22,15,.6),rgba(20,22,15,.6)),url('images/web/opt/moss-texture.jpg') center 30%/cover no-repeat;color:var(--bone)}.intro-band p{color:var(--bone)!important;text-shadow:0 1px 2px rgba(0,0,0,.5)}

.imgbreak--short{height:auto;aspect-ratio:2.7/1;min-height:220px}

/* journal: sentence case, no all-caps */
html[data-type="caps-all"] body.journal :is(.ph__inner,.article-body,.featured-post,.post-card,.blog-filters,.copy,.article-meta) *,html body.journal :is(.blog-filters button,.article-meta,.post-card .tag,.featured-post .tag,.article-meta span,.gateways .gw-title,.ph__inner .eyebrow){text-transform:none!important;letter-spacing:0.01em!important;font-weight:inherit}
html body.journal :is(.blog-filters button,.article-meta,.article-meta span,.post-card .tag,.featured-post .tag,.ph__inner .eyebrow){font-weight:600!important}
html[data-type="caps-all"] body.journal :is(.article-body p,.copy p){line-height:1.7;letter-spacing:0!important}
html[data-type="caps-all"] body.journal :is(.ph__inner h1,.featured-post h2,.post-card h3){text-transform:uppercase!important;letter-spacing:inherit!important;font-weight:var(--hw)!important}

.hero--right .hero__title .eyebrow{white-space:nowrap!important;color:var(--bone)!important;font-size:min(0.76rem,1.1vw)!important;letter-spacing:0.14em!important;text-shadow:0 1px 10px rgba(20,24,28,0.7);display:block!important;width:max-content;max-width:none}
.hero--right .hero__grade::after{content:"";position:absolute;inset:0;background:linear-gradient(to left,rgba(20,24,28,0.62) 0%,rgba(20,24,28,0.4) 45%,rgba(20,24,28,0) 75%),rgba(20,24,28,0.18)}
@media (max-width:880px){.hero--right .hero__title .eyebrow{font-size:min(0.7rem,2.3vw)!important;letter-spacing:0.1em!important}}

.pull-quote{padding:clamp(64px,8vw,112px) 0;text-align:center}
.pull-quote figure{margin:0 auto;max-width:none}
.pull-quote blockquote{margin:0;font-family:var(--serif,inherit);font-weight:400;font-style:italic;font-size:clamp(1.15rem,2.6vw,2.1rem);line-height:1.35;letter-spacing:-0.005em;text-wrap:balance}
.pull-quote figcaption{margin-top:clamp(18px,2vw,28px);font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;opacity:0.7}

.pull-quote{position:relative;overflow:hidden;padding:clamp(140px,20vw,300px) 0 clamp(120px,16vw,240px)}
.pull-quote>.container{position:relative;z-index:1}
.pull-quote__bg{position:absolute;inset:0;background-size:cover;background-position:center 62%;opacity:.8}
.pull-quote::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,var(--dark,#14181c) 0%,color-mix(in oklab,var(--dark) 35%,transparent) 30%,color-mix(in oklab,var(--dark) 35%,transparent) 60%,var(--dark,#14181c) 100%),color-mix(in oklab,var(--dark) 30%,transparent)}
.pull-quote blockquote,.pull-quote figcaption{text-shadow:0 2px 24px rgba(20,24,28,.8)}

.smudge-wrap::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(120px,18vw,260px);background:linear-gradient(to bottom,var(--dark),transparent);z-index:1;pointer-events:none}
.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 35%,transparent) 28%,color-mix(in oklab,var(--dark) 35%,transparent) 55%,var(--dark) 100%),color-mix(in oklab,var(--dark) 30%,transparent)}

.smudge-wrap::before{display:none}
.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 35%,transparent) 28%,color-mix(in oklab,var(--dark) 35%,transparent) 100%),color-mix(in oklab,var(--dark) 30%,transparent)}
.pull-quote{border-bottom:1px solid var(--line-dark)}

.smudge-wrap::before{display:block;height:clamp(80px,10vw,150px)}
.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 35%,transparent) 28%,color-mix(in oklab,var(--dark) 35%,transparent) 70%,var(--dark) 100%),color-mix(in oklab,var(--dark) 30%,transparent)}

.pull-quote{border-bottom:0}
.smudge-wrap::before{height:clamp(160px,22vw,320px);background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 85%,transparent) 20%,color-mix(in oklab,var(--dark) 50%,transparent) 50%,color-mix(in oklab,var(--dark) 18%,transparent) 78%,transparent 100%)}
.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 35%,transparent) 22%,color-mix(in oklab,var(--dark) 35%,transparent) 50%,color-mix(in oklab,var(--dark) 60%,transparent) 72%,color-mix(in oklab,var(--dark) 88%,transparent) 90%,var(--dark) 100%),color-mix(in oklab,var(--dark) 30%,transparent)}

.smudge-wrap::before{height:clamp(240px,26vw,380px);background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 96%,transparent) 12%,color-mix(in oklab,var(--dark) 86%,transparent) 26%,color-mix(in oklab,var(--dark) 68%,transparent) 42%,color-mix(in oklab,var(--dark) 46%,transparent) 58%,color-mix(in oklab,var(--dark) 26%,transparent) 74%,color-mix(in oklab,var(--dark) 10%,transparent) 88%,transparent 100%)}

.pull-quote{padding:clamp(120px,14vw,200px) 0 clamp(150px,18vw,260px)}
.pull-quote__bg{background-position:center 55%;opacity:.7}
.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 30%,transparent) 24%,color-mix(in oklab,var(--dark) 30%,transparent) 46%,color-mix(in oklab,var(--dark) 55%,transparent) 62%,color-mix(in oklab,var(--dark) 80%,transparent) 78%,color-mix(in oklab,var(--dark) 95%,transparent) 91%,var(--dark) 100%)}
.smudge-wrap::before{height:clamp(200px,22vw,320px);background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 92%,transparent) 15%,color-mix(in oklab,var(--dark) 75%,transparent) 32%,color-mix(in oklab,var(--dark) 52%,transparent) 50%,color-mix(in oklab,var(--dark) 30%,transparent) 68%,color-mix(in oklab,var(--dark) 12%,transparent) 85%,transparent 100%)}

.tst-band{padding:clamp(64px,8vw,120px) 0}
.tst-band .container{grid-template-columns:minmax(0,1fr)!important;justify-items:start;gap:clamp(20px,2.5vw,32px)!important}
.tst-band__label{font-size:.85rem;letter-spacing:.2em}
.tst-band .tst-carousel{width:100%}
.tst-band .tst-carousel>.tst-item{flex:0 0 100%!important}
.tst-band .tst{flex-direction:column!important;align-items:flex-start!important;gap:clamp(18px,2vw,28px)!important;max-width:60ch}
.tst-band .tst blockquote{font-size:clamp(1.2rem,2vw,1.6rem)!important;line-height:1.45!important;display:block!important;-webkit-line-clamp:none!important;overflow:visible!important}
.tst-band .tst .who{font-size:.82rem}
.tst-band .tst-nav button{width:44px;height:44px}
@media(max-width:700px){.tst-band .container{grid-template-columns:minmax(0,1fr)!important}}

.em-teaser__img{object-position:50% 0!important}

.wrapfeat{display:block}.wrapfeat::after{content:"";display:block;clear:both}
.wrapfeat .feature__media{float:left;width:min(42%,460px);margin:6px clamp(28px,4vw,56px) 20px 0}
.wrapfeat.flip .feature__media{float:right;order:0;margin:6px 0 20px clamp(28px,4vw,56px)}
.wrapfeat .feature__media img{display:block;height:auto}
@media(max-width:700px){.wrapfeat .feature__media,.wrapfeat.flip .feature__media{float:none;width:100%;margin:0 0 24px}}

.tst-band{padding:clamp(30px,3.6vw,52px) 0}
.tst-band .container{gap:14px!important}
.tst-band .tst{gap:12px!important;max-width:72ch}
.tst-band .tst blockquote{font-size:clamp(.95rem,1.1vw,1.05rem)!important;line-height:1.5!important}
.tst-band .tst .who{font-size:.72rem}
.tst-band .tst-nav{margin-top:2px!important}
.tst-band .tst-nav button{width:34px;height:34px}

.tst-band .container{justify-items:center!important;text-align:center}
.tst-band .tst{align-items:center!important;text-align:center;margin:0 auto}
.tst-band .tst-carousel>.tst-item{justify-content:center}
.tst-band .tst-nav{justify-content:center}

.tst-band .tst .who{font-weight:800!important}

html[data-type] body .copy p>em,html[data-type] body .copy p>em *{font-style:italic!important}

.wlist li p,.wlist li p strong{color:#fff!important}

.tst-band .tst-carousel>.tst-item{align-items:center}
.tst-band .tst{width:100%;height:auto;justify-content:center;flex:none}
.tst-band .tst blockquote,.tst-band .tst-carousel .tst blockquote{flex:none!important;width:100%}
.tst-band .tst .who{width:100%;text-align:center;margin:0}
.tst-band .tst-nav{width:100%;justify-content:center;margin-top:0!important}

.pull-quote__bg{background-position:center 50%!important}

.pull-quote__bg{background-position:center 28%!important}

.pull-quote__bg{background-position:center 40%!important}

.pull-quote__bg{background-position:center 34%!important}

.pull-quote__bg{background-position:center 50%!important;opacity:.85}

.pull-quote__bg{background-position:center 55%!important;opacity:.55}

.pull-quote__bg{background-position:center 72%!important;opacity:.85}

.pull-quote{background:#06080a}
.pull-quote__bg{opacity:1!important;background-position:center 68%!important}
.pull-quote::after{background:linear-gradient(to bottom,rgba(6,8,10,1) 0%,rgba(6,8,10,0.55) 14%,rgba(6,8,10,0.18) 32%,rgba(6,8,10,0.18) 55%,rgba(6,8,10,0.6) 78%,rgba(6,8,10,0.92) 93%,rgba(6,8,10,1) 100%)}
.smudge-wrap::before{background:linear-gradient(to bottom,rgba(6,8,10,1) 0%,rgba(6,8,10,0.9) 15%,rgba(6,8,10,0.72) 32%,rgba(6,8,10,0.5) 50%,rgba(6,8,10,0.28) 68%,rgba(6,8,10,0.1) 85%,transparent 100%)}

.pull-quote{background:var(--dark)}
.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 55%,transparent) 14%,color-mix(in oklab,var(--dark) 18%,transparent) 32%,color-mix(in oklab,var(--dark) 18%,transparent) 55%,color-mix(in oklab,var(--dark) 60%,transparent) 78%,color-mix(in oklab,var(--dark) 92%,transparent) 93%,var(--dark) 100%)}
.smudge-wrap::before{z-index:2;background:linear-gradient(to bottom,var(--dark) 0%,color-mix(in oklab,var(--dark) 92%,transparent) 15%,color-mix(in oklab,var(--dark) 72%,transparent) 32%,color-mix(in oklab,var(--dark) 50%,transparent) 50%,color-mix(in oklab,var(--dark) 28%,transparent) 68%,color-mix(in oklab,var(--dark) 10%,transparent) 85%,transparent 100%)}

.pull-quote::after{background:linear-gradient(to bottom,var(--dark) 0%,var(--dark) 3%,color-mix(in oklab,var(--dark) 60%,transparent) 9%,color-mix(in oklab,var(--dark) 15%,transparent) 18%,color-mix(in oklab,var(--dark) 10%,transparent) 50%,color-mix(in oklab,var(--dark) 15%,transparent) 80%,color-mix(in oklab,var(--dark) 60%,transparent) 91%,var(--dark) 97%,var(--dark) 100%)}
.pull-quote{box-shadow:inset 0 1px 0 rgba(243,241,234,.14),inset 0 -1px 0 rgba(243,241,234,.14)}
.pull-quote figure{position:relative;isolation:isolate}
.pull-quote figure::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:min(1100px,130%);height:260%;transform:translate(-50%,-50%);background:radial-gradient(ellipse at center,rgba(255,244,214,.34) 0%,rgba(255,244,214,.16) 32%,rgba(255,244,214,0) 68%);filter:blur(14px);pointer-events:none}
.pull-quote blockquote{color:#fff!important;text-shadow:0 0 18px rgba(255,248,226,.55),0 0 42px rgba(255,244,214,.35),0 1px 2px rgba(0,0,0,.35)}
.pull-quote figcaption{color:#fff!important;opacity:.9;text-shadow:0 0 14px rgba(255,248,226,.45)}

.pull-quote figure::before{height:200%;background:radial-gradient(ellipse at center,rgba(255,240,205,.2) 0%,rgba(255,240,205,.09) 35%,rgba(255,240,205,0) 66%)}
.pull-quote blockquote{text-shadow:0 1px 3px rgba(10,14,18,.75),0 0 22px rgba(10,14,18,.55),0 0 46px rgba(255,238,200,.22)}
.pull-quote figcaption{text-shadow:0 1px 3px rgba(10,14,18,.75),0 0 16px rgba(10,14,18,.5)}

.pull-quote::after{background:linear-gradient(to bottom,color-mix(in oklab,var(--dark) 70%,transparent) 0,color-mix(in oklab,var(--dark) 0%,transparent) 56px,color-mix(in oklab,var(--dark) 0%,transparent) calc(100% - 56px),color-mix(in oklab,var(--dark) 70%,transparent) 100%),color-mix(in oklab,var(--dark) 22%,transparent)}
.pull-quote{box-shadow:none;border-bottom:1px solid rgba(243,241,234,.22);border-top:1px solid rgba(243,241,234,.22)}
.smudge-wrap::before{display:none}

.pull-quote::after{background:color-mix(in oklab,var(--dark) 22%,transparent)}
.pull-quote{border-top:0;border-bottom:0;box-shadow:inset 0 clamp(28px,3vw,44px) 0 var(--dark),inset 0 calc(-1*clamp(28px,3vw,44px)) 0 var(--dark)}
.pull-quote>.container,.pull-quote__bg,.pull-quote::after{z-index:auto}

.pull-quote{box-shadow:none;border-top:clamp(28px,3vw,44px) solid var(--dark);border-bottom:clamp(28px,3vw,44px) solid var(--dark)}

.pull-quote::after{background:color-mix(in oklab,var(--dark) 48%,transparent)}
.pull-quote figure::before{background:radial-gradient(ellipse at center,rgba(255,240,205,.16) 0%,rgba(255,240,205,.07) 35%,rgba(255,240,205,0) 66%)}

.pull-quote{padding:clamp(52px,6vw,96px) 0 clamp(44px,5vw,80px)}
.pull-quote::after{background:color-mix(in oklab,var(--dark) 68%,transparent)}
.pull-quote figure::before{display:none}
.pull-quote blockquote{color:#fff!important;font-weight:500;text-shadow:0 1px 3px rgba(10,14,18,.8),0 0 18px rgba(10,14,18,.6)}
.pull-quote figcaption{color:#fff!important;opacity:1}

.pull-quote>.container{position:relative;z-index:2}
.pull-quote__bg{z-index:0}
.pull-quote::after{z-index:1}

.pull-quote{border:0;box-shadow:none;background:var(--dark);padding:clamp(36px,4.5vw,64px) 0}
.pull-quote__bg,.pull-quote::after,.pull-quote figure::before{display:none}
.pull-quote blockquote{text-shadow:none}
.pull-quote figcaption{margin-top:clamp(14px,1.6vw,22px)}

.intro-band{background:var(--dark)!important}
.intro-band::before,.intro-band::after{display:none!important}

.pull-quote blockquote{text-transform:none!important;font-style:italic!important}

html[data-type] body .pull-quote blockquote{font-style:italic!important;text-transform:none!important;font-weight:500!important}

html[data-type] body .h-sec .h-sub{display:block;font-size:0.58em!important;font-weight:500!important;margin-top:0.5em;letter-spacing:0!important}
html[data-type] body .podcast-lead{font-weight:400!important}html[data-type] body .podcast-lead strong{font-weight:800!important}

html[data-type] body .h-sec .h-sub{font-size:0.95rem!important;font-weight:800!important;margin-top:0.9em}

.btn[data-wl]{white-space:nowrap}@media(max-width:700px){.btn[data-wl]{white-space:normal;text-align:center}}

.footer .arr{margin-left:.4em;opacity:.7}.footer .social{display:flex;gap:6px;margin-top:1.1em}.footer .social a{display:inline-flex;padding:8px;margin-left:-8px;line-height:0}.footer .social a+a{margin-left:0}.footer .social svg{display:block}

.door-arr{color:var(--ink)}

.fn-links{display:flex;flex-wrap:wrap;gap:.5em 1.4em;align-items:baseline;margin-top:1.8em!important;font-size:.95em}.fn-links>span{font-weight:600;opacity:.7}.fn-links a{text-decoration:underline;text-underline-offset:.2em}

details.more summary{list-style:none;cursor:pointer;display:block}details.more summary::-webkit-details-marker{display:none}.more__cta{display:inline-block;margin-top:.9em;font-weight:600;text-decoration:underline;text-underline-offset:.25em}.more__cta--less,details.more[open] .more__cta--more{display:none}details.more[open] .more__cta--less{display:inline-block}details.more[open] summary{margin-bottom:1.2em}

@media(min-width:701px){.wrapfeat{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,4vw,56px);align-items:stretch}.wrapfeat.flip{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.wrapfeat::after{display:none}.wrapfeat .feature__media,.wrapfeat.flip .feature__media{float:none!important;width:auto!important;margin:0!important;position:relative;min-height:260px}.wrapfeat.flip .feature__media{order:2}.wrapfeat .feature__media img{position:absolute;inset:0;width:100%;height:100%!important;aspect-ratio:auto!important;object-fit:cover}}

.nav-dd{position:relative;display:flex;align-items:center}.nav-dd__menu{position:absolute;top:calc(100% + 10px);left:-18px;min-width:200px;padding:10px 0;background:rgba(18,17,16,.96);border:1px solid rgba(243,241,234,.14);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .2s,transform .2s,visibility .2s;z-index:50;display:flex;flex-direction:column}.nav-dd__menu::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}.nav-dd:hover .nav-dd__menu,.nav-dd:focus-within .nav-dd__menu{opacity:1;visibility:visible;transform:none}.nav-dd__menu a{padding:10px 20px!important;white-space:nowrap;opacity:.9!important;color:#F6F4EE!important}.nav-dd__menu a:hover{opacity:1!important;color:var(--gold-lt,#E9E3D2)!important}
@media(max-width:880px){.nav-dd{display:block}.nav-dd__menu{position:static;opacity:1;visibility:visible;transform:none;background:none;border:0;min-width:0;padding:4px 0 4px 16px}.nav-dd__menu::before{display:none}.nav-dd__menu a{padding:8px 0!important;font-size:.92rem!important}}

.eyebrow a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s,color .2s}.eyebrow a:hover{color:var(--gold);border-bottom-color:var(--gold)}

.vcap,.hero--right .vcap,.ph--right .vcap{right:max(20px,2vw)!important;left:auto!important}
html[data-type] body .vcap{font-size:.66rem!important;letter-spacing:.32em!important;text-transform:uppercase!important;font-weight:600!important;line-height:1!important}

.nav{pointer-events:none}.nav>*{pointer-events:auto}.nav-dd__menu{pointer-events:auto;z-index:100}.nav-dd__menu a{display:block;position:relative;z-index:1;cursor:pointer}.nav-dd:not(:hover):not(:focus-within) .nav-dd__menu{pointer-events:none}.nav-dd__menu::before{top:-24px;height:24px}

@media(max-width:880px){.nav-dd .nav-dd__menu,.nav-dd:not(:hover):not(:focus-within) .nav-dd__menu{pointer-events:auto!important}.nav-dd__menu a{display:block!important}}

@media (max-width:880px){.hero--right{min-height:0}.hero--right .hero__inner{padding-top:calc(62svh - 130px);padding-bottom:clamp(36px,8vw,56px)}}

@media (max-width:880px){.hero--right .hero__title .eyebrow{white-space:normal!important;line-height:1.9;font-size:.72rem!important}.hero--right .hero__title .eyebrow a{white-space:nowrap}}

@media (max-width:880px){.hero--right .hero__title .eyebrow{display:block!important}}

@media (max-width:1180px){.hero--right .hero__title .eyebrow{white-space:normal!important;display:block!important;line-height:1.9}.hero--right .hero__title .eyebrow a{white-space:nowrap}}

@media (max-width:1180px){.hero--right .hero__title .eyebrow{width:auto!important;max-width:100%!important}}

.wlist li>*{min-width:0}.wlist li{grid-template-columns:clamp(54px,6vw,84px) minmax(0,1fr)}.wlist h3,.wlist p{overflow-wrap:break-word}@media(max-width:640px){.wlist li{grid-template-columns:minmax(0,1fr);gap:10px}}

@media(max-width:700px){.photo-copy>.ph__img{background-position:66% 18%!important}}

@media(max-width:880px){.nav{z-index:70!important;position:absolute!important}.brand,.nav-toggle{position:relative;z-index:71}.nav-toggle{display:flex!important;background:rgba(38,43,48,.7)!important}.bk-sum{border-radius:22px!important;padding:14px 20px!important}}

@media(max-width:880px){.nav-overlay{z-index:9998!important}.nav-links{z-index:9999!important}.nav-toggle{z-index:10000!important}.nav-links a{position:relative;z-index:1}}
