@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap";:root{--ink:#183535;--deep:#102b2b;--muted:#708280;--cream:#f5f3ee;--cream2:#e9e9df;--sage:#dce9df;--sage2:#bfd7c8;--mint:#edf3eb;--accent:#d18470;--line:#d2dad4;--serif:"DM Serif Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--cream);color:var(--ink);font-family:var(--sans);margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button,.book,a{cursor:pointer}.site-header{background:var(--cream);border-bottom:1px solid var(--line);z-index:20;justify-content:space-between;align-items:center;height:90px;padding:0 5.5vw;display:flex;position:relative}.wordmark{align-items:center;gap:10px;display:flex}.wordmark-symbol{border:1px solid var(--ink);width:36px;height:36px;font:20px var(--serif);letter-spacing:-.2em;border-radius:50%;place-items:center;padding-right:4px;display:grid}.wordmark-symbol span{color:var(--accent)}.wordmark b,.wordmark small{display:block}.wordmark b{letter-spacing:.14em;text-transform:uppercase;font-size:12px}.wordmark small{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin-top:4px;font-size:8px}.nav{letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:30px;font-size:10px;display:flex}.nav>a:not(.book){padding:10px 0;position:relative}.nav>a:not(.book):after{content:"";background:var(--accent);height:1px;transition:right .25s;position:absolute;bottom:1px;left:0;right:100%}.nav>a:not(.book):hover:after{right:0}.book{background:var(--accent);border:1px solid var(--accent);color:#fff;letter-spacing:.1em;text-transform:uppercase;border-radius:2px;justify-content:center;align-items:center;gap:11px;padding:15px 19px;font-size:10px;transition:transform .25s,background .25s,box-shadow .25s;display:inline-flex}.book:hover{background:var(--deep);border-color:var(--deep);transform:translateY(-2px);box-shadow:0 8px 18px #102b2b2b}.nav-book{padding:12px 15px;font-size:9px}.nav-toggle{color:var(--ink);background:0 0;border:0;padding:8px;display:none}.nav-toggle svg{width:22px}.hero{background:var(--deep);color:#fff;min-height:680px;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;border:1px solid #56766c66;border-radius:50%;width:65vw;height:65vw;position:absolute;bottom:-50vw;right:-32vw}.hero-inner{z-index:2;grid-template-columns:1fr .83fr;align-items:center;gap:8vw;width:min(1220px,100% - 112px);min-height:680px;margin:auto;display:grid;position:relative}.hero-content{padding:65px 0}.overline,.eyebrow{color:var(--sage2);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:10px;font-weight:600}.overline span{color:var(--accent);margin-right:12px}.hero h1{font:clamp(65px,8vw,112px)/.88 var(--serif);letter-spacing:-.04em;margin:27px 0 25px}.hero h1 i,.story h2 i,.process h2 i,.formation h2 i,.footer-main h2 i{color:#e5a58d;font-style:italic}.hero-description{color:#c7d8cf;max-width:480px;margin:0;font-size:15px;line-height:1.8}.hero-ctas{align-items:center;gap:28px;margin:36px 0 29px;display:flex}.hero-ctas .book{color:var(--deep);background:#e2aa92;border-color:#e2aa92}.hero-ctas .book:hover{background:#fff;border-color:#fff}.hero-link{color:var(--sage2);letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid #bfd7c8;align-items:center;gap:9px;padding-bottom:7px;font-size:10px;display:flex}.registration{color:#99b8ad;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;margin:0;font-size:9px;display:flex}.registration span{color:var(--accent)}.hero-portrait{place-items:center;height:570px;display:grid;position:relative}.portrait-frame{z-index:2;background:#c9bfb3;border-radius:185px 185px 0 0;width:min(360px,78%);height:470px;position:relative;overflow:hidden;box-shadow:23px 25px #c1d9ca}.portrait-frame img{object-fit:cover;filter:saturate(.72)contrast(.96);object-position:center;width:100%;height:100%}.hero-portrait:before,.hero-portrait:after{content:"";border:1px solid #74978c88;border-radius:50%;position:absolute;transform:rotate(25deg)}.hero-portrait:before{width:480px;height:370px;top:92px;right:-1%}.hero-portrait:after{border-color:#db9a8588;width:330px;height:455px;top:45px;right:15%}.portrait-stamp{z-index:3;background:var(--accent);align-items:center;gap:9px;padding:13px 15px;font-size:10px;line-height:1.45;display:flex;position:absolute;bottom:62px;left:1%;transform:rotate(-5deg);box-shadow:6px 6px #0002}.portrait-stamp b{font-size:13px}.appointment-note{z-index:3;width:153px;color:var(--ink);border-left:3px solid var(--accent);background:#f8f7f1;padding:14px;position:absolute;bottom:29px;right:0;box-shadow:0 8px 20px #0003}.appointment-note span{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-bottom:7px;font-size:8px;display:block}.appointment-note b{font:17px/1.05 var(--serif)}.appointment-note svg{color:var(--accent);position:absolute;top:11px;right:11px}.hero-scroll{z-index:3;color:#76938a;letter-spacing:.2em;text-transform:uppercase;writing-mode:vertical-rl;align-items:center;gap:11px;font-size:8px;display:flex;position:absolute;bottom:25px;left:5.5vw}.hero-scroll span{background:#76938a;width:1px;height:40px}.signals{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:25px;width:min(1070px,100% - 96px);margin:auto;padding:31px 0;display:grid}.signals>div{align-items:center;gap:14px;display:flex}.signals>div+div{border-left:1px solid var(--line);padding-left:27px}.signal-icon{border:1px solid var(--sage2);width:37px;height:37px;color:var(--teal);border-radius:50%;place-items:center;display:grid}.signal-icon svg{width:17px}.signals p{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.signals b{color:var(--ink);font-weight:600}.section{width:min(1070px,100% - 96px);margin:auto;padding:137px 0}.section-index{color:var(--accent);letter-spacing:.16em;align-items:center;gap:11px;font-size:10px;display:flex}.section-index span{background:var(--line);width:36px;height:1px}.eyebrow{color:var(--teal);margin-top:27px}.story-grid{grid-template-columns:1fr 1fr;gap:110px;margin-top:33px;display:grid}.story h2,.specialties h2,.process h2,.formation h2,.faq h2,.footer-main h2{font:clamp(49px,5.7vw,78px)/.93 var(--serif);letter-spacing:-.035em;margin:0}.story h2{max-width:520px}.story-copy{max-width:430px;color:var(--muted);align-self:end;font-size:14px;line-height:1.85}.story-copy p{margin:0 0 20px}.line-link{border-bottom:1px solid var(--ink);color:var(--ink);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;padding-bottom:7px;font-size:10px;display:inline-flex}.story-quote{border-left:2px solid var(--accent);width:min(490px,100%);margin:103px 0 0 auto;padding:31px 0 0 33px;position:relative}.story-quote>span{color:var(--accent);font:72px var(--serif);position:absolute;top:-34px;left:25px}.story-quote p{font:29px/1.1 var(--serif);margin:0}.story-quote p i{color:var(--teal);font-style:italic}.story-quote small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:18px;font-size:9px;display:block}.specialties{background:var(--cream2);max-width:none;padding-left:max(48px,50% - 535px);padding-right:max(48px,50% - 535px)}.specialties-head{grid-template-columns:1fr 1fr;gap:110px;display:grid}.specialties-head>div:last-child{align-self:end}.specialties-head>div:last-child p{max-width:310px;color:var(--muted);margin:0 0 6px;font-size:13px;line-height:1.75}.specialty-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin-top:69px;display:grid}.specialty{background:var(--cream2);min-height:213px;padding:24px 26px;transition:background .25s,transform .25s;position:relative}.specialty:hover{background:#f8f7f1;transform:translateY(-4px)}.specialty-number{color:var(--accent);letter-spacing:.16em;font-size:10px}.specialty h3{font:31px var(--serif);margin:38px 0 8px}.specialty p{max-width:300px;color:var(--muted);margin:0;font-size:12px;line-height:1.7}.specialty>svg{color:var(--teal);position:absolute;top:24px;right:25px}.process{background:var(--teal);color:#fff;max-width:none;padding-left:max(48px,50% - 535px);padding-right:max(48px,50% - 535px)}.process .section-index{color:#aed0c0}.process .section-index span{background:#71958a}.process .eyebrow{color:#c6ddd1}.process h2{margin-top:0}.process-top{grid-template-columns:1fr 1fr;gap:110px;display:grid}.process-intro{align-self:end}.process-intro p{color:#d0e0d7;max-width:330px;margin:0 0 26px;font-size:14px;line-height:1.8}.small-book{color:var(--deep);background:#e4ad94;border-color:#e4ad94;font-size:9px}.small-book:hover{background:#fff;border-color:#fff}.steps{grid-template-columns:repeat(3,1fr);gap:48px;margin-top:92px;display:grid}.step>span{color:#dba18e;letter-spacing:.16em;font-size:10px}.step-line{background:#70948a;height:1px;margin-top:18px;position:relative}.step-line div{background:#e0a18d;width:25%;height:2px}.step h3{font:30px var(--serif);margin:27px 0 8px}.step p{color:#d0e0d7;max-width:265px;margin:0;font-size:12px;line-height:1.75}.formation{background:var(--sage);padding:110px 0}.formation-inner{grid-template-columns:1fr 1fr;align-items:center;gap:110px;width:min(1070px,100% - 96px);margin:auto;display:grid}.formation h2{margin-top:0}.formation-lead{max-width:320px;color:var(--muted);margin:27px 0 0;font-size:13px;line-height:1.75}.timeline{border-left:1px solid #99b9a9}.timeline>div{border-bottom:1px solid #bdd2c3;grid-template-columns:52px 1fr;gap:16px;padding:17px 0 17px 27px;display:grid}.timeline>div:first-child{padding-top:0}.timeline>div:last-child{border:0;padding-bottom:0}.timeline span{color:var(--teal);letter-spacing:.16em;font-size:10px}.timeline p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.timeline b{color:var(--ink);font-weight:600}.faq-layout{grid-template-columns:.85fr 1.15fr;gap:110px;display:grid}.faq h2{margin-top:0}.faq-items{margin-top:72px}.faq-items details{border-top:1px solid var(--line);padding:22px 0}.faq-items details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;justify-content:space-between;align-items:center;font-size:14px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary b{color:var(--accent);font-size:22px;font-weight:400;transition:transform .2s}details[open] summary b{transform:rotate(45deg)}.faq-items details p{max-width:500px;color:var(--muted);margin:15px 0 0;font-size:12px;line-height:1.7}footer{background:var(--deep);color:#fff;padding:85px max(48px,50% - 535px) 22px}.footer-main{grid-template-columns:1fr 1fr;gap:110px;display:grid}.footer-mark{color:#fff}.footer-mark .wordmark-symbol{border-color:var(--sage2)}.footer-mark .wordmark-symbol span{color:#e2a28b}.footer-mark .wordmark small{color:var(--sage2)}.footer-main h2{margin-top:65px}.footer-main h2 i{color:#e3a18a}.footer-contact{padding-top:2px}.footer-overline{color:var(--sage2);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:10px}.footer-phone{font:29px var(--serif);align-items:center;gap:9px;margin:22px 0 12px;display:flex}.footer-contact>p:not(.footer-overline){color:#c0d5ca;font-size:12px;line-height:1.8}.footer-book{color:var(--deep);background:#e3a18a;border-color:#e3a18a;margin-top:24px}.footer-book:hover{background:#fff;border-color:#fff}.footer-bottom{color:#9bb8ad;letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #3c5a58;justify-content:space-between;gap:20px;margin-top:84px;padding-top:18px;font-size:9px;display:flex}.footer-bottom a:hover{color:#fff}.floating{z-index:30;background:var(--accent);color:#fff;border-radius:50%;width:56px;height:56px;display:none;position:fixed;bottom:18px;right:18px;box-shadow:0 8px 18px #102b2b66}.in{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.75,.3,1);transform:translateY(18px)}.in.show{opacity:1;transform:none}.in:nth-child(2){transition-delay:80ms}.in:nth-child(3){transition-delay:.16s}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (width<=800px){.site-header{height:76px;padding:0 20px}.nav-toggle{display:block}.nav{background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:19px;padding:23px 20px;display:none;position:absolute;top:76px;left:0;right:0;box-shadow:0 12px 25px #102b2b12}.nav.is-open{display:flex}.nav-book{width:auto}.hero-inner{flex-direction:column;align-items:stretch;gap:0;width:calc(100% - 40px);min-height:0;display:flex}.hero-content{padding:72px 0 30px}.hero h1{font-size:56px}.hero-ctas{flex-direction:column;align-items:flex-start;gap:22px}.hero-ctas .book{width:100%}.hero-portrait{height:425px}.portrait-frame{width:263px;height:350px}.hero-portrait:before{width:350px;height:280px;top:50px}.hero-portrait:after{width:265px;height:350px;top:28px;right:14%}.portrait-stamp{bottom:39px;left:0}.appointment-note{bottom:14px}.hero-scroll{display:none}.signals{grid-template-columns:1fr;gap:17px;width:calc(100% - 40px);padding:23px 0}.signals>div+div{border-left:0;border-top:1px solid var(--line);padding:17px 0 0}.section{width:calc(100% - 40px);padding:93px 0}.story-grid,.specialties-head,.process-top,.formation-inner,.faq-layout{display:block}.story-copy{margin-top:32px}.story-quote{margin-top:72px}.specialties{width:100%;padding-left:20px;padding-right:20px}.specialties-head>div:last-child p{margin-top:28px}.specialty-grid{grid-template-columns:1fr;margin-top:45px}.specialty{min-height:190px}.process{width:100%;padding-left:20px;padding-right:20px}.process-intro{margin-top:31px}.steps{grid-template-columns:1fr;gap:43px;margin-top:65px}.step p{max-width:100%}.formation{padding:83px 0}.formation-inner{width:calc(100% - 40px)}.timeline{margin-top:47px}.faq-items{margin-top:46px}.footer-main{display:block}.footer-contact{margin-top:58px}.footer-bottom{flex-wrap:wrap;margin-top:62px;line-height:1.8}.floating{justify-content:center;align-items:center;display:inline-flex}}@media (width<=430px){.hero h1{font-size:50px}.portrait-frame{width:240px;height:325px}.hero-portrait{height:395px}.hero-portrait:before{width:300px;height:250px}.hero-portrait:after{width:230px;height:325px}.portrait-stamp{font-size:9px}.appointment-note{width:140px}.footer-bottom span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.in{opacity:1;transition:none;transform:none}.book,.specialty{transition:none}}
