:root{--bg:#f8f5ef;--fg:#171717;--muted:#6d6c69;--line:#c7c4be;--field:#ffffff30;--inverse:#fff;--ink:#151515;color-scheme:light;font-family:Arial,Helvetica,sans-serif}html[data-theme=dark]{--bg:#141414;--fg:#f1f0eb;--muted:#a7a6a1;--line:#454541;--field:#ffffff05;--inverse:#171717;--ink:#f1f0eb;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--fg);transition:background-color .6s,color .6s}a{color:inherit;text-underline-offset:4px}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--fg);outline-offset:5px}button{border:0;background:none}button:disabled{opacity:.45}.header{max-width:1440px;margin:auto;padding:36px 5% 18px;display:flex;justify-content:space-between;position:relative;z-index:10}.brand{text-decoration:none;font-size:clamp(44px,6vw,92px);font-weight:900;line-height:.83;letter-spacing:-.065em}.brand span{display:block;font-size:clamp(13px,1.4vw,19px);font-weight:400;line-height:1.25;letter-spacing:-.025em;max-width:240px;margin-top:12px}.settings{display:flex;gap:20px;align-items:flex-start;padding-top:5px}.choices>div{display:flex;gap:7px;align-items:center;white-space:nowrap;font-size:15px;height:28px}.choices button{padding:0;min-height:28px;color:var(--muted)}.choices button[aria-pressed=true]{font-weight:700;color:var(--fg)}.choices span{color:var(--muted)}.menu-toggle{font-size:44px;line-height:54px;transform:scaleX(1.1);padding:0;width:40px;height:56px;font-family:Arial,sans-serif}.choices>div:nth-child(2){animation:breathe 4s ease-in-out 3}.interacted .choices>div:nth-child(2){animation:none}@keyframes breathe{50%{opacity:.62}}#menu{position:absolute;right:5%;top:112px;padding:26px 30px;background:var(--bg);border:1px solid var(--line);min-width:230px;box-shadow:0 12px 30px #0002}#menu a{display:block;padding:12px 0;text-decoration:none;font-size:20px}#menu a:hover{text-decoration:underline}.hero{position:relative;max-width:1440px;margin:0 auto}.media{position:relative;height:min(74vw,780px);min-height:400px;overflow:hidden;touch-action:pan-y;background:var(--bg)}.track{display:flex;width:100%;height:100%;transition:transform .75s cubic-bezier(.25,.75,.25,1);will-change:transform}.slide{flex:0 0 100%;width:100%;height:100%;position:relative}.slide img,.slide video{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.media:before,.media:after{content:'';position:absolute;left:0;right:0;z-index:2;pointer-events:none;height:18%}.media:before{top:0;background:linear-gradient(var(--bg),transparent)}.media:after{bottom:0;background:linear-gradient(transparent,var(--bg));height:25%}.arrow{position:absolute;z-index:4;top:47%;width:44px;height:44px;border-radius:50%;background:#14141478;color:white;font-size:40px;line-height:38px;padding:0 0 5px;display:grid;place-content:center}.prev{left:3%}.next{right:3%}.dots{display:flex;justify-content:center;gap:4px;position:absolute;bottom:3%;left:0;right:0;z-index:4}.dots button{width:25px;height:32px;padding:9px}.dots button:after{content:'';display:block;width:7px;height:7px;border-radius:50%;background:var(--fg);opacity:.3}.dots button[aria-current=true]:after{opacity:1}.mood{position:absolute;z-index:5;top:47%;left:50%;transform:translate(-50%,-50%);padding:13px 20px;background:#16161690;color:white;font-size:22px;letter-spacing:.02em;pointer-events:none;opacity:0;transition:opacity .4s;white-space:nowrap}.mood.show{opacity:1}.playback{position:absolute;z-index:4;bottom:12%;right:4%;background:#17171790;color:white;padding:8px 14px;border-radius:2px;font-size:12px}.hero-copy{padding:0 5% 60px;max-width:1000px;margin:auto}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5.5vw,76px);line-height:.99;letter-spacing:-.055em;margin-bottom:16px}p{line-height:1.55}.hero-copy>p{max-width:620px;font-size:18px;line-height:1.45;margin-bottom:30px}.cta-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:20px}.cta-row>span{font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;text-decoration:none;background:var(--ink);color:var(--inverse);padding:19px 26px;font-weight:700;border:1px solid var(--ink);font-size:16px;min-height:52px}.button:hover{opacity:.82}.section{max-width:1200px;margin:0 auto;padding:80px 5%}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:11px;color:var(--muted);margin-bottom:16px}.section h2,.article h1{font-size:clamp(38px,5vw,65px);line-height:1.02;letter-spacing:-.055em;margin-bottom:26px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.section-head span{font-size:13px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;align-items:start}.gallery button{padding:0;display:block;overflow:hidden;width:100%;text-align:left}.gallery img{width:100%;height:auto;display:block;transition:transform .7s}.gallery button:hover img{transform:scale(1.015)}.gallery button:nth-child(3n+1){grid-column:1/-1;width:80%;margin:0 auto}.gallery button:nth-child(3n){margin-top:20%}.gallery-caption{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:9px;letter-spacing:.07em}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.portrait{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;object-position:42%}.about-copy p{font-size:17px;line-height:1.65}.socials{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;font-size:15px}.socials a{text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:5px}.backtop{display:block;text-align:center;font-size:13px;text-decoration:none;padding:18px;margin:0 auto 35px;width:max-content}.collaborate{max-width:900px;border-top:1px solid var(--line)}.intro{font-size:19px;max-width:640px}.small{font-size:14px;color:var(--muted)}.terms{padding:25px 0;border-bottom:1px solid var(--line)}.terms h3,.apply h3{font-size:30px;letter-spacing:-.04em;margin:0 0 14px}.terms p{font-size:17px;margin-bottom:12px}.steps{padding:0;list-style:none;counter-reset:steps}.steps li{display:grid;grid-template-columns:50px 1fr;gap:15px;padding:24px 0;border-bottom:1px solid var(--line);counter-increment:steps}.steps li:before{content:'0' counter(steps);font-size:34px;font-weight:700;letter-spacing:-.04em}.steps h4{font-size:21px;letter-spacing:-.035em;margin:0 0 6px}.steps p{margin:0;font-size:16px}.steps a{font-weight:500;text-decoration-thickness:1px}.apply{padding-top:45px}form{display:grid;gap:18px}label{display:grid;gap:8px;font-size:15px}input,textarea{width:100%;background:var(--field);border:1px solid var(--line);border-radius:0;padding:14px;color:var(--fg);min-height:48px}textarea{min-height:100px;resize:vertical}.check{display:flex;align-items:center;gap:10px}.check input{width:22px;min-height:22px;accent-color:var(--fg)}form .button{width:100%}.handoff{padding:20px;border:1px solid var(--line);margin-top:24px}.handoff p{margin-bottom:14px}.handoff .button{margin:8px 0}.notice{font-size:13px;color:var(--muted);line-height:1.5}.article{max-width:790px;margin:auto;padding:50px 6% 100px}.article .backlink{display:inline-block;margin-bottom:45px;font-size:14px}.article h2{font-size:28px;letter-spacing:-.03em;margin:35px 0 16px}.article p{font-size:18px;line-height:1.75}.article .button{margin-top:25px}footer{border-top:1px solid var(--line);padding:40px 5%;max-width:1440px;margin:auto}.footerline{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;flex-wrap:wrap}.footerline strong{font-size:20px;letter-spacing:-.04em}.footerline div{display:flex;gap:20px}.footerline a{text-decoration:none}.skip{position:absolute;left:10px;top:-100px;background:var(--bg);padding:15px;z-index:200}.skip:focus{top:10px}dialog{padding:0;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;border:0;background:#111;color:white}dialog::backdrop{background:#111}dialog[open]{display:flex;align-items:center;justify-content:center}dialog img{width:100%;height:90%;object-fit:contain}dialog button{position:absolute;z-index:3;background:#111a;color:white;font-size:42px;width:52px;height:52px;border-radius:50%}.viewer-close{right:15px;top:15px}.viewer-prev{left:12px;top:48%}.viewer-next{right:12px;top:48%}.viewer-count{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);font-size:13px}[hidden]{display:none!important}@media(min-width:800px){.hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;padding:0 5%}.media{height:730px;min-height:0}.hero-copy{padding:0 0 0 50px}.hero h1{font-size:clamp(48px,5.2vw,78px)}.hero .cta-row{flex-wrap:wrap}.gallery{gap:40px}.gallery button:nth-child(3n+1){width:68%}}@media(max-width:600px){.header{padding:23px 6% 0}.brand{font-size:48px;letter-spacing:-.065em;max-width:54%}.brand span{font-size:14px;max-width:185px;margin-top:9px}.settings{gap:10px;padding-top:7px}.choices>div{font-size:12px;height:23px;gap:5px}.choices button{min-height:23px}.menu-toggle{width:28px;height:46px;font-size:34px;line-height:44px}.media{height:132vw;max-height:650px;min-height:430px;margin-top:-4px}.hero-copy{padding:0 6% 50px}.hero h1{font-size:43px;margin-bottom:12px}.hero-copy>p{font-size:16px;margin-bottom:22px}.cta-row{gap:10px;padding-top:17px}.cta-row>span{font-size:13px}.button{padding:17px 18px;font-size:14px}.arrow{width:40px;height:40px;font-size:36px}.section{padding:58px 6%}.section h2{font-size:40px}.gallery{gap:14px}.gallery button:nth-child(3n+1){width:100%}.about-grid{grid-template-columns:1fr;gap:30px}.portrait{aspect-ratio:1/1}.about-copy p{font-size:16px}.terms p{font-size:16px}.steps li{grid-template-columns:40px 1fr;gap:12px}.steps h4{font-size:19px}.steps p{font-size:15px}.article{padding:40px 6% 65px}.article h1{font-size:44px}.article p{font-size:16px}.footerline{align-items:flex-start;flex-direction:column}.section-head{align-items:start}.section-head span{max-width:100px;text-align:right;font-size:11px}.playback{bottom:12%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Persistent navigation and the revised landing structure. */
.menu-toggle{position:fixed;top:41px;right:max(5%,calc((100vw - 1440px)/2 + 72px));z-index:102;background:var(--bg);box-shadow:0 0 0 8px var(--bg)}
.settings{padding-right:60px}#menu{position:fixed;top:112px;right:5%;z-index:101}.hero-copy .flower-line{font-size:18px;font-style:italic;margin:0 0 18px;color:var(--muted)}
.session-examples{margin-top:24px}.session-links{display:flex;gap:24px;flex-wrap:wrap;margin:16px 0}.session-links a{font-weight:700}.dots{gap:0}.dots button{width:22px;padding:7px}.slide video{object-fit:cover;object-position:center}.media{background:var(--bg)}
@media(max-width:600px){.menu-toggle{top:30px;right:6%;height:46px}.settings{padding-right:38px}#menu{top:90px;right:6%}.hero-copy .flower-line{font-size:16px}.dots button{width:20px;padding:6px}}

/* The fixed menu is only three strokes, aligned with both control rows. */
.menu-toggle{background:transparent;box-shadow:none;transform:none;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;padding:0;width:32px;height:56px;line-height:normal}
.menu-toggle span{display:block;height:2px;flex:0 0 2px;width:100%;background:currentColor;pointer-events:none}
.hero-copy .flower-line{margin-bottom:28px}
@media(max-width:600px){.menu-toggle{width:28px;height:46px;top:30px}.hero-copy .flower-line{margin-bottom:24px}}

/* More compact square menu and higher hero framing. */
.menu-toggle{width:36px;height:36px;top:48px}
.hero{margin-top:-34px}
.cta-row>span{font-size:19px;font-weight:600}
@media(max-width:600px){.menu-toggle{width:32px;height:32px;top:37px}.hero{margin-top:-43px}.cta-row>span{font-size:16px}.cta-row{flex-wrap:wrap;justify-content:flex-start;gap:12px 18px}.hero .media{margin-top:0}}

/* Annotation refinements: typography, breathing room and emphasis. */
:root{font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
body{-webkit-font-smoothing:antialiased}
.brand{letter-spacing:-.025em;line-height:.89}
.brand span{font-size:clamp(16px,1.5vw,20px);line-height:1.35;letter-spacing:-.01em;margin-top:12px}
h1,.section h2,.article h1{letter-spacing:-.035em;line-height:1.06;text-wrap:balance}
.terms h3,.apply h3{letter-spacing:-.025em;line-height:1.15}
p{text-wrap:pretty}
.hero .cta-row{justify-content:center;align-items:center;flex-wrap:wrap;gap:16px 22px;text-align:center}
.hero .cta-row>span,.hero .cta-row .button{font-size:17px;font-weight:600;line-height:1.3;letter-spacing:0}
.settings{padding-right:80px}
.portrait{width:80%;justify-self:center}
.socials{justify-content:center;gap:32px;margin-top:32px;padding:12px 0}
.socials a{font-size:18px;font-weight:600;line-height:1.4;padding:10px 2px;border-bottom:1px solid var(--muted)}
@media(max-width:600px){.brand{font-size:clamp(38px,10vw,52px);letter-spacing:-.025em;line-height:.89}.brand span{font-size:16px;line-height:1.3;max-width:200px}.settings{padding-right:54px}.hero .cta-row{justify-content:center;gap:14px}.hero .cta-row>span,.hero .cta-row .button{font-size:16px;font-weight:600}.socials{gap:32px}.portrait{width:80%}.section h2{line-height:1.08}}
@media(max-width:380px){.settings{padding-right:48px}.choices>div{font-size:11px;gap:4px}.brand span{font-size:15px}.hero .cta-row{flex-direction:column}.hero .cta-row .button{min-width:190px}}
/* Align the hero to the measured wordmark and headline, not a viewport guess. */
.wordmark{display:block;font:inherit;letter-spacing:inherit;line-height:inherit}
.hero{margin-top:calc(-1 * var(--header-overlap,43px))}
.slide img,.slide video{object-position:center top}
@media(max-width:799px){
.hero .media{height:calc(74vw + var(--headline-overlap,100px));min-height:500px}
.hero .hero-copy{position:relative;z-index:3;margin-top:calc(-1 * var(--headline-overlap,100px))}
.hero .media:after{height:27%;background:linear-gradient(transparent,var(--bg))}
.hero .dots{bottom:calc(var(--headline-overlap,100px) + 3%)}
}
@media(max-width:600px){
.hero .media{height:calc(132vw + var(--headline-overlap,100px));max-height:calc(650px + var(--headline-overlap,100px));min-height:530px}
}
