@font-face{font-family:'Young Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/young-serif.woff2') format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/nunito-sans.woff2') format('woff2')}

:root{
  --mist:#F2F0F6; --paper:#FFFFFF; --lilac:#E7E3F0; --lilac-2:#D7D1E5;
  --ink:#25223A; --muted:#565271; --dusk:#3A335F; --night:#1B182E;
  --rose:#E6A89E; --rose-soft:#F7DFD9; --rose-ink:#94463C; --sage:#AFC4B4;
  --line:rgba(37,34,58,.13); --line-dark:rgba(242,240,246,.16);
  --serif:'Young Serif',Georgia,serif;
  --sans:'Nunito Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --max:75rem; --gut:clamp(1.25rem,5vw,3.5rem); --ease:cubic-bezier(.2,.75,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}
body{margin:0;background:var(--mist);color:var(--ink);font-family:var(--sans);font-size:1.075rem;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--rose);outline-offset:3px;border-radius:.4rem}
.skip{position:absolute;left:1rem;top:-4rem;background:var(--dusk);color:#fff;padding:.7rem 1rem;border-radius:.6rem;z-index:200;text-decoration:none}
.skip:focus{top:1rem}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.012em;margin:0;text-wrap:balance}
h1{font-size:clamp(2.6rem,5.2vw,4.4rem);line-height:1.04}
h2{font-size:clamp(2rem,3.6vw,3.05rem)}
h3{font-size:clamp(1.35rem,2vw,1.65rem);line-height:1.2}
p{margin:0}
.lead{font-size:clamp(1.12rem,1.45vw,1.26rem);color:var(--muted);max-width:39rem}
.section{padding-block:clamp(4.5rem,9vw,8rem)}
.head{max-width:42rem;margin-bottom:clamp(2.2rem,4.5vw,3.4rem)}
.head .lead{margin-top:1.1rem}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3.2rem;padding:.8rem 1.5rem;border-radius:999px;border:1.5px solid transparent;font-weight:700;font-size:1rem;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .3s var(--ease),color .3s,border-color .3s,transform .3s var(--ease)}
.btn:active{transform:translateY(1px)}
.btn--solid{background:var(--dusk);color:#fff}
.btn--solid:hover{background:var(--night)}
.btn--line{border-color:rgba(37,34,58,.26);color:var(--ink)}
.btn--line:hover{border-color:var(--ink);background:var(--paper)}
.btn--rose{background:var(--rose);color:var(--night)}
.btn--rose:hover{background:#EFB8AF}

.top{position:sticky;top:0;z-index:100;background:rgba(242,240,246,.84);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s}
.top.is-scrolled{border-color:var(--line);box-shadow:0 10px 30px -24px rgba(37,34,58,.4)}
.top__in{display:flex;align-items:center;gap:1.4rem;height:4.6rem}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;margin-right:auto;white-space:nowrap}
.brand svg{width:2rem;height:2rem;flex:none}
.brand span{font-family:var(--serif);font-size:1.2rem;line-height:1}
.nav{display:flex;gap:1.5rem}
.nav a{text-decoration:none;font-size:.97rem;color:var(--muted);white-space:nowrap;position:relative;padding-block:.3rem;transition:color .25s}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--rose);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:hover,.nav a[aria-current="true"]{color:var(--ink)}
.nav a:hover::after,.nav a[aria-current="true"]::after{transform:scaleX(1)}
.top .btn{min-height:2.75rem;padding:.5rem 1.1rem;font-size:.95rem}
.menu-btn{display:none;width:2.9rem;height:2.9rem;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);align-items:center;justify-content:center;cursor:pointer}
.menu-btn span,.menu-btn span::before,.menu-btn span::after{display:block;width:1.1rem;height:1.5px;background:var(--ink);position:relative;transition:transform .3s var(--ease),background .2s}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0}
.menu-btn span::before{top:-.36rem}.menu-btn span::after{top:.36rem}
.menu-btn[aria-expanded="true"] span{background:transparent}
.menu-btn[aria-expanded="true"] span::before{transform:translateY(.36rem) rotate(45deg)}
.menu-btn[aria-expanded="true"] span::after{transform:translateY(-.36rem) rotate(-45deg)}
.drawer{display:none}
@media (max-width:64rem){.nav{display:none}}
@media (max-width:46rem){
  .top .btn{display:none}
  .menu-btn{display:inline-flex}
  .drawer{display:block;position:fixed;inset:4.6rem 0 auto 0;background:var(--mist);border-bottom:1px solid var(--line);padding:1rem var(--gut) 1.6rem;transform:translateY(-120%);transition:transform .45s var(--ease);z-index:90;box-shadow:0 30px 50px -30px rgba(37,34,58,.4)}
  .drawer.is-open{transform:none}
  .drawer a{display:block;text-decoration:none;font-family:var(--serif);font-size:1.5rem;padding:.55rem 0;border-bottom:1px solid var(--line)}
  .drawer .btn{display:flex;margin-top:1.2rem;width:100%;padding:.8rem 1.5rem;font-family:var(--sans);font-size:1rem;border-bottom:0}
}

.hero{padding-block:clamp(2rem,5vw,4.5rem) clamp(4rem,8vw,6.5rem);overflow:hidden}
.hero__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,5.5rem);align-items:center}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.08em}
.hero h1 .ln>span{display:block;transform:translateY(106%);transition:transform 1.1s var(--ease)}
.hero h1 .ln:nth-child(2)>span{transition-delay:.1s}
.hero h1 .ln:nth-child(3)>span{transition-delay:.55s}
.hero .lead{margin-top:1.6rem}
.hero__cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2.1rem}
.hero__facts{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin:2.2rem 0 0;padding:0;list-style:none;font-size:.96rem;color:var(--muted)}
.hero__facts li{display:flex;align-items:center;gap:.55rem}
.hero__facts li::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--rose);box-shadow:0 0 0 4px rgba(230,168,158,.22)}
.fade{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.hero__media{position:relative;max-width:30rem;margin-left:auto;width:100%}
.hero__photo{border-radius:14rem 14rem 1.5rem 1.5rem;overflow:hidden;background:var(--lilac);clip-path:inset(100% 0 0 0 round 14rem 14rem 1.5rem 1.5rem);transition:clip-path 1.4s var(--ease) .1s}
.hero__photo img{width:100%;aspect-ratio:4/5;object-fit:cover;transform:scale(1.14);transition:transform 2.6s var(--ease) .1s}
.hero__note{position:absolute;left:clamp(-3rem,-4vw,-1rem);bottom:clamp(1.4rem,5vw,3rem);max-width:18.5rem;background:var(--paper);border-radius:1.1rem;padding:1rem 1.1rem;box-shadow:0 26px 50px -28px rgba(37,34,58,.5);font-size:.93rem;line-height:1.45;opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease) 1s,transform .9s var(--ease) 1s}
.hero__note strong{display:block;font-family:var(--serif);font-weight:400;font-size:1.1rem;margin-bottom:.2rem}
body.is-ready .hero h1 .ln>span{transform:none}
body.is-ready .fade{opacity:1;transform:none}
body.is-ready .fade--1{transition-delay:.7s}
body.is-ready .fade--2{transition-delay:.85s}
body.is-ready .fade--3{transition-delay:1s}
body.is-ready .hero__photo{clip-path:inset(0 0 0 0 round 14rem 14rem 1.5rem 1.5rem)}
body.is-ready .hero__photo img{transform:none}
body.is-ready .hero__note{opacity:1;transform:none}
@media (max-width:54rem){
  .hero__grid{grid-template-columns:1fr}
  .hero__media{margin-left:0;max-width:26rem}
  .hero__note{left:auto;right:-.5rem;bottom:-1.5rem}
}

.fit{background:var(--paper)}
.fit__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,6vw,5.5rem);align-items:start}
.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}
.check{width:100%;text-align:left;display:flex;align-items:center;gap:1rem;padding:1rem 1.15rem;border-radius:1rem;border:1.5px solid var(--line);background:var(--mist);cursor:pointer;font-size:1.05rem;line-height:1.45;transition:background .3s var(--ease),border-color .3s,transform .3s var(--ease)}
.check:hover{border-color:var(--dusk);transform:translateX(3px)}
.check i{flex:none;width:1.55rem;height:1.55rem;border-radius:50%;border:1.5px solid var(--lilac-2);background:var(--paper);position:relative;transition:background .3s,border-color .3s}
.check i::after{content:"";position:absolute;left:.47rem;top:.26rem;width:.4rem;height:.72rem;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .35s var(--ease)}
.check[aria-pressed="true"]{background:var(--rose-soft);border-color:var(--rose)}
.check[aria-pressed="true"] i{background:var(--dusk);border-color:var(--dusk)}
.check[aria-pressed="true"] i::after{transform:rotate(45deg) scale(1)}
.fit__side{position:sticky;top:6.5rem}
.fit__img{border-radius:1.5rem;overflow:hidden;background:var(--lilac)}
.fit__img img{width:100%;aspect-ratio:4/5;object-fit:cover}
.result{margin-top:-4.5rem;margin-inline:1rem;position:relative;background:var(--dusk);color:var(--mist);border-radius:1.2rem;padding:1.3rem 1.35rem 1.4rem;box-shadow:0 24px 50px -26px rgba(27,24,46,.7)}
.result__count{font-family:var(--serif);font-size:2.4rem;line-height:1;color:var(--rose)}
.result p{margin-top:.5rem;font-size:1rem;line-height:1.5}
.result .btn{margin-top:1rem;min-height:2.9rem;font-size:.95rem}
.result.is-bump{animation:bump .5s var(--ease)}
@keyframes bump{40%{transform:translateY(-4px)}}
.notfor{margin-top:1.6rem;font-size:.97rem;color:var(--muted);padding-left:1rem;border-left:3px solid var(--lilac-2)}
@media (max-width:54rem){.fit__grid{grid-template-columns:1fr}.fit__side{position:static;max-width:28rem}}

.depth{background:var(--night);color:var(--mist);overflow:clip}
.depth h2,.depth h3{color:var(--mist)}
.depth .lead{color:rgba(242,240,246,.76)}
.depth__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,6rem)}
.depth__stick{position:sticky;top:6rem;height:calc(100vh - 8rem);max-height:38rem;display:flex;align-items:center;justify-content:flex-end;padding-left:7.5rem}
.well{position:relative;height:100%;aspect-ratio:320/440;max-height:34rem}
.well svg{width:100%;height:100%;display:block}
.well .ripple{fill:none;stroke:var(--rose);stroke-width:1.6;transform-box:fill-box;transform-origin:center;opacity:.25;transition:opacity .8s}
.well.s1 .ripple{animation:ripple 3.2s var(--ease) infinite}
.well.s1 .ripple:nth-child(2){animation-delay:.6s}.well.s1 .ripple:nth-child(3){animation-delay:1.2s}
@keyframes ripple{0%{transform:scale(.6);opacity:0}25%{opacity:.95}100%{transform:scale(1.18);opacity:0}}
.well .thread{stroke:rgba(230,168,158,.6);stroke-width:1.5;stroke-dasharray:4 7;fill:none;opacity:0;transition:opacity .8s}
.well.s2 .thread,.well.s3 .thread{opacity:1}
.well .orb{transition:opacity .9s var(--ease)}
.well .mem,.well .alarm{opacity:.14}
.well.s2 .mem,.well.s3 .mem,.well.s3 .alarm{opacity:1}
.well .pulse{fill:none;stroke:var(--rose);stroke-width:1.4;opacity:0;transform-box:fill-box;transform-origin:center}
.well.s3 .pulse{animation:pulse 1.9s ease-out infinite}
.well.s3 .pulse.p2{animation-delay:.7s}
@keyframes pulse{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.4);opacity:0}}
.well .calm{stroke:var(--sage);stroke-width:2.2;fill:none;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260;transition:stroke-dashoffset 1.8s var(--ease)}
.well.s4 .calm{stroke-dashoffset:0}
.well.s4 .ripple{opacity:0;animation:none}
.well.s4 .mem,.well.s4 .alarm{opacity:.35}
.well .core{transition:fill .9s var(--ease)}
.well.s4 .core{fill:var(--sage)}
.well .glow{opacity:0;transition:opacity 1.4s var(--ease)}
.well.s4 .glow{opacity:1}
.well__lab{position:absolute;right:100%;margin-right:1rem;white-space:nowrap;font-size:.9rem;color:rgba(242,240,246,.5);display:flex;align-items:center;gap:.6rem;transition:color .6s}
.well__lab::after{content:"";width:1.4rem;height:1px;background:currentColor}
.well__lab--1{top:14%}.well__lab--2{top:46%}.well__lab--3{top:80%}
.well.s1 .well__lab--1,.well.s2 .well__lab--2,.well.s3 .well__lab--3{color:var(--rose)}
.well.s4 .well__lab{color:var(--sage)}
.dsteps{list-style:none;margin:0;padding:0}
.dstep{min-height:60vh;display:flex;flex-direction:column;justify-content:center;padding-block:2rem;opacity:.32;transition:opacity .6s var(--ease)}
.dstep.is-active{opacity:1}
.dstep .n{font-size:.98rem;color:var(--rose);font-weight:700;margin-bottom:.8rem}
.dstep h3{font-size:clamp(1.75rem,3vw,2.4rem)}
.dstep p{margin-top:1rem;color:rgba(242,240,246,.8);max-width:33rem}
@media (max-width:48rem){
  .depth__grid{grid-template-columns:6.5rem 1fr;gap:1.2rem}
  .depth__stick{top:5.5rem;height:auto;padding-left:0;justify-content:center;align-items:flex-start;padding-top:.5rem}
  .well{height:auto;width:100%;max-height:none}
  .well__lab{display:none}
  .dstep{min-height:52vh}
}

.session__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5.5rem);align-items:center}
.session__img{border-radius:1.5rem 1.5rem 9rem 1.5rem;overflow:hidden;background:var(--lilac)}
.session__img img{width:100%;aspect-ratio:5/4;object-fit:cover;transform:scale(1.06);transition:transform 1.6s var(--ease)}
.session__img.in img{transform:none}
.promise{list-style:none;margin:1.8rem 0 0;padding:0;border-top:1px solid var(--line)}
.promise li{display:grid;grid-template-columns:2.2rem 1fr;gap:.6rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.promise svg{width:1.5rem;height:1.5rem;color:var(--dusk);margin-top:.15rem}
.promise b{display:block;font-weight:700}
.promise span{color:var(--muted);font-size:.99rem}
@media (max-width:54rem){.session__grid{grid-template-columns:1fr}}

.path{background:var(--paper)}
.path__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,6vw,5.5rem);align-items:start}
.line{list-style:none;margin:0;padding:0 0 0 2.8rem;position:relative;--p:0}
.line::before,.line::after{content:"";position:absolute;left:.73rem;top:.7rem;bottom:.7rem;width:2px;border-radius:2px}
.line::before{background:var(--lilac)}
.line::after{background:var(--rose);transform-origin:top;transform:scaleY(var(--p))}
.line li{position:relative;padding-bottom:2.5rem}
.line li:last-child{padding-bottom:0}
.line li::before{content:attr(data-n);position:absolute;left:-2.8rem;top:.1rem;width:1.55rem;height:1.55rem;border-radius:50%;background:var(--paper);border:2px solid var(--lilac-2);font-size:.78rem;font-weight:700;display:grid;place-items:center;color:var(--muted);transition:background .4s,border-color .4s,color .4s;z-index:1}
.line li.is-past::before{background:var(--dusk);border-color:var(--dusk);color:#fff}
.line p{margin-top:.55rem;color:var(--muted);max-width:35rem}
.path__img{position:sticky;top:6.5rem;margin:0;border-radius:1.5rem;overflow:hidden;background:var(--lilac)}
.path__img img{width:100%;aspect-ratio:5/4;object-fit:cover}
.path__img figcaption{padding:1rem 1.2rem;font-size:.95rem;color:var(--muted);background:var(--mist)}
@media (max-width:54rem){.path__grid{grid-template-columns:1fr}.path__img{position:static}}

.about__panel{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,5vw,4.5rem);align-items:center;background:var(--lilac);border-radius:2.2rem;padding:clamp(1.4rem,4vw,3.4rem)}
.about__img{border-radius:1.4rem;overflow:hidden;margin:0}
.about__img img{width:100%;aspect-ratio:5/4;object-fit:cover}
.about p{margin-top:1.05rem;color:var(--muted)}
.about p.sig{font-family:var(--serif);font-size:1.35rem;color:var(--ink);margin-top:1.6rem}
@media (max-width:54rem){.about__panel{grid-template-columns:1fr}}

.change{position:relative;color:#fff;min-height:38rem;display:flex;align-items:flex-end;overflow:hidden;background:var(--night)}
.change__bg{position:absolute;inset:0}
.change__bg img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 2s var(--ease)}
.change.in .change__bg img{transform:none}
.change::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,24,46,.08) 0%,rgba(27,24,46,.4) 45%,rgba(27,24,46,.9) 100%)}
.change .wrap{position:relative;z-index:1;padding-block:clamp(4rem,8vw,6rem)}
.change h2{color:#fff;max-width:36rem}
.says{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:1.1rem;max-width:44rem}
.says li{font-family:var(--serif);font-size:clamp(1.3rem,2.3vw,1.8rem);line-height:1.3;opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.change.in .says li{opacity:1;transform:none}
.change.in .says li:nth-child(2){transition-delay:.25s}
.change.in .says li:nth-child(3){transition-delay:.5s}
.change small{display:block;margin-top:1.8rem;font-size:.92rem;color:rgba(255,255,255,.78);max-width:36rem}

.faq__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.faq__side{position:sticky;top:6.5rem}
.faq__side p{margin-top:1.1rem;color:var(--muted)}
.faq__side .btn{margin-top:1.6rem}
.qa{border-top:1px solid var(--line)}
.qa:last-child{border-bottom:1px solid var(--line)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 0;font-family:var(--serif);font-size:clamp(1.15rem,1.6vw,1.32rem);line-height:1.3}
.qa summary::-webkit-details-marker{display:none}
.qa summary i{flex:none;width:2.2rem;height:2.2rem;border-radius:50%;border:1.5px solid var(--line);position:relative;transition:background .3s,border-color .3s}
.qa summary i::before,.qa summary i::after{content:"";position:absolute;left:50%;top:50%;width:.8rem;height:1.5px;background:var(--ink);transform:translate(-50%,-50%)}
.qa summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .4s var(--ease)}
.qa[open] summary i{background:var(--rose);border-color:var(--rose)}
.qa[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.qa__a{overflow:hidden}
.qa__a p{padding:0 3rem 1.35rem 0;color:var(--muted)}
@media (max-width:54rem){.faq__grid{grid-template-columns:1fr}.faq__side{position:static}.qa__a p{padding-right:0}}

.contact{background:var(--paper)}
.contact__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.contact__img{position:sticky;top:6.5rem;margin:0;border-radius:1.5rem 8rem 1.5rem 1.5rem;overflow:hidden;background:var(--lilac)}
.contact__img img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:62% 50%}
.contact__img figcaption{position:absolute;left:1.1rem;right:1.1rem;bottom:1.1rem;background:rgba(27,24,46,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--mist);border-radius:1rem;padding:1rem 1.1rem;font-size:.96rem;line-height:1.45}
.form{margin-top:1.9rem}
.form__prog{display:flex;align-items:center;gap:.8rem;font-size:.92rem;color:var(--muted);margin-bottom:1.3rem}
.form__bar{flex:1;height:4px;border-radius:4px;background:var(--lilac);overflow:hidden}
.form__bar i{display:block;height:100%;width:50%;background:var(--rose);border-radius:4px;transition:width .5s var(--ease)}
.form[data-step="2"] .form__bar i{width:100%}
fieldset{border:0;margin:0 0 1.4rem;padding:0;min-width:0}
legend{font-weight:700;margin-bottom:.65rem;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;min-height:2.75rem;padding:.5rem 1.05rem;border-radius:999px;border:1.5px solid var(--line);background:var(--mist);font-size:.97rem;transition:background .25s,border-color .25s,color .25s;cursor:pointer}
.chip input:hover+span{border-color:var(--ink)}
.chip input:checked+span{background:var(--dusk);border-color:var(--dusk);color:#fff}
.chip input:focus-visible+span{outline:3px solid var(--rose);outline-offset:2px}
.field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.05rem}
.field label{font-weight:700;font-size:.96rem}
.field label small{font-weight:400;color:var(--muted)}
.field input,.field select,.field textarea{min-height:3.1rem;border:1.5px solid var(--line);background:var(--mist);border-radius:.85rem;padding:.7rem .95rem;transition:border-color .25s,background .25s}
.field textarea{min-height:6rem;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--dusk);background:var(--paper)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.consent{display:flex;gap:.7rem;align-items:flex-start;font-size:.94rem;color:var(--muted);margin:.4rem 0 1.3rem}
.consent input{margin-top:.3rem;width:1.1rem;height:1.1rem;accent-color:var(--dusk);flex:none}
.form__err{color:var(--rose-ink);font-weight:700;font-size:.94rem;min-height:1.3rem;margin-bottom:.6rem}
.form__nav{display:flex;flex-wrap:wrap;gap:.7rem}
.js .form [data-pane="2"]{display:none}
.js .form[data-step="2"] [data-pane="1"]{display:none}
.js .form[data-step="2"] [data-pane="2"]{display:block;animation:paneIn .5s var(--ease)}
@keyframes paneIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.jsonly{display:none!important}
.js .jsonly{display:inline-flex!important}
.crisis{margin-top:1.4rem;font-size:.93rem;color:var(--muted);background:var(--mist);border-radius:.9rem;padding:.85rem 1rem}
.crisis b{color:var(--ink)}
@media (max-width:54rem){.contact__grid{grid-template-columns:1fr}.contact__img{position:relative;top:0;max-width:26rem}}
@media (max-width:30rem){.row2{grid-template-columns:1fr}}

.foot{background:var(--night);color:rgba(242,240,246,.76);padding-block:clamp(3.5rem,6vw,5rem) 2rem;font-size:.97rem}
.foot a{text-decoration:none}
.foot a:hover{color:var(--rose)}
.foot__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2.5rem}
.foot .brand span{color:var(--mist)}
.foot h4{margin:0 0 .8rem;font-size:.96rem;color:var(--mist);font-weight:700}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.foot__about{margin-top:1rem;max-width:25rem}
.foot__legal{margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line-dark);display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.88rem;color:rgba(242,240,246,.62)}
.foot__legal p{max-width:48rem}
@media (max-width:50rem){.foot__grid{grid-template-columns:1fr 1fr}.foot__grid>div:first-child{grid-column:1/-1}}

.bar{position:fixed;left:.75rem;right:.75rem;bottom:.75rem;z-index:80;display:none;padding:.5rem;background:rgba(27,24,46,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:999px;transform:translateY(140%);transition:transform .5s var(--ease)}
.bar.is-on{transform:none}
.bar .btn{flex:1;min-height:2.9rem;font-size:.97rem}
@media (max-width:46rem){.bar{display:flex}.foot{padding-bottom:6rem}}

.rise{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rise.in{opacity:1;transform:none}
.simple{min-height:70vh;display:grid;place-items:center;text-align:center;padding-block:5rem}
.simple h1{font-size:clamp(2.3rem,5vw,3.6rem)}
.simple p{margin:1.2rem auto 0;max-width:34rem;color:var(--muted)}
.simple .hero__cta{justify-content:center}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .hero h1 .ln>span,.fade,.hero__note,.rise,.says li{transform:none!important;opacity:1!important}
  .hero__photo{clip-path:none!important}.hero__photo img,.change__bg img,.session__img img{transform:none!important}
}
