/* Cinematic direction, grounded in LIPEDEMAPRO's sand and forest palette. */
:root{--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Plus Jakarta Sans',Arial,sans-serif}
.site-header{position:fixed;inset:0 0 auto;height:104px;background:transparent;border-bottom:0;padding-left:5.5%;padding-right:5.5%}.site-header.is-scrolled{height:78px;background:rgba(244,239,230,.93);border-bottom:1px solid var(--line)}.brand-symbol{width:50px;height:58px;border-radius:0;background:transparent;box-shadow:none}.brand-type{font-family:Arial,sans-serif}.brand-type em{font-family:var(--serif);font-size:18px}.site-header nav{gap:27px}.nav-contact{border-radius:100px;background:#ffffff55;backdrop-filter:blur(12px);border-color:#173f354d;padding:11px 25px;font-size:12px;letter-spacing:.035em}
.cinematic-hero{height:100svh;min-height:780px;max-height:1100px;padding:140px 6% 146px;display:flex;align-items:center;justify-content:center;background:#e8e5dc;isolation:isolate}.hero-film{position:absolute;inset:0;z-index:-3;overflow:hidden;background:var(--ivory)}.video-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:right center;opacity:0;transition:opacity 2000ms ease-in-out;will-change:opacity;filter:none}.video-layer.is-front{opacity:1}.hero-film-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(244,239,230,.92) 0%,rgba(244,239,230,.66) 22%,rgba(244,239,230,.66) 52%,rgba(244,239,230,.74) 100%)}.hero-film-overlay:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 44%,rgba(244,239,230,.55),transparent 64%);pointer-events:none}.cinematic-hero .hero-copy{width:100%;max-width:1000px;text-align:center;display:flex;flex-direction:column;align-items:center;padding:0;z-index:2}.cinematic-hero .eyebrow{display:flex;align-items:center;justify-content:center;gap:14px;font-family:var(--sans);font-size:11px;letter-spacing:.24em;font-weight:600;margin:0 0 27px}.pulse-dot{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;flex:0 0 auto}.cinematic-hero h1{font-family:var(--serif);font-size:clamp(83px,8.7vw,143px);font-weight:500;letter-spacing:-.043em;line-height:.93;margin:0;color:var(--green)}.cinematic-hero .title-line{padding:0 .1em .14em;margin:0 -.1em -.14em}.cinematic-hero .title-line>span{font-weight:500}.cinematic-hero .title-line>em{font-weight:400;letter-spacing:-.052em}.hero-accent{width:64px;height:1px;background:#173f354d;margin:31px 0 24px}.cinematic-hero .hero-description{max-width:610px;font-size:17px;line-height:1.85;font-weight:500;color:var(--green);margin:0}.hero-author{font:italic 26px/1.4 var(--serif);margin-top:15px;color:var(--green)}.hero-author:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.cinematic-hero .hero-actions{justify-content:center;gap:18px;margin-top:31px}.cinematic-hero .button{border-radius:100px;min-height:56px;padding:16px 28px;gap:16px;font-size:13px;font-weight:500;box-shadow:0 8px 25px #10352c14}.cinematic-hero .button-dark{background:var(--green);border-color:#173f3560}.cinematic-hero .button-dark:hover{background:#245542;box-shadow:0 11px 30px #10352c25}.button-glass{background:rgba(255,255,255,.68);border-color:#173f3530;color:var(--green);backdrop-filter:blur(14px)}.button-glass:hover{background:rgba(255,255,255,.9);border-color:#173f3560}.play-badge{width:25px;height:25px;border-radius:50%;background:var(--green);color:var(--ivory);display:inline-flex;justify-content:center;align-items:center}.play-badge svg{margin-left:2px}.cinematic-hero .hero-bottom{position:absolute;bottom:27px;left:5.5%;right:5.5%;padding:0;border:0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;align-items:end;z-index:3}.cinematic-hero .scroll-cue{justify-self:center;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:10px;font-weight:600;letter-spacing:.2em;line-height:1.7;text-align:center}.cinematic-hero .scroll-cue-line{height:14px;background:#173f3550}.cinematic-hero .scroll-cue-line:after{display:none}.scroll-mouse{height:25px;width:16px;border:1px solid #173f3599;border-radius:10px;display:flex;justify-content:center;padding-top:5px}.scroll-mouse i{height:6px;width:2px;display:block;background:var(--green);border-radius:4px}.cinematic-hero .hero-tour{position:static;justify-self:end;text-align:right;border:0;padding:0;margin:0;display:block}.cinematic-hero .hero-tour>span{font-family:var(--sans);font-size:10px;letter-spacing:.12em}.cinematic-hero .hero-tour>strong{font:italic 28px/1.1 var(--serif);margin:4px 0 8px}.cinematic-hero .hero-tour>span:last-child{font-size:12px;letter-spacing:0;text-underline-offset:4px}.background-toggle{display:inline-flex;justify-self:start;align-items:center;gap:9px;min-height:42px;padding:9px 13px;border:1px solid #173f3533;border-radius:100px;background:#f4efe68c;backdrop-filter:blur(10px);font-size:11px;color:var(--green);text-align:left;max-width:200px}.background-toggle:hover{background:#f4efe6dc}.background-toggle:disabled{opacity:.8;cursor:default}.pause-mark{width:9px;height:11px;border-left:2px solid currentColor;border-right:2px solid currentColor;flex-shrink:0}.background-toggle[aria-pressed=true] .pause-mark{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid currentColor;border-right:0}.motion-enabled .pulse-dot{animation:quiet-pulse 2s ease-in-out 3}.motion-enabled .scroll-mouse i{animation:scroll-dot 2s ease-in-out 3}.motion-enabled .hero-author{animation:content-in .9s var(--ease) .44s both}.motion-enabled .hero-accent{animation:content-in .9s var(--ease) .27s both}@keyframes quiet-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 #173f3520}50%{opacity:.6;box-shadow:0 0 0 6px #173f3500}}@keyframes scroll-dot{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(7px);opacity:.4}}
.section h2{font-weight:500;line-height:1.02;font-size:clamp(52px,5.8vw,92px)}.method h2{font-size:clamp(62px,6.2vw,96px)}.principles h3{font-size:32px;font-weight:500}.training-card h3{font-weight:500;font-size:clamp(45px,4.7vw,73px)}.tour-track>span{font-weight:400;font-size:clamp(66px,7.8vw,123px)}.event-place h3{font-weight:500;font-size:52px}.event-date strong{font-size:48px}.contact h2{font-size:clamp(55px,6.2vw,94px)}.footer-brand{font-family:Arial,sans-serif}.footer-brand em{font-size:31px}
/* Suzane remains a full, personal part of the story. */
.about{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:9%;row-gap:32px;align-items:start}.about-portrait{grid-column:1;grid-row:1/3;margin:0;align-self:stretch;position:relative}.about-photo-window{position:relative;width:100%;aspect-ratio:1080/1155;overflow:hidden;background:var(--light)}.about-photo-window img{position:absolute;width:100%;height:auto;top:-66.2%;left:0;max-width:none}.about-portrait figcaption{font:italic 24px/1.5 var(--serif);color:var(--light);margin-top:21px}.about-statement{grid-column:2;grid-row:1;padding-right:0}.about h2{font-size:clamp(78px,7.4vw,120px);line-height:.95;margin:24px 0 23px;font-weight:400}.about .author-signature{display:none}.about .values-line{margin-top:20px;font-size:10px;gap:11px}.about-copy{grid-column:2;grid-row:2;padding-top:0}.about-copy>.lead{font-size:33px;line-height:1.3;margin-bottom:23px}.about-copy>p:not(.lead){font-size:15px;line-height:1.9;margin-bottom:20px}
.video-dialog{position:fixed;inset:0;margin:auto;width:100vw;height:100dvh;max-width:none;max-height:none;background:rgba(8,23,20,.96);color:var(--ivory);border:0;padding:45px 5% 30px;box-shadow:none;overflow:auto}.video-dialog[open]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}.video-dialog::backdrop{background:#081714ef;backdrop-filter:blur(18px)}.video-dialog .video-close{position:fixed;right:25px;top:20px;width:48px;height:48px;color:var(--ivory);border:1px solid #f4efe650;border-radius:50%;font-size:30px;background:#ffffff08}.video-dialog-heading{text-align:center}.video-dialog-heading>span{font-size:10px;letter-spacing:.16em;color:var(--light)}.video-dialog h2{font:400 45px/1.1 var(--serif);letter-spacing:-.03em;margin:10px 0 5px;color:var(--ivory)}.video-dialog video{display:block;max-width:1160px;width:100%;max-height:65dvh;background:#000;border-radius:3px}.video-dialog #video-status{font-size:14px;line-height:1.6;margin:0;text-align:center;max-width:700px}.video-dialog #video-status:empty{display:none}.video-direct-link{font-size:12px;line-height:1.5;color:var(--light);border-bottom:1px solid #e3d1b850;padding-bottom:3px}.motion-reduced .video-layer{transition:none!important}.motion-reduced .pulse-dot,.motion-reduced .scroll-mouse i{animation:none!important}
@media(max-width:1100px){.site-header nav{gap:20px}.cinematic-hero{min-height:760px}.cinematic-hero h1{font-size:103px}.section h2{font-size:66px}.method h2{font-size:71px}.training-card h3{font-size:56px}.about{column-gap:7%}.about h2{font-size:84px}.about-copy>.lead{font-size:29px}.about-copy>p:not(.lead){font-size:15px}.about .values-line{font-size:9px;gap:7px}.event-place h3{font-size:44px}}
@media(max-width:800px){.site-header,.site-header.is-scrolled{height:82px;padding-left:6%;padding-right:6%}.brand{gap:10px;min-width:0}.brand-symbol{transform:none;width:40px;height:47px;margin:0}.brand-type{white-space:nowrap}.brand-type em{font-size:16px}.site-header nav{gap:0}.site-header nav>.nav-contact{font-size:14px}.cinematic-hero{height:100svh;min-height:740px;max-height:1000px;padding:121px 7% 141px;display:flex;align-items:center}.cinematic-hero .hero-copy{max-width:620px}.cinematic-hero .eyebrow{font-size:9px;letter-spacing:.14em;gap:10px;margin-bottom:24px}.pulse-dot{width:6px;height:6px}.cinematic-hero h1{font-size:clamp(65px,12.7vw,95px);letter-spacing:-.045em;line-height:.98;margin:0}.hero-accent{width:49px;margin:24px 0 21px}.cinematic-hero .hero-description{font-size:15px;line-height:1.85;max-width:460px}.desktop-break{display:none}.hero-author{font-size:25px;margin-top:13px}.cinematic-hero .hero-actions{gap:12px;margin-top:25px;width:100%}.cinematic-hero .button{font-size:12px;min-height:53px;padding:13px 19px;gap:11px}.cinematic-hero .hero-bottom{bottom:22px;left:6%;right:6%;gap:9px;grid-template-columns:1fr 1fr 1fr;align-items:end}.cinematic-hero .scroll-cue{font-size:8px;letter-spacing:.11em;gap:5px}.cinematic-hero .hero-tour>span:first-child{font-size:8px;letter-spacing:.07em}.cinematic-hero .hero-tour>strong{font-size:22px;margin:3px 0 6px}.cinematic-hero .hero-tour>span:last-child{font-size:10px}.background-toggle{font-size:9px;padding:8px 10px;gap:7px;min-height:37px;max-width:120px}.pause-mark{height:9px;width:8px}.hero-film-overlay{background:linear-gradient(180deg,rgba(244,239,230,.95),rgba(244,239,230,.67) 24%,rgba(244,239,230,.66) 58%,rgba(244,239,230,.74))}.section h2{font-size:53px}.method h2{font-size:62px}.training-card h3{font-size:48px}.principles h3{font-size:30px}.about{grid-template-columns:1fr;gap:29px}.about-statement{grid-column:1;grid-row:1}.about h2{font-size:88px;margin:22px 0}.about h2 br{display:none}.about h2 em{display:block}.about .values-line{font-size:10px;gap:12px;margin-top:23px}.about-portrait{grid-column:1;grid-row:2;margin-top:7px;max-width:540px;width:100%}.about-portrait figcaption{font-size:24px;margin-top:15px}.about-copy{grid-column:1;grid-row:3;border-top:0;padding-top:6px}.about-copy>.lead{font-size:32px}.about-copy>p:not(.lead){font-size:16px}.event-place h3{font-size:40px}.event-date strong{font-size:42px}.contact h2{font-size:60px}.footer-brand em{font-size:26px}.video-dialog{padding:83px 5% 30px}.video-dialog h2{font-size:36px}.video-dialog-heading>span{font-size:9px}.video-dialog .video-close{right:17px;top:17px;width:44px;height:44px}.video-dialog video{max-height:59dvh}.video-direct-link{font-size:12px}}
@media(max-width:430px){.cinematic-hero{min-height:760px;padding-top:115px;padding-bottom:144px}.cinematic-hero h1{font-size:65px}.cinematic-hero .hero-actions{flex-direction:column;gap:11px;max-width:290px}.cinematic-hero .button{width:100%;font-size:12px}.hero-author{margin-top:12px}.cinematic-hero .hero-description{font-size:14px}.cinematic-hero .eyebrow{font-size:8px;letter-spacing:.12em}.cinematic-hero .hero-bottom{grid-template-columns:1fr 1fr;align-items:end;gap:10px}.cinematic-hero .scroll-cue{grid-column:1/-1;grid-row:1;justify-self:center;margin-bottom:2px}.cinematic-hero .hero-tour{grid-column:2;grid-row:2}.background-toggle{grid-column:1;grid-row:2;max-width:145px;font-size:10px}.cinematic-hero .scroll-cue-line{height:9px}.scroll-mouse{height:22px}.hero-accent{margin-top:22px;margin-bottom:18px}.section h2{font-size:49px}.training-card h3{font-size:43px}.contact h2{font-size:54px}.brand-type{font-size:14px}.brand-type em{font-size:15px}}
@media(max-width:350px){.cinematic-hero h1{font-size:57px}.cinematic-hero .eyebrow{font-size:7px}.cinematic-hero{min-height:765px}.hero-author{font-size:23px}.section h2{font-size:45px}.event-place h3{font-size:35px}}
@media(max-height:800px) and (min-width:801px){.cinematic-hero{min-height:720px;padding-top:110px;padding-bottom:128px}.cinematic-hero h1{font-size:clamp(82px,7.6vw,110px)}.cinematic-hero .eyebrow{margin-bottom:20px}.hero-accent{margin:22px 0 17px}.cinematic-hero .hero-description{font-size:16px}.hero-author{margin-top:10px;font-size:24px}.cinematic-hero .hero-actions{margin-top:25px}.cinematic-hero .button{min-height:53px;padding-top:13px;padding-bottom:13px}.cinematic-hero .hero-bottom{bottom:22px}}
@media(prefers-reduced-motion:reduce){.video-layer{transition:none}.pulse-dot,.scroll-mouse i{animation:none!important}}

/* A restrained zoom gives the footage more presence on narrow screens. */
@media(max-width:1000px){.video-layer{object-position:center;transform:scale(1.08);transform-origin:center}}

/* Enlarge the portrait footage gently while preserving the space for the headline. */
@media(min-width:1001px){
  .video-layer{left:auto;width:auto;max-width:100%;aspect-ratio:9/16;transform:scale(1.25);transform-origin:right center;mask-image:linear-gradient(90deg,transparent,#000 20%)}
  .cinematic-hero .hero-copy{max-width:64%;margin-right:auto;align-items:flex-start;text-align:left}
  .cinematic-hero .eyebrow,.cinematic-hero .hero-actions{justify-content:flex-start}
  .hero-film-overlay{background:linear-gradient(90deg,#f4efe6 0%,#f4efe6 53%,rgba(244,239,230,.50) 64%,rgba(244,239,230,.06) 77%,transparent 100%),linear-gradient(180deg,rgba(244,239,230,.78),transparent 23%,transparent 74%,rgba(244,239,230,.82))}
  .hero-film-overlay:after{display:none}
}
