@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-mono-400-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-mono-400-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/ibm-plex-mono-500-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/ibm-plex-mono-500-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:400 800;font-display:swap;src:url("fonts/inter-tight-400-800-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:400 800;font-display:swap;src:url("fonts/inter-tight-400-800-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root {
  --paper:#f6ede4;
  --paper-2:#ead8ce;
  --ink:#2b1d20;
  --plum:#713e43;
  --plum-deep:#41242b;
  --coral:#f47d5f;
  --peach:#f4baa3;
  --lilac:#c4a8ae;
  --mint:#c6d3c4;
  --paper-rgb:246,237,228;
  --ink-rgb:43,29,32;
  --plum-rgb:113,62,67;
  --plum-deep-rgb:65,36,43;
  --coral-rgb:244,125,95;
  --photo-filter:sepia(.18) saturate(.72) hue-rotate(-8deg) contrast(1.03);
  --photo-hover-filter:sepia(.12) saturate(.9) hue-rotate(-8deg) contrast(1.05);
  --photo-quiet-filter:sepia(.2) saturate(.58) hue-rotate(-9deg) contrast(1.02);
  --photo-mono-filter:grayscale(.66) sepia(.22) saturate(.66) hue-rotate(-8deg) contrast(1.08);
  --photo-rest-filter:grayscale(.48) sepia(.28) saturate(.58) hue-rotate(-9deg) brightness(.78) contrast(1.04);
  --line:rgba(var(--ink-rgb),.18);
  --light-line:rgba(255,255,255,.18);
  --mono:"IBM Plex Mono","Liberation Mono",ui-monospace,SFMono-Regular,Consolas,monospace;
  --display:"Inter Tight","Inter Display",Inter,Arial,sans-serif;
  --pad:clamp(20px,4vw,72px);
  --header-h:76px;
}
html[data-theme="plum"]{--paper:#f3ebe4;--paper-2:#e9ddd4;--ink:#23171d;--plum:#4b2635;--plum-deep:#2c1620;--coral:#f36c52;--peach:#f3b19e;--lilac:#b8a4ca;--mint:#bdd4ca;--paper-rgb:243,235,228;--ink-rgb:35,23,29;--plum-rgb:75,38,53;--plum-deep-rgb:44,22,32;--coral-rgb:243,108,82;--photo-filter:sepia(.1) saturate(.72) hue-rotate(-5deg) contrast(1.03);--photo-hover-filter:sepia(.08) saturate(.88) hue-rotate(-5deg) contrast(1.05);--photo-quiet-filter:sepia(.12) saturate(.56) hue-rotate(-5deg) contrast(1.02);--photo-mono-filter:grayscale(.74) sepia(.18) saturate(.62) hue-rotate(-5deg) contrast(1.08);--photo-rest-filter:grayscale(.6) sepia(.22) saturate(.52) hue-rotate(-5deg) brightness(.76) contrast(1.04)}
html[data-theme="sand"]{--paper:#f7efe2;--paper-2:#eadbc8;--ink:#2d221d;--plum:#795b49;--plum-deep:#49362d;--coral:#e88b5c;--peach:#efbd98;--lilac:#c9b1a4;--mint:#c5d0bf;--paper-rgb:247,239,226;--ink-rgb:45,34,29;--plum-rgb:121,91,73;--plum-deep-rgb:73,54,45;--coral-rgb:232,139,92;--photo-filter:sepia(.34) saturate(.54) hue-rotate(-12deg) brightness(1.04) contrast(1.02);--photo-hover-filter:sepia(.28) saturate(.7) hue-rotate(-12deg) brightness(1.04) contrast(1.04);--photo-quiet-filter:sepia(.38) saturate(.44) hue-rotate(-12deg) brightness(1.03) contrast(1.02);--photo-mono-filter:grayscale(.58) sepia(.38) saturate(.48) hue-rotate(-12deg) brightness(1.02) contrast(1.07);--photo-rest-filter:grayscale(.48) sepia(.42) saturate(.42) hue-rotate(-12deg) brightness(.82) contrast(1.03)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--display);-webkit-font-smoothing:antialiased;overflow-x:clip;max-width:100%}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{color:inherit}
img{max-width:100%}
::selection{background:var(--coral);color:white}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.progress-track{position:fixed;left:0;top:0;right:0;height:3px;z-index:130;background:transparent}
.progress-track span{display:block;width:0;height:100%;background:var(--coral)}
.site-header{position:fixed;inset:0 0 auto;height:var(--header-h);padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;z-index:120;color:white;border-bottom:1px solid transparent;transition:background .35s ease,color .35s ease,border-color .35s ease}
.site-header.scrolled{background:rgba(var(--paper-rgb),.94);backdrop-filter:blur(18px);color:var(--ink);border-color:var(--line)}
.header-home{display:flex;align-items:center;gap:clamp(12px,1.6vw,26px);width:max-content}.portfolio-link{padding-right:clamp(12px,1.6vw,24px);border-right:1px solid currentColor;display:flex;align-items:center;gap:8px;font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.07em;opacity:.78;transition:opacity .25s ease,color .25s ease}.portfolio-link span{font-size:16px}.portfolio-link:hover{opacity:1;color:var(--peach)}.site-header.scrolled .portfolio-link:hover{color:var(--coral)}
.brand{display:flex;align-items:center;gap:12px;width:max-content}
.brand-symbol{width:38px;height:38px;border:1px solid currentColor;display:grid;place-items:center;font-weight:800;font-size:20px;line-height:1}
.brand-copy{display:grid;gap:1px}
.brand-copy strong{font-size:18px;letter-spacing:.12em;line-height:1}
.brand-copy small{font:500 9px/1.2 var(--mono);text-transform:uppercase;letter-spacing:.1em;opacity:.7}
.desktop-nav{display:flex;align-items:center;gap:clamp(20px,3vw,46px);font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.desktop-nav a{position:relative;padding:8px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:1px;background:currentColor;transition:right .3s ease}
.desktop-nav a:hover::after{right:0}
.header-actions{justify-self:end;display:flex;align-items:center;gap:16px}
.theme-switcher{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid rgba(255,255,255,.28);background:rgba(var(--plum-deep-rgb),.12);backdrop-filter:blur(10px)}
.site-header.scrolled .theme-switcher{border-color:var(--line);background:rgba(255,255,255,.5)}
.theme-dot{--swatch:#713e43;position:relative;width:19px;height:19px;border:1px solid rgba(255,255,255,.62);border-radius:50%;padding:0;background:var(--swatch);cursor:pointer;box-shadow:inset 0 0 0 2px rgba(0,0,0,.06);transition:transform .25s ease,box-shadow .25s ease}.theme-dot-plum{--swatch:#4b2635}.theme-dot-sand{--swatch:#b78969}.theme-dot:hover{transform:scale(1.13)}.theme-dot[aria-pressed="true"]{box-shadow:0 0 0 2px currentColor,inset 0 0 0 2px rgba(255,255,255,.55);transform:scale(.86)}.theme-dot span{display:none}
.mobile-theme-switcher{display:none}
.phone-link{font:500 10px/1 var(--mono);letter-spacing:.04em}
.book-link{min-height:42px;border:1px solid currentColor;padding:0 17px;display:flex;align-items:center;font:500 10px/1 var(--mono);text-transform:uppercase;transition:background .25s,color .25s}
.book-link:hover{background:white;color:var(--plum)}
.site-header.scrolled .book-link:hover{background:var(--plum);color:white}
.menu-toggle{display:none;justify-self:end;width:44px;height:44px;border:0;background:transparent;padding:0;position:relative}
.menu-toggle span{position:absolute;left:9px;right:9px;height:1px;background:currentColor;transition:transform .3s,top .3s}
.menu-toggle span:first-child{top:17px}.menu-toggle span:nth-child(2){top:26px}
.menu-toggle[aria-expanded="true"] span:first-child{top:22px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){top:22px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:110;background:var(--plum);color:white;padding:calc(var(--header-h) + 40px) var(--pad) 32px;display:flex;flex-direction:column;justify-content:space-between}
.mobile-menu[hidden]{display:none}
.mobile-menu nav{display:grid}
.mobile-menu nav a{font-size:clamp(34px,9vw,70px);font-weight:700;letter-spacing:-.04em;padding:14px 0;border-bottom:1px solid var(--light-line)}
.mobile-menu-meta{display:flex;justify-content:space-between;gap:20px;font:500 11px/1.4 var(--mono);text-transform:uppercase}
.section{padding-left:var(--pad);padding-right:var(--pad)}
.section-label{display:grid;grid-template-columns:48px 110px 1fr;gap:16px;align-items:center;font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em}
.section-label span{color:var(--coral)}
.section-label small{opacity:.55}
.section-label.light{color:white}.section-label.light span{color:var(--peach)}
.reveal{opacity:1;transform:none}
.is-animated .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.75,.25,1),transform .8s cubic-bezier(.2,.75,.25,1)}
.is-animated .reveal.is-visible{opacity:1;transform:none}

/* HERO */
.hero{min-height:100svh;background:var(--plum);color:white;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);grid-template-rows:1fr auto;position:relative;overflow:hidden;padding:var(--header-h) var(--pad) 0}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:8.333vw 8.333vw;pointer-events:none}
.hero-copy{padding:clamp(56px,8vh,108px) clamp(28px,4vw,74px) 54px 0;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}
.hero-index{display:flex;justify-content:space-between;max-width:660px;font:500 9px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.55;margin-bottom:clamp(48px,7vh,90px)}
.hero-eyebrow{font:500 11px/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--peach);margin:0 0 18px}
.hero-title{margin:0;font-size:clamp(72px,10.2vw,168px);line-height:.74;letter-spacing:-.078em;font-weight:800;text-transform:uppercase}
.title-line{display:block;transform-origin:left center}
.title-accent{color:var(--coral);font-size:.66em;line-height:1.2;letter-spacing:-.045em;margin-top:.08em}
.hero-bottom{margin-top:clamp(44px,6vh,76px);display:grid;grid-template-columns:minmax(260px,440px) 180px;gap:clamp(34px,5vw,76px);align-items:end}
.hero-bottom p{margin:0;color:rgba(255,255,255,.72);font-size:clamp(14px,1.25vw,18px);line-height:1.55}
.action-link{display:grid;grid-template-columns:1fr 38px;align-items:center;gap:14px;width:min(100%,300px);padding:12px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font:600 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;transition:padding .28s ease}
.action-link i{font-style:normal;width:38px;height:38px;border:1px solid currentColor;display:grid;place-items:center;transition:transform .35s ease,background .35s,color .35s}
.action-link:hover{padding-left:10px}.action-link:hover i{transform:rotate(45deg);background:currentColor;color:var(--paper)}
.action-link-light{border-color:rgba(255,255,255,.42);color:white}
.action-link-light:hover i{color:var(--plum)}
.hero-media{position:relative;min-height:calc(100svh - var(--header-h) - 52px);margin-top:32px;align-self:stretch;overflow:hidden;clip-path:polygon(9% 0,100% 0,100% 88%,79% 100%,0 100%,0 14%);background:var(--paper-2);cursor:crosshair}
.hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:var(--photo-filter);transition:filter .7s ease,transform 1.1s cubic-bezier(.2,.75,.25,1)}
.hero-media:hover>img{filter:var(--photo-hover-filter);transform:scale(1.018)}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--plum-rgb),.05),rgba(var(--plum-rgb),.38)),linear-gradient(90deg,transparent 60%,rgba(var(--coral-rgb),.16));pointer-events:none}
.hero-grid{position:absolute;inset:0;z-index:2;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:25% 20%;mix-blend-mode:soft-light;pointer-events:none}
.skin-scope{position:absolute;z-index:5;width:160px;height:160px;border-radius:50%;border:1px solid rgba(255,255,255,.8);box-shadow:0 0 0 10px rgba(255,255,255,.1);background-image:url("images/hero.webp");background-repeat:no-repeat;background-size:var(--scope-bg-w,100%) var(--scope-bg-h,100%);background-position:var(--scope-bg-x,50%) var(--scope-bg-y,50%);filter:var(--photo-hover-filter);opacity:0;transform:translate(-50%,-50%) scale(.85);transition:opacity .25s ease,transform .25s ease;pointer-events:none;overflow:hidden}
.skin-scope::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.4);border-radius:50%}
.skin-scope span{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);white-space:nowrap;font:500 8px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:white;background:rgba(var(--plum-rgb),.62);padding:5px 7px}
.hero-media.scope-active .skin-scope{opacity:1;transform:translate(-50%,-50%) scale(1)}
.hero-annotation{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none}
.hero-annotation path,.hero-annotation circle{stroke:rgba(255,255,255,.68);stroke-width:1.2}.hero-annotation .dashed{stroke-dasharray:6 8}
.hero-label{position:absolute;z-index:4;color:white;background:rgba(var(--plum-rgb),.58);backdrop-filter:blur(8px);padding:10px 12px;border-left:2px solid var(--coral);display:grid;gap:4px}
.hero-label small{font:500 8px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;opacity:.65}.hero-label strong{font-size:12px;font-weight:600}
.hero-label-a{right:5%;top:40%}.hero-label-b{left:5%;bottom:10%}
.hero-number{position:absolute;right:3%;bottom:-.08em;z-index:2;color:rgba(255,255,255,.18);font-size:clamp(120px,16vw,260px);font-weight:800;line-height:.8;letter-spacing:-.08em}
.hero-footer{grid-column:1/-1;height:52px;border-top:1px solid var(--light-line);display:grid;grid-template-columns:repeat(4,1fr);align-items:center;font:500 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;position:relative;z-index:2}
.hero-footer span:not(:last-child){border-right:1px solid var(--light-line)}
.hero-footer span{height:100%;display:flex;align-items:center;padding-left:18px}
.statement-marquee{height:76px;background:var(--coral);color:var(--plum-deep);display:flex;align-items:center;overflow:hidden;border-bottom:1px solid rgba(var(--ink-rgb),.2)}
.statement-marquee>div{display:flex;align-items:center;gap:28px;width:max-content;animation:marquee 26s linear infinite;font-size:clamp(22px,2.4vw,38px);font-weight:800;letter-spacing:-.035em;white-space:nowrap;padding-left:28px}
.statement-marquee i{font-style:normal;font-size:.55em}
@keyframes marquee{to{transform:translateX(-50%)}}

/* METHOD */
.method{padding-top:150px;padding-bottom:150px;display:grid;grid-template-columns:180px minmax(0,1.15fr) minmax(300px,.65fr);gap:clamp(30px,4vw,68px);border-bottom:1px solid var(--line)}
.method>.section-label{grid-column:1;align-self:start;position:sticky;top:110px;grid-template-columns:38px 1fr}.method>.section-label small{grid-column:1/-1;margin-top:8px}
.method-title{grid-column:2}.method-title h2,.zones-intro h2,.session-heading h2,.sensory-head h2,.specialist-dossier h2,.reviews-head h2,.faq-heading h2,.booking-form-wrap h2{font-size:clamp(48px,6.9vw,112px);line-height:.84;letter-spacing:-.065em;margin:0;font-weight:800}
.method-copy{grid-column:3;align-self:end}.method-copy>p{font-size:clamp(16px,1.5vw,21px);line-height:1.55;margin:0 0 22px}.legal-note{font:400 11px/1.55 var(--mono);opacity:.58;border-top:1px solid var(--line);padding-top:17px}
.method-strip{grid-column:2/-1;display:grid;grid-template-columns:1.2fr .9fr .75fr;gap:10px;height:clamp(340px,42vw,620px);margin-top:42px;align-items:end}
.strip-image{margin:0;position:relative;overflow:hidden;background:var(--paper-2)}
.strip-image img{width:100%;height:100%;object-fit:cover;display:block;filter:var(--photo-quiet-filter);transition:transform 1.1s cubic-bezier(.2,.75,.25,1),filter .8s ease,clip-path .8s ease}
.strip-image figcaption{position:absolute;left:0;bottom:0;background:var(--paper);padding:9px 12px;font:500 9px/1 var(--mono);text-transform:uppercase}
.strip-image-a{height:100%}.strip-image-b{height:78%}.strip-image-c{height:60%}
.strip-image-a img{object-position:center 50%}.strip-image-b img{object-position:center 46%}.strip-image-c img{object-position:center 45%}
.strip-image-a:hover img{transform:scale(1.045) translateX(1.5%);filter:var(--photo-hover-filter)}
.strip-image-b img{clip-path:polygon(0 0,100% 0,100% 100%,12% 100%)}.strip-image-b:hover img{clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);filter:var(--photo-hover-filter)}
.strip-image-c::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 20px,color-mix(in srgb,var(--coral) 28%,transparent) 20px 21px);opacity:0;transition:opacity .6s}.strip-image-c:hover::after{opacity:1}.strip-image-c:hover img{filter:var(--photo-mono-filter);transform:translateY(-2%)}
.method-notes{grid-column:2/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:54px}
.method-note{padding:26px 28px 0 0;display:grid;grid-template-columns:42px 1fr;gap:12px;border-right:1px solid var(--line);min-height:176px}
.method-note:last-child{border-right:0;padding-left:28px}.method-note:nth-child(2){padding-left:28px}
.method-note>span{font:500 11px/1 var(--mono);color:var(--coral)}.method-note strong{font-size:18px;line-height:1.2}.method-note p{grid-column:2;margin:0;color:rgba(var(--ink-rgb),.62);font-size:14px;line-height:1.5}

/* ZONES */
.zones{min-height:920px;background:var(--plum-deep);color:white;display:grid;grid-template-columns:minmax(360px,.78fr) minmax(500px,1.22fr);position:relative}
.zones-panel{padding:130px var(--pad) 110px;display:flex;flex-direction:column;border-right:1px solid var(--light-line);position:relative;z-index:3}
.zones-panel>.section-label{grid-template-columns:42px 120px 1fr;margin-bottom:74px}
.zones-intro h2{font-size:clamp(56px,5.7vw,90px)}
.zones-intro p{max-width:500px;color:rgba(255,255,255,.62);line-height:1.55;font-size:16px;margin:30px 0 58px}
.zone-tabs{margin-top:auto;display:grid;border-top:1px solid var(--light-line)}
.zone-tab{border:0;border-bottom:1px solid var(--light-line);background:transparent;color:white;min-height:70px;display:grid;grid-template-columns:45px 1fr;align-items:center;text-align:left;cursor:pointer;padding:0;opacity:.42;transition:opacity .35s,padding .35s,background .35s}
.zone-tab span{font:500 9px/1 var(--mono);color:var(--peach)}.zone-tab strong{font-size:17px;font-weight:600}
.zone-tab:hover,.zone-tab.active{opacity:1;padding-left:14px;background:rgba(255,255,255,.045)}
.zone-stage{position:sticky;top:0;height:100svh;min-height:780px;overflow:hidden;background:color-mix(in srgb,var(--plum) 62%,var(--paper))}
.zone-photo{position:absolute;inset:0}.zone-photo img{width:100%;height:100%;object-fit:cover;object-position:center 50%;filter:var(--photo-filter);transform:scale(1.04);transition:object-position 1.2s ease,filter 1.2s ease,transform 1.2s ease}
.zone-stage[data-zone-stage="jaw"] .zone-photo img{object-position:45% 52%;transform:scale(1.1)}
.zone-stage[data-zone-stage="neck"] .zone-photo img{object-position:56% 64%;transform:scale(1.15)}
.zone-stage[data-zone-stage="shoulders"] .zone-photo img{object-position:65% 68%;transform:scale(1.12)}
.zone-stage[data-zone-stage="rest"] .zone-photo img{object-position:center 48%;filter:var(--photo-rest-filter);transform:scale(1.02)}
.zone-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--plum-deep-rgb),.72),transparent 35%),linear-gradient(180deg,transparent 48%,rgba(var(--plum-deep-rgb),.76));pointer-events:none}
.zone-diagram{position:absolute;inset:3% 1% 0 8%;width:88%;height:94%;z-index:2}
.body-outline{stroke:rgba(255,255,255,.28);stroke-width:1.3}.body-outline.subtle{stroke:rgba(255,255,255,.18)}
.zone-shape{stroke:var(--coral);stroke-width:2;stroke-dasharray:8 9;opacity:0;transform-origin:center;transition:opacity .65s ease,stroke-dashoffset 1.2s linear,transform .65s ease}.zone-shape.active{opacity:1;stroke-dashoffset:-34;transform:scale(1.01)}
.zone-caption{position:absolute;z-index:4;left:8%;right:8%;bottom:7%;display:grid;grid-template-columns:180px 1fr;column-gap:30px;row-gap:8px;padding-top:20px;border-top:1px solid rgba(255,255,255,.46)}
.zone-caption span{font:500 9px/1.3 var(--mono);text-transform:uppercase;color:var(--peach)}.zone-caption strong{font-size:clamp(22px,2.2vw,34px);line-height:1.05}.zone-caption p{grid-column:2;color:rgba(255,255,255,.7);max-width:560px;margin:6px 0 0;line-height:1.5;font-size:14px}
.zone-coordinates{position:absolute;right:4%;top:4%;z-index:3;font:500 9px/1 var(--mono);color:rgba(255,255,255,.54);text-transform:uppercase}

/* SESSION */
.session{padding-top:150px;padding-bottom:150px;display:grid;grid-template-columns:180px 1fr;gap:clamp(32px,5vw,78px);background:var(--paper)}
.session>.section-label{align-self:start;grid-template-columns:38px 1fr}.session>.section-label small{grid-column:1/-1;margin-top:8px}
.session-heading{display:grid;grid-template-columns:minmax(400px,1fr) minmax(260px,.5fr);gap:50px;align-items:end}.session-heading h2{font-size:clamp(58px,7vw,114px)}.session-heading p{margin:0 0 6px;line-height:1.55;color:rgba(var(--ink-rgb),.65);font-size:16px}
.session-track{grid-column:1/-1;margin-top:90px;display:grid;grid-template-columns:repeat(5,1fr);position:relative;border-top:1px solid var(--line)}
.session-progress{position:absolute;left:0;right:0;top:-2px;height:3px;background:transparent}.session-progress span{display:block;height:100%;width:0;background:var(--coral);transition:width .8s cubic-bezier(.2,.75,.25,1)}
.session-step{min-height:300px;padding:28px 28px 20px 0;border-right:1px solid var(--line);display:flex;flex-direction:column;position:relative;opacity:.38;transition:opacity .55s ease,background .55s ease,padding .55s ease}.session-step:last-child{border-right:0;padding-left:28px}.session-step:not(:first-of-type){padding-left:28px}.session-step.active{opacity:1;background:rgba(var(--coral-rgb),.045);padding-top:38px}
.step-number{font:500 9px/1 var(--mono);color:var(--coral);margin-bottom:42px}.session-step h3{font-size:24px;margin:18px 0 10px}.session-step p{margin:0;color:rgba(var(--ink-rgb),.62);font-size:14px;line-height:1.5}
.step-icon{width:70px;height:70px;position:relative;border:1px solid var(--line)}
.icon-talk::before{content:"";position:absolute;inset:15px;border:1px solid var(--ink);border-radius:50%}.icon-talk::after{content:"";position:absolute;left:34px;bottom:11px;width:12px;height:12px;border-left:1px solid var(--ink);transform:skew(-25deg)}
.icon-scan::before{content:"";position:absolute;inset:13px;border:1px dashed var(--ink);border-radius:50%}.icon-scan::after{content:"+";position:absolute;inset:0;display:grid;place-items:center;font:400 26px/1 var(--mono)}
.icon-hand::before{content:"";position:absolute;width:34px;height:46px;border:1px solid var(--ink);border-radius:18px 18px 8px 8px;left:18px;top:12px;transform:rotate(-18deg)}
.icon-pause::before,.icon-pause::after{content:"";position:absolute;top:16px;bottom:16px;width:8px;background:var(--ink)}.icon-pause::before{left:22px}.icon-pause::after{right:22px}
.icon-note::before{content:"";position:absolute;left:16px;right:16px;top:18px;height:1px;background:var(--ink);box-shadow:0 12px 0 var(--ink),0 24px 0 var(--ink)}.icon-note::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--coral);right:14px;top:14px}
.session-image{grid-column:1/-1;margin-top:80px;height:clamp(420px,52vw,760px);position:relative;overflow:hidden;background:var(--plum)}
.session-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:var(--photo-quiet-filter);transition:transform 1.6s cubic-bezier(.2,.75,.25,1),filter 1.1s}
.session-image:hover img{transform:scale(1.035);filter:var(--photo-hover-filter)}
.session-image>span{position:absolute;left:22px;top:22px;background:var(--paper);padding:9px 11px;font:500 9px/1 var(--mono);text-transform:uppercase;z-index:3}
.session-scan{position:absolute;left:0;right:0;top:-18%;height:28%;background:linear-gradient(180deg,transparent,rgba(var(--coral-rgb),.22),transparent);mix-blend-mode:screen;animation:scan 7s ease-in-out infinite;pointer-events:none}
@keyframes scan{0%,18%{transform:translateY(-20%);opacity:0}40%{opacity:1}82%,100%{transform:translateY(470%);opacity:0}}

/* SENSORY */
.sensory{padding-top:130px;padding-bottom:150px;background:var(--plum);color:white;display:grid;grid-template-columns:180px 1fr;gap:clamp(30px,5vw,76px)}
.sensory>.section-label{grid-template-columns:38px 1fr;align-self:start}.sensory>.section-label small{grid-column:1/-1;margin-top:8px}
.sensory-head{display:grid;grid-template-columns:1fr minmax(250px,.5fr);gap:50px;align-items:end}.sensory-head h2{font-size:clamp(54px,6.7vw,108px)}.sensory-head p{margin:0 0 7px;color:rgba(255,255,255,.65);line-height:1.55}
.sensory-collage{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:12px;margin-top:76px;align-items:end}
.sensory-card{margin:0;position:relative;overflow:hidden;background:color-mix(in srgb,var(--plum) 58%,var(--paper));min-height:300px}
.sensory-card img{width:100%;height:100%;object-fit:cover;display:block;filter:var(--photo-quiet-filter);transition:transform 1.1s cubic-bezier(.2,.75,.25,1),filter .75s,clip-path .8s}
.sensory-card figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(180deg,transparent,rgba(var(--plum-deep-rgb),.88));padding:80px 22px 22px;display:grid;grid-template-columns:38px 1fr;gap:4px 12px;z-index:3}
.sensory-card figcaption span{font:500 9px/1 var(--mono);color:var(--peach)}.sensory-card figcaption strong{font-size:23px}.sensory-card figcaption p{grid-column:2;margin:4px 0 0;color:rgba(255,255,255,.65);font-size:13px;line-height:1.4}
.sensory-card-one{height:610px}.sensory-card-two{height:460px}.sensory-card-three{height:520px}
.sensory-card-one img{object-position:60% 48%}.sensory-card-one:hover img{transform:scale(1.06) translateX(-2%);filter:var(--photo-hover-filter)}
.sensory-card-one::after{content:"";position:absolute;inset:0;border:0 solid var(--coral);transition:border-width .5s}.sensory-card-one:hover::after{border-width:8px}
.sensory-card-two img{clip-path:polygon(0 0,100% 0,100% 100%,0 87%);object-position:center 50%}.sensory-card-two:hover img{clip-path:polygon(0 8%,100% 0,100% 92%,0 100%);filter:var(--photo-mono-filter)}
.sensory-card-two::before{content:"VITA / TOUCH";position:absolute;right:-62px;top:62px;z-index:3;transform:rotate(90deg);font:500 9px/1 var(--mono);letter-spacing:.12em;opacity:.6}
.sensory-card-three::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 25px,rgba(255,255,255,.15) 25px 26px);opacity:0;transition:opacity .6s}.sensory-card-three:hover::after{opacity:1}.sensory-card-three:hover img{transform:translateY(-3%) scale(1.02);filter:var(--photo-rest-filter)}

/* SPECIALIST */
.specialist{display:grid;grid-template-columns:minmax(420px,.92fr) minmax(420px,1.08fr);min-height:900px;padding:0;background:var(--paper)}
.specialist-photo{position:relative;overflow:hidden;min-height:850px;background:var(--paper-2)}
.specialist-photo img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block;filter:var(--photo-mono-filter);transition:filter 1.1s ease,transform 1.5s cubic-bezier(.2,.75,.25,1)}
.specialist-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(var(--plum-rgb),.55)),linear-gradient(90deg,rgba(var(--coral-rgb),.2),transparent 40%);mix-blend-mode:multiply}
.specialist-photo:hover img{filter:var(--photo-hover-filter);transform:scale(1.025)}
.photo-code{position:absolute;left:24px;bottom:24px;z-index:3;color:white;font:500 9px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.specialist-dossier{padding:130px var(--pad) 110px;display:flex;flex-direction:column;justify-content:center}
.specialist-dossier>.section-label{grid-template-columns:42px 120px 1fr;margin-bottom:64px}.specialist-dossier h2{font-size:clamp(62px,7vw,108px)}
.specialist-lead{max-width:650px;font-size:clamp(18px,1.75vw,24px);line-height:1.45;margin:44px 0 48px}
.dossier-list{margin:0 0 48px;border-top:1px solid var(--line)}.dossier-list>div{display:grid;grid-template-columns:140px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:16px 0}.dossier-list dt{font:500 9px/1.5 var(--mono);text-transform:uppercase;color:rgba(var(--ink-rgb),.52)}.dossier-list dd{margin:0;font-size:15px}

/* REVIEWS */
.reviews{padding-top:130px;padding-bottom:125px;background:var(--plum-deep);color:white;overflow:hidden}
.reviews-head{display:grid;grid-template-columns:180px 1fr auto;gap:50px;align-items:end}.reviews-head>.section-label{grid-template-columns:38px 1fr;align-self:start}.reviews-head>.section-label small{grid-column:1/-1;margin-top:8px}.reviews-head h2{font-size:clamp(50px,6vw,98px)}
.review-actions{display:flex;gap:8px}.review-actions button{width:52px;height:52px;border:1px solid var(--light-line);background:transparent;color:white;cursor:pointer;font-size:20px;transition:background .25s,color .25s}.review-actions button:hover{background:white;color:var(--plum)}
.review-rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:74px calc(var(--pad)*-1) 0;padding:0 var(--pad)}.review-rail::-webkit-scrollbar{display:none}
.review-card{flex:0 0 min(72vw,840px);min-height:430px;border:1px solid var(--light-line);scroll-snap-align:start;padding:36px;display:grid;grid-template-rows:auto 1fr auto;background:rgba(255,255,255,.025);position:relative;overflow:hidden}
.review-card::before{content:"";position:absolute;width:250px;height:250px;border:1px solid rgba(var(--coral-rgb),.35);border-radius:50%;right:-70px;top:-90px;transition:transform 1s cubic-bezier(.2,.75,.25,1)}.review-card:hover::before{transform:scale(1.35) translate(-25px,30px)}
.review-card>span{font:500 10px/1 var(--mono);color:var(--peach)}.review-card blockquote{margin:38px 0;font-size:clamp(28px,3.1vw,48px);line-height:1.1;letter-spacing:-.035em;max-width:760px}.review-card footer{font:500 10px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.55)}
.review-disclaimer{font:400 10px/1.5 var(--mono);color:rgba(255,255,255,.45);margin:30px 0 0;max-width:650px}

/* FAQ */
.faq{padding-top:150px;padding-bottom:150px;display:grid;grid-template-columns:minmax(360px,.72fr) minmax(500px,1.28fr);gap:8vw}
.faq-heading{position:sticky;top:115px;align-self:start}.faq-heading>.section-label{grid-template-columns:38px 110px 1fr;margin-bottom:64px}.faq-heading h2{font-size:clamp(54px,5.7vw,94px);margin-bottom:48px}
.faq-list{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;min-height:108px;display:grid;grid-template-columns:48px 1fr 36px;gap:20px;align-items:center;cursor:pointer}
summary::-webkit-details-marker{display:none}
summary>span{font:500 9px/1 var(--mono);color:var(--coral)}
summary strong{font-size:19px;font-weight:600}
summary i{font-style:normal;width:34px;height:34px;border:1px solid var(--line);display:grid;place-items:center;transition:transform .35s,background .35s,color .35s}
details[open] summary i{transform:rotate(45deg);background:var(--plum);color:white}
details p{margin:0;padding:0 72px 28px 68px;color:rgba(var(--ink-rgb),.63);line-height:1.65;font-size:15px}

/* BOOKING */
.booking{display:grid;grid-template-columns:.92fr 1.08fr;min-height:860px;background:var(--coral);color:var(--plum-deep)}
.booking-image{position:relative;overflow:hidden;min-height:780px;clip-path:polygon(0 0,100% 0,92% 100%,0 100%)}
.booking-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:var(--photo-filter);transition:transform 1.4s cubic-bezier(.2,.75,.25,1),filter .8s ease}.booking-image:hover img{transform:scale(1.04);filter:var(--photo-hover-filter)}
.booking-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(var(--plum-deep-rgb),.7))}
.booking-location{position:absolute;left:30px;bottom:30px;z-index:2;color:white;display:grid;gap:8px}.booking-location span{font:500 9px/1 var(--mono);text-transform:uppercase}.booking-location strong{font-size:24px;line-height:1.1}
.booking-form-wrap{padding:100px var(--pad);display:flex;flex-direction:column;justify-content:center}
.booking-kicker{font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;margin:0 0 40px}.booking-form-wrap h2{font-size:clamp(64px,7vw,112px)}.booking-form-wrap>p:not(.booking-kicker){max-width:580px;line-height:1.55;font-size:17px;margin:28px 0 42px}
.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:760px}
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.lead-form label{display:grid;gap:8px}.lead-form label:nth-child(3),.lead-form .consent,.lead-form button,.form-status{grid-column:1/-1}.lead-form label>span{font:500 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em}
.lead-form input,.lead-form textarea{width:100%;border:0;border-bottom:1px solid rgba(var(--ink-rgb),.42);background:rgba(255,255,255,.18);padding:15px 12px;color:var(--plum-deep);outline:none;resize:vertical;border-radius:0}.lead-form input:focus,.lead-form textarea:focus{background:rgba(255,255,255,.42);border-color:var(--plum-deep)}
.lead-form input::placeholder,.lead-form textarea::placeholder{color:rgba(var(--ink-rgb),.48)}
.lead-form .consent{grid-template-columns:auto 1fr;align-items:center;gap:10px}.lead-form .consent input{width:17px;height:17px;margin:0}.lead-form .consent span{text-transform:none;font-family:var(--display);font-size:12px;letter-spacing:0}
.lead-form button{border:1px solid var(--plum-deep);background:var(--plum-deep);color:white;min-height:60px;display:grid;grid-template-columns:1fr 44px;align-items:center;cursor:pointer;text-align:left;padding:0 8px 0 18px;text-transform:uppercase;font:600 11px/1 var(--mono);transition:background .3s,color .3s}.lead-form button i{font-style:normal;height:44px;border-left:1px solid rgba(255,255,255,.24);display:grid;place-items:center;transition:transform .35s}.lead-form button:hover{background:white;color:var(--plum-deep)}.lead-form button:hover i{transform:rotate(45deg);border-color:rgba(var(--ink-rgb),.18)}.lead-form button:disabled{opacity:.5;cursor:wait}
.form-status{margin:0;font-size:12px;line-height:1.5;min-height:18px}
.booking-direct{max-width:760px;margin-top:28px;border-top:1px solid rgba(var(--ink-rgb),.28)}.booking-direct :is(a,[data-demo-external-link]){display:grid;grid-template-columns:110px 1fr;border-bottom:1px solid rgba(var(--ink-rgb),.28);padding:15px 0;font:500 10px/1.3 var(--mono);text-transform:uppercase}.booking-direct :is(a,[data-demo-external-link]) span{opacity:.55}
[data-demo-external-link]{cursor:default}

/* PORTFOLIO APPENDIX */
.vita-evolution{padding-top:clamp(92px,10vw,150px);padding-bottom:clamp(92px,10vw,150px);background:var(--plum-deep);color:white;border-top:1px solid var(--light-line)}
.vita-evolution-head{display:grid;grid-template-columns:180px minmax(0,1.1fr) minmax(280px,.62fr);gap:clamp(28px,5vw,78px);align-items:start;margin-bottom:72px}.case-evolution-kicker{font:500 9px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--peach)}.vita-evolution-head h2{margin:0;font-size:clamp(48px,6.4vw,102px);line-height:.86;letter-spacing:-.065em;font-weight:800}.vita-evolution-head p{margin:4px 0 0;font-size:16px;line-height:1.65;color:rgba(255,255,255,.64)}
.vita-evolution-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,42px)}
.vita-evolution-card{min-width:0;margin:0}.vita-browser{overflow:hidden;border:1px solid rgba(255,255,255,.22);background:white;box-shadow:0 28px 80px rgba(0,0,0,.2);transition:transform .7s cubic-bezier(.2,.75,.25,1),box-shadow .7s ease,border-color .7s ease}.vita-evolution-card:hover .vita-browser{transform:translateY(-8px);border-color:var(--peach);box-shadow:0 38px 90px rgba(0,0,0,.32)}.vita-evolution-card:not(.vita-evolution-current) .vita-browser{filter:saturate(.72)}
.vita-browser>div{height:38px;padding:0 12px;display:flex;align-items:center;gap:6px;background:var(--paper-2);border-bottom:1px solid rgba(var(--ink-rgb),.15)}.vita-browser i{width:7px;height:7px;border:1px solid rgba(var(--ink-rgb),.45);border-radius:50%}.vita-browser span{margin-left:auto;font:500 8px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:rgba(var(--ink-rgb),.54)}.vita-browser img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.vita-evolution-card figcaption{padding-top:22px;display:grid;grid-template-columns:100px 1fr;gap:8px 18px}.vita-evolution-card figcaption b{grid-row:1/3;font:500 9px/1 var(--mono);letter-spacing:.08em;color:var(--peach)}.vita-evolution-card figcaption strong{font-size:24px;line-height:1.1}.vita-evolution-card figcaption p{grid-column:2;margin:0;max-width:470px;color:rgba(255,255,255,.6);font-size:13px;line-height:1.55}
.vita-evolution-result{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:70px 0 0;padding:0;list-style:none;border:1px solid var(--light-line);background:var(--light-line)}.vita-evolution-result li{min-height:170px;padding:24px;background:color-mix(in srgb,var(--plum-deep) 82%,white);display:flex;flex-direction:column}.vita-evolution-result b{margin-bottom:37px;font:500 10px/1 var(--mono);letter-spacing:.12em;color:var(--peach)}.vita-evolution-result strong{margin-bottom:10px;font-size:24px;line-height:1.05}.vita-evolution-result span{max-width:340px;color:rgba(255,255,255,.6);font-size:12px;line-height:1.55}
.case-evolution-return{display:flex;align-items:center;gap:10px;width:max-content;margin:58px auto 0;padding:14px 20px;border:1px solid rgba(255,255,255,.34);color:white;font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.1em;transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease}.case-evolution-return span{font-size:18px}.case-evolution-return:hover{background:white;color:var(--plum-deep);border-color:white;transform:translateY(-3px)}

.site-footer{background:var(--ink);color:white;padding:56px var(--pad) 28px;display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:40px;font:500 10px/1.55 var(--mono);text-transform:uppercase}.site-footer>div{display:grid;align-content:start;gap:8px}.site-footer>div:first-child strong{font-size:34px;letter-spacing:.12em;font-family:var(--display)}.site-footer>div:first-child span{color:rgba(255,255,255,.45)}.site-footer>div:last-child{grid-column:1/-1;border-top:1px solid var(--light-line);padding-top:20px;display:flex;justify-content:space-between;color:rgba(255,255,255,.45)}
.floating-book{position:fixed;right:18px;bottom:18px;z-index:90;height:54px;background:var(--plum);color:white;display:flex;align-items:center;gap:22px;padding:0 8px 0 18px;font:600 10px/1 var(--mono);text-transform:uppercase;box-shadow:0 15px 40px rgba(var(--plum-deep-rgb),.26)}.floating-book i{font-style:normal;width:38px;height:38px;background:var(--coral);color:var(--plum);display:grid;place-items:center;transition:transform .35s}.floating-book:hover i{transform:rotate(45deg)}

@media (max-width:1180px){
  .desktop-nav{gap:20px}.phone-link{display:none}
  .hero{grid-template-columns:minmax(0,1fr) minmax(370px,.78fr)}
  .hero-title{font-size:clamp(70px,10vw,118px)}
  .method{grid-template-columns:130px 1fr}.method-copy{grid-column:2;max-width:680px}.method-strip,.method-notes{grid-column:2}
  .zones{grid-template-columns:minmax(330px,.8fr) minmax(440px,1.2fr)}
  .session{grid-template-columns:130px 1fr}.session-track,.session-image{grid-column:1/-1}
  .sensory{grid-template-columns:130px 1fr}
  .reviews-head{grid-template-columns:130px 1fr auto}
  .faq{grid-template-columns:minmax(300px,.75fr) minmax(440px,1.25fr);gap:5vw}
  .vita-evolution-head{grid-template-columns:130px 1fr}.vita-evolution-head p{grid-column:2}
}
@media (max-width:980px){
  :root{--header-h:68px}
  .site-header{grid-template-columns:1fr auto}.desktop-nav,.header-actions{display:none}.menu-toggle{display:block}
  .mobile-theme-switcher{display:flex;width:max-content;margin-top:auto;margin-bottom:26px;border-color:var(--light-line);background:rgba(255,255,255,.04);gap:12px;padding:10px}.mobile-theme-switcher .theme-dot{width:auto;height:28px;border-radius:0;display:flex;align-items:center;gap:8px;padding:0 10px 0 30px;color:white;font:500 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em}.mobile-theme-switcher .theme-dot::before{content:"";position:absolute;left:8px;width:14px;height:14px;border-radius:50%;background:var(--swatch);border:1px solid rgba(255,255,255,.6)}.mobile-theme-switcher .theme-dot span{display:block}.mobile-theme-switcher .theme-dot[aria-pressed="true"]{box-shadow:0 0 0 1px white;transform:none}
  .hero{min-height:auto;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding-top:var(--header-h)}
  .hero-copy{padding:70px 0 46px}.hero-index{margin-bottom:52px}.hero-title{font-size:clamp(74px,15vw,126px)}.title-accent{font-size:.61em}
  .hero-bottom{grid-template-columns:1fr 180px;margin-top:44px}.hero-media{min-height:680px;margin-top:0;clip-path:polygon(0 8%,100% 0,100% 88%,84% 100%,0 100%)}.hero-footer{height:48px}
  .method{grid-template-columns:1fr;padding-top:100px;padding-bottom:105px}.method>.section-label{position:static;grid-column:1}.method-title,.method-copy,.method-strip,.method-notes{grid-column:1}.method-title{margin-top:52px}.method-title h2{font-size:clamp(54px,10vw,86px)}.method-copy{margin-top:34px;max-width:760px}.method-strip{height:520px}.method-notes{grid-template-columns:1fr}.method-note,.method-note:nth-child(2),.method-note:last-child{border-right:0;border-bottom:1px solid var(--line);padding:24px 0;min-height:auto}
  .zones{grid-template-columns:1fr;min-height:auto}.zones-panel{padding:100px var(--pad) 70px;border-right:0}.zones-panel>.section-label{margin-bottom:55px}.zones-intro p{margin-bottom:40px}.zone-tabs{margin-top:25px}.zone-stage{position:relative;height:760px;min-height:0}.zone-caption{grid-template-columns:145px 1fr}
  .session{grid-template-columns:1fr;padding-top:100px;padding-bottom:105px}.session-heading{grid-template-columns:1fr;margin-top:50px}.session-track{grid-template-columns:repeat(5,minmax(220px,1fr));overflow-x:auto;scroll-snap-type:x mandatory;margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:0 var(--pad);border-top:0}.session-step{scroll-snap-align:start;border-top:1px solid var(--line);min-height:280px}.session-progress{display:none}.session-image{margin-top:55px;height:520px}
  .sensory{grid-template-columns:1fr;padding-top:100px;padding-bottom:105px}.sensory-head{grid-template-columns:1fr;margin-top:50px}.sensory-collage{grid-template-columns:1fr 1fr}.sensory-card-one{grid-row:span 2;height:680px}.sensory-card-two,.sensory-card-three{height:334px}
  .specialist{grid-template-columns:1fr}.specialist-photo{min-height:700px}.specialist-dossier{padding:95px var(--pad)}
  .reviews{padding-top:100px;padding-bottom:95px}.reviews-head{grid-template-columns:1fr auto}.reviews-head>.section-label{grid-column:1/-1;margin-bottom:45px}.reviews-head h2{font-size:clamp(50px,9vw,82px)}.review-card{flex-basis:82vw}
  .faq{grid-template-columns:1fr;padding-top:100px;padding-bottom:105px}.faq-heading{position:static}.faq-list{margin-top:60px}
  .booking{grid-template-columns:1fr}.booking-image{min-height:620px;clip-path:polygon(0 0,100% 0,100% 91%,84% 100%,0 100%)}.booking-form-wrap{padding:90px var(--pad)}
}
@media (max-width:680px){
  :root{--pad:18px}
  .site-header{padding:0 18px}.brand-symbol{width:34px;height:34px}.brand-copy strong{font-size:16px}
  .mobile-menu{padding-left:18px;padding-right:18px}.mobile-menu nav a{font-size:34px}
  .hero-copy{padding-top:58px}.hero-index{margin-bottom:38px}.hero-eyebrow{font-size:9px}.hero-title{font-size:clamp(58px,18vw,86px);line-height:.78}.title-accent{font-size:.58em;margin-top:.22em}.hero-bottom{grid-template-columns:1fr;gap:30px}.action-link{width:100%}.hero-media{min-height:520px}.skin-scope{display:none}.hero-label-a{top:34%;right:4%}.hero-label-b{left:4%;bottom:8%}.hero-footer{grid-template-columns:repeat(2,1fr);height:auto}.hero-footer span{min-height:42px;border-bottom:1px solid var(--light-line)}.hero-footer span:nth-child(2){border-right:0}
  .statement-marquee{height:58px}.statement-marquee>div{font-size:22px}
  .section-label{grid-template-columns:34px 100px 1fr}
  .method{padding-top:76px;padding-bottom:82px}.method-title{margin-top:40px}.method-title h2{font-size:48px}.method-copy>p{font-size:16px}.method-strip{height:auto;grid-template-columns:1fr;gap:8px}.strip-image-a,.strip-image-b,.strip-image-c{height:330px}.strip-image-b img{clip-path:none}.method-notes{margin-top:40px}
  .zones-panel{padding-top:76px}.zones-intro h2{font-size:clamp(52px,14vw,58px)}.zone-tab{min-height:62px}.zone-stage{height:640px}.zone-diagram{inset:4% -6% 0 2%;width:104%}.zone-caption{left:18px;right:18px;bottom:22px;grid-template-columns:1fr;gap:8px}.zone-caption strong{font-size:22px}.zone-caption p{grid-column:1;font-size:13px}.zone-coordinates{display:none}
  .session{padding-top:76px;padding-bottom:82px}.session-heading{margin-top:40px}.session-heading h2{font-size:52px}.session-track{margin-top:54px}.session-image{height:360px}
  .sensory{padding-top:76px;padding-bottom:82px}.sensory-head{margin-top:40px}.sensory-head h2{font-size:clamp(44px,12.5vw,50px)}.sensory-collage{grid-template-columns:1fr;margin-top:50px}.sensory-card-one,.sensory-card-two,.sensory-card-three{height:420px}.sensory-card figcaption{padding:70px 18px 18px}
  .specialist-photo{min-height:560px}.specialist-dossier{padding-top:76px;padding-bottom:78px}.specialist-dossier>.section-label{margin-bottom:46px}.specialist-dossier h2{font-size:clamp(44px,12.5vw,58px)}.specialist-lead{font-size:18px;margin:34px 0}.dossier-list>div{grid-template-columns:100px 1fr}
  .reviews{padding-top:76px;padding-bottom:78px}.reviews-head{grid-template-columns:1fr}.reviews-head h2{font-size:clamp(42px,12vw,50px)}.review-actions{margin-top:20px}.review-card{flex-basis:calc(100vw - 36px);min-height:380px;padding:26px}.review-card blockquote{font-size:28px}.review-rail{margin-top:50px}
  .faq{padding-top:76px;padding-bottom:82px}.faq-heading>.section-label{margin-bottom:46px}.faq-heading h2{font-size:48px}.faq-list{margin-top:48px}summary{grid-template-columns:34px 1fr 32px;gap:12px;min-height:88px}summary strong{font-size:16px}details p{padding:0 42px 24px 46px;font-size:14px}
  .booking-image{min-height:460px}.booking-form-wrap{padding-top:70px;padding-bottom:74px}.booking-form-wrap h2{font-size:clamp(50px,14vw,58px)}.lead-form{grid-template-columns:1fr}.lead-form label:nth-child(3),.lead-form .consent,.lead-form button,.form-status{grid-column:1}.booking-direct a{grid-template-columns:90px 1fr}
  .vita-evolution-head,.vita-evolution-grid,.vita-evolution-result{grid-template-columns:1fr}.vita-evolution-head{gap:30px;margin-bottom:48px}.vita-evolution-head p{grid-column:1}.vita-evolution-head h2{font-size:48px}.vita-evolution-card figcaption{grid-template-columns:1fr}.vita-evolution-card figcaption b,.vita-evolution-card figcaption p{grid-column:1;grid-row:auto}.vita-evolution-result{gap:1px;margin-top:48px}.vita-evolution-result li{min-height:0}.vita-evolution-current{margin-top:18px}
  .site-footer{grid-template-columns:1fr;gap:24px}.site-footer>div:last-child{display:grid;gap:8px}.floating-book{left:12px;right:12px;bottom:12px;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1!important;transform:none!important}.skin-scope{display:none}
}

body,.site-header,.mobile-menu,.hero,.sensory,.reviews,.booking,.vita-evolution,.site-footer,.floating-book{transition:background-color .38s ease,color .38s ease,border-color .38s ease}

/* Containment and narrow-screen hardening */
html{overflow-x:hidden}
.hero-media,.specialist-photo,.review-rail,.session-track,.statement-marquee{contain:paint}
.specialist>*{min-width:0}
.section-label>*{min-width:0}
.section-label small{overflow-wrap:anywhere}
@media (max-width:680px){
  .specialist{width:100%;overflow:hidden}
  .specialist-dossier{min-width:0;width:100%;padding-left:18px;padding-right:18px}
  .specialist-dossier>.section-label{grid-template-columns:34px 92px minmax(0,1fr);gap:10px}
  .specialist-dossier h2,.specialist-lead,.dossier-list,.specialist-dossier .action-link{max-width:100%;min-width:0}
  .section-label{grid-template-columns:34px 92px minmax(0,1fr);gap:10px}
}
