@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--sc-canvas:#102d23;--sc-surface:#183d30;--sc-ink:#f2f6ef;--sc-ink-soft:#b6cdbf;--sc-accent:#29ab87;--sc-accent-ink:#102d23;--sc-font-display:'Space Grotesk','Arial Black',Arial,sans-serif;--sc-font-text:'Space Grotesk',Arial,sans-serif;--gutter:clamp(24px,5vw,80px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;overflow-x:hidden;color:var(--sc-ink);font-family:var(--sc-font-text);font-weight:500}a{color:inherit;text-underline-offset:6px}button{font:inherit}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--sc-accent);outline-offset:7px}a:active,button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}.skip{position:fixed;top:12px;left:20px;z-index:100;background:var(--sc-ink);color:var(--sc-canvas);padding:10px;transform:translateY(-160%)}.skip:focus{transform:none}.hero{padding:32px var(--gutter) 48px;min-height:100svh;display:flex;flex-direction:column;position:relative}.masthead{display:flex;justify-content:space-between;align-items:center;gap:24px}.wordmark{font-family:var(--sc-font-display);font-size:clamp(32px,5.5vw,84px);font-weight:900;letter-spacing:-.065em;line-height:1;text-decoration:none;display:flex;align-items:center;gap:12px}.brand-dot{font-size:.65em;color:var(--sc-accent);letter-spacing:0}.header-tools{display:flex;align-items:center;gap:30px}.header-tools>span{font-size:10px;letter-spacing:1.6px}.header-tools button{border:1px solid #90b09b;color:var(--sc-ink);background:none;min-height:44px;min-width:44px;cursor:pointer}.hero-main{margin:auto 0;padding:60px 0 28px}.audience{font-size:14px;margin:0 0 32px;color:var(--sc-ink-soft)}h1,h2,h3,p{margin-top:0}h1{font-family:var(--sc-font-display);font-size:clamp(62px,11.3vw,180px);line-height:.91;font-weight:800;letter-spacing:-.065em;margin:0 0 40px}h1>span{white-space:nowrap}.accent{color:var(--sc-accent)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;max-width:1060px}.hero-bottom p{font-size:clamp(16px,1.6vw,22px);line-height:1.5;margin:0}.primary-link{font-size:18px;color:var(--sc-accent);white-space:nowrap;padding:12px 0}.hero-line{height:1px;background:#486e5d;width:100%}.recognition{padding:96px var(--gutter) 112px;display:grid;grid-template-columns:1.05fr 1fr;gap:8vw}.eyebrow{font-size:10px;letter-spacing:1.5px;color:var(--sc-ink-soft);margin-bottom:24px}h2{font-family:var(--sc-font-display);font-size:clamp(30px,4.5vw,68px);line-height:1.08;font-weight:500;letter-spacing:-.05em;margin-bottom:24px}p{line-height:1.6}.concerns{padding-top:48px}.concern{border-top:1px solid #486e5d;padding:24px 0 12px}.concern h3{font-family:var(--sc-font-display);font-size:25px;font-weight:500;letter-spacing:-.03em;margin-bottom:12px}.concern p{color:var(--sc-ink-soft);font-size:15px;max-width:45ch}.room-stage{padding:5vh var(--gutter);display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center;--release:clamp(0,calc((var(--sc-p,0) - .05) * 1.4),1)}.room-heading h2{font-size:clamp(40px,6vw,88px);max-width:8em}.room-heading p{color:var(--sc-ink-soft);max-width:26ch;font-size:17px}.agenda{width:100%;max-width:650px}.agenda-top{display:flex;justify-content:space-between;border-top:1px solid #486e5d;padding:18px 0;font-size:10px;letter-spacing:2px;align-items:center}.agenda-symbol{color:var(--sc-accent);font-size:30px}.agenda-body{height:330px;position:relative;display:flex;align-items:center;justify-content:center}.agenda-meeting{position:absolute;display:flex;gap:25px;align-items:center;width:100%;padding:22px 0;border-top:1px solid #486e5d;color:var(--sc-ink-soft);font-size:17px}.agenda-meeting>span:first-child{font-size:11px}.meeting-top{transform:translateY(calc(-30px - var(--release) * 95px));opacity:calc(1 - var(--release) * .6)}.meeting-bottom{transform:translateY(calc(30px + var(--release) * 95px));opacity:calc(1 - var(--release) * .6)}.agenda-you{display:flex;align-items:center;gap:25px;color:var(--sc-accent);opacity:var(--release);transform:scale(calc(.82 + var(--release) * .18))}.agenda-you strong{font-family:var(--sc-font-display);font-size:clamp(65px,8.7vw,126px);line-height:1;letter-spacing:-.07em;font-weight:700}.you-cross{font-size:65px}.agenda-note{font-size:10px;max-width:46ch;color:var(--sc-ink-soft);border-top:1px solid #486e5d;padding-top:16px}.method{padding:100px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.method-lead{font-size:23px;max-width:32ch;line-height:1.5;margin-bottom:40px}dl{margin:0}dl>div{display:grid;grid-template-columns:1fr 1.5fr;gap:24px;padding:24px 0;border-top:1px solid #567c69}dt{font-size:14px}dd{margin:0;font-size:14px;color:var(--sc-ink-soft);line-height:1.7}.close{padding:96px var(--gutter) 32px}.close-top{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw}.closing-mark{font-family:var(--sc-font-display);font-weight:900;font-size:clamp(180px,27vw,420px);line-height:.8;letter-spacing:-.1em;color:var(--sc-accent);transform:none;align-self:start;pointer-events:none}.booking-copy{padding-top:8px}.booking-copy h2{font-size:clamp(29px,3.5vw,52px)}#booking-status{max-width:48ch;font-size:16px;color:var(--sc-ink-soft)}.booking-link{display:inline-block;font-size:24px;margin:12px 0;color:var(--sc-accent)}.booking-note{font-size:11px;color:var(--sc-ink-soft);max-width:48ch}.questions{margin:72px 0 64px auto;max-width:740px}details{padding:20px 0;border-top:1px solid #486e5d}summary{cursor:pointer;font-size:15px;line-height:1.6}details p{font-size:14px;color:var(--sc-ink-soft);margin:18px 0 0;max-width:60ch}footer{display:flex;gap:24px;justify-content:space-between;align-items:center;border-top:1px solid #486e5d;padding-top:24px;font-size:11px;color:var(--sc-ink-soft)}.footer-brand{font-family:var(--sc-font-display);font-size:24px;font-weight:800;letter-spacing:-1px;text-decoration:none;color:var(--sc-ink)}.noscript-note{padding:24px var(--gutter);font-size:14px}[hidden]{display:none!important}@media(hover:hover) and (pointer:fine){a:hover{color:var(--sc-accent)}.header-tools button:hover{background:var(--sc-ink);color:var(--sc-canvas)}}@media(min-width:1600px){.hero,.recognition,.room-stage,.method,.close{padding-left:max(var(--gutter),calc((100vw - 1500px)/2));padding-right:max(var(--gutter),calc((100vw - 1500px)/2))}}@media(max-width:760px){.hero{padding-top:24px;min-height:92svh}.header-tools>span{display:none}.hero-main{padding:56px 0 40px}h1{font-size:11.1vw;line-height:.98;letter-spacing:-.065em}:lang(fr) h1{font-size:10.5vw}.audience{font-size:12px;margin-bottom:24px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:20px}.hero-bottom p{font-size:18px}.recognition{grid-template-columns:1fr;gap:16px;padding-top:60px;padding-bottom:64px}.recognition h2{font-size:36px}.concerns{padding-top:12px}.room-stage{grid-template-columns:1fr;gap:12px;padding-top:32px;padding-bottom:28px;align-content:center}.room-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.room-heading h2{font-size:33px;min-width:50%;margin-bottom:14px}.room-heading p{font-size:12px;max-width:18ch}.agenda-body{height:240px}.agenda-top{padding:12px 0;font-size:9px}.agenda-symbol{font-size:22px}.agenda-meeting{font-size:14px;padding:16px 0}.meeting-top{transform:translateY(calc(-24px - var(--release) * 65px))}.meeting-bottom{transform:translateY(calc(24px + var(--release) * 65px))}.agenda-you strong{font-size:76px}.you-cross{font-size:44px}.agenda-note{font-size:9px;padding-top:10px}.method{grid-template-columns:1fr;gap:16px;padding-top:64px;padding-bottom:64px}.method h2{font-size:36px}.method-lead{font-size:20px}dl>div{gap:20px}.close{padding-top:64px}.close-top{grid-template-columns:1fr;gap:32px}.closing-mark{font-size:130px;line-height:.8;justify-self:start;transform:none}.booking-copy h2{font-size:32px}.questions{margin-top:48px;margin-bottom:44px}footer{flex-wrap:wrap;gap:20px}footer>a:last-child{margin-left:auto}}@media(max-width:380px){.room-heading{display:block}.room-heading h2{font-size:30px;margin-bottom:10px}.room-heading p{max-width:none;margin-bottom:8px}.agenda-body{height:210px}.agenda-you strong{font-size:64px}.hero-main{padding-top:40px}.wordmark{font-size:34px}.audience{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.room-stage{--release:1!important}.closing-mark{transform:none}.hero-line{transform:none}}
/* Optical separation at poster scale, without loosening letter kerning. */
h1{word-spacing:.08em}
.agenda-meeting{opacity:1}
html:not(.sc-ready) .room-stage{--release:1}
/* Conversion path: one consistent action, kept within reach after the hero. */
html{scroll-padding-top:100px}.audience{max-width:64ch;font-size:12px;line-height:1.7;letter-spacing:.075em}.primary-link{background:var(--sc-accent);color:var(--sc-accent-ink);text-decoration:none;padding:18px 26px;font-weight:600;min-height:54px}.booking-dock{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px var(--gutter);background:#102d23;border-bottom:1px solid #486e5d}.booking-dock>span{font-size:13px;color:var(--sc-ink-soft)}.dock-link{display:inline-block;white-space:nowrap;color:var(--sc-accent-ink);background:var(--sc-accent);padding:12px 18px;font-size:14px;font-weight:600;text-decoration:none;min-height:44px}.testimonials{padding:80px var(--gutter);background:#183d30}.testimonials-heading{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.testimonials-heading p{max-width:42ch;font-size:13px;color:var(--sc-ink-soft)}.testimonial-list{margin:40px 0}.testimonial{display:grid;grid-template-columns:1fr 2fr;gap:8vw;border-top:1px solid #567c69;padding:32px 0;margin:0}.testimonial blockquote{grid-column:2;grid-row:1;margin:0;font-size:clamp(22px,2.4vw,36px);font-family:var(--sc-font-display);line-height:1.45;letter-spacing:-.025em;overflow-wrap:anywhere;white-space:pre-line}.testimonial figcaption{grid-column:1;grid-row:1;line-height:1.7;overflow-wrap:anywhere}.testimonial-name{display:block;font-weight:600}.testimonial-role,.testimonial-language{display:block;color:var(--sc-ink-soft);font-size:12px}.testimonial-language{margin-top:12px;font-style:italic}.text-link{display:inline-block;padding:12px 0;color:var(--sc-accent)}.admin-link{opacity:.85}footer{flex-wrap:wrap}@media(hover:hover) and (pointer:fine){.primary-link:hover,.dock-link:hover{background:#5cc6a5;color:var(--sc-accent-ink)}}@media(max-width:760px){html{scroll-padding-top:90px}.audience{font-size:10px;max-width:34ch;line-height:1.8}.booking-dock{gap:12px;padding:10px var(--gutter)}.booking-dock>span{max-width:16ch;font-size:11px}.dock-link{font-size:13px;padding:12px 16px}.testimonials{padding:60px var(--gutter)}.testimonials-heading{grid-template-columns:1fr;gap:0}.testimonials-heading h2{font-size:36px}.testimonial{grid-template-columns:1fr;gap:20px;padding:24px 0}.testimonial blockquote{grid-column:1;grid-row:1;font-size:24px}.testimonial figcaption{grid-column:1;grid-row:2}.hero-bottom{gap:24px}.primary-link{font-size:16px;padding:16px 24px}footer>a:last-child{margin-left:0}}

/* Cantaloupe is a restrained secondary accent; electric blue carries the action. */
:root{--xr-pumpkin:#f58a35}.brand-dot,.agenda-symbol,.you-cross{color:var(--xr-pumpkin)}a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--xr-pumpkin)}
/* Original lightweight artwork: scroll-led mobility traces, not a medical diagram. */
.hero{isolation:isolate;overflow:hidden}
.hero-motion{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;mask-image:linear-gradient(90deg,transparent 30%,#000 85%)}
.motion-x{position:absolute;right:-5%;top:-5%;width:52%;height:115%;fill:none;stroke:#29ab87;stroke-width:76;opacity:.055;transform:translateY(calc(var(--sc-p,0) * -32px)) rotate(-8deg)}
.motion-lines{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#29ab87;stroke-width:1.2;vector-effect:non-scaling-stroke}
.motion-lines-back{opacity:.23;transform:translateY(calc(var(--sc-p,0) * -36px));transform-origin:center}
.motion-lines-front{opacity:.3;transform:translateY(calc(var(--sc-p,0) * 24px))}
.motion-anchor{fill:#f58a35;stroke:none;opacity:.65}
@media(max-width:760px){.hero-motion{mask-image:linear-gradient(90deg,transparent 15%,#000 100%)}.motion-x{right:-22%;top:12%;width:90%;height:90%;opacity:.045}.motion-lines{width:175%;left:-48%;opacity:.8}}
@media(prefers-reduced-motion:reduce){.motion-x{transform:rotate(-8deg)}.motion-lines-back,.motion-lines-front{transform:none}}
/* Cantaloupe movement traces; electric blue remains the primary brand/action color. */
.motion-lines{stroke:var(--xr-pumpkin)}
.motion-x{stroke:var(--xr-pumpkin)}
/* Give the cantaloupe X more presence without overpowering the headline. */
.motion-x{opacity:.16;stroke-width:88}
@media(max-width:760px){.motion-x{opacity:.13}}
/* Refined action surfaces. The fill stays readable, with depth carried by its edge. */
.primary-link,.dock-link{border:1px solid #75cdb1;border-radius:6px;background:linear-gradient(180deg,#43b995 0%,#29ab87 100%);box-shadow:inset 0 1px 0 #ffffff35,0 4px 12px #03150d38;font-weight:600;letter-spacing:.005em;line-height:1.25;transition:transform 160ms cubic-bezier(.23,1,.32,1),box-shadow 160ms cubic-bezier(.23,1,.32,1);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px}
.primary-link{padding:18px 28px}.dock-link{padding:12px 20px}
.primary-link:focus-visible,.dock-link:focus-visible{outline:2px solid #f58a35;outline-offset:5px}
.primary-link:active,.dock-link:active{transform:translateY(1px);box-shadow:inset 0 1px 2px #092c1f24,0 2px 5px #03150d25}
@media(hover:hover) and (pointer:fine){.primary-link:hover,.dock-link:hover{background:linear-gradient(180deg,#62c8a7 0%,#36b590 100%);color:#102d23;transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff45,0 8px 18px #03150d50}.primary-link:active,.dock-link:active{transform:translateY(1px)}}
@media(prefers-reduced-motion:reduce){.primary-link,.dock-link{transition:none}.primary-link:hover,.dock-link:hover,.primary-link:active,.dock-link:active{transform:none}}

/* Longer posture slogan keeps each intentional line within the hero. */
h1.posture-slogan{font-size:clamp(34px,6.4vw,102px);line-height:1;letter-spacing:-.045em}:lang(fr) h1.posture-slogan{font-size:clamp(32px,6.4vw,102px)}@media(max-width:760px){h1.posture-slogan,:lang(fr) h1.posture-slogan{font-size:7vw;line-height:1.08;letter-spacing:-.04em}}

/* Neo-brutalist typography: heavy grotesk, compact spacing, no ornamental type. */
h1.posture-slogan,:lang(fr) h1.posture-slogan{font-weight:700;letter-spacing:-.055em}h2,h3,.service-title{font-weight:700}.wordmark,.footer-brand{font-weight:700}
