@font-face{font-family:Inter;src:url('/fonts/InterVariable.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
:root{--ivory:#F1EFE8;--white:#FFFFFF;--graphite:#2C2C2A;--graphite-2:#444441;--stone:#888780;--stone-light:#B4B2A9;--violet:#534AB7;--violet-hover:#463EA0;--violet-bright:#7F77DD;--violet-soft:#A9A3EA;--violet-tint:#EEEDFE;--indigo-deep:#26215C;--rule-light:rgba(44,44,42,.12);--rule-dark:rgba(255,255,255,.12);--font-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter","Helvetica Neue",Arial,sans-serif;--font-text:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Helvetica Neue",Arial,sans-serif;--gutter:24px;--section-space:96px;--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s48:48px;--s64:64px;--s96:96px;--s128:128px;--s160:160px}
*{box-sizing:border-box}html{scroll-padding-top:96px}body{margin:0;background:var(--ivory);color:var(--graphite);font-family:var(--font-text);font-size:clamp(17px,1.25vw,19px);line-height:1.6;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img,svg,canvas{display:block;max-width:100%}img{height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance}h1{font-size:clamp(48px,8.5vw,120px);font-weight:600;line-height:1;letter-spacing:-.035em}h2{font-size:clamp(36px,5.2vw,76px);font-weight:600;line-height:1.05;letter-spacing:-.028em;max-width:22ch}h3{font-size:clamp(22px,2.2vw,30px);font-weight:600;line-height:1.2;letter-spacing:-.015em}p{max-width:34em;color:var(--graphite-2)}p+p{margin-top:24px}h3+p{margin-top:16px}h2+p{margin-top:32px}ul{padding-left:24px}li+li{margin-top:16px}[hidden]{display:none!important}.container{width:calc(100% - var(--gutter)*2);max-width:1200px;margin-inline:auto}.text-column{max-width:720px}.section{padding-block:var(--section-space);position:relative}.lead{font-size:clamp(19px,1.7vw,24px);font-weight:400;line-height:1.45;letter-spacing:-.01em}.small{font-size:14px;line-height:1.5}.eyebrow{font-size:13px;line-height:1.2;letter-spacing:.18em;text-transform:uppercase;font-weight:500;margin-bottom:24px}.accent{font-style:normal;color:var(--violet)}[data-theme=white]{background:var(--white)}[data-theme=ivory]{background:var(--ivory)}[data-theme=dark]{background-color:var(--graphite);color:var(--white)}[data-theme=dark] p{color:var(--stone-light)}[data-theme=dark] .accent{color:var(--violet-soft)}[data-theme=dark] .eyebrow{color:var(--stone-light)}:focus-visible{outline:2px solid var(--violet);outline-offset:3px}[data-theme=dark] :focus-visible,.is-dark :focus-visible,dialog :focus-visible{outline-color:var(--violet-soft)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:8px;left:24px;padding:12px 24px;background:var(--ivory);color:var(--graphite);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:16px 30px;min-height:48px;background:var(--violet);color:var(--white);font-size:16px;line-height:1;letter-spacing:-.005em;font-weight:500;transition:background .2s,transform .2s;text-align:center}.button:hover{background:var(--violet-hover);transform:translateY(-1px)}.button:active{transform:translateY(0)}.text-link{color:var(--violet);display:inline-flex;gap:12px;align-items:center;min-height:44px;font-weight:500}.text-link:hover{text-decoration:underline;text-underline-offset:4px}[data-theme=dark] .text-link{color:var(--violet-soft)}.arrow{display:inline-block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}
@media(min-width:768px){:root{--gutter:40px;--section-space:128px}}
@media(min-width:1280px){:root{--gutter:64px;--section-space:160px}}
/* Layout and components */
.wordmark{position:relative;display:inline-flex;align-items:center;width:168px;min-height:44px;flex-shrink:0}.wordmark img{width:100%;height:auto}.logo-color{mix-blend-mode:multiply}.wordmark .logo-white{display:none}.is-dark .logo-color,[data-theme=dark] .wordmark .logo-color,dialog .logo-color{display:none}.is-dark .wordmark .logo-white,[data-theme=dark] .wordmark .logo-white,dialog .wordmark .logo-white{display:block;opacity:.92}.site-header{position:absolute;top:0;left:0;width:100%;z-index:30;color:var(--graphite);transition:background .3s,transform .3s,color .3s;border-bottom:1px solid transparent}.js .site-header{position:fixed}.site-header.is-dark{color:var(--white)}.navigation{min-height:96px;padding:16px var(--gutter);max-width:1600px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-links{display:flex;gap:24px;align-items:center}.nav-links a{display:flex;align-items:center;min-height:44px;font-size:14px}.nav-links a:hover{color:var(--violet-soft)}.nav-booking{min-height:44px;padding:14px 24px;font-size:14px}.site-header.has-scrolled{background:rgba(241,239,232,.78);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:var(--rule-light)}.site-header.has-scrolled.is-dark{background:rgba(44,44,42,.72);border-color:var(--rule-dark)}.site-header.nav-away:not(:focus-within){transform:translateY(-100%)}.menu-toggle{display:none;background:transparent;border:0;color:inherit;width:44px;height:44px;padding:12px}.menu-toggle span{display:block;height:1px;background:currentColor;width:20px;margin:6px 0}.menu-close{width:44px;height:44px;padding:0;border:0;background:none;color:var(--white);font-size:36px;line-height:1}dialog{border:0;padding:24px;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;background:var(--graphite);color:var(--white)}dialog::backdrop{background:var(--graphite)}dialog .menu-top{display:flex;align-items:center;justify-content:space-between}dialog nav{display:flex;flex-direction:column;align-items:flex-start;gap:32px;padding-top:96px;padding-bottom:112px}dialog nav>a:not(.button){font-size:clamp(30px,6vw,48px);line-height:1.2;min-height:44px}.menu-open{overflow:hidden}
.dark-gradient{isolation:isolate;overflow:clip}.dark-gradient::before{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(ellipse at 28% 25%,rgba(127,119,221,.12),transparent 65%),radial-gradient(ellipse at 82% 64%,rgba(38,33,92,.65),transparent 70%);background-size:120% 120%;background-position:0% 0%,100% 100%}.hero{position:relative;min-height:100svh;padding:42vh 0 64px;text-align:center;display:flex;align-items:center}.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.hero-content{position:relative;z-index:1}.hero-content .eyebrow{margin-bottom:24px}.hero-content h1{max-width:none}.hero-content .lead{max-width:640px;margin:24px auto 0}.hero-content .button{margin-top:24px}.hero-content .hero-note{margin:16px auto 0}.scroll-cue{position:absolute;bottom:16px;left:calc(50% - 20px);width:40px;height:40px;border:1px solid var(--rule-dark);border-radius:50%;display:grid;place-items:center;color:var(--stone-light)}.scroll-cue svg{transform:rotate(90deg)}
.recognition h2{max-width:21ch;text-align:center;margin-inline:auto}.recognition-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:96px;gap:32px}.recognition-block+.recognition-block{border-left:1px solid var(--rule-light);padding-left:32px}.recognition-block h3{max-width:19ch}.recognition-block p{margin-top:24px}.word-reveal .w{display:inline-block}.word-reveal .final-word{color:var(--violet)}
#how{padding-block:96px}.how-stage{position:relative}.how-stage h2{max-width:20ch}.chapter-layout{margin-top:64px}.chapter{padding:48px 0;border-top:1px solid var(--rule-dark)}.chapter h3{max-width:22ch}.chapter p:not(.eyebrow){max-width:34em}.chapter-canvas{width:100%;height:280px;margin-top:32px}.particle-stage,.progress-rail{display:none}.how-pinned #how{padding:0;overflow:visible}.how-pinned .how-stage{height:100svh;min-height:640px;padding-top:96px;padding-bottom:64px}.how-pinned .chapter-layout{display:grid;grid-template-columns:4fr 8fr;gap:24px;margin-top:48px}.how-pinned .chapters{position:relative;min-height:300px;z-index:2}.how-pinned .chapter{position:absolute;inset:0;opacity:0;visibility:hidden;border:0;padding:0}.how-pinned .chapter:first-child{opacity:1;visibility:visible}.how-pinned .chapter-canvas{display:none}.how-pinned .particle-stage{display:block;position:absolute;right:0;top:26%;bottom:64px;width:66.666%}.particle-stage canvas{width:100%;height:100%;position:absolute;inset:0}.particle-labels{position:absolute;inset:0}.particle-labels span{position:absolute;font-size:12px;line-height:1.2;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--stone-light)}.particle-labels span:nth-child(1){left:24%;top:18%}.particle-labels span:nth-child(2){left:67%;top:28%}.particle-labels span:nth-child(3){left:40%;top:45%}.particle-labels span:nth-child(4){left:15%;top:66%}.particle-labels span:nth-child(5){left:68%;top:70%}.particle-labels span:nth-child(6){left:55%;top:87%}.how-pinned .progress-rail{display:flex;position:absolute;right:-24px;top:50%;transform:translateY(-50%);flex-direction:column;gap:24px}.progress-rail::before{content:'';position:absolute;width:1px;top:0;bottom:0;left:3.5px;background:var(--rule-dark)}.progress-rail i{position:relative;width:8px;height:8px;background:var(--graphite);border:1px solid var(--rule-dark);border-radius:50%}.progress-rail i.active{background:var(--violet-soft);border-color:var(--violet-soft)}
.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 48px;margin-top:64px}.outcome-grid article{padding:48px 0;border-top:1px solid var(--rule-light)}.matrix-icon{width:48px;height:48px;margin-bottom:32px;color:var(--violet);fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.matrix-icon circle{fill:currentColor;stroke:none}.statement{text-align:center}.statement h2{margin:auto;max-width:21ch}.statement .lead{max-width:640px;margin-inline:auto}.interlude{height:min(80vh,760px);overflow:hidden;background:var(--ivory)}.interlude picture{display:block;height:114%;position:relative;top:-7%}.interlude img{width:100%;height:100%;object-fit:cover}.story-cards{margin-top:64px;max-width:1040px;margin-inline:auto}.story-card{background:var(--white);border:1px solid var(--rule-light);border-radius:24px;padding:56px;display:grid;grid-template-columns:55% 45%;align-items:center;min-height:60vh;margin-bottom:48px;transform-origin:50% 0}.story-copy .eyebrow{color:var(--violet);font-family:var(--font-text)}.story-copy p,.story-copy li{font-size:17px;line-height:1.6}.story-illustration{width:100%;height:auto;padding-left:32px}.art-lines{stroke:var(--stone-light);stroke-width:8;stroke-linecap:round;opacity:.45;filter:blur(1px)}.art-rules{stroke:var(--stone);stroke-width:1;opacity:.25;fill:none}.art-dots{fill:var(--violet)}.art-2 .art-lines{transform:translate(0,8px)}.art-3 .art-dots{transform:translate(16px,0)}.art-4 .art-lines{opacity:.6}.story-closing{text-align:center;margin:128px auto 0}.story-closing h2{max-width:23ch;margin:auto}.story-closing .small{margin:24px auto 0}.cards-stack .story-cards{padding-bottom:20vh}.cards-stack .story-card{position:sticky;margin-bottom:20vh}.cards-stack .story-card:nth-child(1){top:14vh}.cards-stack .story-card:nth-child(2){top:calc(14vh + 16px)}.cards-stack .story-card:nth-child(3){top:calc(14vh + 32px)}.cards-stack .story-card:nth-child(4){top:calc(14vh + 48px)}.principle-list{margin-top:64px}.principle-list>div{border-top:1px solid var(--rule-light);padding:32px 0;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:baseline}.principle-list p{margin:0}.build-grid{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:start}.build-grid .text-link{margin-top:24px}.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:96px;margin-top:64px}.fit-column ul{list-style:none;padding:0;margin-top:32px}.fit-column li{padding-left:24px;position:relative;color:var(--graphite-2)}.fit-column li::before{content:'';position:absolute;left:0;top:.7em;width:4px;height:4px;background:var(--violet);border-radius:50%}.fit-column.not-fit li::before{height:1px;width:8px;border-radius:0;background:var(--stone)}.faq-grid{display:grid;grid-template-columns:4fr 7fr;gap:96px}.faq-list{border-top:1px solid var(--rule-light)}details{border-bottom:1px solid var(--rule-light)}summary{cursor:pointer;list-style:none;position:relative;padding:24px 40px 24px 0;font-weight:500;line-height:1.45;min-height:44px}summary::-webkit-details-marker{display:none}details p{padding:0 32px 32px 0}.faq-indicator{position:absolute;right:4px;top:32px;width:16px;height:16px}.faq-indicator::before,.faq-indicator::after{content:'';position:absolute;top:7px;left:0;width:16px;height:1px;background:var(--graphite)}.faq-indicator::after{transform:rotate(90deg);transition:transform .2s}details[open] .faq-indicator::after{transform:rotate(0)}
#contact{position:relative;text-align:center;min-height:90svh;display:flex;align-items:center}#contact::before{z-index:1;pointer-events:none}.cta-background{position:absolute;inset:0;opacity:.55;z-index:0}.cta-background img{width:100%;height:100%;object-fit:cover}#contact .container{position:relative;z-index:2}.glass-card{max-width:760px;margin:auto;background:rgba(38,33,92,.85);border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:64px}.glass-card h2{margin:auto}.glass-card .lead{margin:32px auto}.glass-card .small{margin:24px auto 0}@supports(backdrop-filter:blur(24px)){.glass-card{background:rgba(255,255,255,.06);backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%)}}@supports(-webkit-backdrop-filter:blur(24px)){.glass-card{-webkit-backdrop-filter:blur(24px) saturate(120%)}}
.site-footer{padding:64px 0 48px}.footer-row{display:flex;justify-content:space-between;align-items:baseline;gap:32px;margin-top:32px}.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px}.footer-links a,.footer-links button{min-height:44px;display:inline-flex;align-items:center}.footer-links button{border:0;background:none;color:inherit;padding:0;font-size:14px}.footer-links a:hover,.footer-links button:hover{text-decoration:underline;text-underline-offset:4px}.not-found{min-height:80svh;display:grid;place-items:center;text-align:center;padding:160px 0 96px}.not-found h1{max-width:15ch;margin:auto}.not-found .lead{margin:32px auto}.not-found .text-link{margin:auto}#skill form{display:grid;gap:16px;margin-top:32px}#skill input[type=email]{background:var(--white);border:1px solid var(--stone);border-radius:12px;min-height:48px;padding:12px 16px;width:100%;color:var(--graphite)}.checkbox-label{display:flex;align-items:flex-start;gap:12px;min-height:44px;font-size:14px}.checkbox-label input{width:24px;height:24px;accent-color:var(--violet);flex-shrink:0}.consent-banner{position:fixed;z-index:60;bottom:24px;left:24px;width:min(420px,calc(100vw - 48px));padding:24px;background:var(--ivory);border:1px solid var(--rule-light);border-radius:24px;color:var(--graphite)}.consent-banner p{font-size:17px}.consent-actions{display:flex;gap:16px;margin-top:24px}.consent-actions button{flex:1}.consent-banner>a{font-size:14px;display:inline-flex;align-items:center;min-height:44px;margin-top:12px;color:var(--violet)}
@media(min-width:1024px){.navigation{display:grid;grid-template-columns:1fr auto 1fr}.nav-booking{justify-self:end}}
@media(max-width:1023px){.nav-links{gap:16px}.nav-links a{font-size:13px}.navigation .wordmark{width:144px}.outcome-grid{gap:0 32px}.faq-grid{gap:48px}.build-grid,.fit-grid{gap:48px}.how-pinned .how-stage h2{max-width:20ch;font-size:clamp(36px,5.2vw,64px)}.story-card{padding:32px}.footer-row{flex-direction:column;gap:16px}}
@media(max-width:767px){.navigation{min-height:80px;gap:16px;flex-wrap:wrap}.navigation .wordmark{order:-1;width:144px}.nav-booking{display:none}.nav-links{width:100%;justify-content:space-between;order:3}.js .nav-links{display:none}.js .menu-toggle{display:block}.hero{padding:192px 0 96px;min-height:100svh}.js .hero{padding-top:128px}.hero-content .eyebrow{max-width:24ch;margin-inline:auto;line-height:1.6}.hero-content h1{max-width:12ch;margin:auto}.hero-content .lead{margin-top:32px}.hero-content .button{margin-top:32px;padding-inline:24px}.hero-content .hero-note{max-width:27ch}.hero canvas{opacity:.45}.recognition-grid{grid-template-columns:1fr;gap:32px;margin-top:64px}.recognition-block+.recognition-block{padding:32px 0 0;border-left:0;border-top:1px solid var(--rule-light)}.recognition-block h3{max-width:24ch}.recognition-block p{margin-top:16px}.outcome-grid{grid-template-columns:1fr;margin-top:48px}.outcome-grid article{padding:32px 0}.matrix-icon{margin-bottom:24px}.interlude{height:56vh}.interlude picture{height:100%;top:0}.interlude img{object-position:50% 55%}.story-card{display:flex;flex-direction:column-reverse;gap:32px;padding:32px;min-height:0;margin-bottom:24px}.story-illustration{max-width:280px;padding:0;max-height:180px}.story-copy p,.story-copy li{font-size:17px}.story-closing{margin-top:96px}.principle-list>div{grid-template-columns:1fr;gap:16px;padding:32px 0}.build-grid,.fit-grid,.faq-grid{grid-template-columns:1fr;gap:48px}.fit-grid{margin-top:48px}.fit-column ul{margin-top:24px}.glass-card{padding:48px 32px}.glass-card h2{overflow-wrap:normal}.glass-card .button{padding-inline:20px}.site-footer .container{padding-right:0}.footer-row{align-items:flex-start}.footer-links{gap:8px 16px}.chapter-layout{margin-top:48px}.chapter-canvas{height:240px}.consent-banner{bottom:128px}.not-found{padding-top:192px}.js .not-found{padding-top:128px}}
@media(max-width:479px){.glass-card{padding:32px 24px}.glass-card h2{font-size:36px}.glass-card .button{font-size:14px;padding-inline:16px}.story-card{padding:24px}.hero-content h1{font-size:clamp(48px,12vw,64px)}}
@media(min-width:1440px){.hero{padding-top:40vh}.hero-content .lead{max-width:680px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.scroll-cue{display:none}}
/* Enhancement states never hide the unenhanced document. */
.split-word{display:inline-block}.line-mask{display:block;overflow:clip;padding-bottom:.08em;margin-bottom:-.08em}.line-inner{display:block}.motion-enabled .dark-gradient::before{animation:drift 40s ease-in-out infinite alternate;animation-play-state:paused}.motion-enabled .dark-gradient.in-view::before{animation-play-state:running}.tab-hidden .dark-gradient::before{animation-play-state:paused!important}@keyframes drift{from{background-position:0% 0%,100% 100%}to{background-position:10% 8%,90% 88%}}.static-motion .chapter{opacity:1!important;visibility:visible!important;transform:none!important}.static-motion .line-inner,.static-motion .w{opacity:1!important;filter:none!important;transform:none!important}.hero>.particle-fallback{position:absolute;top:88px;left:calc(50% - 180px);width:360px;height:34vh;object-fit:contain}.particle-fallback{object-fit:contain}.static-motion .scroll-cue{display:none}
@media(max-width:767px){.hero>.particle-fallback{width:80%;left:10%;top:20%;height:40%;opacity:.45}}
.hero-content>.eyebrow{margin-inline:auto;max-width:none}.hero-content .lead{max-width:720px}.hero-action{margin-top:24px}.hero-content .hero-action .button{margin-top:0}
@media(min-width:768px) and (max-height:800px){.hero{padding-top:calc(34vh + 80px);padding-bottom:64px}.hero-content>.eyebrow{margin-bottom:16px}.hero-content .lead{margin-top:16px}.hero-action{margin-top:16px}}
@media(max-width:767px){.hero-content>.eyebrow{max-width:24ch}.hero-action{margin-top:32px}}
.how-pinned .particle-stage{top:36%}.matrix-icon .icon-trace{opacity:.25}.matrix-icon .icon-dots{stroke-dasharray:.1 4;stroke-width:2}
@media(min-width:768px) and (max-height:800px){.hero-content>.eyebrow{margin-bottom:8px}.hero-action{margin-top:8px}.hero-content .hero-note{margin-top:8px}}
.nav-links a:hover{color:var(--violet)}.is-dark .nav-links a:hover{color:var(--violet-soft)}
/* A graphite scrim keeps the supplied small dark-surface text above AA contrast. */
.cta-background::after{content:'';position:absolute;inset:0;background:rgba(44,44,42,.65)}
/* Keep the first layout identical before and after JavaScript initializes. */
@media(max-width:767px){.hero{padding-top:128px}.not-found{padding-top:128px}}

