@layer reset, base, components, responsive;
@layer reset {
  *,*::before,*::after{box-sizing:border-box}body,h1,h2,h3,p,figure{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}img,video{display:block;width:100%;height:100%;object-fit:cover}button{cursor:pointer}a{color:inherit}ul{padding:0;list-style:none}button{color:inherit}dialog{border:0} [hidden]{display:none!important}
}
@layer base {
  :root{--cream:#f6f2ea;--paper:#fdfbf7;--stone:#e8e1d5;--wine:#592c35;--wine-dark:#3f2029;--ink:#302b27;--muted:#6e6259;--bronze:#98744f;--line:#d6cdc0;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
  html{scroll-behavior:smooth;scroll-padding-top:112px}body{background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}body.dialog-open{overflow:hidden}::selection{color:var(--cream);background:var(--wine)}a{text-decoration:none}a,button,input,select,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--bronze);outline-offset:5px}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);font-size:clamp(2.5rem,4.2vw,4rem);letter-spacing:-.045em;line-height:1.14}h2 em{font-weight:400;color:var(--wine)}h3{font-family:var(--serif);font-size:1.75rem;line-height:1.3;letter-spacing:-.025em}p{color:var(--muted)}em{font-weight:400}section,article[id],details[id]{scroll-margin-top:110px}.container{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-block:108px}.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:.75rem;font-weight:600;letter-spacing:.13em;line-height:1.6;color:var(--muted);text-transform:uppercase;margin-bottom:23px}.section-number{color:var(--bronze);font-weight:400}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:54px}.section-heading>p{max-width:340px;padding-bottom:7px}.large-copy{font-size:1.25rem;line-height:1.65;color:var(--ink)}
}
@layer components {
  .skip-link{position:fixed;top:10px;left:10px;z-index:200;padding:12px 20px;background:var(--paper);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
  .site-header{position:sticky;top:0;z-index:30;background:rgb(246 242 234 / .97);border-bottom:1px solid var(--line)}.header-inner{height:96px;width:min(1400px,calc(100% - 80px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;flex-shrink:0;font-family:var(--serif);font-size:1.55rem;letter-spacing:-.04em}.brand-symbol{display:grid;place-items:center;background:var(--wine);color:var(--cream);width:44px;height:48px;border-radius:22px 22px 0 0;font-size:1.75rem;font-style:italic;padding-top:6px}.brand small{display:block;font-family:var(--sans);font-size:.75rem;font-weight:500;letter-spacing:.18em;margin-top:8px}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav>a:not(.button){font-size:.875rem;color:var(--muted);position:relative;padding-block:12px}.site-header nav>a:not(.button)::after{content:'';height:1px;position:absolute;left:0;right:100%;bottom:8px;background:var(--wine);transition:right .25s}.site-header nav>a:hover::after{right:0}.menu-toggle{display:none}
  .button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:54px;padding:15px 23px;background:var(--wine);color:var(--paper);border:1px solid transparent;font-size:.875rem;font-weight:500;line-height:1.45;transition:background .25s,transform .25s,border-color .25s}.button:hover{background:var(--wine-dark);transform:translateY(-2px)}.button-mark{font-size:1.2rem;font-weight:400}.button-small{min-height:46px;padding:11px 17px;font-size:.8125rem}.button-text{background:transparent;color:var(--wine);border:0;padding:14px 0;justify-content:flex-start;gap:15px}.button-text:hover{background:transparent;transform:translateX(3px)}.button-light{border-color:rgb(255 255 255 / .3);background:transparent}.button-light:hover{background:rgb(255 255 255 / .08)}.button-cream{background:var(--cream);color:var(--wine)}.button-cream:hover{background:var(--stone)}
  .hero{display:grid;grid-template-columns:1.15fr 1fr;column-gap:60px;position:relative;padding-top:58px;padding-bottom:56px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding-block:24px 64px}.hero-kicker{font-size:.72rem;font-weight:500;letter-spacing:.11em;color:var(--wine);margin-bottom:30px}.location-mark{font-size:1.3rem;color:var(--bronze)}.hero-headline{display:block;font-family:var(--serif);font-size:clamp(3.3rem,5.2vw,5rem);line-height:1.06;letter-spacing:-.06em}.hero-headline em{color:var(--wine)}.hero-description{max-width:465px;font-size:1rem;line-height:1.85;margin-top:28px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;margin-top:29px}.hero-proof{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:14px;margin-top:50px;padding-top:23px;border-top:1px solid var(--line);font-size:.75rem;line-height:1.7;color:var(--muted)}.hero-proof b{display:block;font-size:.75rem;color:var(--ink);font-weight:500;margin-bottom:4px}.hero-visual{position:relative;margin-bottom:42px}.media{position:relative;overflow:hidden;background:var(--stone);isolation:isolate}.hero-visual>.media{height:100%;min-height:540px;border-radius:240px 240px 2px 2px}.media-art{position:absolute;inset:0;overflow:hidden}.media-art::after{content:'';position:absolute;inset:0;opacity:.17;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:multiply;pointer-events:none}.art-hero{background:linear-gradient(130deg,#e7d9c6 0%,#c3a98f 50%,#7f5a47 100%)}.art-orbit{position:absolute;inset:12% 11% -20%;border:35px solid rgb(247 237 222 / .5);border-radius:50% 50% 0 0;box-shadow:14px 17px 25px rgb(70 37 23 / .1),inset 14px 17px 25px rgb(70 37 23 / .1);transform:rotate(-14deg)}.art-line{position:absolute;inset:25% 24% -15%;border:2px solid rgb(255 249 240 / .4);border-radius:50% 50% 0 0;transform:rotate(-14deg)}.art-disc{position:absolute;bottom:8%;left:-10%;width:85%;height:27%;border-radius:50%;background:linear-gradient(90deg,#ddc5a5,#ad8d6e);transform:rotate(-20deg);opacity:.65}.art-monogram{position:absolute;top:35%;left:33%;font-family:var(--serif);font-size:9rem;line-height:1;font-style:italic;letter-spacing:-.09em;color:rgb(249 242 227 / .65)}.placeholder-label{position:absolute;bottom:16px;left:18px;right:18px;width:fit-content;background:rgb(43 31 27 / .67);color:#fff;padding:7px 11px;font-size:.75rem;line-height:1.5;letter-spacing:.03em;z-index:2}.hero-visual-note{position:absolute;bottom:-32px;left:-25px;right:24px;padding:21px 23px;display:flex;align-items:center;gap:20px;background:var(--paper);box-shadow:0 8px 25px rgb(58 41 27 / .04);border:1px solid #e6ded2}.note-mark{font-family:var(--serif);font-size:2.5rem;font-style:italic;color:var(--wine);line-height:1}.hero-visual-note p{font-size:.85rem;line-height:1.6;color:var(--muted)}.hero-visual-note strong{font-weight:500;color:var(--ink)}.visual-index{margin-left:auto;font-size:.75rem;letter-spacing:.06em;writing-mode:vertical-rl;color:var(--bronze)}.scroll-cue{grid-column:1/-1;font-size:.75rem;letter-spacing:.05em;color:var(--muted);display:flex;align-items:center;gap:15px}.scroll-cue>span{height:32px;width:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:1rem}
  .problems{background:var(--paper);border-block:1px solid var(--line)}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.problem-grid article{border-top:1px solid var(--line);padding-top:25px}.problem-index{display:block;font-size:.75rem;color:var(--bronze);margin-bottom:21px}.problem-grid h3{font-size:1.9rem}.problem-grid p{margin-top:17px;font-size:.9375rem;max-width:320px}.problem-end{margin-top:44px;font-size:.875rem}.problem-end strong{font-weight:500;color:var(--wine)}
  .concept{position:relative;overflow:hidden;background:var(--wine);color:var(--cream);padding-bottom:142px}.concept-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;position:relative;z-index:1}.concept .eyebrow,.concept .section-number{color:#c5a885}.concept h2 em{color:#ddc6a7}.concept p{color:#d9c9c8;max-width:445px;margin-top:23px}.concept .button{margin-top:28px}.concept-principles{align-self:center}.concept-principles article{display:flex;gap:25px;padding:28px 0;border-top:1px solid #8b6269}.concept-principles article:last-child{border-bottom:1px solid #8b6269}.concept-principles article>span{font-size:.75rem;color:#d6b894;padding-top:6px}.concept-principles h3{font-size:1.55rem}.concept-principles p{font-size:.9375rem;margin-top:10px}.concept-watermark{position:absolute;bottom:-50px;right:4%;font:italic 10rem/1 var(--serif);letter-spacing:-.065em;color:rgb(255 255 255 / .04);pointer-events:none}
  .offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.offer-card{background:var(--paper);border:1px solid var(--line)}.offer-card .media{aspect-ratio:1.75}.art-private{background:linear-gradient(110deg,#b2a18b,#e3d6bf)}.art-private .art-orbit{inset:-100% 0 2% 28%;border-radius:50%;border-width:54px;transform:rotate(28deg);border-color:rgb(255 246 228 / .45)}.art-private .art-line{inset:20% 35% -100% -10%;border-radius:50%;transform:rotate(20deg)}.art-private .art-monogram{top:28%;left:12%;font-size:6.5rem;color:rgb(255 247 230 / .7)}.art-private .art-disc{display:none}.art-group{background:linear-gradient(135deg,#754851,#49252d)}.art-group .art-orbit{inset:-15% -20% -100% 30%;border-width:45px;border-color:rgb(217 192 168 / .35)}.art-group .art-line{inset:0 0 -100% 10%;border-color:rgb(234 216 192 / .25)}.art-group .art-disc{display:none}.art-group .art-monogram{top:27%;left:15%;font-size:6.5rem}.offer-content{padding:32px 35px}.offer-content .eyebrow{font-size:.75rem;letter-spacing:.09em;margin-bottom:10px}.offer-content h3{display:flex;justify-content:space-between;gap:15px;font-size:2.35rem}.offer-content h3>.offer-index{font: .75rem var(--sans);color:var(--bronze);padding-top:15px}.offer-content>p{margin-top:15px;font-size:.9375rem}.offer-content ul{margin-block:24px;display:grid;gap:8px;font-size:.875rem;color:var(--muted)}.offer-content li{display:flex;gap:12px}.offer-content li::before{content:'+';color:var(--bronze)}.offer-details{border-top:1px solid var(--line);padding-top:18px}.offer-details summary,.journal-card summary{display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--wine);cursor:pointer;font-size:.875rem;font-weight:500;list-style:none;min-height:36px}.offer-details summary::-webkit-details-marker,.journal-card summary::-webkit-details-marker{display:none}.offer-details summary span,.journal-card summary span{font-size:1.4rem;transition:transform .25s}.offer-details[open] summary span,.journal-card details[open] summary span,.faq-item[open] .faq-icon{transform:rotate(45deg)}.offer-details>div{padding-top:20px}.offer-details>div>p{font-size:.9375rem}.offer-details .button{margin-top:20px}.physical-note{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:32px 0 21px}.physical-note h3{max-width:250px;font-size:1.45rem}.physical-note p{max-width:420px;font-size:.875rem}
  .reviews{padding-block:78px;background:var(--stone)}.reviews-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:65px;align-items:center}.reviews-layout h2{font-size:3.2rem}.reviews-layout>div>p:last-child{margin-top:22px}.review-empty{position:relative;padding:30px 30px 26px 70px;border-left:1px solid #c8b7a3}.quote-mark{position:absolute;left:23px;top:0;font:5rem var(--serif);color:var(--bronze)}.review-empty>p{font:italic 1.75rem/1.6 var(--serif);color:var(--wine);margin-bottom:20px}.review-source{font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--muted)}.review-card{padding:30px;border:1px solid var(--line);background:var(--paper)}.review-card blockquote{font:1.3rem/1.6 var(--serif);margin:18px 0;color:var(--wine)}.review-card figcaption{font-size:.875rem}.review-card figcaption small{display:block}.review-grid{display:grid;gap:16px}
  .method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.method-grid article{position:relative;border-top:1px solid var(--line);padding-top:26px}.method-number{font:4.5rem/1 var(--serif);color:var(--bronze);display:block;margin-bottom:25px}.method-grid .eyebrow{font-size:.75rem;margin-bottom:13px}.method-grid h3{font-size:1.8rem}.method-grid p{margin-top:16px;font-size:.9375rem}
  .goals{background:var(--paper);border-block:1px solid var(--line)}.goal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.goal-card{border:1px solid var(--line);transition:transform .3s}.goal-card:hover{transform:translateY(-5px)}.goal-art{height:150px;position:relative;overflow:hidden;background:#dbceba}.goal-art i{position:absolute;left:18%;top:-36%;width:65%;height:165%;border:26px solid rgb(255 250 233 / .45);border-radius:50%;transform:rotate(30deg)}.goal-art b{position:absolute;bottom:12px;left:18px;font:3rem/1 var(--serif);font-weight:400;color:rgb(83 55 38 / .55)}.goal-art-02{background:#69434a}.goal-art-02 i{left:42%;border-color:rgb(223 199 172 / .35);transform:rotate(-30deg)}.goal-art-02 b{color:#ddc6ad}.goal-art-03{background:#b6aa95}.goal-art-03 i{left:5%;top:-50%;border-radius:0;transform:rotate(40deg);border-width:30px}.goal-art-04{background:#a38062}.goal-art-04 i{top:20%;left:40%;border-radius:50% 50% 0 0;transform:rotate(-30deg)}.goal-content{padding:22px 20px}.goal-content h3{font-size:1.55rem}.goal-content p{font-size:.875rem;margin-block:12px 20px;min-height:92px}.goal-link{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--wine);font-size:.75rem;font-weight:500;min-height:32px}.goal-link span{font-size:1.3rem}
  .place{padding-bottom:60px}.place-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:90px;align-items:center}.place-visual>.media{aspect-ratio:.83;border-radius:230px 230px 0 0}.art-place{background:linear-gradient(115deg,#ded0b8,#ab9174 70%,#8d7258)}.art-place .art-orbit{inset:10% -40% -15% 25%;border-width:50px;transform:rotate(16deg);border-color:rgb(252 243 223 / .5)}.art-place .art-line{inset:14% -48% -20% 17%;transform:rotate(16deg)}.art-place .art-monogram{top:44%;left:16%;font-size:8rem;color:rgb(255 248 231 / .65)}.art-place .art-disc{display:none}.place-caption{display:block;color:var(--bronze);font-size:.75rem;letter-spacing:.1em;padding-top:17px}.place-copy>p:not(.eyebrow){margin-top:24px}.place-copy h2{font-size:clamp(2.75rem,3.6vw,3.5rem)}.place-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.place-tags span{border:1px solid var(--line);padding:7px 12px;color:var(--muted);font-size:.75rem}.place-copy .button{margin-top:20px}
  .coach{padding-top:60px}.coach-grid{display:grid;grid-template-columns:1.15fr .8fr;gap:110px;align-items:center}.coach-copy>p:not(.eyebrow){max-width:515px;margin-top:23px}.coach-portrait{aspect-ratio:.84;max-width:470px}.art-coach{background:linear-gradient(150deg,#e4ddcf,#b7a995)}.art-coach .art-orbit{inset:17% -70% -50% 35%;border-width:70px;border-color:rgb(247 242 233 / .5);transform:rotate(35deg)}.art-coach .art-line{inset:2% -70% -70% 25%;transform:rotate(35deg)}.art-coach .art-disc{display:none}.art-coach .art-monogram{font-size:7.5rem;top:36%;left:12%;color:rgb(91 63 44 / .3)}.coach-signature{margin-top:25px}.coach-signature>span{display:block;font:italic 2.3rem var(--serif);color:var(--wine)}.coach-signature small{display:block;font-size:.75rem;letter-spacing:.13em;margin-top:4px;color:var(--muted)}.coach-copy .button{margin-top:18px}
  .local{background:var(--stone);padding-block:85px}.local-grid{display:grid;grid-template-columns:1.15fr .75fr;gap:110px;align-items:center}.local-grid>div>p:not(.eyebrow){margin-top:24px;max-width:575px}.local-grid .button{margin-top:16px}.address-card{position:relative;padding:38px 36px;background:var(--cream);overflow:hidden;border:1px solid #d1c5b4}.address-card .eyebrow{font-size:.75rem}.address-card h3{font-size:3.25rem;line-height:1.1;color:var(--wine);letter-spacing:-.04em}.address-card address{font-style:normal;margin-top:28px;font-size:.9375rem}.address-rule{width:40px;height:1px;background:var(--bronze);margin:23px 0}.address-card>p{font-size:.8rem}.address-monogram{position:absolute;bottom:-30px;right:2px;color:rgb(154 116 80 / .08);font:italic 11rem/1 var(--serif)}
  .journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.journal-cover{height:210px;overflow:hidden;position:relative;margin-bottom:25px;background:var(--wine);padding:24px;color:var(--cream)}.journal-cover>span{font:2.5rem/.98 var(--serif);letter-spacing:-.06em;position:relative;z-index:1}.journal-cover>b{position:absolute;right:-4px;bottom:-24px;font:italic 8rem/1 var(--serif);font-weight:400;opacity:.18}.journal-cover::after{content:'';position:absolute;top:-25%;right:-15%;width:80%;height:160%;border:2px solid rgb(255 255 255 / .18);border-radius:50%;transform:rotate(25deg)}.journal-cover-2{background:#9c8062}.journal-cover-3{background:#ded5c5;color:#59432f}.journal-cover-3::after{border-color:#a2896b}.journal-card>.eyebrow{font-size:.75rem;margin-bottom:12px}.journal-card h3{font-size:1.75rem;max-width:330px}.journal-card>p{margin-top:16px;font-size:.875rem}.journal-card details{margin-top:22px;border-top:1px solid var(--line);padding-top:15px}.journal-card details>div{padding-top:15px}.journal-card details p{font-size:.875rem}
  .final-cta{position:relative;overflow:hidden;background:var(--wine);color:var(--cream);text-align:center}.final-cta .container{position:relative;z-index:1}.final-cta .eyebrow{justify-content:center;color:#ceb99f;font-size:.75rem}.final-cta h2{font-size:clamp(3rem,5.3vw,5rem);letter-spacing:-.045em}.final-cta h2 em{color:#dcc3a2}.final-cta p{color:#d9c9c8;margin-top:25px}.final-cta .button{margin-top:32px}.final-cta .cta-note{font-size:.75rem;letter-spacing:.03em;margin-top:23px}.final-watermark{position:absolute;bottom:-95px;right:0;font:italic 24rem/1 var(--serif);letter-spacing:-.11em;color:rgb(255 255 255 / .025)}
  .site-footer{background:var(--paper);padding-block:55px 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-top>p{font-family:var(--serif);font-size:1.25rem;line-height:1.5}.back-top{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:15px}.back-top span{font-size:1.1rem}.footer-links{margin-top:40px}.footer-links nav{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:.75rem;color:var(--muted);padding-block:22px;border-block:1px solid var(--line)}.footer-links nav a:hover{color:var(--wine)}.footer-bottom{display:flex;justify-content:space-between;gap:16px;padding-top:23px;font-size:.75rem;color:var(--muted)}.mobile-cta{display:none}
  dialog{position:fixed;max-height:90dvh;width:min(540px,calc(100% - 32px));padding:0;color:var(--ink);background:var(--cream);overflow-y:auto;box-shadow:0 25px 100px rgb(0 0 0 / .2)}dialog::backdrop{background:rgb(41 25 28 / .65);backdrop-filter:blur(4px)}.dialog-inner{padding:42px}.dialog-close{position:absolute;right:13px;top:8px;border:0;background:transparent;font-size:2rem;min-width:44px;min-height:44px}.dialog-inner h2{font-size:2.4rem}.dialog-inner>p:not(.eyebrow){font-size:.875rem;margin-top:15px}.dialog-inner form{display:grid;gap:17px;margin-top:24px}.dialog-inner label{display:grid;gap:6px;font-size:.8125rem;color:var(--ink)}input,select,textarea{width:100%;background:var(--paper);border:1px solid var(--line);padding:12px;font-size:1rem;border-radius:0;color:var(--ink)}textarea{resize:vertical}.dialog-inner form .button{justify-content:space-between;margin-top:5px}.dialog-inner pre{font-family:var(--sans);font-size:.875rem;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);border:1px solid var(--line);padding:20px;margin-block:20px}.dialog-inner #booking-result{margin-top:24px}.dialog-inner #booking-result p{margin-top:12px;font-size:.875rem}.media-caption{position:absolute;bottom:15px;left:15px;right:15px;font-size:.75rem;color:#fff;text-shadow:0 1px 5px #000}.media video{position:absolute;inset:0}
  .hero-reviews-link{display:inline-flex;align-items:center;gap:10px;width:fit-content;color:var(--wine);font-size:.8125rem;margin-top:20px;border-bottom:1px solid var(--line);padding-bottom:3px;transition:border-color .2s}
  .hero-reviews-link:hover{border-color:var(--wine)}
  .google-profile-card{background:var(--paper);border:1px solid #cbbda9;padding:36px 40px}
  .google-wordmark{display:block;font:500 1.3rem/1.2 var(--sans);letter-spacing:-.04em;color:var(--ink);margin-bottom:25px}
  .google-profile-card .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:15px}
  .google-profile-card h3{font-size:2rem;line-height:1.25}
  .google-profile-card h3 em{color:var(--wine)}
  .google-profile-card>p:not(.eyebrow){margin-top:20px;font-size:.9375rem;max-width:440px}
  .google-profile-card .button{margin-top:16px}
  .google-profile-address{display:block;font-size:.75rem;letter-spacing:.06em;color:var(--muted);padding-top:17px;border-top:1px solid var(--line);margin-top:16px}
  .review-card-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
  .review-stars{color:var(--bronze);font-size:1rem;letter-spacing:.1em;white-space:nowrap}
  .review-author{display:block;font-weight:500;color:var(--ink)}
  .review-card figcaption small{font-size:.75rem;color:var(--muted);margin-top:4px}
  .review-original{display:inline-block;font-size:.75rem;color:var(--wine);margin-top:19px;border-bottom:1px solid var(--line);padding-bottom:2px}
  .reviews-with-quotes .reviews-layout{display:block}
  .reviews-with-quotes .reviews-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:38px}
  .reviews-with-quotes .reviews-intro>p{max-width:360px}
  .reviews-with-quotes .review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
  .reviews-with-quotes .review-card{display:flex;flex-direction:column;padding:28px}
  .reviews-with-quotes .review-card blockquote{font-size:1.3rem;flex-grow:1}
  @media(max-width:900px){.reviews-with-quotes .review-grid{grid-template-columns:1fr}.google-profile-card{padding:30px}.reviews-with-quotes .reviews-intro{gap:30px}.reviews-with-quotes .reviews-intro>p{max-width:280px}}
  @media(max-width:720px){.hero-reviews-link{font-size:.75rem;margin-top:14px}.google-profile-card{padding:25px}.google-profile-card h3{font-size:1.8rem}.reviews-with-quotes .reviews-intro{display:block}.reviews-with-quotes .reviews-intro>p{max-width:none;margin-top:20px}.reviews-with-quotes .review-card{padding:25px}}
  .media .ambient-video{pointer-events:none;user-select:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1;transition:opacity .6s;z-index:1}
  .media-hero .ambient-video{object-position:17% 50%}
  .js .media .ambient-video{opacity:0;transition:none}
  .js .media.video-is-playing .ambient-video{opacity:1}
  
  
  .hero-line{display:block}
  .media-hero img{object-position:52% 30%}
  .media-coach img{object-position:50% 30%}
  @media(min-width:0px){
    .hero-kicker{animation:enter 1s .1s var(--ease) both}
    .hero-line{animation:type-enter 1.15s .2s var(--ease) both}
    .hero-line:nth-child(2){animation-delay:.42s}
    .hero-description{animation:enter 1s .6s var(--ease) both}
    .hero-actions{animation:enter .95s .78s var(--ease) both}
    .hero-proof{animation:enter .95s .94s var(--ease) both}
    .hero-visual{animation:visual-enter 1.3s .28s var(--ease) both;--ambient-state:running}
    .hero-visual-note{animation:enter 1s .92s var(--ease) both}
    .art-hero,.hero-visual .media img{animation:ambient-drift 9s 1.6s ease-in-out infinite alternate;animation-play-state:var(--ambient-state,running)}
    .media img,.media-art{transition:transform .85s var(--ease)}
    @media(hover:hover){.offer-card:hover .media img,.offer-card:hover .media-art,.place-visual:hover .media img,.place-visual:hover .media-art,.coach-portrait:hover img,.coach-portrait:hover .media-art{transform:scale(1.045)}.goal-art i{transition:transform .7s var(--ease)}.goal-card:hover .goal-art i{transform:rotate(16deg) translateY(-8px)}.journal-cover::after{transition:transform .8s var(--ease)}.journal-card:hover .journal-cover::after{transform:rotate(35deg) translateX(-12px)}}
    dialog[open] .dialog-inner{animation:enter .4s var(--ease) both}
    @keyframes enter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
    @keyframes type-enter{from{opacity:0;transform:translateY(42px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0)}}
    @keyframes visual-enter{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
    @keyframes ambient-drift{from{transform:scale(1.02) translateY(0)}to{transform:scale(1.055) translateY(-9px)}}
  }
  .motion-word{display:inline-block;overflow:hidden;vertical-align:bottom;padding-top:.12em;margin-top:-.12em}
  .motion-word-inner{display:inline-block}

}
@layer responsive {
  @media(min-width:1600px){.hero{padding-top:74px}.hero-visual>.media{min-height:610px}}
  @media(max-width:1150px){.container{width:calc(100% - 72px)}.header-inner{width:calc(100% - 64px)}.site-header nav{gap:20px}.hero{gap:35px}.hero-headline{font-size:4.05rem}.hero-kicker{font-size:.75rem;letter-spacing:.07em}.hero-actions{gap:8px 18px}.hero-actions .button{font-size:.8rem;gap:15px}.hero-proof{grid-template-columns:1fr 1fr}.hero-proof>span:last-child{grid-column:1/-1;display:none}.hero-visual>.media{min-height:500px}.concept-grid{gap:60px}.goal-grid{grid-template-columns:repeat(2,1fr);gap:24px}.goal-content p{min-height:auto}.goal-art{height:170px}.place-grid,.coach-grid,.local-grid{gap:60px}.offer-content{padding:27px}.physical-note{flex-wrap:wrap}.physical-note p{max-width:360px}.physical-note .button{margin-left:auto}.journal-cover{height:180px}}
  @media(max-width:900px){.section{padding-block:78px}.header-inner{height:80px}.brand{font-size:1.3rem}.brand small{font-size:.55rem}.site-header nav{gap:16px}.site-header nav>a:not(.button){font-size:.75rem}.site-header nav .button{font-size:.75rem;padding:11px 13px;gap:10px}.hero{gap:28px;padding-top:38px}.hero-copy{padding-block:16px 30px}.hero-headline{font-size:3.4rem}.hero-description{font-size:.9375rem}.hero-actions .button-text{font-size:.875rem}.hero-actions{margin-top:20px}.hero-proof{margin-top:30px}.hero-visual>.media{min-height:460px}.hero-visual-note{left:-15px;right:0;padding:17px;gap:15px}.hero-visual-note p{font-size:.75rem}.visual-index{display:none}.section-heading{gap:30px}.section-heading>p{max-width:265px;font-size:.9375rem}.problem-grid{gap:25px}.problem-grid h3{font-size:1.75rem}.problem-grid p{font-size:.875rem}.concept-grid{gap:40px}.concept h2{font-size:2.75rem}.concept-principles h3{font-size:1.4rem}.concept-principles article{gap:18px}.method-grid{gap:28px}.method-grid h3{font-size:1.55rem}.place-grid,.coach-grid,.local-grid{gap:40px}.place-copy h2,.coach-copy h2,.local h2{font-size:2.5rem}.place-copy p,.coach-copy p,.local p{font-size:.9375rem}.reviews-layout{gap:35px}.reviews-layout h2{font-size:2.75rem}.review-empty{padding-left:45px;padding-right:0}.quote-mark{left:0}.review-empty>p{font-size:1.4rem}.journal-grid{gap:22px}.journal-card h3{font-size:1.45rem}.journal-cover{height:165px}.journal-cover>span{font-size:2rem}.address-card{padding:27px}.physical-note h3{font-size:1.25rem}}
  @media(max-width:720px){html{scroll-padding-top:86px}.container{width:calc(100% - 40px)}.section{padding-block:65px}.header-inner{width:calc(100% - 40px);height:76px}.brand{font-size:1.35rem}.brand-symbol{height:42px;width:39px;font-size:1.5rem}.brand small{font-size:.52rem;letter-spacing:.12em}.menu-toggle{display:flex;align-items:center;gap:10px;min-width:70px;min-height:44px;padding:7px 0 7px 8px;font-size:.8125rem;background:transparent;border:0}.menu-toggle i{display:block;width:22px;height:10px;border-block:1px solid var(--wine);transition:transform .2s}.menu-toggle[aria-expanded=true] i{transform:rotate(45deg)}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--cream);padding:12px 20px 25px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px rgb(42 30 24 / .08);align-items:stretch}.site-header nav.is-open{display:flex;flex-direction:column;gap:0}.site-header nav>a:not(.button){font-size:1rem;padding:14px 0;border-bottom:1px solid var(--line)}.site-header nav>a::after{display:none}.site-header nav .button{font-size:.875rem;margin-top:17px;min-height:48px}.hero{display:flex;flex-direction:column;padding-top:27px;padding-bottom:36px;gap:26px}.hero-copy{padding:0;display:block}.hero-kicker{font-size:.75rem;letter-spacing:.055em;gap:8px;margin-bottom:21px}.hero-headline{font-size:clamp(2.9rem,8.9vw,4.2rem);line-height:1.08;letter-spacing:-.055em}.hero-description{font-size:.9375rem;margin-top:21px;max-width:520px;line-height:1.8}.hero-actions{display:flex;gap:5px 20px;align-items:center;margin-top:23px}.hero-actions .button:not(.button-text){font-size:.8125rem;padding:15px 17px;min-height:50px}.hero-actions .button-text{font-size:.8rem;padding-block:12px}.hero-proof{margin-top:24px;padding-top:16px;grid-template-columns:1fr 1.15fr 1fr;gap:10px;font-size:.75rem;line-height:1.55}.hero-proof b{font-size:.75rem}.hero-proof>span:last-child{display:block;grid-column:auto}.hero-visual{margin:0 0 28px;width:100%;max-width:550px;align-self:center}.hero-visual>.media{min-height:0;height:340px;border-radius:180px 180px 0 0}.hero .art-orbit{inset:12% 16% -65%;border-width:31px}.hero .art-monogram{font-size:7rem;left:36%;top:26%}.hero-visual-note{bottom:-28px;left:14px;right:14px;padding:16px;gap:16px}.hero-visual-note p{font-size:.75rem}.note-mark{font-size:2.1rem}.hero .placeholder-label{bottom:62px;font-size:.75rem}.scroll-cue{font-size:.75rem}.eyebrow{font-size:.75rem;gap:10px;margin-bottom:18px;letter-spacing:.1em}h2{font-size:2.75rem;line-height:1.15}h3{font-size:1.75rem}.section-heading{display:block;margin-bottom:36px}.section-heading>p{max-width:none;margin-top:22px;font-size:.9375rem;padding:0}.problem-grid{grid-template-columns:1fr;gap:28px}.problem-grid article{display:grid;grid-template-columns:30px 1fr;column-gap:13px;padding-top:22px}.problem-index{grid-row:1/3;margin-top:6px}.problem-grid h3{font-size:1.75rem}.problem-grid h3 br{display:none}.problem-grid p{grid-column:2;max-width:none;margin-top:12px}.problem-end{font-size:.8rem;margin-top:30px}.problem-end strong{display:block;margin-top:8px}.concept{padding-bottom:85px}.concept-grid{grid-template-columns:1fr;gap:42px}.concept h2{font-size:2.85rem}.concept p{font-size:.9375rem}.concept-principles article{padding-block:22px;gap:20px}.concept-principles h3{font-size:1.55rem}.concept-principles p{font-size:.875rem}.concept-watermark{font-size:6rem;bottom:-22px;right:-10px}.offer-grid{grid-template-columns:1fr;gap:28px}.offer-card .media{aspect-ratio:1.6}.offer-content{padding:25px}.offer-content h3{font-size:2.25rem}.offer-content .eyebrow{font-size:.75rem;line-height:1.7}.offer-content p{font-size:.875rem}.offer-content li{font-size:.8125rem}.physical-note{display:block;padding-top:28px}.physical-note h3{max-width:none;font-size:1.5rem}.physical-note p{margin-top:13px;max-width:none}.physical-note .button{margin-top:8px}.reviews-layout{grid-template-columns:1fr;gap:32px}.reviews-layout h2{font-size:2.75rem}.reviews-layout>div>p:last-child{font-size:.875rem}.review-empty{padding:5px 0 0 44px;border:0}.review-empty>p{font-size:1.55rem}.quote-mark{font-size:4rem;top:-20px}.review-source{font-size:.75rem}.method-grid{grid-template-columns:1fr;gap:28px}.method-grid article{display:grid;grid-template-columns:70px 1fr;gap:0 18px;padding-top:24px}.method-number{grid-row:1/4;font-size:3.75rem;margin:0}.method-grid .eyebrow{margin-top:3px;margin-bottom:9px}.method-grid h3{font-size:1.75rem}.method-grid p{grid-column:2;font-size:.875rem;margin-top:12px}.goal-grid{grid-template-columns:1fr 1fr;gap:15px}.goal-art{height:115px}.goal-art b{font-size:2.2rem;left:12px;bottom:8px}.goal-art i{border-width:20px}.goal-content{padding:17px 14px}.goal-content h3{font-size:1.4rem;line-height:1.25}.goal-content p{font-size:.8125rem;margin-block:11px 13px;min-height:125px}.goal-link{font-size:.75rem;align-items:flex-end;line-height:1.6}.goal-link span{font-size:1.2rem}.place-grid{grid-template-columns:1fr;gap:36px}.place-visual{order:2;max-width:500px;width:100%;margin:auto}.place-visual>.media{aspect-ratio:1.12;border-radius:200px 200px 0 0}.place-copy h2{font-size:2.75rem}.place-copy>p:not(.eyebrow){margin-top:20px}.place-copy .large-copy{font-size:1.1rem}.place-copy .button{margin-top:13px}.place-caption{font-size:.75rem}.coach-grid{grid-template-columns:1fr;gap:35px}.coach-copy h2{font-size:2.75rem}.coach-copy>p:not(.eyebrow){margin-top:20px}.coach-copy .large-copy{font-size:1.1rem}.coach-portrait{width:100%;height:340px;max-width:500px;margin:auto}.coach-signature>span{font-size:2.1rem}.local-grid{grid-template-columns:1fr;gap:35px}.local h2{font-size:2.75rem}.address-card{padding:30px}.address-card h3{font-size:3rem}.address-card address{margin-top:20px}.journal-grid{grid-template-columns:1fr;gap:38px}.journal-cover{height:190px;margin-bottom:22px}.journal-cover>span{font-size:2.75rem}.journal-card h3{font-size:1.8rem;max-width:none}.journal-card>p{font-size:.875rem}.journal-card .eyebrow{font-size:.75rem}.journal-card details{margin-top:17px}.final-cta h2{font-size:2.75rem;line-height:1.15}.final-cta .eyebrow{font-size:.75rem}.final-cta p{font-size:.9375rem}.final-cta .cta-note{font-size:.75rem}.final-cta .button{margin-top:28px}.final-watermark{font-size:15rem;bottom:-50px;right:-10px}.desktop-only{display:none}.site-footer{padding-top:40px;padding-bottom:100px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top>p{font-size:1.1rem;flex-basis:100%;order:3}.back-top{font-size:.75rem;gap:7px}.footer-links{margin-top:27px}.footer-links nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.75rem}.footer-bottom{flex-direction:column;gap:7px;font-size:.75rem}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:rgb(246 242 234 / .98);border-top:1px solid var(--line);z-index:25;transition:transform .25s}.mobile-cta .button{width:100%;font-size:.875rem;min-height:45px}.mobile-cta.is-hidden{transform:translateY(110%);visibility:hidden}.dialog-inner{padding:35px 24px 26px}.dialog-inner h2{font-size:2.1rem}.dialog-inner .eyebrow{margin-top:12px}}
  @media(max-width:360px){.container,.header-inner{width:calc(100% - 32px)}.hero-headline{font-size:2.75rem}.hero-proof{grid-template-columns:1fr 1fr}.hero-proof>span:last-child{display:none}.hero-actions .button:not(.button-text){width:100%}.hero-actions .button-text{padding-top:8px}.goal-grid{grid-template-columns:1fr}.goal-content p{min-height:0}.goal-art{height:135px}.brand{font-size:1.2rem}.brand small{font-size:.5rem}.hero-kicker{font-size:.75rem}h2,.place-copy h2,.coach-copy h2,.local h2{font-size:2.4rem}.footer-top .back-top{flex-basis:100%}.method-grid article{grid-template-columns:57px 1fr;gap:0 13px}.offer-content{padding:22px}}
  :root[data-motion=off]{scroll-behavior:auto}
  :root[data-motion=off] *, :root[data-motion=off] *::before, :root[data-motion=off] *::after{animation:none!important;transition:none!important}
  :root[data-motion=off] [data-reveal], :root[data-motion=off] .motion-word-inner{opacity:1!important;transform:none!important}
  @media(max-width:720px){:root:not(.js) .header-inner{height:auto;flex-wrap:wrap;padding-block:15px}:root:not(.js) .menu-toggle{display:none}:root:not(.js) .site-header nav{display:flex;flex-direction:column;position:static;flex-basis:100%;box-shadow:none;border-bottom:0;padding:0}:root:not(.js) .mobile-cta{display:none}:root:not(.js) .site-header{position:relative}}
  @media print{.site-header,.mobile-cta,.scroll-cue,dialog,.hero-actions,.button{display:none!important}.container{width:100%}.section{padding-block:25px}body{background:white}.hero{display:block}.hero-visual,.media,.goal-art,.journal-cover{display:none}*{color:#000!important;background:transparent!important}[data-reveal]{opacity:1!important;transform:none!important}h2{font-size:25pt}.hero-headline{font-size:35pt}.footer-links{display:none}}
}

@layer components {
  .hero-headline{font-size:clamp(3.1rem,4.7vw,4.45rem)}
  .local-map{margin-top:48px}
  .google-map{border:1px solid #cbbda9;background:var(--cream)}
  .google-map iframe{display:block;width:100%;height:420px;border:0}
  .google-map figcaption{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:18px 24px;font-size:.8125rem;color:var(--muted)}
  .google-map figcaption a{color:var(--wine);text-decoration:underline;text-underline-offset:4px}
}
@layer responsive {
  @media(max-width:900px){.hero-headline{font-size:3.15rem}}
  @media(max-width:720px){.hero-headline{font-size:clamp(2.45rem,8.6vw,3.8rem)}.local-map{margin-top:32px}.google-map iframe{height:320px}.google-map figcaption{padding:18px;gap:12px}}
}

@layer components {
 .google-rating{display:flex;align-items:center;gap:22px;margin:10px 0 8px;color:var(--wine)}
 .google-rating>strong{font:4.2rem/1 var(--serif);letter-spacing:-.05em}
 .google-rating strong small{font:1.1rem var(--sans);letter-spacing:0;margin-left:6px;color:var(--muted)}
 .google-rating>div{display:flex;flex-direction:column;gap:4px;font-size:.875rem}
 .google-profile-card>p.google-rating-date{font-size:.75rem;margin:0 0 25px}
}

@layer components {
 .method-visual{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center;margin-top:55px;padding-top:45px;border-top:1px solid var(--line)}
 .method-visual>.media{aspect-ratio:16/9}
 .method-visual h3{font-size:2.6rem;line-height:1.15}
 .method-visual h3 em{color:var(--wine)}
 .method-visual p:not(.eyebrow){margin-top:20px;max-width:385px}
 .goal-media{height:150px}
 .goal-media .ambient-video,.goal-media img{object-position:36% 30%}
 .media-place .ambient-video,.media-place img{object-position:49% 50%}
}
@layer responsive {
 @media(max-width:1150px){.goal-media{height:170px}.method-visual{gap:35px}}
 @media(max-width:720px){.goal-media{height:115px}.method-visual{grid-template-columns:1fr;gap:27px;margin-top:36px;padding-top:28px}.method-visual h3{font-size:2.1rem}.method-visual p:not(.eyebrow){font-size:.9375rem}.method-visual .eyebrow{margin-bottom:15px}}
 @media(max-width:360px){.goal-media{height:135px}}
}

@layer components {
  .offer-link{border-top:1px solid var(--line);padding-top:14px}.offer-link .button{width:100%;justify-content:space-between;text-align:left;white-space:normal;font-size:.875rem}
  .price-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.price-card{padding:36px;background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.price-card h3{font-size:2.2rem}.price-amount{margin-block:22px 12px;color:var(--wine)}.price-amount>span{display:block;font-size:.875rem}.price-amount strong{font:3.3rem/1.2 var(--serif)}.price-amount small{font:.95rem var(--sans);margin-left:5px}.price-conditions{font-size:.9rem;margin-block:15px}.price-trial{color:var(--wine);font-size:.9rem}.price-card .button{margin-top:auto;padding-top:22px}.price-membership{border-top:1px solid var(--line);padding-top:22px;margin-top:28px;font-size:.9rem;max-width:850px}.price-plans{width:100%;margin-block:12px}.price-plans li{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 15px;padding-block:12px;border-bottom:1px solid var(--line);font-size:.9375rem}.price-plans strong{font-weight:500}
  .faq{background:var(--paper);border-top:1px solid var(--line)}.faq-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:80px}.faq-layout>div>p:not(.eyebrow){margin-top:24px;max-width:350px}.faq-item{border-bottom:1px solid var(--line)}.faq-item:first-child{border-top:1px solid var(--line)}.faq-item summary{padding-block:24px;display:flex;justify-content:space-between;gap:24px;align-items:center;cursor:pointer;list-style:none;font-size:1rem;line-height:1.5}.faq-item summary::-webkit-details-marker{display:none}.faq-icon{font-size:1.6rem;flex-shrink:0;color:var(--wine);transition:transform .25s}.faq-item>div{padding:0 32px 25px 0}.faq-item p{font-size:1rem;line-height:1.8}.faq-item a{display:inline-block;color:var(--wine);margin-top:16px;font-size:.9rem;text-decoration:underline;text-underline-offset:4px}.journal-link{width:100%;justify-content:space-between;border-top:1px solid var(--line);margin-top:22px}
  .destination h1{font:clamp(2.6rem,5vw,4.8rem)/1.12 var(--serif);letter-spacing:-.04em;max-width:950px}.destination-back{display:inline-block;color:var(--wine);text-decoration:underline;text-underline-offset:4px;margin-bottom:40px}.destination-intro{max-width:950px;margin-bottom:50px}.destination-intro .large-copy{margin-block:25px}.destination-copy{max-width:800px;margin-block:40px}.destination-copy h2{font-size:2rem;margin-bottom:18px}.destination-copy h2:not(:first-child){margin-top:35px}.destination-copy p{font-size:1rem;line-height:1.9}.destination-media{max-width:850px;margin-block:45px}.destination-media .media{aspect-ratio:16/9}.destination-media .media-coach{aspect-ratio:4/5;max-width:450px}.destination-related{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:25px}.destination-related a{color:var(--wine);text-decoration:underline;text-underline-offset:4px}
}
@layer responsive {
  @media(min-width:1001px){.site-header nav{gap:24px}}
  @media(max-width:1000px){.header-inner{height:80px}.menu-toggle{display:flex;align-items:center;gap:10px;min-width:70px;min-height:44px;padding:7px 0 7px 8px;font-size:.875rem;background:transparent;border:0}.menu-toggle i{display:block;width:22px;height:10px;border-block:1px solid var(--wine);transition:transform .2s}.menu-toggle[aria-expanded=true] i{transform:rotate(45deg)}.site-header nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);padding:12px 32px 25px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px rgb(42 30 24 / .08);align-items:stretch}.site-header nav.is-open{display:flex;flex-direction:column;gap:0}.site-header nav>a:not(.button){font-size:1rem;padding:14px 0;border-bottom:1px solid var(--line)}.site-header nav>a::after{display:none}.site-header nav .button{font-size:.875rem;margin-top:17px;min-height:48px}.faq-layout{gap:40px}:root:not(.js) .header-inner{height:auto;flex-wrap:wrap;padding-block:15px}:root:not(.js) .menu-toggle{display:none}:root:not(.js) .site-header nav{display:flex;flex-direction:column;position:static;flex-basis:100%;box-shadow:none;border-bottom:0;padding:0}:root:not(.js) .site-header{position:relative}}
  @media(max-width:720px){.header-inner{height:76px}.site-header nav{top:76px;padding-inline:20px}.price-grid,.faq-layout{grid-template-columns:1fr;gap:28px}.price-card{padding:26px}.price-card h3{font-size:2rem}.price-amount strong{font-size:3rem}.price-membership{font-size:.875rem}.faq-layout>div>p:not(.eyebrow){max-width:none}.faq-item summary{padding-block:21px;gap:18px}.faq-item>div{padding-right:0}.destination-intro{margin-bottom:35px}.destination h1{font-size:2.75rem}.destination-back{margin-bottom:30px}.destination-copy h2{font-size:1.85rem}.destination-copy,.destination-media{margin-block:30px}}
  @media(max-width:360px){.destination h1{font-size:2.4rem}}
}

@layer components {
  .site-header .brand{position:relative}.site-header .brand-symbol{position:relative;overflow:hidden;flex-shrink:0;isolation:isolate;padding-top:0}.brand-monogram{display:block}.site-header .brand-monogram{padding-top:6px}.brand-name{display:block}.header-emblem{display:flex;align-items:center;justify-content:center;width:58px;height:50px;padding-left:13px;border-left:1px solid var(--line);margin-left:2px;flex-shrink:0}.header-emblem img{width:44px;height:44px;object-fit:contain}
  @keyframes header-mark-enter{from{opacity:0;transform:translateY(8px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}
  @keyframes header-name-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
  @keyframes header-emblem-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
  @keyframes header-mark-hover-light{from{transform:translateX(-160%) rotate(20deg)}to{transform:translateX(180%) rotate(20deg)}}
  @keyframes header-mark-light{0%,30%{transform:translateX(-160%) rotate(20deg)}85%,100%{transform:translateX(180%) rotate(20deg)}}
  html[data-motion=on] .site-header .brand-symbol{animation:header-mark-enter 1.05s var(--ease) both}
  html[data-motion=on] .site-header .brand-name{animation:header-name-enter 1.05s .16s var(--ease) both}
  html[data-motion=on] .site-header .brand small{animation:header-name-enter 1.05s .28s var(--ease) both}
  html[data-motion=on] .header-emblem{animation:header-emblem-enter 1.35s .36s var(--ease) both}
  .site-header .brand-symbol::after{content:'';position:absolute;inset:-25% -15%;pointer-events:none;background:linear-gradient(90deg,transparent 25%,rgb(255 244 222 / .30) 50%,transparent 75%);transform:translateX(-160%) rotate(20deg)}
  html[data-motion=on] .site-header .brand-symbol::after{animation:header-mark-light 1.8s .45s ease-in-out both}
  @media(hover:hover){html[data-motion=on] .site-header .brand:hover .brand-symbol::after{animation:header-mark-hover-light 1.2s ease-in-out both}.site-header .brand .brand-monogram,.header-emblem img{transition:transform .5s var(--ease)}html[data-motion=on] .site-header .brand:hover .brand-monogram{transform:translateY(-2px)}html[data-motion=on] .site-header .brand:hover .header-emblem img{transform:translateY(-2px)}}
  html[data-motion=off] .site-header .brand *,html[data-motion=off] .site-header .brand-symbol::after{animation:none!important;transition:none!important;transform:none!important}
  @media(prefers-reduced-motion:reduce){html .site-header .brand *,html .site-header .brand-symbol::after{animation:none!important;transition:none!important;transform:none!important}.site-header .brand-symbol::after{display:none}}
}
@layer responsive {
  @media(min-width:1001px) and (max-width:1150px){.site-header nav{gap:16px}.header-inner{gap:20px}.header-emblem{width:48px;padding-left:10px}.header-emblem img{width:36px;height:36px}}
  @media(max-width:720px){.header-inner{gap:12px}.site-header .brand{gap:8px;font-size:1.3rem}.header-emblem{width:35px;height:36px;padding-left:7px;margin-left:0}.header-emblem img{width:28px;height:28px}.site-header .brand-symbol{width:36px;height:40px}.site-header .brand small{font-size:.52rem;letter-spacing:.1em}}
  @media(max-width:360px){.site-header .brand{gap:7px;font-size:1.08rem}.site-header .brand-symbol{width:31px;height:36px;font-size:1.35rem}.site-header .brand small{font-size:.48rem;letter-spacing:.075em}.header-emblem{width:29px;height:31px;padding-left:5px}.header-emblem img{width:24px;height:24px}}
}

@layer components {
  .nav-services{position:relative;flex-shrink:0}.nav-services>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding-block:12px;list-style:none;cursor:pointer;font-size:.875rem;color:var(--muted);line-height:1.65}.nav-services>summary::-webkit-details-marker{display:none}.nav-chevron{display:block;width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}.nav-services[open]>summary{color:var(--wine)}.nav-services[open] .nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}
  .nav-submenu{position:absolute;top:calc(100% + 9px);left:-20px;width:310px;padding:10px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 35px rgb(48 43 39 / .10);z-index:35}.nav-submenu>a{display:flex;flex-direction:column;gap:3px;padding:14px 15px;min-height:64px;transition:background .2s}.nav-submenu>a+a{border-top:1px solid var(--line)}.nav-submenu>a strong{font-size:1rem;font-weight:500;color:var(--wine)}.nav-submenu>a span{font-size:.875rem;color:var(--muted);line-height:1.5}.nav-submenu>a:hover,.nav-submenu>a:focus-visible,.nav-submenu>a[aria-current=page]{background:var(--cream)}
  @keyframes services-menu-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
  html[data-motion=on] .nav-services[open] .nav-submenu{animation:services-menu-enter .2s ease-out}
  @media(prefers-reduced-motion:reduce){.nav-submenu{animation:none!important}.nav-chevron{transition:none}}
}
@layer responsive {
  @media(max-width:1000px){.site-header #main-nav{max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}.nav-services{border-bottom:1px solid var(--line)}.nav-services>summary{justify-content:space-between;font-size:1rem;padding-block:14px;min-height:54px}.nav-submenu{position:static;width:100%;box-shadow:none;border:0;border-left:2px solid var(--bronze);padding:0 0 0 10px;margin:0 0 16px;background:transparent}.nav-submenu>a{padding:12px 14px}.nav-submenu>a strong{font-size:1rem}.nav-submenu>a span{font-size:.875rem}}
  @media(max-width:720px){.site-header #main-nav{max-height:calc(100dvh - 76px)}}
  @media(min-width:1001px) and (max-width:1150px){.nav-services>summary{font-size:.875rem;gap:6px}}
}

/* Homepage condensée : rythme éditorial existant, moins de blocs répétitifs. */
@layer components {
  .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
  .anchor-alias{scroll-margin-top:110px}
  .homepage .section{padding-block:76px}
  .homepage .section-heading{margin-bottom:34px}
  .homepage .hero-proof{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:24px;padding-top:16px;font-size:.8125rem}
  .homepage .hero-proof>span{display:inline;grid-column:auto}
  .homepage .hero-proof>span+span::before{content:'·';color:var(--bronze);margin-right:18px}
  .homepage .hero-description{line-height:1.7}
  .homepage .problems{padding-block:60px}
  .homepage .problem-grid{gap:32px}
  .homepage .problem-index{margin-bottom:12px}
  .homepage .problem-grid h3{font-size:1.65rem}
  .homepage .problem-grid p{font-size:1rem;margin-top:12px}
  .homepage .concept{padding-block:76px}
  .homepage .concept-grid{grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
  .concept-visual .media{aspect-ratio:16/11}
  .concept-visual img{object-position:48% 50%}
  .homepage .concept .concept-caption{margin-top:13px;font-size:.8125rem}
  .homepage .concept-copy>.eyebrow{margin-top:0}
  .homepage .concept-copy>p:not(.eyebrow){font-size:1rem;margin-top:20px}
  .coaching-steps{list-style:none;margin:24px 0 0;padding:0}
  .coaching-steps li{display:flex;gap:20px;padding-block:16px;border-top:1px solid #8b6269}
  .coaching-steps li:last-child{padding-bottom:0}
  .step-index{font-size:.875rem;color:#ddc6a7;padding-top:5px}
  .coaching-steps h3{font-size:1.45rem}
  .homepage .coaching-steps p{font-size:.9375rem;line-height:1.6;margin-top:5px}
  .homepage .offers{padding-bottom:30px}
  .homepage .offer-content{padding:25px 28px}
  .homepage .offer-content>p{font-size:1rem;margin-block:14px 20px}
  .homepage .offer-content .eyebrow{font-size:.8125rem}
  .homepage .physical-note{padding-block:26px 8px;border-bottom:0;gap:24px}
  .homepage .physical-note p{font-size:.9375rem;max-width:290px}
  .homepage .physical-note .button{font-size:.9375rem}
  .homepage .prices-compact{padding-block:34px 60px}
  .price-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 30px;margin-bottom:22px}
  .price-heading>.eyebrow{flex-basis:100%;margin-bottom:4px}
  .price-heading h2{font-size:2.6rem}
  .price-comparison{width:100%;border-collapse:collapse;table-layout:fixed;background:var(--paper);border-block:1px solid var(--line);text-align:left;font-size:1rem}
  .price-comparison th,.price-comparison td{padding:13px 24px;vertical-align:middle;border-bottom:1px solid var(--line)}
  .price-comparison thead{color:var(--wine);background:var(--stone)}
  .price-comparison thead th{font-weight:500;padding-block:17px}
  .price-comparison tbody th{font-weight:400;color:var(--muted)}
  .price-comparison td strong{font:1.65rem/1.4 var(--serif);color:var(--wine);white-space:nowrap}
  .price-comparison td>span{font-size:.875rem;margin-left:6px;color:var(--muted)}
  .price-comparison thead a:hover{text-decoration:underline;text-underline-offset:4px}
  .price-facts{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px;font-size:.9375rem;line-height:1.65}
  .price-facts strong{display:block;font-weight:500;color:var(--ink);margin-bottom:4px}
  .homepage .price-membership{margin-top:18px;padding-top:16px;max-width:none;font-size:.9375rem}
  .price-options{font-size:.875rem;margin-top:8px}
  .homepage .reviews-compact{padding-block:30px}
  .reviews-strip{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap}
  .reviews-strip h2{font-size:2rem;letter-spacing:-.035em}
  .reviews-strip .google-rating-date{margin-top:6px;font-size:.8125rem}
  .reviews-strip .google-rating{margin:0;gap:18px}
  .reviews-strip .google-rating>strong{font-size:3rem}
  .reviews-strip .google-rating>div{font-size:.9375rem}
  .reviews-strip>.button{font-size:.9375rem}
  .reviews-strip .review-grid{flex-basis:100%}
  .homepage .objectives-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
  .objectives-visual .media{aspect-ratio:1.1}
  .objectives-visual img{object-position:36% 40%}
  .objective-list{margin-top:26px}
  .objective-entry{position:relative;display:flex;gap:20px;padding:20px 0;border-top:1px solid var(--line)}
  .objective-entry:last-child{padding-bottom:0}
  .objective-index{font-size:.875rem;color:var(--bronze);padding-top:5px}
  .objective-entry h3{font-size:1.65rem}
  .objective-entry p{font-size:1rem;margin-top:6px}
  .objective-entry .goal-link{display:inline-flex;gap:16px;margin-top:6px;min-height:44px;font-size:.9375rem}
  .objective-entry .goal-link:hover{text-decoration:underline;text-underline-offset:4px}
  .homepage .place{padding-bottom:42px}
  .homepage .place-grid{gap:64px}
  .homepage .place-visual>.media{aspect-ratio:1.08}
  .homepage .place-copy>p:not(.eyebrow){margin-top:20px}
  .homepage .coach{padding-top:42px}
  .homepage .coach-grid{grid-template-columns:1fr .8fr;gap:64px}
  .homepage .coach-portrait{width:100%;max-width:375px;aspect-ratio:4/5;justify-self:center}
  .homepage .coach-copy>p:not(.eyebrow){margin-top:20px}
  .local-map-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:48px;align-items:center}
  .homepage .local-copy h2{font-size:clamp(2.4rem,3.8vw,3.6rem)}
  .local-copy>p:not(.eyebrow){margin-top:20px}
  .local-copy address{font-style:normal;font-size:1rem;line-height:1.75;margin-top:22px}
  .local-copy address strong{font-weight:500}
  .local-copy address a{display:inline-block;margin-top:4px;color:var(--wine);text-decoration:underline;text-underline-offset:4px}
  .local-copy .local-access{font-size:.9375rem}
  .homepage .local-map{margin-top:0;min-width:0}
  .homepage .local .google-map iframe{height:480px}
  .homepage .local .google-map figcaption{font-size:.9375rem;padding:16px 20px}
  .journal-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:48px;align-items:center}
  .journal-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center}
  .journal-feature .media{aspect-ratio:4/5}
  .journal-feature .eyebrow,.journal-secondary .eyebrow{font-size:.8125rem;margin-bottom:14px}
  .journal-feature h3{font-size:1.8rem}
  .journal-feature p{margin-top:14px;font-size:1rem}
  .journal-secondary article{padding-block:25px;border-top:1px solid var(--line)}
  .journal-secondary article:last-child{border-bottom:1px solid var(--line)}
  .journal-secondary h3{font-size:1.6rem}
  .journal-arrow{font:1.2rem var(--sans);display:inline-block;margin-left:12px;color:var(--bronze)}
  .journal-layout h3 a{display:block;min-height:44px;color:var(--wine)}
  .journal-layout h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
  .homepage .faq-item summary{padding-block:19px}
  .homepage .faq-item>div{padding-bottom:20px}
  .homepage .final-cta{padding-block:66px}
  .homepage .final-cta h2{font-size:clamp(2.6rem,4.5vw,4rem)}
  .homepage .final-cta p{margin-top:18px}
  .homepage .final-cta .button{margin-top:24px}
  .booking-contact{display:inline-flex;width:100%;margin-top:20px;justify-content:center;font-size:1rem}
}
@layer responsive {
  @media(max-width:1150px){
    .homepage .concept-grid,.homepage .objectives-layout,.homepage .place-grid,.homepage .coach-grid{gap:36px}
    .local-map-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px}
    .journal-layout{gap:32px}.journal-feature{gap:20px}.journal-feature h3{font-size:1.6rem}
    .homepage .physical-note{display:grid;grid-template-columns:1fr 1fr}.homepage .physical-note .button{grid-column:1/-1;margin:0}
  }
  @media(max-width:900px){
    .homepage .section{padding-block:60px}
    .homepage .concept-grid{grid-template-columns:1fr 1fr;gap:28px}
    .homepage .concept h2{font-size:2.5rem}
    .homepage .objectives-layout{grid-template-columns:1fr 1fr;gap:28px}
    .local-map-layout{grid-template-columns:1fr}.homepage .local-copy{max-width:660px}
    .homepage .local .google-map iframe{height:400px}
    .journal-layout{grid-template-columns:1fr}.journal-feature{grid-template-columns:.6fr 1fr}.journal-feature .media{aspect-ratio:1.2}
    .journal-secondary{display:grid;grid-template-columns:1fr 1fr;gap:28px}.journal-secondary article:last-child{border-bottom:0}
  }
  @media(max-width:720px){
    .homepage .section{padding-block:48px}
    .homepage h2{font-size:2.3rem;line-height:1.18}
    .homepage .section-heading{margin-bottom:26px}
    .homepage .section-heading h2 br,.homepage .place-copy h2 br,.homepage .coach-copy h2 br{display:none}
    .homepage .eyebrow{margin-bottom:15px;letter-spacing:.08em}
    .homepage .hero{padding-top:25px;gap:24px}
    .homepage .hero-proof{margin-top:16px;padding-top:12px;gap:6px 13px;font-size:.75rem}
    .homepage .hero-proof>span+span::before{margin-right:13px}
    .homepage .hero-description{font-size:1rem;margin-top:18px;line-height:1.65}
    .homepage .hero-actions{margin-top:20px;gap:4px 18px}
    .homepage .hero-visual>.media{height:320px}
    .homepage .hero-visual{margin-bottom:24px}
    .homepage .problem-grid{gap:20px}
    .homepage .problem-grid article{padding-top:18px}
    .homepage .problem-grid p{margin-top:6px;line-height:1.6}
    .homepage .problem-grid h3{font-size:1.55rem}
    .homepage .problem-index{margin-top:3px}
    .homepage .concept-grid{display:flex;flex-direction:column-reverse;gap:26px}
    .homepage .concept h2{font-size:2.3rem}
    .concept-visual{width:100%}.concept-visual .media{aspect-ratio:16/10}
    .homepage .concept .concept-caption{font-size:.75rem}
    .coaching-steps{margin-top:20px}.coaching-steps li{padding-block:13px;gap:15px}
    .coaching-steps h3{font-size:1.35rem}.homepage .coaching-steps p{font-size:.9375rem}
    .homepage .offers{padding-bottom:20px}.homepage .offer-grid{gap:22px}
    .homepage .offer-card .media{aspect-ratio:16/10}
    .homepage .offer-content{padding:21px}.homepage .offer-content h3{font-size:2rem}
    .homepage .offer-content>p{line-height:1.6;margin-block:12px 15px}
    .homepage .offer-link{padding-top:4px}.homepage .offer-link .button{font-size:.9375rem}
    .homepage .physical-note{display:block;padding-block:22px 0}
    .homepage .physical-note p{max-width:none;margin-top:8px}.homepage .physical-note .button{margin:4px 0 0}
    .homepage .prices-compact{padding-block:28px 42px}
    .price-heading{display:block;margin-bottom:16px}.price-heading h2{font-size:2rem}.price-heading>.eyebrow{margin-bottom:12px}
    .price-heading .button{font-size:.9375rem;padding-block:10px}
    .price-comparison th,.price-comparison td{padding:12px 9px;font-size:.875rem}
    .price-comparison thead th{padding-block:14px;line-height:1.5}
    .price-comparison th:first-child{width:30%}
    .price-comparison td strong{font-size:1.5rem}
    .price-comparison td>span{display:block;font-size:.875rem;margin-left:0}
    .price-facts{gap:18px;font-size:.9375rem;margin-top:18px}
    .homepage .price-membership{font-size:.9375rem;margin-top:16px}
    .homepage .reviews-compact{padding-block:26px}.reviews-strip{gap:14px 24px}
    .reviews-strip h2{font-size:1.8rem}.reviews-strip .google-rating>strong{font-size:2.5rem}
    .reviews-strip>.button{padding-block:8px}
    .homepage .objectives-layout{display:flex;flex-direction:column-reverse;gap:24px}
    .objectives-copy,.objectives-visual{width:100%}.objectives-visual .media{aspect-ratio:16/10}
    .objective-list{margin-top:20px}.objective-entry{padding:16px 0;gap:16px}
    .objective-entry h3{font-size:1.6rem}.objective-entry .goal-link{font-size:.9375rem;margin-top:3px}
    .homepage .place-grid,.homepage .coach-grid{grid-template-columns:1fr;gap:26px}
    .homepage .place{padding-bottom:32px}.homepage .place-visual>.media{aspect-ratio:1.1}
    .homepage .place-copy .large-copy,.homepage .coach-copy .large-copy{font-size:1.1rem}
    .homepage .coach{padding-top:32px}.homepage .coach-portrait{height:340px;max-width:375px;aspect-ratio:auto}
    .local-map-layout{gap:25px}.homepage .local-copy h2{font-size:2.3rem}
    .local-copy>p:not(.eyebrow){margin-top:16px}.local-copy address{margin-top:18px}
    .homepage .local .google-map iframe{height:350px}
    .homepage .local .google-map figcaption{padding:14px;font-size:.875rem}
    .journal-layout{gap:24px}.journal-feature{grid-template-columns:110px 1fr;gap:20px;align-items:start}
    .journal-feature .media{height:230px;aspect-ratio:auto}.journal-feature h3{font-size:1.4rem}
    .journal-feature .eyebrow,.journal-secondary .eyebrow{font-size:.75rem;letter-spacing:.055em}
    .journal-feature p{font-size:.9375rem;margin-top:10px}
    .journal-secondary{display:block}.journal-secondary article{padding-block:19px}
    .journal-secondary article:last-child{border-bottom:1px solid var(--line)}
    .journal-secondary h3{font-size:1.45rem}
    .homepage .faq-layout{gap:26px}.homepage .faq-item summary{padding-block:18px}
    .homepage .final-cta{padding-block:48px}.homepage .final-cta h2{font-size:2.4rem}
    .homepage .final-cta p{font-size:1rem}
  }
  @media(max-width:360px){
    .homepage .hero-proof{font-size:.75rem;gap:6px 11px}.homepage .hero-proof>span:last-child{display:none}
    .price-facts{grid-template-columns:1fr;gap:12px}
    .price-comparison th,.price-comparison td{padding-inline:7px}
    .journal-feature{grid-template-columns:90px 1fr;gap:15px}.journal-feature .media{height:230px}
    .homepage h2,.homepage .concept h2,.homepage .local-copy h2{font-size:2.1rem}
  }
  /* Les titres restent immédiatement lisibles ; animation d’accent uniquement. */
  .hero-kicker,.hero-line,.hero-description,.hero-actions,.hero-proof,.hero-visual,.hero-visual-note{animation-duration:.6s;animation-delay:0s}
  .hero-line:nth-child(2){animation-delay:.08s}
  @media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{animation:none!important;transition:none!important}
    .motion-word-inner{transform:none!important;opacity:1!important}
  }
}
@layer components {
  .motion-word,.motion-word-inner{max-width:100%}
  .motion-word-inner{overflow-wrap:anywhere}
  .price-comparison th{overflow-wrap:anywhere}
}
@layer components {
  .concept-copy,.coaching-steps li>div{min-width:0}
  .faq-item summary>span:first-child{min-width:0;overflow-wrap:anywhere}
}
@layer responsive {
  @media(max-width:1000px){
    .header-inner{height:auto;min-height:80px;padding-block:12px}
    .site-header .brand{min-width:0;flex-shrink:1}
    .site-header .brand-text{min-width:0}
    .site-header .brand-name{overflow-wrap:anywhere}
    .site-header .brand small{line-height:1.5}
    .site-header nav{top:100%}
    .menu-toggle{flex-shrink:0}
  }
  @media(max-width:720px){
    .header-inner{min-height:76px}
    .concept-copy{width:100%}
    .coaching-steps li>div{flex:1}
  }
}
@layer components {
  .journal-layout>*,.journal-feature>div,.faq-list{min-width:0}
  .journal-feature>div{overflow-wrap:anywhere}
  .faq-item summary>span:first-child{flex:1}
  .faq-icon{flex:0 0 1em;width:1em;text-align:center}
}
@layer responsive {
  @media(max-width:900px){.journal-layout{grid-template-columns:minmax(0,1fr)}}
  @media(max-width:720px){.journal-feature{grid-template-columns:110px minmax(0,1fr)}.homepage .faq-layout{grid-template-columns:minmax(0,1fr)}}
  @media(max-width:360px){.journal-feature{grid-template-columns:90px minmax(0,1fr)}}
}
@layer components {
  .faq-item summary{display:grid;grid-template-columns:minmax(0,1fr) 1.75rem}
  .faq-icon{max-width:100%}
}
@layer components {
  .eyebrow{min-width:0;overflow-wrap:anywhere}
  .price-comparison td strong{display:inline-block;max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .faq-icon{line-height:1}
}

/* Pages de choix : visuels de service, détails pratiques et tarifs dédiés. */
@layer components {
  .homepage .tariffs-reference{padding-top:16px;margin-top:12px;border-top:1px solid var(--line)}
  .homepage .tariffs-reference .button{font-size:.9375rem;padding-block:8px}
  .commercial-page .section{padding-block:72px}
  .breadcrumbs{font-size:.875rem;color:var(--muted);margin-bottom:34px}
  .breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
  .breadcrumbs li+li::before{content:'/';color:var(--bronze);margin-right:10px}
  .breadcrumbs a{color:var(--wine);text-decoration:underline;text-underline-offset:4px}
  .commercial-page h1{font:clamp(2.65rem,4.3vw,4.3rem)/1.08 var(--serif);letter-spacing:-.05em;overflow-wrap:anywhere}
  .commercial-page h2{font-size:clamp(2.3rem,3.5vw,3.4rem)}
  .commercial-page h3{font-size:1.75rem}
  .commercial-page .eyebrow{margin-bottom:18px}
  .service-intro.section{padding-block:38px 68px}
  .service-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
  .service-lead{font-size:1.1rem;line-height:1.7;margin-top:24px;max-width:640px}
  .service-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;margin-top:25px}
  .service-actions .button-text{font-size:.9375rem}
  .service-hero-visual .media{aspect-ratio:16/11;border-radius:145px 145px 0 0}
  .service-hero-visual .media-group img,.service-hero-visual .media-group video{object-position:0% 50%}
  .image-note{font-size:.8125rem;line-height:1.6;margin-top:12px}
  .service-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
  .service-split>div{min-width:0}
  .service-story{background:var(--paper);border-block:1px solid var(--line)}
  .service-story-media{aspect-ratio:16/11}
  .service-split>div>p:not(.eyebrow):not(.image-note){margin-top:20px;font-size:1rem;line-height:1.8}
  .service-objectives{background:var(--wine);color:var(--cream)}
  .service-objectives h2 em{color:#ddc6a7}
  .service-objectives .eyebrow{color:#ddc6a7}
  .service-objective-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:34px}
  .service-objective-links article{border-top:1px solid #8b6269;padding-top:22px}
  .service-objective-links a{display:block;min-height:44px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
  .service-objective-links p{margin-top:8px;color:#e0d1ce;font-size:1rem}
  .service-coach-portrait{aspect-ratio:4/5;width:100%;max-width:365px;justify-self:center}
  .commercial-page address{font-size:1rem;font-style:normal;line-height:1.7;margin-top:20px}
  .service-practical{background:var(--stone)}
  .service-place-arch{aspect-ratio:1;border-radius:200px 200px 0 0}
  .practical-facts{margin:25px 0 0}
  .practical-facts>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;border-top:1px solid #cbbda9;padding-block:17px;font-size:1rem}
  .practical-facts dt{font-weight:500;color:var(--ink)}
  .practical-facts dd{margin:0;color:var(--muted)}
  .practical-facts a{color:var(--wine);text-decoration:underline;text-underline-offset:4px}
  .service-faq{background:var(--paper);border-top:1px solid var(--line)}
  .service-faq-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}
  .service-reading{display:grid;gap:16px;margin-top:30px;max-width:350px}
  .service-reading a{font-size:1rem;line-height:1.65;color:var(--wine);text-decoration:underline;text-underline-offset:4px}
  .service-close{background:var(--wine);color:var(--cream)}
  .service-close .container{display:flex;align-items:center;justify-content:space-between;gap:32px}
  .service-close h2{font-size:clamp(2.3rem,3.5vw,3.3rem)}
  .service-close p{margin-top:16px;color:#e0d1ce;font-size:1rem;max-width:600px}
  .service-close .button{flex-shrink:0}
  .tariff-intro.section{padding-block:38px 40px}
  .tariff-intro h1{max-width:960px;font-size:clamp(2.6rem,4.2vw,4rem)}
  .tariff-intro .service-lead{max-width:760px}
  .tariff-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
  .tariff-jumps a{display:block;padding:11px 20px;border:1px solid var(--line);color:var(--wine);font-size:1rem;min-height:48px}
  .tariff-jumps a:hover{background:var(--stone)}
  .membership-notice{border-left:3px solid var(--bronze);background:var(--stone);padding:20px 25px;margin-top:30px;font-size:1rem;scroll-margin-top:112px}
  .membership-notice strong{font-weight:500;color:var(--wine)}
  .membership-notice p{margin-top:6px;color:var(--ink);max-width:960px}
  .tariff-format.section{padding-block:46px 64px}
  .tariff-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start}
  .tariff-format-copy>p:not(.eyebrow){font-size:1rem;margin-top:18px;max-width:420px}
  .tariff-format-copy strong{font-weight:500;color:var(--wine)}
  .membership-link{display:inline-block;color:var(--wine);font-size:1rem;text-decoration:underline;text-underline-offset:4px;margin-top:18px}
  .tariff-table{width:100%;table-layout:fixed;border-collapse:collapse;background:var(--paper);text-align:left;border:1px solid var(--line)}
  .tariff-table th,.tariff-table td{border-bottom:1px solid var(--line);padding:16px 24px;vertical-align:middle;overflow-wrap:anywhere}
  .tariff-table thead{background:var(--stone);color:var(--wine);font-size:1rem}
  .tariff-table th{font-weight:500;width:43%}
  .tariff-table tbody th{font-size:1.2rem;color:var(--ink)}
  .tariff-table tbody th>span{display:block;font-size:.9375rem;color:var(--muted);font-weight:400}
  .tariff-table td>strong{display:block;font:2rem/1.4 var(--serif);color:var(--wine)}
  .tariff-table td small{font:1rem var(--sans);margin-left:7px;color:var(--muted)}
  .tariff-table .plan-contact{font-size:.875rem;min-height:44px;padding-block:8px;margin-top:4px;max-width:100%}
  .tariff-table .button-mark{font-size:1rem}
  .tariff-group{background:var(--paper);border-block:1px solid var(--line)}
  .tariff-format-copy>p.tariff-trial{font-weight:500;color:var(--wine)}
  .tariff-options-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}
  .tariff-options-layout p:not(.eyebrow){margin-top:18px;font-size:1rem}
  .option-prices{margin:0}
  .option-prices>div{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:22px;border-top:1px solid var(--line);font-size:1rem}
  .option-prices>div:last-child{border-bottom:1px solid var(--line)}
  .option-prices dd{margin:0;color:var(--muted);flex-shrink:0}
  .option-prices strong{font:1.75rem var(--serif);color:var(--wine);margin-right:6px}
  .tariff-secondary-conditions{margin-top:36px}
  .tariff-secondary-conditions>p{font-size:1rem;margin-top:20px}
  .tariff-secondary-conditions>p>.button{display:inline-flex;margin-left:12px}
}
@layer responsive {
  @media(max-width:1150px){
    .service-hero,.service-split,.service-faq-layout,.tariff-layout,.tariff-options-layout{gap:36px}
    .service-page h1{font-size:3.3rem}
    .service-hero-visual .media{aspect-ratio:1.2;border-radius:110px 110px 0 0}
  }
  @media(max-width:900px){
    .commercial-page .section{padding-block:56px}
    .service-hero{gap:28px}
    .service-page h1{font-size:2.8rem}
    .service-hero-visual .media{aspect-ratio:1;border-radius:90px 90px 0 0}
    .service-split{gap:28px}
    .tariff-layout,.tariff-options-layout{grid-template-columns:minmax(0,1fr);gap:28px}
    .tariff-format-copy{max-width:650px}
    .service-objective-links{gap:25px}
    .service-close .container{flex-direction:column;align-items:flex-start}
  }
  @media(max-width:720px){
    .commercial-page .section{padding-block:44px}
    .commercial-page h1,.service-page h1,.tariff-intro h1{font-size:2.6rem;line-height:1.12;letter-spacing:-.045em}
    .commercial-page h2{font-size:2.2rem;line-height:1.18}
    .commercial-page h2 br{display:none}
    .service-intro.section,.tariff-intro.section{padding-top:25px}
    .breadcrumbs{margin-bottom:24px;font-size:.875rem}
    .service-hero,.service-split,.service-faq-layout{grid-template-columns:minmax(0,1fr);gap:26px}
    .service-lead{font-size:1rem;line-height:1.7;margin-top:18px}
    .service-actions{gap:5px 20px;margin-top:20px}
    .service-actions .button{max-width:100%;font-size:.9375rem}
    .service-hero-visual .media{aspect-ratio:16/11;border-radius:110px 110px 0 0}
    .service-story .service-split>div:first-child{order:2}
    .service-story-media{aspect-ratio:16/11}
    .service-split>div>p:not(.eyebrow):not(.image-note){margin-top:16px;line-height:1.75}
    .service-objective-links{grid-template-columns:minmax(0,1fr);gap:17px;margin-top:25px}
    .service-objective-links article{padding-top:16px}
    .commercial-page .service-objective-links h3{font-size:1.5rem}
    .service-objective-links p{margin-top:0}
    .service-coach-portrait{max-width:350px;height:340px;aspect-ratio:auto}
    .service-place-arch{aspect-ratio:1.1}
    .practical-facts>div{grid-template-columns:100px minmax(0,1fr);gap:15px;padding-block:15px}
    .service-faq-layout{gap:30px}
    .service-reading{margin-top:22px;gap:13px;max-width:none}
    .service-close .container{gap:24px}
    .service-close h2{font-size:2.2rem}
    .service-close .button{max-width:100%}
    .tariff-jumps{margin-top:20px;gap:10px}
    .tariff-jumps a{padding:10px 16px}
    .membership-notice{padding:18px;margin-top:23px}
    .tariff-format.section{padding-block:38px}
    .tariff-table th,.tariff-table td{padding:14px 16px}
    .tariff-table tbody th{font-size:1.1rem}
    .tariff-table td>strong{font-size:1.75rem}
    .tariff-table td small{font-size:.9375rem;display:block;margin-left:0}
    .tariff-table .plan-contact{gap:8px;line-height:1.5;font-size:.875rem}
    .option-prices>div{font-size:1rem;gap:18px}
    .option-prices dd{flex-shrink:1}
    .tariff-secondary-conditions{margin-top:26px}
    .tariff-secondary-conditions>p>.button{display:flex;margin-left:0}
  }
  @media(max-width:360px){
    .commercial-page h1,.service-page h1,.tariff-intro h1{font-size:2.3rem}
    .commercial-page h2{font-size:2rem}
    .practical-facts>div{grid-template-columns:minmax(0,1fr);gap:5px}
    .tariff-table th,.tariff-table td{padding:13px 11px}
    .option-prices>div{flex-wrap:wrap;gap:7px}
  }
}
@layer responsive {
  @media(min-width:1001px){
    .header-inner{height:auto;min-height:96px;padding-block:12px;flex-wrap:wrap}
    .site-header #main-nav{flex-wrap:wrap;max-width:100%}
  }
}
@layer components {
  .service-planning{background:var(--cream);border-top:1px solid var(--line)}
  .weekly-schedule{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin:30px 0 0;border:1px solid var(--line);background:var(--paper)}
  .schedule-day{min-width:0;border-right:1px solid var(--line)}
  .schedule-day:last-child{border-right:0}
  .schedule-day dt{padding:15px 8px;background:var(--wine);color:var(--cream);font-size:1rem;font-weight:500;text-align:center;overflow-wrap:anywhere}
  .schedule-day dd{margin:0;padding:18px 9px;display:grid;gap:16px;min-height:170px}
  .schedule-slot{font-size:1rem;text-align:center;line-height:1.65;overflow-wrap:anywhere}
  .schedule-slot+.schedule-slot{padding-top:14px;border-top:1px solid var(--line)}
  .schedule-hours{color:var(--wine);font-weight:500}
  .schedule-day-off dt{background:var(--stone);color:var(--muted)}
  .schedule-day-off dd{place-items:center}
  .schedule-off{font-size:1rem;text-align:center;color:var(--muted);overflow-wrap:anywhere}
  .schedule-note{margin-top:16px;font-size:.9375rem;color:var(--muted)}
}
@layer responsive {
  @media(max-width:900px){
    .weekly-schedule{display:block;margin-top:24px}
    .schedule-day{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.65fr);align-items:stretch;border-right:0;border-bottom:1px solid var(--line)}
    .schedule-day:last-child{border-bottom:0}
    .schedule-day dt{display:flex;align-items:center;justify-content:flex-start;text-align:left;padding:16px 12px}
    .schedule-day dd{min-height:0;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:15px 10px}
    .schedule-slot{flex:1 1 6rem}
    .schedule-slot+.schedule-slot{border-top:0;padding-top:0}
    .schedule-day-off dd{justify-content:center}
  }
}

@layer components {
  .media-placeStory .ambient-video,.media-placeStory img{object-position:43% 50%}
}
/* Révision éditoriale : mêmes matières et composants, moins de décors. */
.homepage .hero-visual{margin-bottom:0}.homepage .hero-visual .media img,.homepage .hero-visual .media video{object-position:10% 50%}
.homepage .hero-reviews-link{margin-top:20px}.homepage .section{padding-block:64px}
.departure-inline{display:flex;gap:24px;padding-block:20px;margin-bottom:26px;border-block:1px solid var(--line)}
.departure-inline p{flex:1;font-size:.875rem;line-height:1.65}.departure-inline strong{display:block;font-weight:500;color:var(--ink);margin-bottom:5px}
.home-method{font-size:.9375rem}.coach .reviews-compact{padding-block:28px 0;margin-top:36px;border-top:1px solid var(--line);background:transparent}
.home-studio-access{display:grid;grid-template-columns:.85fr 1.35fr;gap:50px;align-items:start;margin-top:42px;padding-top:36px;border-top:1px solid var(--line)}
.home-studio-access h3{font-size:1.6rem}.home-studio-access p{margin-top:16px;font-size:.9375rem}.home-studio-access address{font-style:normal;color:var(--ink);margin-top:20px}.home-studio-access .google-map{margin-top:0}.home-studio-access iframe{height:330px}
.journal-index-link{margin-top:24px}.editorial-page h1{font:clamp(2.4rem,4.2vw,4.2rem)/1.13 var(--serif);letter-spacing:-.04em;max-width:1050px;text-wrap:balance}
.editorial-intro{padding-block:35px 48px}.editorial-intro .service-lead,.article-intro .service-lead{max-width:780px;margin-block:22px}.editorial-portrait{aspect-ratio:4/5;max-height:500px;max-width:430px;border-radius:150px 150px 0 0}
.editorial-body{padding-top:16px}.editorial-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:70px;align-items:start}
.article-prose{max-width:780px;min-width:0}.article-prose section+section,.article-prose h2:not(:first-child){margin-top:36px}
.article-prose h2{font-size:clamp(1.8rem,2.6vw,2.5rem);margin-bottom:16px;line-height:1.2}.article-prose h3{font-size:1.55rem;margin-block:26px 14px}
.article-prose p{margin-bottom:15px;line-height:1.8;color:var(--muted)}.article-prose ul,.article-prose ol{padding-left:23px;margin-block:15px 24px;color:var(--muted)}
.article-prose li+li{margin-top:7px}.article-prose a{text-decoration:underline;text-underline-offset:4px;color:var(--wine)}.article-prose br+br{display:none}
.editorial-aside{background:var(--stone);padding:28px;min-width:0}.editorial-aside h2{font-size:1.65rem;margin-bottom:14px}.editorial-aside h3{font-size:1.3rem;margin-block:25px 10px}
.editorial-aside>.button{display:flex;font-size:.875rem;line-height:1.6;padding-block:12px}.reading-links{display:grid;gap:15px}.reading-links a{color:var(--wine);text-decoration:underline;text-underline-offset:4px;line-height:1.65;font-size:.9375rem}.reading-links a span{margin-left:12px}
.editorial-compact .reading-links{margin-top:25px}.article-intro{padding-block:35px 40px}.article-byline{font-size:.8125rem}.article-content{padding-top:0}
.advice-intro{padding-block:35px}.advice-body{padding-top:0}.advice-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.advice-layout .media{aspect-ratio:4/5;border-radius:150px 150px 0 0}.advice-group h2{font-size:2.1rem;margin-bottom:24px}.advice-group+section{margin-top:38px}.advice-group article{padding-block:18px;border-top:1px solid var(--line)}.advice-group h3{font-size:1.6rem}.advice-group a{color:var(--wine)}.advice-group p{margin-top:10px;font-size:.9375rem}
#booking-result>.button{margin-block:14px 5px;margin-right:12px}.site-footer{padding-bottom:28px}
@media(max-width:1100px){.site-header nav{gap:16px}.nav-services>summary{font-size:.8125rem}.editorial-columns,.advice-layout{gap:35px}.home-studio-access{gap:32px}}
@media(max-width:720px){.homepage .section{padding-block:44px}.homepage .hero-visual{margin-bottom:0}.departure-inline{display:block;padding-block:6px;margin-bottom:22px}.departure-inline p{padding-block:12px}.departure-inline p+p{border-top:1px solid var(--line)}.home-studio-access{grid-template-columns:1fr;gap:24px;margin-top:28px;padding-top:28px}.home-studio-access iframe{height:300px}.coach .reviews-compact{margin-top:26px;padding-top:20px}.editorial-columns,.advice-layout{grid-template-columns:1fr;gap:30px}.editorial-intro,.article-intro{padding-block:24px 35px}.editorial-page h1{font-size:clamp(2rem,7.7vw,3rem)}.editorial-aside{padding:24px}.article-prose h2{font-size:1.85rem}.advice-layout .media{aspect-ratio:16/10;border-radius:100px 100px 0 0}.advice-group h2{font-size:1.85rem}.advice-group h3{font-size:1.45rem}.site-footer{padding-bottom:25px}.homepage h2 br{display:none}.homepage h2{font-size:clamp(2rem,7.7vw,2.8rem)}}
@media(max-width:360px){.home-studio-access h3{font-size:1.45rem}.editorial-aside{padding:18px}.article-prose h2{font-size:1.6rem}.editorial-page .service-lead{font-size:1rem}}
main h1,main h2,main h3{overflow-wrap:anywhere}.service-hero>*,.home-studio-access>*,.editorial-columns>*{min-width:0}
.button-mark svg,.goal-link>span svg,.journal-arrow svg,.reading-links svg{display:inline-block;width:16px;height:16px;vertical-align:middle}

/* Corrections de la revue des Skills : palette et composition conservées. */
.hero-copy .action-note,.service-hero-copy .action-note{font-size:.8125rem;line-height:1.6;color:var(--muted);margin-top:12px;max-width:460px}
.hero-visual,.hero-visual .media img{animation:none!important}
@media(prefers-reduced-motion:no-preference){html[data-motion="on"] .hero-kicker{animation-duration:.3s;animation-delay:0s}html[data-motion="on"] .hero-line{animation-duration:.52s;animation-delay:.06s}html[data-motion="on"] .hero-description{animation-duration:.42s;animation-delay:.13s}html[data-motion="on"] .hero-actions{animation-duration:.36s;animation-delay:.2s}}
.objective-entry{display:block}
.place-caption{color:var(--muted);letter-spacing:.02em}
.article-byline a{color:var(--wine);text-decoration:underline;text-underline-offset:3px}
.site-header #main-nav>a[aria-current="page"],.nav-services[data-active="true"]>summary{color:var(--wine);font-weight:600;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.footer-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-block:24px;border-block:1px solid var(--line)}
.footer-group h2{font:500 .9375rem/1.5 var(--sans);letter-spacing:0;color:var(--ink);margin-bottom:8px}
.footer-links .footer-group nav{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:0;border:0;font-size:.875rem}
.footer-links .footer-group nav a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.footer-links .footer-group nav a:hover{text-decoration:underline}
@media(max-width:720px){.footer-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.footer-group:last-child{grid-column:1/-1}.footer-links .footer-group:last-child nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.footer-group h2{font-size:.875rem}.footer-links .footer-group nav{font-size:.8125rem}.hero-copy .action-note{margin-top:8px}}

/* Le visuel principal mobile apparaît sans attendre une animation d’entrée. */
@layer motion { @media (max-width:720px) { .hero-visual { animation:none; } } }

/* Contact P1 : une action principale, alternatives discrètes. */
#booking-dialog{max-height:calc(100dvh - 32px);width:min(560px,calc(100% - 32px));overflow-y:auto}
#booking-form .button,#email-request{width:100%;justify-content:center;min-height:48px}
.field-optional,.contact-note{font-size:.875rem;font-weight:400;line-height:1.6}
.contact-note{margin-top:12px}
.contact-alternatives{border-top:1px solid var(--line);margin-top:24px;padding-top:18px;display:flex;flex-wrap:wrap;gap:12px 24px;font-size:.875rem}
.contact-alternatives p{width:100%;margin:0}
.contact-alternatives a{text-decoration:underline;text-underline-offset:4px;min-height:28px}
.contact-preview{margin-block:18px}.contact-preview summary{cursor:pointer;min-height:36px;font-size:.875rem}
#booking-summary{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.875rem;line-height:1.6}
body.dialog-open .mobile-cta{visibility:hidden}
#booking-dialog input,#booking-dialog select,#booking-dialog textarea{font-size:1rem}

/* P2 : le lieu et les séances portent le visuel, le texte accompagne le choix. */
.homepage .section-heading{margin-bottom:24px}
.homepage .section .eyebrow{font-size:.875rem;text-transform:none;letter-spacing:.025em;margin-bottom:14px}
.homepage .departure-inline{display:block;border:0;padding:0;max-width:60ch;margin:0 0 28px;font-size:1rem;line-height:1.65}
.homepage .offer-card{display:flex;flex-direction:column}
.homepage .offer-content{display:flex;flex-direction:column;flex:1}
.homepage .offer-link{margin-top:auto}
.homepage .hero-description,.homepage .coach-copy>p,.homepage .place-copy>p{max-width:58ch}
.homepage .action-note,.homepage .google-rating-date,.homepage .place-caption{font-size:.875rem}
.homepage .physical-note h3{max-width:22ch}
.homepage .journal-feature h3,.homepage .journal-secondary h3{line-height:1.35;letter-spacing:-.015em}
.homepage .journal-feature p{max-width:48ch}
.homepage .faq-item summary{min-height:56px;font-size:1rem}
@media(max-width:720px){
  .homepage .departure-inline{margin-bottom:24px}
  .homepage .journal-feature{grid-template-columns:1fr;gap:18px}
  .homepage .journal-feature .media{height:auto;aspect-ratio:16/10}
  .homepage .journal-feature h3{font-size:1.75rem}
  .homepage .journal-feature p{font-size:1rem;line-height:1.7}
  .homepage .journal-secondary h3{font-size:1.5rem}
  .homepage .home-studio-access p,.homepage .home-method,.homepage .physical-note p{font-size:1rem}
  .homepage .hero-actions{align-items:stretch}
  .homepage .hero-actions>.button:first-child{justify-content:center}
}

/* Décision : comparer les formats puis consulter les conditions. */
.homepage .tariffs-reference{display:flex;flex-wrap:wrap;align-items:center;gap:8px 32px}
.editorial-aside>p{font-size:1rem;line-height:1.7;margin-bottom:16px}
@media(max-width:720px){.homepage .tariffs-reference{display:block}.homepage .tariffs-reference>.button{display:flex;min-height:44px}}

/* Optimisation UX : réutiliser les couleurs, polices et formes validées. */
.button-secondary{background:transparent;color:var(--wine);border-color:var(--wine);min-height:48px}
.button-secondary:hover{background:var(--stone);transform:none}
.button-text{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.hero-actions>.button-secondary{font-size:.875rem}
.service-actions{gap:12px 24px}
.goal-link{min-height:44px;text-decoration:underline;text-underline-offset:5px}
.service-card{position:relative;isolation:isolate}
.service-card-link::after{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.service-card-link:hover{transform:none}
.service-card-link:focus-visible{outline:none}
.service-card:has(.service-card-link:focus-visible){outline:3px solid var(--wine);outline-offset:5px}
.service-card .media[data-video]{pointer-events:none;z-index:2}
.service-card .ambient-video{z-index:2}
.service-card-horizontal{margin-top:30px;display:grid!important;grid-template-columns:.72fr 1fr;align-items:stretch}
.homepage .service-card-horizontal .media{height:100%;aspect-ratio:auto;min-height:260px}
.homepage .service-card-horizontal .offer-content{justify-content:center;padding:30px 36px}
.service-card-horizontal .offer-content>p{max-width:60ch}
.service-card-horizontal .offer-link{margin-top:0}
.homepage .service-card-horizontal h3{font-size:2.35rem}
.physical-start{padding-top:20px!important}
.physical-service-page .editorial-columns{align-items:start}
.physical-service-page .article-prose h3{margin-block:26px 12px}
.physical-priorities{background:var(--paper);border-block:1px solid var(--line)}
.physical-priorities .media{aspect-ratio:4/3}
.physical-example-layout{display:grid;grid-template-columns:1.5fr .75fr;gap:70px;align-items:start}
.physical-readings{border-top:1px solid var(--line);padding-top:24px}
.physical-readings .eyebrow{line-height:1.6}
.dialog-inner{overscroll-behavior:contain}
@media(hover:hover){.service-card:hover{border-color:var(--wine)}.service-card:hover .service-card-link{text-decoration-thickness:2px}}
@media(max-width:900px){.service-card-horizontal{grid-template-columns:.8fr 1fr}.homepage .service-card-horizontal .offer-content{padding:25px}.physical-example-layout{gap:35px}}
@media(max-width:720px){
 .service-actions{gap:12px 20px}
 .hero-actions{gap:12px 20px}
 .hero-actions>.button-secondary{min-height:48px;padding:13px 17px;font-size:.875rem}
 .service-card-horizontal{display:flex!important;flex-direction:column;margin-top:22px}
 .homepage .service-card-horizontal .media{height:auto;min-height:0;aspect-ratio:16/10}
 .homepage .service-card-horizontal .offer-content{padding:21px}
 .homepage .service-card-horizontal h3{font-size:2rem}
 .physical-example-layout{grid-template-columns:1fr;gap:28px}
 .physical-priorities .media{aspect-ratio:16/10}
 .service-actions>.button-secondary{white-space:normal}
}

/* Variante B validée — mêmes tokens, médias, typographies et SEO. */
.experience-v2 .hero-actions,.experience-v2 .service-actions{gap:12px 20px}
.experience-v2 .hero-actions{animation:none!important}
.experience-v2 .hero-actions>.button,.experience-v2 .service-actions>.button{max-width:100%;min-width:0}
.experience-v2 .button-mark{flex-shrink:0}
.experience-v2 .service-context-link{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;color:var(--wine);text-decoration:underline;text-underline-offset:5px;font-size:.875rem}
.experience-v2 .homepage .offer-link .button{min-height:48px;font-size:.9375rem}
.experience-v2 .service-card-horizontal .media-training img{object-position:52% 60%}
.experience-v2 .service-intro .service-hero{gap:48px}
.experience-v2 .service-intro .action-note{margin-top:4px}
.experience-v2 .goal-strength .service-hero-visual .media{aspect-ratio:4/3}
.experience-v2 .goal-weight .service-hero-visual .media{aspect-ratio:16/10}
.experience-v2 .goal-restart .service-hero-visual .media{aspect-ratio:16/11}
.experience-v2 .goal-strength .service-hero-visual img,.experience-v2 .goal-strength .service-hero-visual video{object-position:50% 45%}
@media(hover:hover){.experience-v2 .button:active{transform:translateY(1px)}.experience-v2 .service-context-link:hover{text-decoration-thickness:2px}}
@media(max-width:720px){
 .experience-v2 .hero-actions,.experience-v2 .service-actions{gap:10px}
 .experience-v2 .hero-actions>.button,.experience-v2 .service-actions>.button:not(.button-text){width:100%;justify-content:space-between;min-height:54px;padding:15px 18px;font-size:.9375rem}
 .experience-v2 .service-intro .service-hero{gap:26px}
 .experience-v2 .service-context-link{margin-top:4px}
 .experience-v2 .goal-strength .service-hero-visual .media{aspect-ratio:16/11}
}

.experience-v2 .homepage .hero{grid-template-columns:.88fr 1.12fr;column-gap:64px;padding-top:36px;padding-bottom:38px;align-items:center}
.experience-v2 .homepage .hero-copy{padding-block:12px 36px}
.experience-v2 .homepage .hero-kicker{margin-bottom:24px}
.experience-v2 .homepage .hero-description{max-width:44ch;margin-top:26px}
.experience-v2 .homepage .hero-actions{flex-direction:column;align-items:flex-start;margin-top:26px}
.experience-v2 .homepage .hero-actions>.button{width:min(360px,100%)}
.experience-v2 .homepage .hero-visual{margin-bottom:0}
.experience-v2 .homepage .hero-visual>.media{height:620px;min-height:0;border-radius:320px 320px 2px 2px}
.experience-v2 .homepage .scroll-cue{grid-column:1/-1;margin-top:18px}
.experience-v2 .homepage .offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.experience-v2 .homepage .service-card-horizontal{display:flex!important;flex-direction:column;margin-top:0}
.experience-v2 .homepage .offer-card .media,.experience-v2 .homepage .service-card-horizontal .media{height:auto;min-height:0;aspect-ratio:16/11}
.experience-v2 .homepage .offer-content,.experience-v2 .homepage .service-card-horizontal .offer-content{padding:26px;justify-content:flex-start}
.experience-v2 .homepage .offer-content h3,.experience-v2 .homepage .service-card-horizontal h3{font-size:2rem}
.experience-v2 .homepage .service-card-horizontal .offer-link{margin-top:auto}
.experience-v2 .homepage .offers{padding-top:52px}
@media(max-width:1100px) and (min-width:721px){.experience-v2 .homepage .hero{column-gap:32px;grid-template-columns:1fr 1fr}.experience-v2 .homepage .hero-visual>.media{height:610px}.experience-v2 .homepage .offer-grid{grid-template-columns:1fr 1fr}.experience-v2 .homepage .service-card-horizontal{grid-column:1/-1;display:grid!important;grid-template-columns:1fr 1fr}.experience-v2 .homepage .service-card-horizontal .media{height:100%;aspect-ratio:auto}}
@media(max-width:720px){
 .experience-v2 .homepage .hero{padding-top:25px;gap:24px;padding-bottom:24px}
 .experience-v2 .homepage .hero-copy{padding:0}
 .experience-v2 .homepage .hero-kicker{margin-bottom:21px}
 .experience-v2 .homepage .hero-description{margin-top:18px;max-width:none}
 .experience-v2 .homepage .hero-actions{align-items:stretch;margin-top:20px}
 .experience-v2 .homepage .hero-actions>.button{width:100%}
 .experience-v2 .homepage .hero-visual>.media{height:360px;border-radius:180px 180px 2px 2px}
 .experience-v2 .homepage .scroll-cue{margin-top:0}
 .experience-v2 .homepage .offer-grid{grid-template-columns:1fr;gap:22px}
 .experience-v2 .homepage .offer-card .media,.experience-v2 .homepage .service-card-horizontal .media{aspect-ratio:16/10}
 .experience-v2 .homepage .offer-content,.experience-v2 .homepage .service-card-horizontal .offer-content{padding:21px}
 .experience-v2 .homepage .offers{padding-top:36px}
}

.experience-v2 .offer-overview{display:flex;flex-wrap:wrap;gap:4px 28px;margin-block:-10px 24px;border-block:1px solid var(--line);padding-block:6px}
.experience-v2 .offer-overview a{display:inline-flex;align-items:center;min-height:44px;color:var(--wine);text-decoration:underline;text-underline-offset:5px;font-size:.9375rem}
.experience-v2 .contact-alternatives a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:720px){.experience-v2 .offer-overview{gap:0 24px;margin-bottom:22px}.experience-v2 .homepage .offers h2{font-size:clamp(2rem,7.7vw,2.8rem)}}

/* Direction C validée — hero et prestations uniquement. Tokens validés conservés. */
.homepage .visual-hero{align-items:start;row-gap:28px}
.homepage .visual-hero .hero-masthead,.homepage .visual-hero .hero-body,.homepage .visual-hero .hero-visual{min-width:0}
.homepage .visual-hero .hero-headline{letter-spacing:-.035em;line-height:1.06;text-wrap:balance}
.homepage .visual-hero .hero-description{margin-top:0;max-width:40ch;font-size:1rem;line-height:1.7}
.homepage .visual-hero .hero-actions{margin-top:24px;gap:12px;align-items:stretch}
.homepage .visual-hero .hero-actions>.button{width:100%;min-height:56px}
.homepage .visual-hero .hero-reviews-link{min-height:44px;margin-top:6px;padding:0;text-decoration:underline;text-underline-offset:5px;border:0}
.homepage .visual-hero .hero-visual{margin:0;position:relative}
.homepage .visual-hero .hero-visual>.media{min-height:0;height:100%;border-radius:0}
.homepage .visual-hero .hero-visual img,.homepage .visual-hero .hero-visual video{object-position:0% 20%}
.homepage .visual-offers .section-heading{margin-bottom:22px}
.homepage .visual-offers .departure-inline{max-width:52ch}
.homepage .visual-offers .offer-overview{margin-top:24px;margin-bottom:38px}
.homepage .visual-offers .offer-card{border:0;background:transparent;min-width:0}
.homepage .visual-offers .offer-content{min-width:0;justify-content:start}
.homepage .visual-offers .offer-content h3{font-size:clamp(2rem,3vw,2.8rem);line-height:1.13;letter-spacing:-.025em;text-wrap:balance}
.homepage .visual-offers .offer-content .eyebrow{font-size:.8125rem;letter-spacing:.035em}
.homepage .visual-offers .offer-content>p{font-size:1rem;line-height:1.65;max-width:48ch}
.homepage .visual-offers .offer-link{margin-top:24px;padding-top:12px}
.homepage .visual-offers .offer-link .button{font-size:1rem;min-height:48px;white-space:normal}
.homepage .visual-offers .service-card:has(.service-card-link:focus-visible){outline:3px solid var(--wine);outline-offset:7px}
@media(max-width:720px){
 .homepage .visual-hero{gap:18px;padding-block:24px 22px}
 .homepage .visual-hero .hero-kicker{font-size:.6875rem;letter-spacing:.055em;margin-bottom:14px}
 .homepage .visual-hero .hero-headline{font-size:clamp(2.05rem,10vw,2.65rem);letter-spacing:-.035em}
 .homepage .visual-hero .hero-body{width:100%}
 .homepage .visual-hero .hero-description{line-height:1.55;max-width:none}
 .homepage .visual-hero .hero-actions{margin-top:18px;gap:10px}
 .homepage .visual-hero .hero-actions>.button{min-height:54px;font-size:.875rem;padding:14px 16px;max-width:100%;gap:12px}
 .homepage .visual-hero .action-note{font-size:.8125rem;line-height:1.5;margin-top:12px}
 .homepage .visual-hero .hero-visual{width:100%;max-width:none}
 .homepage .visual-hero .scroll-cue{margin-top:0}
 .homepage .visual-offers .offer-overview{margin-top:20px;margin-bottom:26px}
 .homepage .visual-offers .offer-content h3{font-size:2rem}
 .homepage .visual-offers .offer-link{margin-top:18px}
 .homepage .visual-offers .offer-link .button{font-size:.9375rem}
}

/* C — mouvement dans l’arche, surface bordeaux et parcours architectural. */
.homepage .hero.direction-architecture{width:100%;max-width:none;padding:56px max(40px,calc((100vw - 1280px)/2)) 36px;background:var(--wine);color:var(--cream);grid-template-columns:1fr 1.13fr;column-gap:78px;row-gap:28px}
.homepage .direction-architecture .hero-masthead{grid-column:1;grid-row:1;align-self:end}
.homepage .direction-architecture .hero-kicker{color:var(--cream);margin-bottom:25px}
.homepage .direction-architecture .location-mark{color:var(--cream)}
.homepage .direction-architecture .hero-headline{font-size:clamp(3.7rem,5.8vw,5.6rem);line-height:1.04}
.homepage .direction-architecture .hero-headline em{color:var(--cream)}
.homepage .direction-architecture .hero-visual{grid-column:2;grid-row:1/3;align-self:stretch;height:660px;padding:20px 0 0 20px}
.homepage .direction-architecture .hero-visual::before{content:'';position:absolute;inset:0 20px 20px 0;border:1px solid var(--bronze);border-radius:300px 300px 0 0;pointer-events:none}
.homepage .direction-architecture .hero-visual>.media{height:100%;border-radius:300px 300px 0 0}
.homepage .direction-architecture .hero-visual img,.homepage .direction-architecture .hero-visual video{object-position:0% 20%}
.homepage .direction-architecture .hero-body{grid-column:1;grid-row:2}
.homepage .direction-architecture .hero-description,.homepage .direction-architecture .action-note{color:var(--cream)}
.homepage .direction-architecture .hero-actions>.button:first-child{background:var(--cream);color:var(--wine);border-color:var(--cream)}
.homepage .direction-architecture .hero-actions>.button:first-child:hover{background:var(--paper)}
.homepage .direction-architecture .hero-actions>.button-secondary{border-color:var(--cream);color:var(--cream)}
.homepage .direction-architecture .hero-actions>.button-secondary:hover{background:var(--wine-dark)}
.homepage .direction-architecture .hero-reviews-link{color:var(--cream)}
.homepage .direction-architecture a:focus-visible,.homepage .direction-architecture button:focus-visible{outline-color:var(--cream)}
.homepage .direction-architecture .scroll-cue{grid-column:1/-1;margin-top:0;color:var(--cream)}
.homepage .direction-architecture .scroll-cue>span{border-color:var(--bronze)}
.homepage .offers.direction-architecture{background:var(--paper);padding-block:78px}
.homepage .offers.direction-architecture .section-heading{max-width:750px}
.homepage .offers.direction-architecture .offer-grid{display:block}
.homepage .offers.direction-architecture .offer-card{display:grid;grid-template-columns:.8fr 1fr;gap:88px;align-items:center;margin-block:0 52px;padding-bottom:52px;border-bottom:1px solid var(--line)}
.homepage .offers.direction-architecture #coaching-prive .media{width:100%;height:390px;aspect-ratio:auto;border-radius:230px 230px 0 0}
.homepage .offers.direction-architecture .offer-content{padding:0;max-width:580px}
.homepage .offers.direction-architecture #small-group{grid-template-columns:1fr 1.15fr;gap:66px}
.homepage .offers.direction-architecture #small-group .media{order:2;height:350px;aspect-ratio:auto;border-radius:0 160px 0 0}
.homepage .offers.direction-architecture #small-group .offer-content{order:1}
.homepage .offers.direction-architecture #preparation-physique{display:grid!important;grid-template-columns:1.05fr 1fr;gap:0;margin-block:0;padding:0;border:0;background:var(--stone)}
.homepage .offers.direction-architecture #preparation-physique .media{height:380px;min-height:0;aspect-ratio:auto}
.homepage .offers.direction-architecture #preparation-physique .offer-content{padding:38px 44px}
.homepage .offers.direction-architecture #preparation-physique .offer-content h3{font-size:clamp(2rem,3.4vw,3.15rem)}
.homepage .offers.direction-architecture .tariffs-reference{margin-top:30px}
@media(min-width:721px) and (max-width:1100px){
 .homepage .hero.direction-architecture{padding-inline:32px;column-gap:38px}
 .homepage .direction-architecture .hero-headline{font-size:3.5rem}
 .homepage .direction-architecture .hero-visual{height:710px;padding-left:12px}
 .homepage .offers.direction-architecture .offer-card{gap:38px}
 .homepage .offers.direction-architecture #small-group{gap:38px}
 .homepage .offers.direction-architecture #preparation-physique .offer-content{padding:25px}
}
@media(max-width:720px){
 .homepage .hero.direction-architecture{display:grid;grid-template-columns:1fr;padding:25px max(20px,env(safe-area-inset-left)) 22px;gap:18px}
 .homepage .direction-architecture .hero-masthead,.homepage .direction-architecture .hero-body,.homepage .direction-architecture .hero-visual{grid-column:1;grid-row:auto}
 .homepage .direction-architecture .hero-kicker{margin-bottom:16px}
 .homepage .direction-architecture .hero-headline{font-size:clamp(2.05rem,10vw,2.65rem);line-height:1.07}
 .homepage .direction-architecture .hero-visual{height:220px;padding:10px 0 0 10px}
 .homepage .direction-architecture .hero-visual::before{inset:0 10px 10px 0;border-radius:170px 170px 0 0}
 .homepage .direction-architecture .hero-visual>.media{border-radius:170px 170px 0 0}
 .homepage .direction-architecture .hero-body{margin-top:0}
 .homepage .offers.direction-architecture{padding-block:40px}
 .homepage .offers.direction-architecture .offer-card{display:flex;flex-direction:column;align-items:stretch;gap:22px;margin-bottom:30px;padding-bottom:30px}
 .homepage .offers.direction-architecture #coaching-prive .media{height:265px;border-radius:180px 180px 0 0}
 .homepage .offers.direction-architecture #small-group{display:flex;gap:22px}
 .homepage .offers.direction-architecture #small-group .media{order:0;height:220px;border-radius:0 90px 0 0}
 .homepage .offers.direction-architecture #small-group .offer-content{order:1}
 .homepage .offers.direction-architecture #preparation-physique{display:flex!important;flex-direction:column;gap:0}
 .homepage .offers.direction-architecture #preparation-physique .media{height:210px}
 .homepage .offers.direction-architecture #preparation-physique .offer-content{padding:25px 22px}
 .homepage .offers.direction-architecture #preparation-physique .offer-content h3{font-size:2rem}
}

.homepage .direction-architecture .hero-visual img,.homepage .direction-architecture .hero-visual video{position:absolute;inset:0;width:100%;height:128%;object-position:10% 0;}

/* Évolution isolée : tokens officiels, comportement natif et médias conservés. */
body.experience-prototype{--motion-ease:cubic-bezier(.16,1,.3,1)}
.experience-prototype ::selection{background:var(--wine);color:var(--cream)}
.experience-prototype input,.experience-prototype textarea{caret-color:var(--wine)}
.experience-prototype .button{transition:background-color .18s,color .18s,border-color .18s,transform .18s;min-height:50px}
.experience-prototype .button:not(.button-text):not(.button-secondary):not(.button-cream){background:var(--wine);color:var(--cream);border-color:var(--wine)}
.experience-prototype .button-secondary{background:transparent;color:var(--wine);border:1px solid var(--wine);font-size:.9375rem;min-height:46px}
.experience-prototype .button-text{background:transparent;border:0;color:var(--wine);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;min-height:44px}
.experience-prototype .button-mark,.experience-prototype .goal-link svg,.experience-prototype .journal-arrow{transition:transform .22s var(--motion-ease)}
.experience-prototype .button:active{transform:translateY(1px)}
.experience-prototype :is(a,button,summary):focus-visible{outline:3px solid var(--wine);outline-offset:5px}
.experience-prototype .button:disabled,.experience-prototype .button[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}
.experience-prototype [aria-busy=true]{cursor:progress}
.experience-prototype [aria-busy=true]::after{content:'';display:inline-block;width:15px;height:15px;margin-left:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:control-busy .7s linear infinite}
@keyframes control-busy{to{transform:rotate(360deg)}}
.experience-prototype .service-card .media,.experience-prototype .journal-feature .media{transition:none}
.experience-prototype .service-card img,.experience-prototype .service-card video{transition:transform .35s var(--motion-ease)}
.experience-prototype .service-card:has(.service-card-link:focus-visible){outline:3px solid var(--wine);outline-offset:6px}
.experience-prototype .service-card-link:focus-visible{outline:0}
.experience-prototype .service-actions{align-items:center;gap:12px 20px}
.experience-prototype .service-actions .button{white-space:normal}
.experience-prototype .nav-submenu a{transition:background-color .16s,padding-left .2s var(--motion-ease)}
.experience-prototype .nav-services[open] .nav-submenu{animation:nav-arrive .2s var(--motion-ease)}
.experience-prototype .menu-toggle[aria-expanded=true]+nav{animation:nav-arrive .2s var(--motion-ease)}
.experience-prototype .faq-item[open]>div{animation:answer-arrive .18s var(--motion-ease)}
@keyframes nav-arrive{from{opacity:.88;transform:translateY(-5px)}to{opacity:1;transform:none}}
@keyframes answer-arrive{from{opacity:.85}to{opacity:1}}
.experience-prototype .faq-item summary{transition:color .15s,background-color .15s}
.experience-prototype .faq-item summary:active{background:var(--stone)}
.experience-prototype .tariff-table strong,.experience-prototype .schedule-hours{font-variant-numeric:tabular-nums}
.experience-prototype :is(h1,h2,h3){text-wrap:balance;letter-spacing:-.035em}
.experience-prototype .commercial-page h1{letter-spacing:-.035em}
.experience-prototype .commercial-page .section{padding-block:66px}
.experience-prototype .service-intro.section,.experience-prototype .editorial-intro.section{padding-top:34px}
.experience-prototype .service-story{border:0}
.experience-prototype .service-objective-links{gap:28px}
.experience-prototype .service-objective-links a{font-size:1.55rem}
.experience-prototype .service-faq{border-top:0}
.experience-prototype .service-close .container{border-top:1px solid var(--bronze);padding-top:30px}
.experience-prototype .service-close .button-cream,.experience-prototype .final-cta .button-cream{background:var(--cream);color:var(--wine);border-color:var(--cream)}
.experience-prototype .service-close :is(a,button):focus-visible,.experience-prototype .final-cta :is(a,button):focus-visible,.experience-prototype .service-objectives a:focus-visible{outline-color:var(--cream)}
.experience-prototype .editorial-body .article-prose{max-width:72ch}
.experience-prototype .editorial-body .article-prose>section{padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.experience-prototype .editorial-aside{border-radius:120px 120px 0 0;padding:65px 30px 28px}
.experience-prototype .editorial-aside h2{font-size:1.7rem}
.experience-prototype .editorial-aside .button{white-space:normal}
.experience-prototype .goal-strength .service-hero-visual .media{border-radius:0 160px 0 0}
.experience-prototype .goal-weight .service-hero-visual .media{border-radius:160px 160px 0 0}
.experience-prototype .goal-restart .service-hero-visual .media{border-radius:0 0 150px 0}
.experience-prototype .physical-priorities{border:0}
@media(hover:hover){
 .experience-prototype .button:not(.button-text):not(.button-secondary):hover{background:var(--wine-dark);color:var(--cream);border-color:var(--wine-dark);transform:none}
 .experience-prototype .button-secondary:hover{background:var(--stone);transform:none}
 .experience-prototype :is(.button:hover,.button:focus-visible) .button-mark{transform:translate(3px,-3px)}
 .experience-prototype .service-card:hover :is(img,video){transform:scale(1.025)}
 .experience-prototype .service-card:hover .button-mark{transform:translate(3px,-3px)}
 .experience-prototype .button-text:hover{color:var(--wine-dark);text-decoration-thickness:2px;transform:none}
 .experience-prototype .nav-submenu a:hover{padding-left:24px}
 .experience-prototype .faq-item summary:hover{color:var(--wine)}
}
@media(max-width:1000px){.experience-prototype .editorial-aside{padding:40px 22px 24px;border-radius:80px 80px 0 0}}
@media(max-width:720px){
 .experience-prototype .container{width:calc(100% - 40px)}
 .experience-prototype .commercial-page .section{padding-block:42px}
 .experience-prototype .commercial-page .service-intro,.experience-prototype .commercial-page .editorial-intro{padding-top:24px}
 .experience-prototype .service-actions>.button:not(.button-text){width:100%;min-height:52px;justify-content:space-between}
 .experience-prototype .service-actions>.button-secondary{min-height:46px;font-size:.875rem}
 .experience-prototype .service-hero{gap:24px!important}
 .experience-prototype .service-hero-visual .media{aspect-ratio:16/11}
 .experience-prototype .service-story .service-split>div:first-child{order:2}
 .experience-prototype .service-split{gap:25px}
 .experience-prototype .service-objective-links{display:block;margin-top:24px}
 .experience-prototype .service-objective-links article{padding-block:18px}
 .experience-prototype .service-objective-links h3 a{font-size:1.45rem}
 .experience-prototype .editorial-aside{border-radius:0;padding:26px 22px}
 .experience-prototype .editorial-body .article-prose>section{margin-bottom:20px;padding-bottom:20px}
 .experience-prototype .service-close .container{padding-top:25px}
 .experience-prototype .faq-item summary{min-height:52px}
 .experience-prototype .button-text,.experience-prototype .service-context-link{line-height:1.5}
}
@media(max-width:350px){
 .experience-prototype .container{width:calc(100% - 32px)}
 .experience-prototype .commercial-page h1{font-size:2.1rem}
 .experience-prototype .homepage h2{font-size:2.1rem}
 .experience-prototype .button{font-size:.875rem;gap:12px}
}
@media(prefers-reduced-motion:reduce){
 .experience-prototype *, .experience-prototype *::before,.experience-prototype *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
html[data-motion=off] .experience-prototype *,html[data-motion=off] .experience-prototype *::before,html[data-motion=off] .experience-prototype *::after{animation:none!important;transition:none!important}

/* B — Architectural dynamique : galerie décalée, contrepoints et états réactifs. */
.prototype-b .homepage .hero.direction-architecture{position:relative;background:linear-gradient(90deg,var(--wine) 0 54%,var(--cream) 54%);padding-top:44px;padding-bottom:42px;grid-template-columns:.95fr 1.1fr;gap:26px 80px}
.prototype-b .homepage .hero.direction-architecture .hero-visual{height:610px;padding:18px 0 0 18px}
.prototype-b .homepage .hero.direction-architecture .hero-visual::before{border-color:var(--wine);inset:0 18px 18px 0;border-radius:300px 300px 0 0}
.prototype-b .homepage .hero.direction-architecture .hero-actions>.button-secondary{min-height:46px}
.prototype-b .homepage .hero.direction-architecture .hero-actions>.button:first-child{background:var(--cream);color:var(--wine);border-color:var(--cream)}
.prototype-b .homepage .hero.direction-architecture .scroll-cue{padding-top:16px;width:48%;border-top:1px solid var(--bronze)}
.prototype-b .homepage .offers.direction-architecture{background:var(--cream);padding-block:70px 45px}
.prototype-b .homepage .offers-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:18px 70px;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:38px}
.prototype-b .homepage .offers-intro .section-heading{grid-column:1;grid-row:1/3;margin:0}
.prototype-b .homepage .offers-intro .departure-inline{grid-column:2;grid-row:1;margin:0;align-self:end}
.prototype-b .homepage .offers-intro .offer-overview{grid-column:2;grid-row:2;margin:0;border:0;padding:0;gap:0 25px}
.prototype-b .homepage .offers.direction-architecture .offer-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:0 50px;align-items:start}
.prototype-b .homepage .offers.direction-architecture .offer-card{display:flex;flex-direction:column;gap:25px;align-items:stretch;border:0;margin:0;padding:0}
.prototype-b .homepage .offers.direction-architecture #coaching-prive{grid-column:1;grid-row:1}
.prototype-b .homepage .offers.direction-architecture #coaching-prive .media{height:380px;border-radius:210px 210px 0 0}
.prototype-b .homepage .offers.direction-architecture #small-group{grid-column:2;grid-row:1;margin-top:105px;display:flex;gap:25px}
.prototype-b .homepage .offers.direction-architecture #small-group .media{order:0;height:290px;border-radius:0 150px 0 0}
.prototype-b .homepage .offers.direction-architecture #small-group .offer-content{order:1}
.prototype-b .homepage .offers.direction-architecture .offer-content{padding:0 8px 25px;max-width:none}
.prototype-b .homepage .offers.direction-architecture .offer-link{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.prototype-b .homepage .offers.direction-architecture #preparation-physique{grid-column:1/-1;grid-row:2;display:grid!important;grid-template-columns:.8fr 1.2fr;gap:0;background:var(--wine);color:var(--cream);margin-top:40px;align-items:center}
.prototype-b .homepage .offers.direction-architecture #preparation-physique .media{height:300px;aspect-ratio:auto;min-height:0}
.prototype-b .homepage .offers.direction-architecture #preparation-physique .offer-content{padding:36px 44px}
.prototype-b .homepage .offers.direction-architecture #preparation-physique :is(.eyebrow,h3,p,.button-text){color:var(--cream)}
.prototype-b .homepage .offers.direction-architecture #preparation-physique .offer-link{border-color:var(--bronze)}
.prototype-b .homepage .offers.direction-architecture #preparation-physique:has(.service-card-link:focus-visible){outline-color:var(--wine)}
.prototype-b .homepage .offers .tariffs-reference{justify-content:flex-end;padding-top:18px;margin-top:12px}
.prototype-b .homepage .goals{background:var(--wine);color:var(--cream);padding-block:55px 80px;margin-top:0}
.prototype-b .homepage .objectives-layout{grid-template-columns:1fr 1.1fr;gap:80px}
.prototype-b .homepage .objectives-visual .media{aspect-ratio:1.15;border-radius:0 0 170px 0}
.prototype-b .homepage .objectives-copy :is(.eyebrow,h2,h3,p,a){color:var(--cream)}
.prototype-b .homepage .objective-entry{border-color:var(--bronze);padding-block:22px}
.prototype-b .homepage .objective-entry h3{font-size:2rem}
.prototype-b .homepage .objective-entry :is(a,button):focus-visible{outline-color:var(--cream)}
.prototype-b .homepage .coach{background:var(--cream);padding-top:0;padding-bottom:36px}
.prototype-b .homepage .coach-grid{grid-template-columns:1.25fr .75fr;gap:90px}
.prototype-b .homepage .coach-copy{padding-top:70px}
.prototype-b .homepage .coach-portrait{position:relative;max-width:360px;aspect-ratio:4/5;transform:translateY(-35px);border-radius:180px 180px 0 0;align-self:start}
.prototype-b .homepage .reviews-compact{padding-block:20px 0;background:var(--cream)}
.prototype-b .homepage .reviews-strip{border-top:1px solid var(--line);padding-top:28px}
.prototype-b .homepage .place{background:var(--stone);padding-block:60px 55px}
.prototype-b .homepage .place-grid{grid-template-columns:1.3fr .85fr;gap:70px}
.prototype-b .homepage .place-visual>.media{aspect-ratio:1.1;border-radius:280px 280px 0 0}
.prototype-b .homepage .place-copy h2{font-size:3.5rem}
.prototype-b .homepage .place-copy{align-self:center}
.prototype-b .homepage .home-studio-access{grid-template-columns:.7fr 1.3fr;gap:60px;border-color:var(--bronze);margin-top:38px;padding-top:30px}
.prototype-b .homepage .home-studio-access iframe{height:360px}
.prototype-b .homepage .journal{background:var(--paper);padding-block:62px}
.prototype-b .homepage .journal>.container{display:grid;grid-template-columns:1fr 1.25fr;gap:26px 65px}
.prototype-b .homepage .journal .section-heading{grid-column:1;grid-row:1;margin-bottom:0;align-self:start}
.prototype-b .homepage .journal-layout{display:contents}
.prototype-b .homepage .journal-feature{grid-column:2;grid-row:1/3;display:block;border-left:1px solid var(--line);padding-left:36px}
.prototype-b .homepage .journal-feature .media{aspect-ratio:1.6;border-radius:0 160px 0 0;margin-bottom:26px}
.prototype-b .homepage .journal-feature h3{font-size:2.1rem}
.prototype-b .homepage .journal-secondary{grid-column:1;grid-row:2}
.prototype-b .homepage .journal-index-link{grid-column:1/-1;margin:0}
.prototype-b .homepage .faq{background:var(--paper);padding-block:0 60px;border-top:0}
.prototype-b .homepage .faq>.container{border-top:1px solid var(--line);padding-top:40px}
.prototype-b .homepage .final-cta{padding-block:65px;background:var(--wine)}
.prototype-b .homepage .final-cta>.container{border:1px solid var(--bronze);border-radius:220px 220px 0 0;padding:65px 35px 48px;max-width:950px}
.prototype-b .homepage .final-cta h2{font-size:4rem}
.prototype-b .service-intro .service-hero{grid-template-columns:.95fr 1.15fr;gap:65px!important}
.prototype-b .private-page .service-intro{background:var(--stone);padding-bottom:50px}
.prototype-b .private-page .service-hero-visual .media{aspect-ratio:1.1;border-radius:220px 220px 0 0}
.prototype-b .group-page .service-intro{background:var(--cream);border-bottom:0}
.prototype-b .group-page .service-hero-visual .media{aspect-ratio:1.2;border-radius:0 180px 0 0}
.prototype-b .service-story .service-split{grid-template-columns:1.2fr 1fr;gap:75px}
.prototype-b .service-story .media{aspect-ratio:1.2;border-radius:0 0 160px 0}
.prototype-b .service-objectives{background:var(--cream);color:var(--ink);padding-top:42px}
.prototype-b .service-objectives :is(.eyebrow,h2 em){color:var(--wine)}
.prototype-b .service-objectives .service-objective-links{border-top:1px solid var(--line);margin-top:30px}
.prototype-b .service-objectives .service-objective-links article{border:0;padding-top:22px}
.prototype-b .service-objectives .service-objective-links :is(a,p){color:var(--wine)}
.prototype-b .service-objectives .service-objective-links a:focus-visible{outline-color:var(--wine)}
.prototype-b .service-coach{background:var(--wine);color:var(--cream)}
.prototype-b .service-coach :is(.eyebrow,h2 em,p,address,.button-text){color:var(--cream)}
.prototype-b .service-coach a:focus-visible{outline-color:var(--cream)}
.prototype-b .service-coach-portrait{border-radius:180px 180px 0 0;max-width:370px;aspect-ratio:1}
.prototype-b .group-page .service-planning{background:var(--stone);padding-top:42px}
.prototype-b .group-page .service-practical{background:var(--cream)}
.prototype-b .goal-strength .editorial-intro{background:var(--stone)}
.prototype-b .goal-weight .editorial-intro{background:var(--paper)}
.prototype-b .goal-restart .editorial-intro{background:var(--cream)}
.prototype-b :is(.goal-strength,.goal-weight,.goal-restart) .service-hero{grid-template-columns:.9fr 1.1fr;gap:60px}
.prototype-b .editorial-body{padding-top:45px}
.prototype-b .editorial-body .article-prose>section{padding:0 0 26px;margin-bottom:30px}
.prototype-b .editorial-body .article-prose h2{font-size:2.4rem;max-width:26ch}
.prototype-b .physical-service-page .editorial-intro{background:var(--stone)}
.prototype-b .physical-priorities .media{border-radius:0 0 160px 0}
@media(min-width:1101px){.prototype-b .editorial-body .editorial-aside{position:sticky;top:125px}}
@media(max-width:1100px) and (min-width:721px){
 .prototype-b .homepage .hero.direction-architecture{gap:24px 36px}
 .prototype-b .homepage .hero.direction-architecture .hero-visual{height:650px}
 .prototype-b .homepage .offers-intro{gap:20px 35px}
 .prototype-b .homepage .offers.direction-architecture .offer-grid{gap:0 30px}
 .prototype-b .homepage .offers.direction-architecture #preparation-physique .offer-content{padding:30px}
 .prototype-b .homepage .place-copy h2{font-size:2.8rem}
 .prototype-b .homepage .journal>.container{gap:25px 35px}
 .prototype-b .service-story .service-split{gap:35px}
}
@media(max-width:720px){
 .prototype-b .homepage .hero.direction-architecture{grid-template-columns:1fr;background:var(--wine);padding:24px 20px;gap:18px}
 .prototype-b .homepage .hero.direction-architecture .hero-visual{height:230px;padding:10px 0 0 10px}
 .prototype-b .homepage .hero.direction-architecture .hero-visual::before{border-color:var(--bronze);inset:0 10px 10px 0}
 .prototype-b .homepage .hero.direction-architecture .hero-headline{font-size:clamp(2.05rem,10vw,2.65rem)}
 .prototype-b .homepage .hero.direction-architecture .scroll-cue{width:100%;padding-top:15px}
 .prototype-b .homepage .offers.direction-architecture{padding-block:36px 34px}
 .prototype-b .homepage .offers-intro{display:block;border:0;padding:0;margin-bottom:28px}
 .prototype-b .homepage .offers-intro .section-heading{margin-bottom:18px}
 .prototype-b .homepage .offers-intro .departure-inline{margin-bottom:18px}
 .prototype-b .homepage .offers-intro .offer-overview{padding-block:8px;border-block:1px solid var(--line)}
 .prototype-b .homepage .offers.direction-architecture .offer-grid{display:block}
 .prototype-b .homepage .offers.direction-architecture .offer-card{gap:18px;margin:0 0 28px}
 .prototype-b .homepage .offers.direction-architecture #coaching-prive .media{height:250px;border-radius:150px 150px 0 0}
 .prototype-b .homepage .offers.direction-architecture #small-group{margin-top:0;gap:18px}
 .prototype-b .homepage .offers.direction-architecture #small-group .media{height:220px;border-radius:0 100px 0 0}
 .prototype-b .homepage .offers.direction-architecture .offer-content{padding:0}
 .prototype-b .homepage .offers.direction-architecture .offer-link{padding-top:12px;margin-top:15px}
 .prototype-b .homepage .offers.direction-architecture #preparation-physique{display:flex!important;gap:0;margin-top:0}
 .prototype-b .homepage .offers.direction-architecture #preparation-physique .media{height:210px;width:100%}
 .prototype-b .homepage .offers.direction-architecture #preparation-physique .offer-content{padding:24px 22px}
 .prototype-b .homepage .offers .tariffs-reference{display:block;padding-top:0}
 .prototype-b .homepage .goals{padding-block:38px 55px}
 .prototype-b .homepage .objectives-layout{display:flex;flex-direction:column-reverse;gap:24px}
 .prototype-b .homepage .objectives-copy,.prototype-b .homepage .objectives-visual{width:100%}
 .prototype-b .homepage .objective-entry{padding-block:18px}
 .prototype-b .homepage .objective-entry h3{font-size:1.8rem}
 .prototype-b .homepage .objectives-visual .media{aspect-ratio:1.4;border-radius:0 0 100px 0}
 .prototype-b .homepage .coach-grid{grid-template-columns:1fr;gap:24px}
 .prototype-b .homepage .coach-copy{padding-top:40px}
 .prototype-b .homepage .coach-portrait{transform:none;height:300px;max-width:270px;justify-self:center}
 .prototype-b .homepage .coach{padding-bottom:25px}
 .prototype-b .homepage .reviews-strip{padding-top:24px}
 .prototype-b .homepage .place{padding-block:40px}
 .prototype-b .homepage .place-grid{grid-template-columns:1fr;gap:25px}
 .prototype-b .homepage .place-copy h2{font-size:2.6rem}
 .prototype-b .homepage .place-visual>.media{aspect-ratio:1.2}
 .prototype-b .homepage .home-studio-access{grid-template-columns:1fr;gap:24px;margin-top:30px;padding-top:25px}
 .prototype-b .homepage .home-studio-access iframe{height:320px}
 .prototype-b .homepage .journal{padding-block:40px}
 .prototype-b .homepage .journal>.container{display:block}
 .prototype-b .homepage .journal .section-heading{margin-bottom:24px}
 .prototype-b .homepage .journal-layout{display:flex;flex-direction:column;gap:24px}
 .prototype-b .homepage .journal-feature{border:0;padding:0;display:grid;grid-template-columns:110px 1fr;gap:20px}
 .prototype-b .homepage .journal-feature .media{aspect-ratio:4/5;border-radius:0 60px 0 0;margin:0}
 .prototype-b .homepage .journal-feature h3{font-size:1.65rem}
 .prototype-b .homepage .journal-secondary{width:100%}
 .prototype-b .homepage .journal-index-link{margin-top:20px}
 .prototype-b .homepage .faq{padding-bottom:40px}
 .prototype-b .homepage .faq>.container{padding-top:32px}
 .prototype-b .homepage .final-cta{padding-block:36px}
 .prototype-b .homepage .final-cta>.container{border-radius:150px 150px 0 0;padding:45px 22px 28px}
 .prototype-b .homepage .final-cta h2{font-size:2.6rem}
 .prototype-b .service-intro .service-hero{grid-template-columns:1fr;gap:24px!important}
 .prototype-b .service-story .service-split{grid-template-columns:1fr;gap:25px}
 .prototype-b .service-story .media{aspect-ratio:1.5}
 .prototype-b :is(.goal-strength,.goal-weight,.goal-restart) .service-hero{grid-template-columns:1fr}
 .prototype-b .editorial-body .article-prose h2{font-size:2rem}
}


/* Système consolidé : C pour la conversion, B pour la lecture. */
.consolidated .brand-ct{gap:12px;font-family:var(--sans);letter-spacing:-.04em;font-size:1.55rem;font-weight:700}
.consolidated .brand-ct .brand-symbol{width:48px;height:46px;background:transparent;color:var(--wine);border-radius:0;padding:0;overflow:visible;isolation:auto}
.consolidated .brand-ct .brand-symbol svg{width:100%;height:100%;display:block}
.consolidated .brand-ct .brand-symbol::after{display:none}
.consolidated .brand-ct small{font-weight:500;font-size:.57rem;letter-spacing:.22em;margin-top:6px}
.consolidated .brand-ct .brand-name{white-space:nowrap}
.consolidated .site-footer .brand-ct .brand-symbol{color:var(--wine)}
.consolidated .site-footer .brand-ct{font-size:1.8rem}
.consolidated .site-footer .brand-ct .brand-symbol{width:64px;height:60px}
.editorial-b .service-hero-visual .media{aspect-ratio:1.15}
.editorial-b .editorial-intro .service-lead{max-width:52ch}
.editorial-b .studio-page .editorial-intro{background:var(--paper);border-bottom:1px solid var(--line)}
.editorial-b .studio-page .service-hero{grid-template-columns:1fr 1.1fr;gap:60px}
.editorial-b .studio-page .service-hero-visual .media{border-radius:160px 160px 0 0}
.editorial-b .studio-page>.section:nth-child(2){background:var(--cream)}
.editorial-b .studio-page>.section:nth-child(2) .media{border-radius:0 0 100px 0}
.editorial-b .studio-page .local{background:var(--stone)}
.editorial-b .studio-page .local-map-layout{grid-template-columns:.8fr 1.35fr;gap:55px}
.editorial-b .advice-index .editorial-intro{padding-bottom:30px;background:var(--paper);border-bottom:1px solid var(--line)}
.editorial-b .advice-index .advice-body{padding-top:46px}
.editorial-b .advice-layout{grid-template-columns:.85fr 1.2fr;gap:65px;align-items:start}
.editorial-b .advice-layout>.media,.editorial-b .advice-layout>div>.media{border-radius:0 130px 0 0;aspect-ratio:4/5}
.editorial-b .advice-group{border:0;padding:0 0 35px;margin:0 0 25px}
.editorial-b .advice-group h2{font-size:1.8rem;margin-bottom:18px}
.editorial-b .advice-group article{border-top:1px solid var(--line);padding:20px 0}
.editorial-b .advice-group h3{font-size:1.6rem;line-height:1.3}
.editorial-b .advice-group h3 a{color:var(--wine);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;display:block}
.editorial-b .article-intro{background:var(--paper);border-bottom:1px solid var(--line)}
.consolidated .site-header :is(a,summary,button):focus-visible{outline:3px solid var(--wine);outline-offset:4px}
@media(max-width:1100px){.editorial-b .advice-layout{gap:35px}.editorial-b .studio-page .service-hero{gap:32px}}
@media(max-width:720px){
 .consolidated .site-header .brand-ct{font-size:1.2rem;gap:8px}
 .consolidated .site-header .brand-ct .brand-symbol{width:36px;height:35px;flex-shrink:0}
 .consolidated .site-header .brand-ct small{font-size:.45rem;letter-spacing:.15em}
 .consolidated .site-header .header-emblem{display:none}
 .consolidated .site-footer .brand-ct{font-size:1.4rem}
 .editorial-b .studio-page .service-hero,.editorial-b .studio-page .local-map-layout,.editorial-b .advice-layout{grid-template-columns:1fr;gap:26px}
 .editorial-b .advice-layout>div>.media{aspect-ratio:1.5;border-radius:0 80px 0 0}
 .editorial-b .advice-group{padding-bottom:10px;margin-bottom:22px}
 .editorial-b .advice-group h2{font-size:1.6rem}
 .editorial-b .advice-group h3{font-size:1.4rem}
 .editorial-b .studio-page .local iframe{height:340px}
}
@media(max-width:360px){.consolidated .site-header .brand-ct{font-size:1.08rem}.consolidated .site-header .brand-ct small{font-size:.41rem}}

/* Bloc Objectifs B validé dans la homepage C. */
.consolidated .homepage .goals{background:var(--wine);color:var(--cream);padding-block:55px 80px;margin-top:0}
.consolidated .homepage .objectives-layout{grid-template-columns:1fr 1.1fr;gap:80px}
.consolidated .homepage .objectives-visual .media{aspect-ratio:1.15;border-radius:0 0 170px 0}
.consolidated .homepage .objectives-copy :is(.eyebrow,h2,h3,p,a){color:var(--cream)}
.consolidated .homepage .objective-entry{border-color:var(--bronze);padding-block:22px}
.consolidated .homepage .objective-entry h3{font-size:2rem}
.consolidated .homepage .objective-entry :is(a,button):focus-visible{outline:3px solid var(--cream);outline-offset:5px}
@media(max-width:720px){
.consolidated .homepage .goals{padding-block:38px 55px}
.consolidated .homepage .objectives-layout{display:flex;flex-direction:column-reverse;gap:24px}
.consolidated .homepage .objectives-copy,.consolidated .homepage .objectives-visual{width:100%}
.consolidated .homepage .objective-entry{padding-block:18px}
.consolidated .homepage .objective-entry h3{font-size:1.8rem}
.consolidated .homepage .objectives-visual .media{aspect-ratio:1.4;border-radius:0 0 100px 0}
}

/* Alternance après les objectifs : bordeaux, crème, pierre, crème, pierre. */
.consolidated .homepage .coach{background:var(--cream)}
.consolidated .homepage .place{background:var(--stone)}
.consolidated .homepage .journal{background:var(--cream)}
.consolidated .homepage .faq{background:var(--stone)}
.consolidated .homepage .final-cta{background:var(--wine)}

/* Proposition charcoal validée comme couleur complémentaire. */
.consolidated{--charcoal:#1f1f1f}
.consolidated .homepage .journal{background:var(--charcoal);color:var(--cream)}
.consolidated .homepage .journal :is(h2,h2 em,h3,p,.eyebrow,.button-text,h3 a,.journal-arrow){color:var(--cream)}
.consolidated .homepage .journal :is(.journal-secondary article,.button-text){border-color:rgb(246 242 234 / .35)}
.consolidated .homepage .journal h3 a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.consolidated .homepage .journal :is(a,button):focus-visible{outline:3px solid var(--cream);outline-offset:5px}
.consolidated .homepage .journal a:hover{color:var(--cream);text-decoration-thickness:2px}
.consolidated .homepage .faq{background:var(--cream)}

/* Charcoal partagé : socle de navigation et informations pratiques. */
.consolidated .site-footer{background:var(--charcoal);color:var(--cream)}
.consolidated .site-footer :is(p,h2,a,small,span,button,.footer-links,.footer-bottom){color:var(--cream)}
.consolidated .site-footer .brand-ct .brand-symbol{color:var(--cream)}
.consolidated .site-footer :is(.footer-top,.footer-bottom,.footer-links nav){border-color:rgb(246 242 234 / .25)}
.consolidated .site-footer :is(a,button):focus-visible{outline:3px solid var(--cream);outline-offset:5px}
.consolidated .site-footer a:hover{color:var(--cream);text-decoration:underline;text-underline-offset:4px}
.consolidated .group-page .practical-facts,
.consolidated .private-page .service-coach .service-split>div:first-child,
.consolidated .physical-service-page .physical-start .editorial-aside{background:var(--charcoal);color:var(--cream);padding:30px;border:1px solid var(--charcoal)}
.consolidated .group-page .practical-facts :is(dt,dd,a),
.consolidated .private-page .service-coach .service-split>div:first-child :is(p,h2,h2 em,a,address,.eyebrow),
.consolidated .physical-service-page .physical-start .editorial-aside :is(p,h2,h3,a){color:var(--cream)}
.consolidated .group-page .practical-facts>div{border-color:rgb(246 242 234 / .3)}
.consolidated .group-page .practical-facts a,
.consolidated .private-page .service-coach .service-split>div:first-child .button-text,
.consolidated .physical-service-page .physical-start .editorial-aside .button-text{color:var(--cream);text-decoration:underline;text-underline-offset:5px}
.consolidated .group-page .practical-facts a:focus-visible,
.consolidated .private-page .service-coach .service-split>div:first-child a:focus-visible,
.consolidated .physical-service-page .physical-start .editorial-aside a:focus-visible{outline:3px solid var(--cream);outline-offset:5px}
@media(max-width:720px){
.consolidated .group-page .practical-facts,
.consolidated .private-page .service-coach .service-split>div:first-child,
.consolidated .physical-service-page .physical-start .editorial-aside{padding:24px 20px}
}

/* Lecture : conserver pierre, crème et bordeaux, donner de l'espace aux explications. */
.reading-page .article-intro{padding-block:32px 48px}
.reading-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:clamp(28px,5vw,72px);align-items:center}
.reading-page .reading-hero h1{font-size:clamp(2.1rem,3.7vw,3.4rem);line-height:1.1;letter-spacing:-.03em;max-width:24ch;text-wrap:balance;margin-bottom:22px}
.reading-page .service-lead{font-size:1.1rem;line-height:1.7;max-width:56ch}
.reading-page .article-byline{font-size:.85rem;line-height:1.8;margin-top:22px;color:#655d54}
.reading-hero .button{margin-top:20px}
.reading-image{margin:0;min-width:0}
.reading-image img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:3/2}
.reading-image figcaption{font-size:.78rem;line-height:1.6;color:#655d54;margin-top:10px;max-width:75ch}
.reading-image figcaption:empty{display:none}
.reading-image figcaption a{text-decoration:underline;text-underline-offset:3px}
.reading-cover img{aspect-ratio:4/3;object-position:center 65%;border-radius:0 90px 0 0}
.reading-cover figcaption{font-size:.72rem}
.reading-page .article-content{padding-block:56px 80px}
.reading-layout{display:grid;grid-template-columns:230px minmax(0,760px);gap:clamp(35px,6vw,90px);align-items:start;justify-content:center}
.reading-rail{position:sticky;top:120px;max-height:calc(100dvh - 140px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bronze) var(--cream)}
.reading-toc{border-top:1px solid var(--wine);padding-top:18px}
.reading-toc summary{display:none}
.toc-heading{font-weight:600;color:var(--wine);margin:0 0 14px}
.reading-toc ol{list-style:none;margin:0;padding:0}
.reading-toc li{margin:0}
.reading-toc ol a{display:block;padding:9px 8px;font-size:.875rem;line-height:1.5;text-decoration:none;color:#655d54;border-left:1px solid transparent}
.reading-toc ol a:hover,.reading-toc ol a[aria-current]{color:var(--wine);background:var(--stone);border-color:var(--wine)}
.toc-top{display:inline-block;margin:16px 8px 0;font-size:.8rem;text-decoration:underline;text-underline-offset:4px}
.reading-page .reading-prose{max-width:72ch;min-width:0;font-size:1.0625rem;line-height:1.85;overflow-wrap:break-word}
.reading-prose>p,.reading-prose section>p{margin-block:0 20px}
.reading-page .reading-prose h2{font-size:clamp(1.7rem,2.5vw,2.2rem);letter-spacing:-.025em;line-height:1.2;margin:48px 0 20px;text-wrap:balance}
.reading-page .reading-prose h3{font-size:1.35rem;line-height:1.4;margin:30px 0 12px}
.reading-prose :is(h2,h3)[id],.reading-prose [id],.reading-toc{scroll-margin-top:125px}
.reading-prose ul,.reading-prose ol{padding-left:1.3em;margin-block:16px 24px}
.reading-prose li{padding-left:.2em;margin-bottom:10px}
.reading-prose a{text-underline-offset:4px;text-decoration-thickness:1px}
.reading-prose .reading-image{margin-block:36px}
.reading-prose .reading-image img{max-height:420px;object-position:center 65%;border-radius:0 0 64px 0}
.reading-prose .reading-portrait{width:100%;max-width:420px;margin-inline:auto}
.reading-prose .reading-portrait img{aspect-ratio:auto;max-height:none;object-fit:contain;object-position:center}
.reading-prose .reading-summary{padding:24px 28px;margin-bottom:34px;background:var(--stone)}
.reading-page .reading-summary h2{font:600 1rem/1.4 var(--sans);margin:0 0 12px;color:var(--wine)}
.reading-summary ul{margin:0;padding-left:1.2em;font-size:.98rem;line-height:1.7}
.reading-summary li:last-child{margin-bottom:0}
.reading-note{background:var(--paper);padding:24px 28px;margin-block:30px;border:1px solid var(--line)}
.reading-note p:last-child{margin-bottom:0}
.explain-figure{background:var(--stone);margin:30px 0;padding:28px}
.explain-figure figcaption{font-size:.82rem;line-height:1.65;margin-top:20px;color:#655d54}
.energy-example>div{margin-bottom:18px;display:grid;grid-template-columns:1fr auto;gap:5px 12px;font-size:.95rem}
.energy-example strong{color:var(--wine);font-variant-numeric:tabular-nums}
.energy-bar{grid-column:1/-1;background:var(--paper);height:16px}
.energy-bar i{display:block;height:100%;background:var(--wine)}
.energy-example>div:nth-child(2) .energy-bar i{background:var(--bronze)}
.energy-example>p{margin:0;font-size:1rem}
.activity-comparison{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.activity-comparison>div+div{border-left:1px solid #b9ac98;padding-left:26px}
.activity-comparison strong{color:var(--wine);font-size:1.2rem}
.activity-comparison p{font-size:.98rem;line-height:1.7;margin-top:10px}
.reading-prose table{width:100%;border-collapse:collapse;font-size:.9rem;table-layout:fixed;margin-block:24px}
.reading-prose :is(th,td){text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.reading-prose th{background:var(--stone);font-weight:600}
.reading-sources{margin-top:48px;border-top:1px solid var(--line)}
.reading-sources p,.reading-sources li{font-size:.875rem;line-height:1.7}
.reading-sources ol{padding-left:1.5em}
.reading-related{margin-top:50px;border-top:1px solid var(--wine)}
.reading-related>a{display:block;padding:18px 0;border-bottom:1px solid var(--line)}
.reading-related strong{display:block;font:1.35rem/1.4 var(--serif)}
.reading-related span{display:block;font-size:.875rem;line-height:1.6;color:#655d54;margin-top:6px}
.reading-next{margin-top:40px}
.reading-next .button{padding:12px 0;margin-right:20px;font-size:.875rem}
.energy-calculator{background:var(--paper);border:1px solid #c8baab;padding:28px;margin-block:24px}
.reading-prose .calculator-intro{font-size:1rem;line-height:1.7;margin:0 0 16px}
.calculator-scope{font-size:.83rem;line-height:1.65;color:#655d54;margin:0 0 22px}
.calculator-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.calculator-fields label{font-size:.875rem;line-height:1.5;font-weight:600;display:flex;flex-direction:column;gap:7px;min-width:0}
.calculator-fields label>span:first-of-type:not(.field-error){font-weight:400}
.calculator-fields :is(input,select){font:400 1rem/1.4 var(--sans);color:var(--ink);background:var(--cream);border:1px solid #9c8c7c;border-radius:0;padding:12px;min-height:48px;width:100%;max-width:100%;box-sizing:border-box;caret-color:var(--wine)}
.calculator-fields input[aria-invalid],.calculator-fields select[aria-invalid]{border:2px solid var(--wine)}
.calculator-fields .field-wide{grid-column:1/-1}
.field-help{font-weight:400;font-size:.8rem;color:#655d54}
.field-error{font-size:.8rem;color:var(--wine);font-weight:600}
.field-error:empty{display:none}
.calculator-privacy{font-size:.78rem;line-height:1.6;color:#655d54;margin:14px 0 0}
.calculator-result{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.calculator-result>p{font-size:.9rem;line-height:1.7}
.reading-page .calculator-result h3{margin:0 0 16px}
.reading-page :is(a,button,input,select,summary):focus-visible,.guide-library a:focus-visible{outline:3px solid var(--wine);outline-offset:4px}
.reading-page ::selection{background:var(--wine);color:var(--cream)}
.guide-library{padding-block:44px 60px}
.guide-library>h2{font-size:2.2rem;margin-bottom:28px}
.guide-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.guide-library-grid article{min-width:0}
.guide-library-grid h3{font-size:1.65rem;line-height:1.3;margin:20px 0 12px}
.guide-library-grid h3 a{text-decoration:underline;text-underline-offset:5px}
.guide-library-grid p{font-size:.98rem;line-height:1.7}
.guide-library .reading-image img{aspect-ratio:4/3;object-position:center 68%}
.guide-library .reading-image figcaption{font-size:.7rem}
.advice-index .guide-intro-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:22px}
.advice-index .guide-intro-links a{text-decoration:underline;text-underline-offset:5px;padding-block:8px}
.advice-index #guides,.advice-index #articles{scroll-margin-top:125px}
@media(max-width:1000px){.reading-layout{grid-template-columns:200px minmax(0,1fr);gap:30px}.reading-hero{gap:32px}.reading-cover img{aspect-ratio:1}.guide-library-grid{gap:24px}}
@media(max-width:900px){
 .reading-layout{display:flex;flex-direction:column;gap:26px}.reading-rail{position:static;max-height:none;width:100%;overflow:visible}.reading-prose{width:100%}.reading-toc{background:var(--stone);padding:0;border:0}.reading-toc summary{display:flex;justify-content:space-between;padding:17px 20px;cursor:pointer;color:var(--wine);font-weight:600;min-height:48px}.reading-toc summary span{font-size:1.3rem}.reading-toc[open] summary span{transform:rotate(45deg)}.reading-toc nav{padding:0 12px 20px}.toc-heading{display:none}.reading-toc ol a{padding:10px 8px}.reading-page .article-content{padding-top:30px}.guide-library-grid{grid-template-columns:1fr}.guide-library-grid article{display:grid;grid-template-columns:220px 1fr;gap:26px}.guide-library-grid h3{margin-top:0}
}
@media(max-width:720px){
 .reading-hero{grid-template-columns:1fr;gap:28px}.reading-page .article-intro{padding:24px 0 30px}.reading-page .reading-hero h1{font-size:2.25rem;max-width:24ch}.reading-cover img{aspect-ratio:16/10;border-radius:0 65px 0 0}.reading-page .service-lead{font-size:1rem}.reading-page .reading-prose{font-size:1rem;line-height:1.8}.reading-page .reading-prose h2{margin-top:36px;font-size:1.8rem}.reading-page .reading-summary h2{margin-top:0;font-size:1rem}.reading-prose .reading-summary,.reading-note,.explain-figure,.energy-calculator{padding:22px 18px}.reading-prose .reading-image{margin-block:28px}.reading-page .article-content{padding-bottom:48px}.activity-comparison{grid-template-columns:1fr;gap:18px}.activity-comparison>div+div{padding:18px 0 0;border-left:0;border-top:1px solid #b9ac98}.guide-library{padding-block:30px 40px}.guide-library-grid article{grid-template-columns:1fr;gap:18px}.guide-library-grid{gap:38px}.guide-library-grid h3{font-size:1.6rem}.reading-prose :is(h2,h3)[id],.reading-prose [id],.reading-toc{scroll-margin-top:100px}
}
@media(max-width:420px){.calculator-fields{grid-template-columns:1fr}.reading-page .reading-hero h1{font-size:2rem}.energy-calculator{padding:18px 14px}.energy-example>div{grid-template-columns:1fr}.energy-bar{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.reading-page *{scroll-behavior:auto!important}}

.calculator-controls{border:0;padding:0;margin:0;min-width:0}.calculator-controls legend{font-weight:600;font-size:.95rem;margin-bottom:16px}
/* Independent commercial homepage. Existing destination pages keep their styles. */
.variant-home { --v-space:clamp(64px,7.5vw,112px); }
.variant-home .container { width:min(1200px,calc(100% - 80px)); }
.variant-home .v-section { padding-block:var(--v-space); }
.variant-home :is(.v-section,.v-hero) h2 { font:400 clamp(2.2rem,3.9vw,3.7rem)/1.08 var(--serif); letter-spacing:-.045em; text-wrap:balance; }
.variant-home .v-section h3 { font:400 clamp(1.55rem,2.2vw,2.1rem)/1.18 var(--serif);letter-spacing:-.025em; }
.variant-home .v-section p { font-size:1rem;line-height:1.7; }
.variant-home .v-section p + p { margin-top:16px; }
.variant-home .v-kicker,.variant-home .v-location { font:500 .82rem/1.5 var(--sans);letter-spacing:.01em;text-transform:none;color:var(--wine);margin:0 0 20px; }
.variant-home .v-kicker::before { display:none; }
.variant-home .v-lead { font-size:1.12rem;line-height:1.65;max-width:49ch; }
.variant-home .button { white-space:normal;max-width:100%;gap:16px;min-height:54px;font-size:.95rem;justify-content:space-between; }
.variant-home .button svg { flex-shrink:0; }
.variant-home .v-text-link { display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;font-size:.93rem;color:var(--wine);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px; }
.variant-home .v-text-link:hover { text-decoration-thickness:2px; }
.variant-home .v-actions { display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:30px; }
.variant-home .v-actions .button { width:fit-content; }
.variant-home :is(a,button,input):focus-visible { outline:3px solid var(--wine);outline-offset:5px; }
.variant-home :is(.v-friction,.v-close,.v-physical) :is(a,button):focus-visible { outline-color:var(--cream); }
.variant-home [id] { scroll-margin-top:110px; }

.variant-home .v-hero { padding-top:clamp(30px,4vw,65px);padding-bottom:0;background:var(--cream); }
.v-hero-layout { display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,78px);align-items:center; }
.v-hero-copy { padding-bottom:24px;min-width:0; }
.variant-home .v-hero h1 { font:400 clamp(3.15rem,5.9vw,5.9rem)/.99 var(--serif);letter-spacing:-.055em;color:var(--wine);max-width:12ch;text-wrap:balance;margin-bottom:28px; }
.variant-home .v-hero .v-lead { font-size:clamp(1rem,1.32vw,1.15rem);max-width:43ch;color:var(--ink); }
.variant-home .v-hero .v-actions { align-items:flex-start;flex-direction:column;gap:14px; }
.variant-home .v-hero .v-actions>.button { min-width:min(100%,295px); }
.variant-home .v-helper { margin-top:15px;font-size:.78rem;line-height:1.6;color:var(--muted);max-width:37ch; }
.v-hero-visual { position:relative;min-width:0; }
.variant-home .v-hero-visual .media { aspect-ratio:.92;border-radius:260px 260px 5px 5px;overflow:hidden;border:0; }
.variant-home .v-hero-visual .media img,.variant-home .v-hero-visual video { object-position:52% center; }
.variant-home .v-reassurance { margin-top:45px;padding-block:25px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:24px;font-size:.88rem; }
.v-reassurance p { color:var(--ink); }
.v-reassurance p:nth-child(2) { text-align:center; }
.v-reassurance a { text-align:right;color:var(--wine); }
.v-reassurance a span { display:block;font-size:.69rem;color:var(--muted);margin-top:3px; }

.v-goals-layout { display:grid;grid-template-columns:.95fr 1.2fr;gap:clamp(45px,8vw,120px);align-items:center; }
.variant-home .v-small-photo { width:75%;margin-top:35px; }
.variant-home .v-small-photo .media { aspect-ratio:1.75;border-radius:0 0 100px 0; }
.v-goal-list { border-top:1px solid var(--line); }
.v-goal-entry { border-bottom:1px solid var(--line); }
.v-goal-entry a { display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 2px; }
.v-goal-entry a>svg { flex:none;color:var(--wine);transition:transform .2s; }
.v-goal-entry a:hover>svg { transform:translateX(5px); }
.v-goal-entry a:hover h3 { color:var(--wine); }

.variant-home .v-friction { background:var(--charcoal);color:var(--cream); }
.v-friction-layout { display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,130px);align-items:center; }
.variant-home .v-friction .v-kicker { color:#d3b493; }
.variant-home .v-friction h2 { color:var(--cream);max-width:14ch; }
.variant-home .v-friction-layout>div>p:not(.v-kicker) { color:#e0d7cc;margin-top:0;max-width:47ch; }

.v-approach-layout { display:grid;grid-template-columns:1fr 1.08fr;gap:clamp(35px,7vw,100px);align-items:center; }
.variant-home .v-approach-image .media { aspect-ratio:.9;border-radius:4px 4px 150px 4px; }
.v-steps { list-style:none;margin:30px 0;padding:0; }
.v-steps li { display:flex;gap:20px;border-top:1px solid var(--line);padding:21px 0; }
.v-steps li>span { font:1rem var(--serif);padding-top:4px;color:var(--bronze); }
.variant-home .v-steps h3 { font-family:var(--sans);font-size:1rem;font-weight:600;letter-spacing:0; }
.variant-home .v-steps p { margin-top:8px;font-size:.92rem;line-height:1.65; }

.variant-home .v-formats { background:var(--stone); }
.v-heading-row { margin-bottom:38px; }
.v-heading-row h2 { max-width:21ch; }
.v-format-grid { display:grid;grid-template-columns:1fr 1fr;gap:28px; }
.v-format { background:var(--paper);display:flex;flex-direction:column; }
.variant-home .v-format .media { aspect-ratio:1.6; }
.v-format-copy { padding:clamp(25px,3vw,40px);display:flex;flex:1;flex-direction:column;align-items:flex-start; }
.variant-home .v-format-copy .v-kicker { margin-bottom:12px;font-size:.79rem; }
.variant-home .v-format h3 { font-size:2.5rem; }
.variant-home .v-format-copy>p:not(.v-kicker) { margin-top:18px;font-size:.95rem; }
.v-format-copy .button { margin-top:auto; }
.variant-home .v-format-copy>p { margin-bottom:26px; }
.variant-home .v-friction .v-text-link { margin-top:20px;color:var(--cream); }
.v-physical { margin-top:28px;padding:38px 42px;background:var(--wine);color:var(--cream);display:flex;gap:40px;align-items:center;justify-content:space-between; }
.variant-home .v-physical .v-kicker { color:#dec7ae; }
.variant-home .v-physical h3 { color:var(--cream); }
.variant-home .v-physical p:not(.v-kicker) { color:#eadfdc;margin-top:16px;max-width:62ch;font-size:.96rem; }
.v-physical .button { flex-shrink:0; }
.v-format-bottom { display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:28px; }

.v-coach-layout { display:grid;grid-template-columns:.85fr 1.2fr;gap:clamp(40px,8vw,120px);align-items:center; }
.variant-home .v-coach-portrait .media { aspect-ratio:.82;border-radius:220px 220px 0 0; }
.variant-home .v-coach-copy>p:not(.v-kicker) { margin-top:24px; }
.v-coach-copy>.button { margin-top:20px; }
.v-proof { border-top:1px solid var(--line);margin-top:36px;padding-top:26px;display:flex;gap:30px;align-items:center; }
.v-proof strong { font:3.4rem/1 var(--serif);display:block;color:var(--wine);letter-spacing:-.05em; }
.v-proof strong small { font-size:1.25rem; }
.v-proof>div>span { display:block;font-size:.85rem;color:var(--wine);margin-top:9px;letter-spacing:.05em; }
.variant-home .v-proof .v-proof-date { font-size:.74rem;margin-top:0;color:var(--muted); }
.v-proof a { display:flex;gap:15px;align-items:center;min-height:44px;font-size:.8rem;text-decoration:underline;text-underline-offset:4px;color:var(--wine); }

.variant-home .v-place { background:var(--stone); }
.v-place-layout { display:grid;grid-template-columns:.85fr 1.2fr;gap:70px;align-items:center; }
.variant-home .v-place-layout>div>p:not(.v-kicker) { margin-top:23px; }
.v-place-layout .button { margin-top:15px; }
.variant-home .v-place-image .media { aspect-ratio:1.3;border-radius:150px 0 0 0; }
.v-access { display:grid;grid-template-columns:.85fr 1.2fr;gap:70px;align-items:center;margin-top:50px;padding-top:35px;border-top:1px solid #c3b7a8; }
.v-access h3 { max-width:21ch; }
.v-access address { font-style:normal;line-height:1.6;margin-top:20px; }
.variant-home .v-access p { font-size:.8rem;margin-top:10px; }
.v-access .google-map iframe { height:220px; }
.v-faq-layout { display:grid;grid-template-columns:.75fr 1.3fr;gap:80px; }
.variant-home .v-faq h2 { max-width:14ch; }
.v-reading { margin-top:28px;border-top:1px solid var(--line);padding-top:22px; }
.v-reading a { font-size:.87rem;display:block;min-height:44px;padding-top:12px;color:var(--wine);text-decoration:underline;text-underline-offset:4px; }
.variant-home .v-close { background:var(--wine);text-align:center;color:var(--cream);padding-bottom:calc(var(--v-space) + 15px); }
.variant-home .v-close .v-kicker { color:#d9bd9f; }
.variant-home .v-close h2 { color:var(--cream);max-width:18ch;margin-inline:auto;font-size:clamp(2.5rem,5.5vw,5.2rem); }
.variant-home .v-close .container>p:not(.v-kicker) { color:#eadfdc;max-width:52ch;margin:25px auto 0; }
.v-close .v-actions { justify-content:center; }
.variant-home .v-button-outline { color:var(--cream);background:transparent;border-color:#c0a5a5; }
.variant-home .v-button-outline:hover { background:#6b3b46; }
.variant-home .v-close p.v-close-note { font-size:.78rem; }

.variant-home .v-guide { width:min(650px,calc(100% - 32px));max-height:90dvh;overscroll-behavior:contain;border:1px solid var(--stone); }
.v-guide-inner { padding:38px 40px 25px; }
.v-guide-close { position:absolute;top:7px;right:9px;min-width:44px;min-height:44px;font-size:2rem;background:transparent;border:0;color:var(--wine); }
.v-progress { height:3px;background:var(--stone);margin:20px 0; }
.v-progress span { display:block;background:var(--wine);height:100%;width:100%;transform:scaleX(.33333);transform-origin:left;transition:transform .18s; }
.v-guide h2 { font:400 clamp(1.9rem,3.5vw,2.6rem)/1.12 var(--serif);letter-spacing:-.035em;text-wrap:balance;margin:0 0 16px; }
.v-step-label { font-size:.75rem;color:var(--muted);margin-bottom:15px; }
.v-guide fieldset { border:0;padding:0;margin:0;min-width:0; }
.v-guide legend { float:left;width:100%;margin-bottom:5px; }
.v-guide legend+div { clear:both; }
.v-choice-list { display:grid;gap:10px;padding-top:16px; }
.v-choice { display:flex;gap:13px;align-items:center;cursor:pointer;background:var(--paper);border:1px solid #b9aa98;padding:16px 18px;min-height:60px;font-size:.95rem;line-height:1.4;transition:background-color .15s,border-color .15s; }
.v-choice:has(input:checked) { border-color:var(--wine);background:#ece1de; }
.v-choice:hover { border-color:var(--wine); }
.v-choice:focus-within { outline:2px solid var(--wine);outline-offset:3px; }
.v-choice input { width:18px;height:18px;flex:none;padding:0;accent-color:var(--wine); }
.v-guide-actions { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px; }
.v-guide-actions .button { margin-left:auto; }
.v-text-button { color:var(--wine);background:transparent;border:0;text-decoration:underline;text-underline-offset:5px;min-height:44px;padding:6px 0; }
.v-guide-error { font-size:.82rem;color:var(--wine);min-height:1.4em;margin-top:12px; }
.v-guide-privacy { border-top:1px solid var(--line);font-size:.73rem;line-height:1.6;color:var(--muted);margin-top:28px;padding-top:16px; }
.v-recommendation { margin:25px 0;padding:24px;background:var(--stone); }
.v-recommendation>p:first-child { font-size:.78rem;color:var(--wine); }
.v-recommendation h3 { font:400 2rem/1.2 var(--serif);margin:8px 0 13px; }
.v-recommendation p { font-size:.95rem;line-height:1.6; }
.v-recommendation .v-text-link { margin-top:13px; }
.v-guide-alternative,.v-guide-note { font-size:.86rem;line-height:1.65;margin:15px 0; }
.v-guide-note { color:var(--muted); }
#guide-result>[data-booking] { display:flex;margin-top:24px; }
#guide-restart { display:block;margin-top:12px; }
.v-guide [hidden] { display:none!important; }

@media(min-width:1600px){.variant-home .container{width:min(1320px,calc(100% - 120px))}}
@media(max-width:1000px){
 .variant-home .container{width:calc(100% - 48px)}
 .v-hero-layout{gap:30px;grid-template-columns:1fr 1fr}
 .variant-home .v-hero h1{font-size:clamp(3rem,6.6vw,4.5rem)}
 .v-goals-layout,.v-approach-layout,.v-coach-layout{gap:40px}
 .v-physical{display:block;padding:30px}
 .v-physical .button{margin-top:25px}
 .v-friction-layout,.v-place-layout,.v-access,.v-faq-layout{gap:40px}
 .v-format-copy{padding:26px}
 .variant-home .v-format h3{font-size:2.1rem}
 .variant-home .v-reassurance{font-size:.78rem;gap:18px}
}
@media(max-width:720px){
 .variant-home .container{width:calc(100% - 36px)}
 .variant-home .v-section{padding-block:58px}
 .variant-home .v-hero{padding-top:32px}
 .v-hero-layout{display:flex;flex-direction:column;gap:28px;align-items:stretch}
 .v-hero-copy{padding-bottom:0}
 .variant-home .v-hero h1{font-size:clamp(3.15rem,12vw,4.5rem);max-width:13ch;margin-bottom:22px}
 .variant-home .v-hero .v-lead{max-width:42ch;font-size:1rem}
 .variant-home .v-hero .v-actions{gap:12px;margin-top:24px}
 .variant-home .v-hero .v-actions>.button{width:100%}
 .variant-home .v-helper{max-width:44ch}
 .variant-home .v-hero-visual .media{aspect-ratio:1.25;border-radius:150px 150px 3px 3px}
 .variant-home .v-reassurance{margin-top:28px;grid-template-columns:1fr;gap:12px;padding-block:20px}
 .v-reassurance p:nth-child(2),.v-reassurance a{text-align:left}
 .v-reassurance a span{display:inline;margin-left:8px}
 .v-goals-layout,.v-approach-layout,.v-friction-layout,.v-coach-layout,.v-place-layout,.v-access,.v-faq-layout,.v-heading-row{grid-template-columns:1fr;gap:30px}
 .variant-home .v-small-photo{display:none}
 .variant-home .v-section h2{font-size:clamp(2.25rem,8.8vw,3.2rem);max-width:22ch}
 .v-goal-entry a{padding-block:23px;gap:16px}
 .variant-home .v-goal-entry h3{font-size:1.65rem}
 .variant-home .v-friction h2{max-width:16ch}
 .v-approach-image{order:2}
 .variant-home .v-approach-image .media{aspect-ratio:1.25;border-radius:3px 3px 100px 3px}
 .v-heading-row{margin-bottom:28px}
 .v-format-grid{grid-template-columns:1fr;gap:25px}
 .v-format-copy{padding:27px 24px}
 .variant-home .v-format h3{font-size:2.3rem}
 .v-format-copy .button{width:100%}
 .v-physical{padding:28px 24px}
 .v-format-bottom{flex-direction:column;align-items:stretch;gap:10px}
 .v-coach-portrait{max-width:360px;width:82%}
 .variant-home .v-coach-portrait .media{aspect-ratio:.95}
 .v-proof{gap:24px}
 .v-place-image{margin-top:5px}
 .variant-home .v-place-image .media{border-radius:110px 0 0 0;aspect-ratio:1.3}
 .v-access{margin-top:30px;padding-top:30px}
 .variant-home .v-close h2{font-size:clamp(2.5rem,10vw,3.5rem);max-width:17ch}
 .v-close .v-actions{flex-direction:column;gap:13px}
 .variant-home .v-close .v-actions .button{width:100%;max-width:350px}
 .v-guide-inner{padding:34px 23px 22px}
 .v-choice{padding:14px;min-height:62px;font-size:.91rem}
 .v-guide h2{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){.v-goal-entry a>svg,.v-choice,.v-progress span{transition:none}}

html[data-motion="off"] .variant-home :is(.v-progress span,.v-choice,.v-goal-entry a>svg){transition:none}

@media(max-width:600px){.variant-home .v-hero .v-actions>.button{width:100%;min-width:0}}

/* Parcours réellement accompagnés, confirmés par le propriétaire. */
.variant-home .v-people { background:var(--stone); }
.v-people-heading { display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:clamp(25px,5vw,70px);margin-bottom:32px; }
.variant-home .v-people-heading h2 { max-width:19ch; }
.variant-home .v-people-heading>p { max-width:47ch; }
.v-people-list { list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 36px; }
.v-people-list li { border-top:1px solid var(--bronze);padding-top:19px;min-width:0; }
.variant-home .v-people-list h3 { font-size:1.65rem;line-height:1.2; }
.v-people-list a { display:inline-block;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;padding-block:7px; }
.v-people-list a:hover { color:var(--wine); }
.variant-home .v-people-list p { font-size:.94rem;line-height:1.65;margin-top:9px; }
.variant-home .v-people-note { font-size:.81rem;line-height:1.65;max-width:95ch;margin-top:28px; }
@media(max-width:900px){.v-people-list{grid-template-columns:repeat(2,minmax(0,1fr))}.v-people-heading{grid-template-columns:1fr;gap:18px}}
@media(max-width:560px){.v-people-list{grid-template-columns:1fr;gap:22px}.variant-home .v-people-list h3{font-size:1.55rem}}

/* Le hero ne zoome plus la vidéo de 28 % : conserver les pixels utiles. */
.prototype-b .homepage .direction-architecture .hero-visual img,.prototype-b .homepage .direction-architecture .hero-visual video{height:100%;object-position:10% center;transform:none}

/* Variante C : only rearranged content; original tokens, hero and motion unchanged. */
.variant-home .c-method .v-friction-layout{align-items:start}
.variant-home .c-method .v-friction-layout>div>p{margin-top:24px}
.variant-home .c-method .v-steps{margin:0}
.variant-home .c-method .v-steps h3{color:var(--cream)}
.variant-home .c-method .v-steps p{color:var(--cream)}
.variant-home .c-method .v-steps li>span{color:var(--stone)}
.variant-home .c-method .v-steps li:first-child{padding-top:0;border-top:0}
.variant-home .c-contact .v-close .v-close-note{font-size:.95rem;max-width:58ch}

.variant-home .c-offers .offer-content>p.c-offer-starting-price{margin-top:22px;font-size:clamp(1.6rem,2.8vw,2.15rem);line-height:1.25;font-weight:600;color:var(--wine)}

/* Variante C — desktop hero fits the viewport beneath the existing header.
   Only this homepage has c-compact-hero; mobile and the original stay intact. */
@media (min-width:1024px) {
 .variant-home .homepage .hero.c-compact-hero {
  --c-header-height:97px;
  height:min(740px,calc(100vh - var(--c-header-height)));
  height:min(740px,calc(100svh - var(--c-header-height)));
  padding-block:clamp(18px,3vh,30px);
  row-gap:clamp(12px,2vh,20px);
  grid-template-rows:auto minmax(0,1fr) auto;
 }
 .variant-home .homepage .c-compact-hero .hero-visual {height:100%;min-height:0;max-height:100%}
 .variant-home .homepage .c-compact-hero .hero-visual>.media {min-height:0;height:100%}
 .variant-home .homepage .c-compact-hero .hero-headline {font-size:clamp(2.7rem,min(5.8vw,8.2svh),5.3rem)}
 .variant-home .homepage .c-compact-hero .hero-kicker {margin-bottom:16px}
 .variant-home .homepage .c-compact-hero .hero-body {align-self:start}
 .variant-home .homepage .c-compact-hero .hero-actions {margin-top:18px;gap:10px}
 .variant-home .homepage .c-compact-hero .scroll-cue {margin-top:0}
}
@media (min-width:1024px) and (max-width:1100px) {
 .variant-home .homepage .c-compact-hero .hero-headline {font-size:clamp(2.5rem,4.5vw,3.1rem)}
}
@media (min-width:1024px) and (max-height:760px) {
 .variant-home .homepage .hero.c-compact-hero {padding-block:16px;row-gap:12px}
 .variant-home .homepage .c-compact-hero .hero-headline {font-size:clamp(2.4rem,min(4.5vw,7.6svh),3.5rem)}
 .variant-home .homepage .c-compact-hero .hero-kicker {margin-bottom:12px}
 .variant-home .homepage .c-compact-hero .hero-description {line-height:1.55}
 .variant-home .homepage .c-compact-hero .hero-actions {margin-top:12px;gap:8px}
 .variant-home .homepage .c-compact-hero .hero-actions>.button {min-height:48px;padding-block:11px}
 .variant-home .homepage .c-compact-hero .action-note {margin-top:6px;line-height:1.5}
 .variant-home .homepage .c-compact-hero .hero-reviews-link {min-height:32px;margin-top:4px}
}
@media (min-width:1024px) and (max-height:660px) {
 .variant-home .homepage .c-compact-hero .scroll-cue {display:none}
}
/* Preserve readable, reachable content in unusually short / zoomed windows. */
@media (min-width:1024px) and (max-height:560px) {
 .variant-home .homepage .hero.c-compact-hero {height:auto;grid-template-rows:auto auto}
 .variant-home .homepage .c-compact-hero .hero-visual {height:100%;min-height:320px}
}

/* Variante C — clear separation: cream objectives, burgundy coach, stone studio. */
.variant-home .c-coach-studio .v-coach {background:var(--wine);color:var(--cream)}
.variant-home .c-coach-studio .v-coach :is(h2,p,.button-text,.v-proof strong,.v-proof>div>span,.v-proof a) {color:var(--cream)}
.variant-home .c-coach-studio .v-coach .v-proof {border-color:var(--bronze)}
.variant-home .c-coach-studio .v-coach .v-proof-date {color:var(--stone)}
.variant-home .c-coach-studio .v-coach :is(a,button):focus-visible {outline-color:var(--cream)}
/* On-page quiz modal, opened after 15 seconds or from its launcher. */
.quiz-dock{position:fixed;z-index:35;right:24px;bottom:24px;font-family:var(--sans);max-width:calc(100vw - 32px)}
.quiz-launcher{display:flex;align-items:center;gap:22px;min-height:48px;padding:12px 18px;border:1px solid var(--wine);border-radius:4px;background:var(--cream);color:var(--wine);font:500 14px/1.4 var(--sans);box-shadow:0 4px 16px #302b2714;cursor:pointer}
.quiz-launcher:hover{background:var(--stone)}
.quiz-modal{width:min(880px,calc(100vw - 48px));height:min(850px,92vh);height:min(850px,92dvh);max-width:none;max-height:none;margin:auto;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--cream);color:var(--ink);overflow:hidden;box-shadow:0 20px 70px #1e111155}
.quiz-modal[open]{display:flex;flex-direction:column}
.quiz-modal::backdrop{background:#24151dd9}
.quiz-modal-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:8px 16px 8px 24px;min-height:62px;border-bottom:1px solid var(--line);flex-shrink:0}
.quiz-modal .quiz-modal-bar h2{font:400 17px/1.3 var(--serif);letter-spacing:0;margin:0;color:var(--wine)}
.quiz-modal-close{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px;border:0;background:none;color:var(--wine);font:400 13px/1.3 var(--sans);cursor:pointer}
.quiz-modal-close span{font-size:25px}
.quiz-frame-area{position:relative;flex:1;min-height:0}
.quiz-frame-area iframe{width:100%;height:100%;border:0;display:block;background:var(--cream)}
.quiz-loading,.quiz-load-error{padding:35px 24px;text-align:center;color:var(--muted);font-size:15px}
.quiz-load-error p{margin-bottom:22px}
.quiz-load-error .button{cursor:pointer}
.quiz-dock :is(button,a):focus-visible,.quiz-modal button:focus-visible{outline:3px solid var(--wine);outline-offset:3px}
.dialog-open .quiz-dock,body:has(#main-nav.is-open) .quiz-dock{visibility:hidden}
.quiz-dock[hidden],.quiz-dock [hidden],.quiz-modal [hidden],[data-weight-plan][hidden]{display:none!important}
@media(max-width:600px){.quiz-dock{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.quiz-launcher{font-size:13px;min-height:44px;padding:10px 15px}.quiz-invitation{width:340px;padding-top:16px;padding-bottom:8px}.quiz-invitation .quiz-invitation-title{font-size:18px}.quiz-modal{width:100vw;height:100vh;height:100dvh;border:0;border-radius:0}.quiz-modal-bar{padding-left:20px;padding-top:max(8px,env(safe-area-inset-top));min-height:58px}.quiz-modal .quiz-modal-bar h2{font-size:15px}}
@media print{.quiz-dock,.quiz-modal{display:none!important}}
.quiz-modal.is-intro{height:min(590px,90vh);height:min(590px,90dvh)}
@media(max-width:600px){.quiz-modal.is-intro{width:calc(100vw - 24px);height:min(580px,90vh);height:min(580px,90dvh);border-radius:6px}}
/* Bibliothèque et outils dans la direction bordeaux / crème existante. */
.library-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;margin-top:28px}
.library-actions>.button{flex:0 1 auto;max-width:100%;white-space:normal;text-align:left}
.guide-intro-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;margin-top:24px;min-width:0}
.guide-intro-links>a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;padding-block:8px;color:var(--wine);font-size:.9375rem;line-height:1.5;text-decoration:underline;text-underline-offset:5px;overflow-wrap:break-word}
.library-actions>.guide-intro-links{flex:1 1 32rem;margin:0}
.library-heading>div{min-width:0}
@media(max-width:720px){.library-actions{flex-direction:column;align-items:flex-start;gap:16px}.library-actions>.guide-intro-links{flex:none;width:100%}.guide-intro-links{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}.guide-intro-links>a{width:fit-content}}
.library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:32px}.library-heading>div{max-width:760px}.library-heading>.button{flex-shrink:0;margin-top:14px}.library-heading>p{max-width:36ch;margin-top:12px}.library-pillars,.tool-alternate{background:var(--stone)}
.pillar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:32px}.pillar-grid article{display:grid;grid-template-columns:minmax(100px,.6fr) 1fr;align-items:start;gap:22px}.pillar-grid h3{font:1.6rem/1.25 var(--serif);margin:0 0 14px}.pillar-grid h3 a,.resource-entry h3 a,.service-guide-grid h3 a{color:var(--wine);text-decoration:none}.pillar-grid h3 a:hover,.resource-entry h3 a:hover,.service-guide-grid h3 a:hover{text-decoration:underline;text-underline-offset:4px}.pillar-grid p{font-size:.9375rem;line-height:1.65;margin:0}.pillar-grid .reading-image{margin:0}.pillar-grid .reading-image img{height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:120px 120px 0 0}.pillar-grid figcaption{font-size:.65rem;line-height:1.5}
.library-search{display:grid;grid-template-columns:1fr 280px;gap:24px;padding:24px 0 10px}.library-search label,.tool-fields label,.week-day label{display:grid;gap:8px;font-size:.875rem;font-weight:600}.library-search input,.library-search select,.practical-tool input,.practical-tool select{font:1rem var(--sans);color:var(--ink);border:1px solid #b0a59a;background:var(--paper);border-radius:4px;padding:12px;min-width:0;width:100%;min-height:48px}.library-count{font-size:.875rem;margin-block:12px}.library-cluster{border-top:1px solid var(--line);padding-top:35px;margin-top:35px}.cluster-heading{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.cluster-heading h2{font-size:clamp(1.75rem,3vw,2.4rem);margin:0}.cluster-heading>p{max-width:50ch;margin:0}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}.resource-entry{padding:26px 0;border-bottom:1px solid var(--line)}.resource-entry .resource-type{font-size:.75rem;margin:0 0 9px;color:var(--muted)}.resource-entry h3{font:1.35rem/1.3 var(--serif);margin:0 0 12px}.resource-entry>p{font-size:.9375rem;line-height:1.65;margin:0}.cluster-service{margin-top:24px;font-size:.9375rem}.cluster-service a,.tool-reading a{color:var(--wine);text-underline-offset:4px}
.service-guides{background:var(--stone)}.service-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:30px}.service-guide-grid h3{font:1.5rem/1.3 var(--serif);margin:0 0 12px}.service-guide-grid p{font-size:.9375rem;line-height:1.7;margin:0}.reading-parent{border-left:3px solid var(--wine);padding-left:18px}.reading-children{margin-block:32px;padding:24px;background:var(--stone)}.reading-children li+li{margin-top:12px}.reading-prose table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;margin-block:24px;font-size:.9375rem}.reading-prose table th,.reading-prose table td{border:1px solid var(--line);padding:12px;min-width:120px;vertical-align:top;text-align:left}.reading-prose table th{background:var(--stone)}
.tools-feature-layout{display:grid;grid-template-columns:1.2fr .6fr;gap:70px;align-items:center}.tools-feature-layout .reading-image img{aspect-ratio:4/3;object-fit:cover;border-radius:140px 0 0 0}.tools-feature-layout h2{font-size:clamp(2rem,3.4vw,3.4rem)}.tool-container{max-width:920px}.practical-tool{background:var(--paper);padding:30px;border:1px solid var(--line);margin-block:24px}.practical-tool p{font-size:.9375rem;line-height:1.7}.tool-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.tool-result{border-top:1px solid var(--line);margin-top:25px;padding-top:20px;font-size:1.05rem;line-height:1.7}.tool-result ul{padding-left:20px}.tool-privacy{color:var(--muted);font-size:.8125rem!important}.week-fields{display:grid;gap:12px;margin-block:24px}.week-day{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:20px;align-items:end}.week-day label:first-child{grid-template-columns:100px minmax(0,1fr);align-items:center}.tool-reading{line-height:1.8}.practical-tool .button{margin-top:16px}
.architecture-summary{display:flex;flex-wrap:wrap;gap:40px;border-block:1px solid var(--line);margin-block:28px;padding-block:20px}.architecture-summary p{max-width:200px;margin:0;font-size:.875rem}.architecture-summary strong{display:block;font:3rem var(--serif);color:var(--wine)}.architecture-table-wrap{overflow-x:auto;margin-top:24px}.architecture-table{border-collapse:collapse;width:100%;font-size:.875rem;line-height:1.65}.architecture-table th,.architecture-table td{padding:16px 14px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;min-width:160px}.architecture-table thead{background:var(--wine);color:var(--cream)}.architecture-table a{color:var(--wine);text-underline-offset:3px}.architecture-table small{display:block;margin-top:7px;font-size:.75rem;overflow-wrap:anywhere;font-weight:400}.architecture-table th[scope=row]{min-width:230px}.architecture-cluster{margin-block:26px;border-bottom:1px solid var(--line);padding-bottom:20px}.architecture-cluster>summary{font:1.7rem var(--serif);cursor:pointer;padding-block:15px;color:var(--wine)}.architecture-cluster>summary span{font:.875rem var(--sans);margin-left:18px}.architecture-page .article-prose{max-width:900px}
[data-resource-entry][hidden],[data-library-cluster][hidden],[data-library-controls][hidden]{display:none!important}
@media(max-width:1000px){.pillar-grid article{grid-template-columns:1fr}.pillar-grid .reading-image img{aspect-ratio:2/1;border-radius:90px 0 0 0}.resource-grid{grid-template-columns:1fr 1fr}.library-heading{display:block}.service-guide-grid{grid-template-columns:1fr 1fr}.tools-feature-layout{gap:35px}.reading-next .button{white-space:normal}}
@media(max-width:650px){.pillar-grid{grid-template-columns:1fr;gap:32px}.pillar-grid article{grid-template-columns:110px 1fr;gap:16px}.pillar-grid .reading-image img{aspect-ratio:3/4;border-radius:70px 70px 0 0}.pillar-grid h3{font-size:1.4rem}.pillar-grid figcaption{font-size:.625rem}.resource-grid,.service-guide-grid,.cluster-heading,.tools-feature-layout,.library-search,.tool-fields{grid-template-columns:1fr}.library-search{gap:16px}.cluster-heading{gap:15px}.resource-entry{padding-block:24px}.service-guide-grid{gap:25px}.practical-tool{padding:20px}.week-day{grid-template-columns:1fr 82px;gap:12px}.week-day label:first-child{grid-template-columns:1fr}.architecture-summary{gap:20px}.architecture-summary p{max-width:145px}.architecture-table{font-size:.8125rem}.reading-children{padding:20px}.tools-feature-layout .reading-image{max-width:440px}}

.resource-library :is(a,input,select,button):focus-visible,.tools-page :is(a,input,select,button):focus-visible,.architecture-page :is(a,summary):focus-visible{outline:3px solid var(--wine);outline-offset:4px}.resource-library section[id],.tools-page section[id],.architecture-page section[id]{scroll-margin-top:125px}.tool-result,.architecture-summary strong{font-variant-numeric:tabular-nums}.practical-tool button:disabled{opacity:.6;cursor:not-allowed}

/* Une conclusion pratique et des liens de lecture explicites. */
.reading-page .coach-advice{background:var(--stone);border-left:3px solid var(--wine);padding:26px 28px;margin-block:36px}
.reading-page .coach-advice h2{font-size:1.6rem;margin:0 0 16px}
.reading-page .coach-advice p:last-child{margin-bottom:0}
.reading-related>a{position:relative;min-height:48px;padding:20px 12px;text-decoration:none}
.reading-related>a strong{text-decoration:underline;text-underline-offset:4px}
.reading-related>a:hover,.reading-related>a:focus-visible{background:var(--stone)}
.reading-related .reading-open{font-size:.875rem;font-weight:600;color:var(--wine);text-decoration:underline;text-underline-offset:4px;margin-top:10px}
.reading-children a{display:block;min-height:44px;padding-block:9px}
.reading-prose table caption{text-align:left;font-size:.85rem;color:var(--muted);padding-bottom:10px}
@media(max-width:720px){.reading-page .coach-advice{padding:22px 18px}.reading-page .coach-advice h2{font-size:1.5rem}}

/* Calculateur partagé : une saisie, un résultat, les variantes à la demande. */
.energy-calculator--simple { --control-border:#897969; }
.energy-calculator--simple .sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
.energy-calculator--simple .calculator-field { min-width:0; }
.energy-calculator--simple .calculator-field .field-error { display:block;margin-top:6px; }
.energy-calculator--simple .calculator-field .field-error:empty { display:none; }
.energy-calculator--simple :is(input,select,button,summary) { touch-action:manipulation; }
.energy-calculator--simple :is(input,select,button,summary):focus-visible,
.energy-calculator--simple #energy-result:focus-visible { outline:3px solid var(--wine);outline-offset:4px; }
.energy-calculator--simple .calculator-step { border:0;padding:0;margin:0 0 28px;min-width:0; }
.energy-calculator--simple .calculator-step>legend { font-size:1.05rem;font-weight:600;margin-bottom:16px; }
.energy-calculator--simple .calculator-fields :is(input,select) { border-color:var(--control-border); }
.energy-calculator--simple .calculator-fields [aria-invalid] { border:2px solid var(--wine); }
.deficit-options { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.deficit-options label { display:flex;align-items:flex-start;gap:10px;border:1px solid var(--control-border);padding:14px 10px;font-size:.9rem;line-height:1.4;cursor:pointer;min-width:0; }
.deficit-options label:has(input:checked) { border:2px solid var(--wine);padding:13px 9px;background:var(--stone); }
.deficit-options label:hover { background:var(--cream); }
.deficit-options input { width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:var(--wine); }
.deficit-options small { display:block;font-size:.75rem;font-weight:400;margin-top:5px; }
.energy-calculator--simple .field-help { display:block;margin-top:8px;line-height:1.6; }
.calculator-safety { border-top:1px solid var(--line);padding-top:20px; }
.energy-calculator--simple .calculator-scope { margin:0 0 14px;font-size:.85rem; }
.calculator-eligibility { display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:.9rem;line-height:1.6;min-height:44px;padding-block:8px; }
.calculator-eligibility input { width:22px;height:22px;flex:0 0 22px;margin:2px 0 0;accent-color:var(--wine); }
.calculator-actions { display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px; }
.calculator-actions .button { flex:1;justify-content:center;text-align:center;white-space:normal;min-height:48px; }
.calculator-reset { background:transparent;color:var(--wine);border:0;min-height:48px;padding:12px;font:400 .85rem/1.5 var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer; }
.calculator-reset:hover { background:var(--stone); }
.energy-calculator--simple .calculator-privacy { font-size:.8rem; }
.energy-calculator--simple .calculator-output { margin-top:28px;padding-top:26px;border-top:2px solid var(--wine); }
.energy-calculator--simple .calculator-result { margin:0;padding:0;border:0;scroll-margin-top:120px; }
.energy-calculator--simple :is(#energy-result h3,#macro-result h3) { margin:0 0 12px;font:400 1.5rem/1.3 var(--serif); }
.energy-calculator--simple #macro-result h3 { margin-top:28px;font-size:1.3rem; }
.energy-calculator--simple .energy-scenario { font-size:.9rem;margin:0 0 6px; }
.energy-calculator--simple .energy-target { color:var(--wine);margin:0 0 12px;line-height:1.1; }
.energy-target strong { font:400 clamp(2.6rem,6vw,4rem)/1.15 var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap; }
.energy-target span { font-size:1rem;white-space:nowrap; }
.energy-calculator--simple :is(.energy-context,.energy-caution,.macro-explanation) { font-size:.9rem;line-height:1.7;margin:10px 0; }
.energy-calculator--simple .calculator-live-hint { font-size:.8rem;color:var(--muted);margin:12px 0 0; }
.macro-results { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 14px; }
.macro-results>div { border-top:1px solid var(--control-border);padding-top:12px;min-width:0; }
.macro-results dt { font-size:.9rem; }
.macro-results dd { font:400 2rem/1.3 var(--serif);font-variant-numeric:tabular-nums;color:var(--wine);margin:6px 0; }
.macro-results dd span { font:400 .85rem var(--sans); }
.macro-results small { display:block;font-size:.75rem;line-height:1.5;color:var(--muted); }
.macro-warning { border-left:3px solid var(--wine);padding-left:14px;font-size:.85rem;line-height:1.7; }
.macro-options,.macro-method { margin-top:20px; }
.energy-calculator--simple summary { cursor:pointer;color:var(--wine);font-size:.95rem;min-height:48px;padding-block:12px;line-height:1.5; }
.energy-calculator--simple summary:hover { text-decoration:underline;text-underline-offset:4px; }
.macro-options fieldset { border:0;padding:12px 0 0;margin:0;min-width:0; }
.macro-options label { display:grid;gap:8px;font-size:.9rem;font-weight:600; }
.macro-options select { width:100%;min-height:48px;padding:12px;border:1px solid var(--control-border);border-radius:0;font:400 1rem/1.4 var(--sans);background:var(--cream);color:var(--ink); }
.macro-options select[aria-invalid] { border:2px solid var(--wine); }
.energy-calculator--simple .macro-method { padding-top:10px;border-top:1px solid var(--line); }
.energy-calculator--simple .macro-method :is(p,li) { font-size:.85rem;line-height:1.7; }
.macro-method ul { padding-left:20px;list-style:disc; }
@media(max-width:600px) {
 .energy-calculator--simple .calculator-fields { grid-template-columns:1fr;gap:18px; }
 .deficit-options { grid-template-columns:1fr;gap:8px; }
 .deficit-options label { align-items:center;min-height:52px; }
 .deficit-options label>span { display:flex;justify-content:space-between;gap:16px;flex:1; }
 .deficit-options small { margin:0;font-size:.8rem; }
 .calculator-actions { flex-direction:column;align-items:stretch;gap:4px; }
 .macro-results { grid-template-columns:1fr;gap:0; }
 .macro-results>div { display:grid;grid-template-columns:1fr auto;align-items:baseline;padding-block:12px;column-gap:12px; }
 .macro-results dd { grid-column:2;grid-row:1/3;margin:0; }
 .macro-results small { grid-column:1; }
}
