:root{
  --bone:#f4f1ec;
  --sage:#dfe5dc;
  --ink:#17231f;
  --cin:#b8432a;
  --cin-lt:#e07a5a;
  --mute:#5a6662;
  --rule:rgba(23,35,31,.16);
  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sans:'Figtree','Segoe UI',system-ui,sans-serif;
  --ease:cubic-bezier(.19,1,.22,1);
  --lift-display:0 1px 2px rgba(0,0,0,.30),0 0 28px rgba(0,0,0,.50),0 0 84px rgba(0,0,0,.50),0 0 170px rgba(0,0,0,.34);
  --lift-body:0 1px 2px rgba(0,0,0,.32),0 0 22px rgba(0,0,0,.46),0 0 64px rgba(0,0,0,.42);
  --lift-micro:0 1px 2px rgba(0,0,0,.38),0 0 16px rgba(0,0,0,.48),0 0 44px rgba(0,0,0,.38);
  --wrap:1200px;
  --mx:calc((100vw - var(--wrap)) / 2 - 56px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--ink);background:var(--bone);position:relative;overflow-x:clip;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
picture{display:contents}
picture>source{display:none}
a{color:inherit}
::selection{background:var(--cin);color:var(--bone)}
:focus-visible{outline:2px solid var(--cin);outline-offset:3px}
:focus:not(:focus-visible){outline:none}
.skip{position:absolute;left:-9999px;top:0;z-index:10000;background:var(--ink);color:var(--bone);padding:12px 18px;font-size:14px;text-decoration:none}
.skip:focus{left:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:600;line-height:1.02;letter-spacing:-.015em;text-wrap:balance}
h2{font-size:clamp(38px,4.6vw,64px)}
h3{font-size:clamp(26px,2.6vw,34px)}
.lede{font-size:clamp(17px,1.35vw,20px);color:var(--mute);max-width:56ch}
.num{font-variant-numeric:tabular-nums}
.kick{font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--mute);margin-bottom:18px;display:flex;align-items:center;gap:12px}
.kick::before{content:"";width:8px;height:8px;background:var(--cin);flex:none}

/* Buttons: hard-edged, never pills */
.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;background:var(--ink);color:var(--bone);text-decoration:none;font-weight:600;font-size:15px;border:1px solid var(--ink);border-radius:2px;transition:background .3s var(--ease),color .3s var(--ease),transform .3s var(--ease)}
.btn:hover{background:var(--cin);border-color:var(--cin);transform:translateY(-2px)}
.btn.line{background:transparent;color:var(--ink)}
.btn.line:hover{background:var(--ink);color:var(--bone)}
.btn.cin{background:var(--cin);border-color:var(--cin)}
.btn.cin:hover{background:var(--ink);border-color:var(--ink)}
.tlink{font-weight:600;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px;transition:border-color .2s,color .2s}
.tlink:hover{color:var(--cin);border-color:var(--cin)}

/* THE MERIDIAN: one line down the page, acupoints per section */
.meridian{position:absolute;bottom:0;left:var(--mx);width:1px;background:var(--rule);pointer-events:none;z-index:1}
.meridian i{position:absolute;top:0;left:0;width:1px;height:var(--fill,0%);background:var(--cin);transition:height .12s linear}
.acu{position:absolute;left:calc(var(--mx) - 5px);top:var(--acu-top,110px);width:11px;height:11px;border-radius:50%;background:var(--bone);border:1px solid var(--ink);z-index:2;transition:background .5s var(--ease),transform .5s var(--ease)}
.acu.on{background:var(--cin);border-color:var(--cin);transform:scale(1.25)}
.acu b{position:absolute;left:20px;top:-6px;font:600 11px/1 var(--sans);letter-spacing:.08em;color:var(--mute);white-space:nowrap}
@media(max-width:1340px){.meridian,.acu{display:none}}
section{position:relative}

/* Nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .4s var(--ease),box-shadow .4s var(--ease)}
.nav .in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 28px;max-width:1400px;margin:0 auto;transition:padding .4s var(--ease)}
.nav.solid{background:rgba(244,241,236,.94);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--rule)}
.nav.solid .in{padding-top:14px;padding-bottom:14px}
.mark{text-decoration:none;line-height:1}
.mark strong{font-family:var(--serif);font-weight:700;font-size:26px;letter-spacing:-.01em;display:block}
.mark small{display:block;font-size:11px;letter-spacing:.06em;color:var(--mute);margin-top:4px;font-weight:500}
.links{display:flex;align-items:center;gap:30px;list-style:none}
.links a{text-decoration:none;font-size:15px;font-weight:500;position:relative;padding:6px 0}
.links a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--cin);transition:right .3s var(--ease)}
.links a:hover::after{right:0}
.links .btn{padding:12px 20px;font-size:14px}
.links .btn::after{display:none}
/* Over the dark hero, before scrolling */
.nav:not(.solid):not(.menu-open){color:var(--bone)}
.nav:not(.solid):not(.menu-open) .mark small{color:rgba(244,241,236,.68)}
.nav:not(.solid):not(.menu-open) .burger{border-color:rgba(244,241,236,.6)}
.nav:not(.solid):not(.menu-open) .burger span{background:var(--bone)}
.burger{display:none;background:none;border:1px solid var(--ink);border-radius:2px;width:44px;height:40px;cursor:pointer;position:relative}
.burger span{position:absolute;left:11px;right:11px;height:1.5px;background:var(--ink);top:13px;transition:transform .3s var(--ease),top .3s var(--ease),opacity .2s}
.burger span:nth-child(2){top:19px}
.burger span:nth-child(3){top:25px}
.burger[aria-expanded="true"] span:nth-child(1){top:19px;transform:rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){top:19px;transform:rotate(-45deg)}
@media(max-width:900px){
  .burger{display:block}
  .links{position:fixed;inset:0;top:0;background:var(--bone);color:var(--ink);flex-direction:column;justify-content:center;align-items:flex-start;padding:100px 32px 40px;gap:8px;transform:translateX(100%);transition:transform .45s var(--ease);z-index:-1}
  .links.open{transform:none}
  .links a{font-family:var(--serif);font-size:38px;font-weight:600}
  .links .btn{font-family:var(--sans);font-size:15px;margin-top:20px;padding:16px 26px}
  .nav.menu-open{background:var(--bone)}
  .mark small{display:none}
}

/* Hero: cinematic. Thames at dawn graded into the ink, her real portrait crossing into the page */
.hero{position:relative;padding:150px 0 clamp(56px,7vw,104px);min-height:100svh;display:flex;align-items:center;background:var(--ink);color:var(--bone);z-index:2}
.hero-bg{position:absolute;inset:0;overflow:hidden;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 55%;filter:saturate(.6) brightness(.74) contrast(1.05);transform:scale(1.06)}
.hero-bg::after{content:"";position:absolute;inset:0;background:
  radial-gradient(ellipse 60% 70% at 18% 52%,rgba(17,27,24,.6),rgba(17,27,24,0) 70%),
  linear-gradient(90deg,rgba(23,35,31,.74) 0%,rgba(23,35,31,.38) 46%,rgba(23,35,31,.12) 100%),
  linear-gradient(0deg,rgba(23,35,31,.8) 0%,rgba(23,35,31,0) 34%)}
.hero-bg .grain{position:absolute;inset:0;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.hero .wrap{position:relative;z-index:1;width:100%;display:grid;grid-template:auto / minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,4vw,64px);align-items:center}
.hero-copy{padding-bottom:0}
.hero h1{font-size:clamp(56px,8.4vw,140px);line-height:.92;letter-spacing:-.03em;max-width:none;white-space:nowrap;color:var(--bone);text-shadow:var(--lift-display)}
.hero h1 em{font-style:italic;font-weight:600;color:var(--cin-lt)}
.hero .lede{margin-top:30px;max-width:44ch;color:rgba(244,241,236,.86);text-shadow:var(--lift-body)}
.hero .fact,.hero .tlink,.breathe span{text-shadow:var(--lift-micro)}
.nav:not(.solid):not(.menu-open) .in>a,.nav:not(.solid):not(.menu-open) .links a:not(.btn){text-shadow:var(--lift-micro)}
.hero .cta{display:flex;flex-wrap:wrap;gap:22px;margin-top:38px;align-items:center}
.hero .tlink{border-color:rgba(244,241,236,.7)}
.hero .tlink:hover{color:var(--cin-lt);border-color:var(--cin-lt)}
.hero .btn.cin:hover{background:var(--bone);border-color:var(--bone);color:var(--ink)}
.hero .fact{margin-top:44px;padding-top:18px;border-top:1px solid rgba(244,241,236,.2);display:flex;flex-wrap:wrap;gap:8px 28px;font-size:14px;color:rgba(244,241,236,.66)}
.hero .fact b{color:var(--bone);font-weight:600}
/* Breathe with me: one acupoint, one slow breath */
.breathe{display:flex;align-items:center;gap:16px;margin-top:34px;background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:0}
.breathe .pt{position:relative;width:46px;height:46px;flex:none;display:grid;place-items:center}
.breathe .pt::before{content:"";width:11px;height:11px;border-radius:50%;background:var(--cin-lt)}
.breathe .pt i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(224,122,90,.7);transform:scale(.3);opacity:.9}
.breathe.on .pt i{animation:breath 10s cubic-bezier(.45,0,.55,1) infinite}
.breathe span{font-size:14px;color:rgba(244,241,236,.72);text-align:left;line-height:1.35}
.breathe span b{display:block;color:var(--bone);font-weight:600;font-size:15px}
@keyframes breath{0%{transform:scale(.3);opacity:.9}40%{transform:scale(1.25);opacity:.55}50%{transform:scale(1.25);opacity:.55}90%{transform:scale(.3);opacity:.9}100%{transform:scale(.3);opacity:.9}}
.portrait{position:relative;align-self:center;justify-self:end;margin:0 clamp(0px,2vw,24px) 0 0;width:min(100%,calc((100svh - 280px) * .6667),460px)}
.portrait img{width:100%;aspect-ratio:2/3;object-fit:cover;object-position:top;position:relative;z-index:1;box-shadow:0 40px 80px -30px rgba(0,0,0,.55)}
.portrait::after{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--cin-lt);z-index:0}
.portrait figcaption{position:absolute;z-index:2;left:0;bottom:0;background:var(--bone);color:var(--ink);padding:12px 20px 11px 16px;font-size:13px;line-height:1.4;max-width:270px}
.portrait figcaption b{display:block;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:0}
.portrait figcaption span{color:var(--mute)}
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
  .hero-copy>*{animation:rise 1s var(--ease) both}
  .hero-copy>*:nth-child(1){animation-delay:.1s}
  .hero-copy>*:nth-child(2){animation-delay:.25s}
  .hero-copy>*:nth-child(3){animation-delay:.35s}
  .hero-copy>*:nth-child(4){animation-delay:.45s}
  .hero-copy>*:nth-child(5){animation-delay:.55s}
  .portrait{animation:fadein 1.3s var(--ease) .3s both}
  .hero-bg img{animation:settle 2.4s var(--ease) both}
}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes fadein{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes settle{from{transform:scale(1.14)}to{transform:scale(1.06)}}
@media(max-width:900px){
  .hero{padding-top:120px;min-height:0;display:block}
  .hero .wrap{grid-template:auto / 1fr;align-items:start}
  .hero-copy{padding-bottom:44px}
  .hero h1{white-space:normal;max-width:9ch}
  .hero h1 br{display:none}
  .portrait{margin:0 18px -64px 18px;max-width:400px;width:auto;justify-self:start}
  .portrait::after{inset:-14px 14px 14px -14px}
}

/* Credential rule strip */
.creds{border-bottom:1px solid var(--rule);background:var(--bone);padding-top:0}
@media(max-width:900px){.creds{padding-top:88px}}
.creds ul{list-style:none;display:grid;grid-template-columns:repeat(5,1fr)}
.creds li{padding:22px 24px 22px 0;font-size:14px;line-height:1.45;color:var(--mute);border-right:1px solid var(--rule);margin-right:24px}
.creds li:last-child{border-right:0;margin-right:0}
.creds li b{display:block;color:var(--ink);font-weight:600;margin-bottom:2px}
@media(max-width:1000px){.creds ul{grid-template-columns:repeat(2,1fr)}.creds li:nth-child(2n){border-right:0;margin-right:0}.creds li:nth-child(5){grid-column:1/-1;border-right:0}}
@media(max-width:560px){.creds ul{grid-template-columns:1fr}.creds li{border-right:0;margin-right:0;padding:14px 0;border-bottom:1px solid var(--rule)}.creds li:last-child{border-bottom:0}}

/* Section chrome */
.sec{padding:clamp(88px,10vw,150px) 0}
.sec-head{max-width:820px;margin-bottom:clamp(44px,5vw,72px)}
.sec-head .lede{margin-top:20px}

/* Two doors */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--rule)}
.door{padding:clamp(36px,4vw,56px) clamp(28px,4vw,56px) clamp(40px,4vw,56px) 0;border-right:1px solid var(--rule)}
.door+.door{padding-left:clamp(28px,4vw,56px);padding-right:0;border-right:0}
.door figure{overflow:hidden;background:var(--sage)}
.door figure img{aspect-ratio:4/3;object-fit:cover;transition:transform 1.2s var(--ease)}
.door:hover figure img{transform:scale(1.04)}
.door.body figure img{object-position:50% 40%}
.door h3{margin-top:28px}
.door .lede{margin-top:14px;font-size:16.5px;max-width:48ch}
.door ul{list-style:none;margin-top:26px;border-top:1px solid var(--rule)}
.door li{display:flex;gap:16px;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--rule);font-size:15.5px}
.door li span{color:var(--mute);font-size:14px;text-align:right;flex:none;max-width:52%}
.door-end{margin-top:28px;display:flex;flex-wrap:wrap;gap:20px;align-items:center}
@media(max-width:820px){
  .doors{grid-template-columns:1fr}
  .door{border-right:0;padding-right:0;border-bottom:1px solid var(--rule)}
  .door+.door{padding-left:0;border-bottom:0}
}

/* SIGNATURE: the concern index */
.cx{background:var(--sage)}
.cx .grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,80px);align-items:start}
.cx-list{list-style:none;border-top:1px solid rgba(23,35,31,.22)}
.cx-list li{border-bottom:1px solid rgba(23,35,31,.22)}
.cx-row{width:100%;background:none;border:0;text-align:left;cursor:pointer;display:grid;grid-template-columns:44px 1fr auto;align-items:baseline;gap:16px;padding:18px 0;font:inherit;color:var(--ink);transition:padding .35s var(--ease)}
.cx-row small{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--mute)}
.cx-row span{font-family:var(--serif);font-weight:600;font-size:clamp(24px,2.5vw,34px);line-height:1.05;letter-spacing:-.01em;transition:color .25s}
.cx-row i{width:10px;height:10px;border-radius:50%;border:1px solid var(--ink);transition:background .3s,transform .3s var(--ease);align-self:center}
.cx-row:hover span{color:var(--cin)}
li.on .cx-row{padding-left:10px}
li.on .cx-row span{color:var(--cin)}
li.on .cx-row i{background:var(--cin);border-color:var(--cin);transform:scale(1.3)}
.cx-detail{display:none;padding:0 0 22px 60px;color:var(--mute);font-size:15.5px;max-width:60ch}
.cx-detail b{display:block;color:var(--ink);font-weight:600;margin-bottom:6px}
.cx-panel{position:sticky;top:110px;background:var(--bone);padding:clamp(28px,3vw,44px);min-height:360px;display:flex;flex-direction:column;gap:18px}
.cx-panel .door-tag{display:flex;gap:10px;flex-wrap:wrap}
.cx-panel .door-tag em{font-style:normal;font-size:13px;font-weight:600;padding:8px 12px;border:1px solid var(--ink);border-radius:2px}
.cx-panel .door-tag em.cin{background:var(--cin);border-color:var(--cin);color:var(--bone)}
.cx-panel h3{font-size:clamp(28px,3vw,40px)}
.cx-panel p{color:var(--mute);font-size:16px}
.cx-panel .note{font-size:13.5px;color:var(--mute);border-top:1px solid var(--rule);padding-top:14px;margin-top:auto}
.cx-panel .btn{align-self:flex-start}
@media(max-width:900px){
  .cx .grid{grid-template-columns:1fr}
  .cx-panel{display:none}
  li.on .cx-detail{display:block}
  .cx-row span{font-size:24px}
  .cx-detail{padding-left:60px}
}

/* About */
.about .grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,110px);align-items:start}
.about figure{position:relative;margin-top:12px}
.about figure img{aspect-ratio:4/5;object-fit:cover}
.about figure::before{content:"";position:absolute;top:-24px;left:-24px;right:40px;bottom:40px;background:var(--sage);z-index:-1}
.about figure figcaption{margin-top:14px;font-size:13.5px;color:var(--mute);line-height:1.5}
.about blockquote{font-family:var(--serif);font-weight:600;font-size:clamp(26px,2.8vw,38px);line-height:1.15;letter-spacing:-.01em;max-width:20ch}
.about blockquote em{color:var(--cin);font-style:italic}
.about .body{margin-top:28px;display:grid;gap:16px;max-width:60ch;color:var(--mute)}
.about .body strong{color:var(--ink);font-weight:600}
.about dl{margin-top:36px;border-top:1px solid var(--rule)}
.about dl div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--rule);font-size:15px}
.about dt{color:var(--mute);font-weight:500}
.about dd a{text-decoration:none;border-bottom:1px solid var(--rule)}
.about dd a:hover{color:var(--cin);border-color:var(--cin)}
@media(max-width:820px){.about .grid{grid-template-columns:1fr}.about figure{max-width:380px;margin-left:24px}.about dl div{grid-template-columns:1fr;gap:4px}}

/* How it works: steps on the line */
.steps{background:var(--ink);color:var(--bone);position:relative;overflow:hidden}
.steps .kick{color:rgba(244,241,236,.6)}
.steps .lede{color:rgba(244,241,236,.72)}
.steps h2{color:var(--bone)}
.steps ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,56px);margin-top:clamp(44px,5vw,72px);position:relative;counter-reset:s}
.steps ol::before{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:rgba(244,241,236,.25)}
.steps li{position:relative;padding-top:34px}
.steps li::before{content:"";position:absolute;left:0;top:0;width:11px;height:11px;border-radius:50%;background:var(--cin)}
.steps li small{font-size:12px;letter-spacing:.08em;font-weight:600;color:rgba(244,241,236,.6)}
.steps h3{margin-top:8px;color:var(--bone)}
.steps p{margin-top:12px;color:rgba(244,241,236,.72);font-size:15.5px;max-width:34ch}
.steps p b{color:var(--bone);font-weight:600}
.steps .end{margin-top:clamp(40px,5vw,64px);display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.steps .end .btn{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.steps .end .btn:hover{background:var(--cin);color:var(--bone);border-color:var(--cin)}
.steps .end span{font-size:14px;color:rgba(244,241,236,.6)}
@media(max-width:820px){.steps ol{grid-template-columns:1fr;gap:28px}.steps ol::before{left:5px;right:auto;top:0;bottom:0;width:1px;height:auto}.steps li{padding:0 0 0 34px}}

/* Testimonials: the one cinnabar band on the page */
.words{padding:clamp(110px,13vw,190px) 0;background:var(--cin);color:var(--bone);position:relative;overflow:hidden}
.words .kick{color:rgba(244,241,236,.75)}
.words .kick::before{background:var(--bone)}
.words .grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start;position:relative}
.q{padding-left:28px;border-left:1px solid rgba(244,241,236,.55)}
.q p{font-family:var(--serif);font-weight:600;line-height:1.14;letter-spacing:-.01em}
.q.big p{font-size:clamp(30px,3.6vw,52px);max-width:22ch}
.q footer{margin-top:22px;font-size:14px;color:rgba(244,241,236,.75);font-family:var(--sans);font-weight:500}
.q footer b{color:var(--bone);font-weight:600}
.words .side{display:grid;gap:40px;padding-top:12px}
.words .side .q p{font-size:clamp(19px,1.6vw,23px)}
@media(max-width:820px){.words .grid{grid-template-columns:1fr}}

/* Listen and watch */
.media .lede{margin-top:20px}
.media .grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,80px);align-items:center}
.radio{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,3vw,44px);align-items:center;margin-top:clamp(32px,4vw,52px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--rule)}
.radio img{aspect-ratio:1;object-fit:cover;filter:saturate(.9)}
.radio h3{font-size:clamp(26px,2.6vw,34px)}
.radio p{margin-top:12px;color:var(--mute);font-size:16px}
.radio .tlink{display:inline-block;margin-top:18px}
.film{position:relative;aspect-ratio:9/16;max-height:640px;width:100%;max-width:360px;justify-self:center;background:var(--ink);color:var(--bone);border:0;padding:0;cursor:pointer;overflow:hidden;font:inherit;text-align:left;display:block}
.film::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(224,122,90,.32),rgba(23,35,31,0) 58%)}
.film .ring{position:absolute;left:50%;top:38%;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;border:1px solid rgba(224,122,90,.6);display:grid;place-items:center;transition:transform .6s var(--ease),background .4s}
.film .ring::after{content:"";width:0;height:0;border-left:20px solid var(--bone);border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:6px}
.film:hover .ring{transform:scale(1.08);background:rgba(224,122,90,.18)}
.film .cap{position:absolute;left:28px;right:28px;bottom:30px}
.film .cap b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(30px,2.6vw,38px);line-height:1.02;letter-spacing:-.01em}
.film .cap b em{color:var(--cin-lt)}
.film .cap span{display:block;margin-top:12px;font-size:13.5px;color:rgba(244,241,236,.66)}
.film iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:860px){.media .lede{margin-top:20px}
.media .grid{grid-template-columns:1fr}.radio{grid-template-columns:150px 1fr}}

/* Workshops: dated programme at The Springs */
.shop{background:var(--sage)}
.prog{list-style:none;border-top:1px solid rgba(23,35,31,.3)}
.prog li{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(0,1.2fr) auto;gap:clamp(16px,3vw,40px);align-items:center;padding:22px 0;border-bottom:1px solid rgba(23,35,31,.18)}
.prog .dt{font-family:var(--serif);font-weight:600;line-height:.9;letter-spacing:-.02em}
.prog .dt b{display:block;font-size:52px;font-weight:600;font-variant-numeric:lining-nums tabular-nums}
.prog .dt small{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.06em;font-weight:600;color:var(--mute);margin-top:6px}
.prog h3{font-size:clamp(24px,2.3vw,30px)}
.prog h3 small{display:block;font-family:var(--sans);font-size:13px;font-weight:500;color:var(--mute);letter-spacing:0;margin-top:6px}
.prog p{color:var(--mute);font-size:15.5px}
.prog .go{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right}
.prog .go strong{font-size:17px}
.prog .go a{font-size:14px}
.prog li:hover h3{color:var(--cin)}
.also{margin-top:clamp(36px,4vw,56px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,64px);align-items:start}
.also h3{font-size:clamp(26px,2.4vw,32px)}
.also ul{list-style:none;border-top:1px solid rgba(23,35,31,.3)}
.also li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid rgba(23,35,31,.18);font-size:15.5px}
.also li span{color:var(--mute);white-space:nowrap}
.shop-end{margin-top:32px;display:flex;flex-wrap:wrap;gap:22px;align-items:center;font-size:14.5px;color:var(--mute)}
@media(max-width:860px){
  .prog li{grid-template-columns:72px 1fr;grid-template-areas:"d t" "d p" "d g";align-items:start;gap:6px 18px}
  .prog .dt{grid-area:d}.prog h3{grid-area:t}.prog p{grid-area:p}.prog .go{grid-area:g;align-items:flex-start;text-align:left;flex-direction:row;gap:16px;margin-top:6px}
  .prog .dt b{font-size:42px}
  .also{grid-template-columns:1fr}
}

/* Beyond the clinic */
.beyond{padding-top:clamp(64px,7vw,100px);padding-bottom:clamp(64px,7vw,100px)}
.beyond .list{list-style:none;border-top:1px solid var(--rule);margin-top:clamp(28px,3vw,44px)}
.beyond li a{display:grid;grid-template-columns:60px minmax(0,1fr) minmax(0,1.1fr) auto;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--rule);text-decoration:none;transition:padding .35s var(--ease)}
.beyond li a:hover{padding-left:12px}
.beyond li a:hover .t{color:var(--cin)}
.beyond .n{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--mute)}
.beyond .t{font-family:var(--serif);font-weight:600;font-size:clamp(24px,2.6vw,34px);line-height:1.05;letter-spacing:-.01em;transition:color .25s}
.beyond .d{color:var(--mute);font-size:15px}
.beyond .arr{width:36px;height:36px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;transition:background .3s,color .3s}
.beyond li a:hover .arr{background:var(--ink);color:var(--bone)}
@media(max-width:760px){.beyond li a{grid-template-columns:44px 1fr auto;grid-template-areas:"n t a" "n d a"}.beyond .n{grid-area:n}.beyond .t{grid-area:t}.beyond .d{grid-area:d}.beyond .arr{grid-area:a}}

/* Contact */
.contact{border-top:1px solid var(--rule)}
.contact .grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,100px)}
.contact address{font-style:normal;display:grid;gap:22px;margin-top:32px}
.contact address div{padding-top:14px;border-top:1px solid var(--rule);font-size:15.5px}
.contact address small{display:block;font-size:12px;letter-spacing:.06em;font-weight:600;color:var(--mute);margin-bottom:6px}
.contact address a{text-decoration:none}
.contact address a:hover{color:var(--cin)}
.map{margin-top:32px;position:relative;background:var(--sage);aspect-ratio:16/10;display:grid;place-items:center;text-align:center;padding:24px}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map p{font-size:14px;color:var(--mute);max-width:36ch;margin-bottom:14px}
form{display:grid;gap:18px;grid-template-columns:1fr 1fr}
.f{display:grid;gap:8px}
.f.full{grid-column:1/-1}
.f .btn{justify-self:start}
label{font-size:13px;font-weight:600;letter-spacing:.02em}
input,select,textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px 0;border-radius:0;transition:border-color .2s}
select{appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%2317231f' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right center;cursor:pointer}
textarea{min-height:120px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-bottom:2px solid var(--cin)}
.form-status{grid-column:1/-1;font-size:14.5px;min-height:1.4em;color:transparent;transition:color .3s}
.form-status.is-success{color:var(--ink);font-weight:500}
.form-status.is-error{color:var(--cin);font-weight:500}
.form-submit:disabled{opacity:.6;cursor:wait;transform:none}
.form-note{grid-column:1/-1;font-size:13px;color:var(--mute)}
@media(max-width:820px){.contact .grid{grid-template-columns:1fr}form{grid-template-columns:1fr}.f.full{grid-column:auto}}

/* Footer */
.foot{background:var(--ink);color:var(--bone);position:relative;overflow:hidden;padding:clamp(64px,8vw,110px) 0 120px}
.foot .ghost{position:absolute;left:0;right:0;bottom:-.18em;font-family:var(--serif);font-weight:700;font-size:clamp(200px,17.5vw,330px);line-height:1;letter-spacing:-.04em;color:rgba(244,241,236,.05);white-space:nowrap;text-align:center;pointer-events:none;user-select:none}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;position:relative}
.foot h4{font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:-.01em;line-height:1}
.foot p{color:rgba(244,241,236,.65);font-size:14.5px;margin-top:14px;max-width:34ch}
.foot h5{font-size:12px;letter-spacing:.08em;font-weight:600;color:rgba(244,241,236,.55);margin-bottom:14px}
.foot ul{list-style:none;display:grid;gap:9px}
.foot ul a{text-decoration:none;font-size:15px;color:rgba(244,241,236,.85)}
.foot ul a:hover{color:var(--cin)}
.foot .base{position:relative;margin-top:clamp(44px,5vw,72px);padding-top:22px;border-top:1px solid rgba(244,241,236,.15);display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;font-size:13px;color:rgba(244,241,236,.55)}
.foot .base a{color:inherit;text-decoration:none}
.foot .base a:hover{color:var(--bone)}
@media(max-width:820px){.foot .cols{grid-template-columns:1fr 1fr}.foot .cols>div:first-child{grid-column:1/-1}}

/* Mobile CTA bar */
.mbar{display:none}
@media(max-width:820px){
  .mbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:40;border-top:1px solid var(--rule)}
  .mbar a{padding:16px;text-align:center;font-weight:600;font-size:15px;text-decoration:none;background:var(--bone)}
  .mbar a.cin{background:var(--cin);color:var(--bone)}
  body{padding-bottom:54px}
  .foot{padding-bottom:140px}
}

/* Reveals: two styles */
.rv{opacity:0;transform:translateX(-26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv-img{opacity:0;transform:scale(1.03);transition:opacity 1s var(--ease),transform 1.2s var(--ease)}
.rv.in,.rv-img.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}

.shot *,.shot *::before,.shot *::after{animation:none!important;transition:none!important}
.shot .hero{min-height:1000px}.shot .meridian{top:1000px}
.shot .rv,.shot .rv-img{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto!important}
  .rv,.rv-img{opacity:1!important;transform:none!important;filter:none!important}
}

/* ======================= 9 Nov 2026: multi-page build ======================= */
.nav .links a[aria-current="page"]::after{right:0}
.meridian{top:100svh}
body.sub .meridian{top:78svh}
.shot body.sub .meridian{top:780px}

/* Sub-page hero: the home hero's grade, shorter, text bottom-left */
.phero{position:relative;min-height:78svh;padding:170px 0 clamp(64px,7vw,104px);display:flex;align-items:flex-end;background:var(--ink);color:var(--bone);z-index:2;overflow:hidden}
.phero .hero-bg img{object-position:var(--pos,50% 50%)}
.phero .hero-bg::after{background:
  radial-gradient(ellipse 70% 80% at 20% 78%,rgba(17,27,24,.66),rgba(17,27,24,0) 70%),
  linear-gradient(90deg,rgba(23,35,31,.7) 0%,rgba(23,35,31,.3) 55%,rgba(23,35,31,.12) 100%),
  linear-gradient(0deg,rgba(23,35,31,.86) 0%,rgba(23,35,31,0) 48%)}
.phero .wrap{position:relative;z-index:1;width:100%}
.crumb{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.04em;color:rgba(244,241,236,.74);margin-bottom:22px;text-shadow:var(--lift-micro)}
.crumb::before{content:"";width:8px;height:8px;background:var(--cin-lt);flex:none}
.crumb a{text-decoration:none}.crumb a:hover{color:var(--bone)}
.phero h1{font-size:clamp(52px,7.2vw,118px);line-height:.94;letter-spacing:-.03em;max-width:12ch;color:var(--bone);text-shadow:var(--lift-display)}
.phero h1 em{font-style:italic;font-weight:600;color:var(--cin-lt)}
.phero .lede{margin-top:26px;max-width:54ch;color:rgba(244,241,236,.86);text-shadow:var(--lift-body)}
.phero .cta{display:flex;flex-wrap:wrap;gap:22px;margin-top:34px;align-items:center}
.phero .tlink{border-color:rgba(244,241,236,.7);text-shadow:var(--lift-micro)}
.phero .tlink:hover{color:var(--cin-lt);border-color:var(--cin-lt)}
.phero .btn.cin:hover{background:var(--bone);border-color:var(--bone);color:var(--ink)}
.phero.with-portrait{align-items:center}
.phero.with-portrait .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);align-items:center}
.phero.with-portrait .portrait{width:min(100%,calc((78svh - 220px) * .6667),400px)}
.shot .phero{min-height:780px}
@media(min-width:821px) and (prefers-reduced-motion:no-preference){
  .phero .wrap>*,.phero .wrap>div>*{animation:rise 1s var(--ease) both}
  .phero .wrap>*:nth-child(2),.phero .wrap>div>*:nth-child(2){animation-delay:.15s}
  .phero .wrap>*:nth-child(3),.phero .wrap>div>*:nth-child(3){animation-delay:.28s}
  .phero .wrap>*:nth-child(4){animation-delay:.4s}
  .phero .hero-bg img{animation:settle 2.4s var(--ease) both}
}
@media(max-width:900px){
  .phero{min-height:0;padding-top:130px}
  .phero.with-portrait .wrap{grid-template-columns:1fr}
  .phero.with-portrait .portrait{width:auto;max-width:340px;justify-self:start;margin:12px 0 0 14px}
}

/* Home: the two doors as photographic gates */
.doorsec{padding-bottom:clamp(64px,7vw,110px)}
.gates{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.8vw,26px)}
.gate{position:relative;display:block;min-height:clamp(500px,46vw,660px);overflow:hidden;color:var(--bone);text-decoration:none;background:var(--ink);isolation:isolate}
.gate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.68) brightness(.82) contrast(1.04);transition:transform 1.6s var(--ease),filter .8s var(--ease);z-index:-2}
.gate::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(23,35,31,.94) 0%,rgba(23,35,31,.62) 36%,rgba(23,35,31,.1) 72%)}
.gate:hover img{transform:scale(1.05);filter:saturate(.8) brightness(.86) contrast(1.04)}
.gate .in{position:absolute;left:0;right:0;bottom:0;padding:clamp(28px,3.4vw,52px);display:block}
.gate small{display:block;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:none;color:rgba(244,241,236,.72);text-shadow:var(--lift-micro)}
.gate h3{margin-top:12px;font-size:clamp(42px,4.4vw,68px);line-height:.95;color:var(--bone);text-shadow:var(--lift-display)}
.gate p{margin-top:16px;max-width:40ch;font-size:16.5px;color:rgba(244,241,236,.86);text-shadow:var(--lift-body)}
.gate .tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.gate .tags span{font-size:12.5px;font-weight:500;padding:6px 10px;border:1px solid rgba(244,241,236,.34);border-radius:2px;color:rgba(244,241,236,.88);backdrop-filter:blur(2px)}
.gate .go{display:inline-flex;align-items:center;gap:12px;margin-top:28px;font-weight:600;font-size:15px;padding-bottom:4px;border-bottom:1px solid var(--cin-lt);transition:gap .4s var(--ease),color .3s}
.gate:hover .go{gap:20px;color:var(--cin-lt)}
.xdoor{padding:0}
.gate.wide{min-height:clamp(380px,38vw,520px)}
.gate.wide .in{max-width:var(--wrap);left:50%;transform:translateX(-50%);width:100%;padding-left:28px;padding-right:28px;padding-bottom:clamp(44px,5vw,72px)}
@media(max-width:820px){.gates{grid-template-columns:1fr}.gate{min-height:520px}}

/* Concern index additions */
.cx-go{display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.cx-detail .tlink{display:table;margin-top:12px;font-size:14px}

/* Home: about as a cinematic band */
.band{background:var(--ink);color:var(--bone);overflow:hidden;padding:clamp(100px,11vw,170px) 0}
.band .hero-bg img{object-position:50% 50%;filter:saturate(.5) brightness(.5) contrast(1.05)}
.band .hero-bg::after{background:linear-gradient(90deg,rgba(23,35,31,.55) 0%,rgba(23,35,31,.82) 50%,rgba(23,35,31,.92) 100%)}
.band .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(40px,6vw,110px);align-items:center}
.frame{position:relative;max-width:420px}
.frame img{aspect-ratio:4/5;object-fit:cover;object-position:top;position:relative;z-index:1;box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
.frame::after{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--cin-lt);z-index:0}
.band .kick{color:rgba(244,241,236,.66)}
.band .kick::before{background:var(--cin-lt)}
.band blockquote{font-family:var(--serif);font-weight:600;font-size:clamp(32px,3.6vw,54px);line-height:1.08;letter-spacing:-.015em;max-width:20ch;color:var(--bone)}
.band blockquote em{color:var(--cin-lt);font-style:italic}
.band-copy>p:not(.kick){margin-top:26px;color:rgba(244,241,236,.76);max-width:56ch}
.band-copy strong{color:var(--bone);font-weight:600}
.stats{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:34px 0 30px;padding-top:24px;border-top:1px solid rgba(244,241,236,.18)}
.stats li{font-size:13.5px;line-height:1.4;color:rgba(244,241,236,.66)}
.stats b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(32px,3vw,44px);line-height:1;color:var(--bone);margin-bottom:8px}
.band .tlink{border-color:var(--cin-lt)}
.band .tlink:hover{color:var(--cin-lt)}
@media(max-width:820px){.band .wrap{grid-template-columns:1fr}.frame{max-width:300px;margin-left:18px}.stats{grid-template-columns:1fr 1fr}}

/* Testimonials: tighter big quote; single-quote variant */
.q.big p{font-size:clamp(28px,3vw,44px)}
.words .grid.solo{grid-template-columns:1fr}
.words .grid.solo .q.big p{max-width:30ch}

/* Home: next workshops as dated cards */
.head2{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:clamp(40px,4vw,60px)}
.head2 .sec-head{margin-bottom:0}
.next{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,26px)}
.wk{background:var(--sage);padding:clamp(28px,3vw,40px);display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.wk:hover{transform:translateY(-4px);box-shadow:0 30px 50px -36px rgba(23,35,31,.6)}
.wk .dt b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(84px,8vw,120px);line-height:.8;letter-spacing:-.03em;color:var(--cin)}
.wk .dt small{display:block;margin-top:12px;font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--mute)}
.wk h3{font-size:clamp(26px,2.4vw,32px);margin-top:10px}
.wk p{color:var(--mute);font-size:15.5px}
.wk .go{margin-top:auto;padding-top:16px;border-top:1px solid rgba(23,35,31,.18);display:flex;justify-content:space-between;align-items:center}
.wk .go a{font-size:14px}
.wk-empty{color:var(--mute);font-size:16px;padding:24px 0}
@media(max-width:900px){.next{grid-template-columns:1fr}}

/* Listen and watch: on sage, the film card is the dark object */
.media{background:var(--sage)}

/* Closing band: steps over the graded river */
.steps.closer{padding:clamp(110px,12vw,180px) 0}
.steps.closer .hero-bg img{filter:saturate(.5) brightness(.45) contrast(1.05);object-position:50% 60%}
.steps.closer .hero-bg::after{background:linear-gradient(90deg,rgba(23,35,31,.9) 0%,rgba(23,35,31,.72) 60%,rgba(23,35,31,.55) 100%)}
.steps.closer .wrap{position:relative;z-index:1}
.steps.closer h2{font-size:clamp(42px,5.4vw,80px);max-width:16ch}
.steps .end a[href^="tel"]{color:var(--bone);text-decoration:none;font-weight:600}

/* Sub-page intro: a big serif statement beside the body copy */
.intro .grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,6vw,110px);align-items:start}
.intro .big{font-family:var(--serif);font-weight:600;font-size:clamp(32px,3.4vw,52px);line-height:1.08;letter-spacing:-.015em}
.intro .big em{color:var(--cin);font-style:italic}
.intro .body{display:grid;gap:16px;color:var(--mute);font-size:17px;max-width:58ch}
.intro .body strong,.intro .body b{color:var(--ink);font-weight:600}
.intro .hl{padding-top:18px;border-top:1px solid var(--rule);font-size:15px}
@media(max-width:860px){.intro .grid{grid-template-columns:1fr}}

/* Approach / treatment cards */
.approaches{background:var(--bone);padding-top:0}
.cards{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.card{padding:clamp(30px,3vw,44px);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background .45s var(--ease);position:relative}
.card::before{content:"";position:absolute;left:-1px;top:-1px;width:0;height:2px;background:var(--cin);transition:width .6s var(--ease)}
.card:hover{background:var(--sage)}
.card:hover::before{width:calc(100% + 1px)}
.card small{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--mute)}
.card h3{margin-top:30px;font-size:clamp(28px,2.6vw,36px)}
.card .sub{margin-top:8px;font-size:13.5px;font-weight:600;color:var(--cin)}
.card p:not(.sub){margin-top:14px;color:var(--mute);font-size:15.5px}
@media(max-width:1000px){.cards{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.cards{grid-template-columns:1fr}}

/* Price band */
.price{background:var(--sage);padding:clamp(64px,7vw,100px) 0}
.price .grid{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(28px,5vw,80px);align-items:center}
.price .amt{font-family:var(--serif);font-weight:600;font-size:clamp(110px,13vw,200px);line-height:.78;letter-spacing:-.04em;color:var(--cin)}
.price h3{font-size:clamp(28px,2.8vw,38px)}
.price p{margin-top:10px;color:var(--mute);max-width:52ch}
@media(max-width:900px){.price .grid{grid-template-columns:1fr}.price .btn{justify-self:start}}

/* Places / first visit: image beside a list */
.pgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,100px);align-items:center}
.pgrid figure{overflow:hidden}
.pgrid figure img{aspect-ratio:4/5;object-fit:cover;width:100%}
.firstvisit .pgrid figure img{aspect-ratio:1}
.plist{list-style:none;border-top:1px solid var(--rule);margin-top:8px}
.firstvisit .plist{margin-top:34px}
.plist li{padding:22px 0 22px 34px;border-bottom:1px solid var(--rule);position:relative;color:var(--mute);font-size:15.5px}
.plist li::before{content:"";position:absolute;left:0;top:30px;width:11px;height:11px;border-radius:50%;background:var(--cin)}
.plist b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(24px,2.2vw,30px);line-height:1.1;color:var(--ink);margin-bottom:6px;letter-spacing:-.01em}
.num-list{counter-reset:n}
.num-list li::before{counter-increment:n;content:counter(n,decimal-leading-zero);width:auto;height:auto;background:none;border-radius:0;font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--cin);top:31px}
.places{padding-top:clamp(88px,10vw,150px)}
@media(max-width:820px){.pgrid{grid-template-columns:1fr}}

/* "What people come to me with" */
.cfor{background:var(--sage)}
.cfor .grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,6vw,100px);align-items:start}
.clist{list-style:none;border-top:1px solid rgba(23,35,31,.24)}
.clist li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-bottom:1px solid rgba(23,35,31,.18)}
.clist span{font-family:var(--serif);font-weight:600;font-size:clamp(22px,2.2vw,30px);line-height:1.1}
.clist em{font-style:normal;font-size:13px;font-weight:600;color:var(--cin);white-space:nowrap}
@media(max-width:860px){.cfor .grid{grid-template-columns:1fr}.clist li{flex-direction:column;gap:4px}}

/* About: credentials */
.creds2{background:var(--sage)}
.creds2 .grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,100px);align-items:start}
.creds2 dl{border-top:1px solid rgba(23,35,31,.24)}
.creds2 dl div{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid rgba(23,35,31,.18);font-size:15.5px}
.creds2 dt{color:var(--mute);font-weight:600}
.creds2 dd a{text-decoration:none;border-bottom:1px solid var(--rule)}
.creds2 dd a:hover{color:var(--cin);border-color:var(--cin)}
@media(max-width:820px){.creds2 .grid{grid-template-columns:1fr}.creds2 dl div{grid-template-columns:1fr;gap:4px}}
.story .big{max-width:18ch}

/* Workshops page */
.teams{background:var(--bone)}
.teams .also{margin-top:0}
.teams h2{font-size:clamp(36px,4vw,56px)}
/* Cormorant defaults to old-style figures: big numerals must be lining */
.wk .dt b,.stats b,.price .amt,.prog .dt b{font-variant-numeric:lining-nums tabular-nums}
.firstvisit{padding-top:clamp(40px,4vw,64px)}
/* Cross-page fade between the six pages */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
.foot .ph{margin-top:18px}
.foot .ph a{color:var(--bone);text-decoration:none}
.foot .ph a:hover{color:var(--cin-lt)}
