@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@300;400;500&display=swap');
:root{--font-serif:'Cormorant Garamond',Georgia,serif;--font-sans:Inter,sans-serif}html{scroll-behavior:smooth}body{background:#F5F4F1}header{background:#F5F4F1f2!important;border-bottom:1px solid #b7a48e40!important}header img{max-width:160px}p{line-height:1.8}section{scroll-margin-top:100px}.btn-primary{background:#4c5540;color:#f5f4f1;padding:19px 26px;font-size:11px;letter-spacing:.16em;border-radius:0;transition:background .2s,transform .2s}.btn-primary:hover{background:#6e7a5a;transform:translateY(-2px)}.editorial-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:6vw;padding:150px 7vw 80px;min-height:850px!important;align-items:center;position:relative}.hero-copy{max-width:650px}.hero-copy>div{display:none}.hero-heading{display:flex;flex-direction:column;gap:24px;align-items:start}.hero-heading>span:first-child{font-size:11px;letter-spacing:.2em;color:#6e7a5a}.hero-heading>span:last-child{font-size:clamp(48px,5.5vw,84px)!important;line-height:.98!important;letter-spacing:-.045em!important}.hero-heading span span{white-space:normal!important;display:block}.hero-copy>p{max-width:490px;font-size:15px;margin-top:28px}.hero-copy .btn-primary{margin-top:30px}.hero-copy>p:last-child{font-size:11px!important;letter-spacing:.04em;margin-top:16px}.hero-portrait{position:relative;padding:0 0 32px 28px}.hero-portrait:before{content:'';position:absolute;inset:30px -24px 52px 0;border:1px solid #b7a48e}.hero-portrait img{position:relative;width:100%;height:610px;object-fit:cover;object-position:center 37%;border-radius:220px 220px 0 0}.hero-portrait p{font-size:9px;letter-spacing:.17em;position:relative;margin-top:18px;text-align:right}#intro{padding-top:75px;padding-bottom:75px;border-top:1px solid #b7a48e50}#intro h2{font-size:clamp(30px,3vw,44px)!important;line-height:1.15}#intro p{font-size:15px!important}#intro>div:last-child{gap:60px}#intro img{max-height:300px}#intro>div:last-child>div:last-child{display:flex;gap:18px}#intro>div:last-child>div:last-child>div{width:50%;margin-top:0}#intro>div:last-child>div:last-child>div:last-child img:last-child{display:none}#specialties{background:#e6e4de;padding-top:95px;padding-bottom:95px}#specialties>div:last-child{max-width:1120px}#specialties h2,#programs h2,#how h2{font-size:clamp(38px,4vw,58px)!important;line-height:1.05}#specialties ul{margin-top:45px}#specialties li{padding:20px 0;border-color:#b7a48e80}#specialties details summary{font-family:var(--font-serif);font-size:25px}details summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:focus-visible{outline:2px solid #6e7a5a;outline-offset:7px}details[open]>summary{color:#6e7a5a}details>div,details>p{animation:reveal .25s ease}#how{background:#4c5540;padding:100px 7vw}#how h2,#how h3,#how p,#how li>span{color:#f5f4f1!important}#how>div{max-width:1120px;display:grid;grid-template-columns:1fr 1.4fr;gap:30px 90px}#how h2{text-align:left;position:sticky;top:130px;align-self:start}#how ol{margin-top:0}#how>div>p{grid-column:2;text-align:left;font-size:13px;opacity:.75}#how li{border-color:#f5f4f130}#how li>span{font-size:22px;opacity:.5}#how h3{font-size:28px}#how li p{font-size:14px;opacity:.8}#programs{padding:110px 5vw}#programs>div{max-width:1250px}#programs>div>div{display:grid;grid-template-columns:1fr 1fr;gap:26px}#programs article{margin:0!important;padding:35px;background:#ebeae4;border-color:#b7a48e55!important}#programs article h3{font-size:40px!important;letter-spacing:-.03em}#programs article p{font-size:14px!important}#programs article ul{grid-template-columns:1fr}#programs article>div{background:transparent!important;border-color:#b7a48e55!important;padding-left:0;padding-right:0}#programs article li span{font-size:13px!important}#programs article h4{font-size:25px}#story{padding:100px 6vw}#story p{font-size:15px!important}#scene-story,#scene-mission,#scene-testing{max-height:550px}#testing{background:#e6e4de}#contact{padding-top:100px;padding-bottom:100px}#contact h2{font-size:60px!important}footer{padding:70px 25px!important}footer img{max-height:95px;width:auto}footer p{font-size:11px!important}.redesign-mobile-nav{display:none}.menu-open .redesign-mobile-nav{display:flex;position:fixed;inset:80px 0 0;background:#f5f4f1;z-index:60;flex-direction:column;gap:28px;padding:55px 30px;font:32px var(--font-serif)}@keyframes reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:800px){.editorial-hero{grid-template-columns:1fr;padding:120px 26px 45px;gap:40px;min-height:0!important}.hero-heading>span:last-child{font-size:57px!important}.hero-copy>p{font-size:14px}.hero-portrait{padding:0 12px 0 10px}.hero-portrait img{height:430px}.hero-portrait:before{right:0}#intro>div:last-child{gap:35px}#intro img{max-height:230px}#how>div{display:block}#how h2{position:static;margin-bottom:40px}#how>div>p{margin-top:30px}#programs>div>div{grid-template-columns:1fr}#programs article{padding:26px}#programs article h3{font-size:36px!important}#contact h2{font-size:44px!important}#contact .btn-primary{max-width:100%;white-space:normal}footer a{overflow-wrap:anywhere}.hero-portrait p{font-size:8px}#how,#programs,#story,#specialties{padding:70px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* Keep the original portrait proportions at every breakpoint. */
#intro>div:last-child>div:last-child{align-items:flex-start}
#intro>div:last-child>div:last-child>div{min-width:0;flex:1}
#intro>div:last-child>div:last-child>div:last-child{display:block}
#intro img:not([aria-hidden]){display:block!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center top!important}
#intro>div:last-child>div:last-child>div:last-child img:last-child{display:none!important}
#scene-story,#scene-mission,#scene-testing{overflow:hidden;isolation:isolate}
#story{position:relative;z-index:1;border-top:1px solid #b7a48e80;padding-top:90px!important;margin-top:0;background:#f5f4f1}
#story>div>h2{display:block!important;position:relative;font-size:clamp(44px,5vw,64px)!important;margin:12px 0 0!important;line-height:1.1}
#story>div>div.mt-16{margin-top:40px;padding-top:35px;border-top:1px solid #b7a48e60}
#story img{border:1px solid #b7a48e80;padding:10px;background:#e6e4de;box-sizing:border-box}
.disclosure-heading::after{content:'+';font-family:Inter,sans-serif;font-size:20px;font-weight:300;flex-shrink:0;margin-left:12px}
details[open]>.disclosure-heading::after{content:'−'}
.faq-nav-link{font:400 .85rem var(--font-sans);letter-spacing:.05em;color:#33362b}
.redesign-mobile-nav .faq-nav-link{font:32px var(--font-serif)}
.faq-main{padding:160px 26px 100px;background:#f5f4f1}.faq-content{max-width:850px;margin:auto}.faq-main h1{font:500 clamp(42px,6vw,70px)/1.05 var(--font-serif);color:#4c5540;letter-spacing:-.03em}.faq-intro{margin:24px 0 40px;color:#6e7a5a}.faq-main section{margin:0;padding-top:10px}.faq-main .btn-primary{margin-top:50px;max-width:100%;text-align:center}
@media(max-width:800px){#story{padding-top:60px!important}.faq-main{padding-top:125px}}

/* Alyssa's brand, quote alignment, and pricing refinements. */
.hero-brand-heading{margin:30px 0 0;line-height:1}
.hero-brand-logo{display:block;width:100%;max-width:540px;height:auto}
.hero-copy>.hero-specialty{font:400 11px/1.5 var(--font-sans);letter-spacing:.18em;text-transform:uppercase;color:#6e7a5a;margin:0}
.hero-copy>.hero-tagline{font:500 clamp(21px,2.1vw,29px)/1.4 var(--font-serif);color:#4c5540;max-width:none;margin:26px 0 30px;letter-spacing:0}
#scene-story,#scene-mission,#scene-testing{height:clamp(380px,65svh,550px)!important;max-height:none}
#scene-story>div,#scene-mission>div,#scene-testing>div{position:relative!important;top:auto!important;height:100%!important}
#scene-story blockquote,#scene-mission blockquote,#scene-testing blockquote{margin:0 auto;text-align:center;width:100%}
#scene-story blockquote footer,#scene-mission blockquote footer,#scene-testing blockquote footer{padding:0!important;margin-top:24px;font-size:11px;line-height:1.5}
#scene-mission img{object-position:center center!important}
.investment-price-label{font:500 24px/1.4 var(--font-serif);color:#4c5540;margin-top:28px}
@media(max-width:800px){.hero-brand-heading{margin-top:25px}.hero-copy>.hero-tagline{font-size:22px;margin-top:22px}.editorial-hero{gap:35px}.hero-brand-logo{max-width:480px}}

/* A fixed three-line signature and proportionally scaled portrait. */
.hero-copy{min-width:0}
.hero-slogan{font-family:var(--font-serif);font-weight:400;font-size:clamp(46px,5.5vw,84px);line-height:1.04;letter-spacing:-.035em;color:#4c5540;margin:0}
.hero-slogan span{display:block;white-space:nowrap}
.hero-copy>.hero-service{font:400 12px/1.6 var(--font-sans);letter-spacing:.12em;color:#6e7a5a;margin-top:28px;text-transform:uppercase}
.hero-copy>.hero-service+p{margin-top:18px}
.hero-portrait{width:100%;max-width:560px;justify-self:center;padding:0;min-width:0}
.hero-portrait:before{display:none}
.hero-photo-frame{position:relative;padding:0 4% 0 4%;width:100%}
.hero-photo-frame:before{content:'';position:absolute;inset:5% 0 4% 0;border:1px solid #b7a48e}
.hero-photo-frame img{display:block;width:100%;height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:50% 37%;border-radius:50% 50% 0 0 / 40% 40% 0 0;position:relative}
.hero-portrait p{margin:18px 4% 0;text-align:right;font-size:9px;letter-spacing:.12em}
@media(max-width:800px){.hero-slogan{font-size:clamp(42px,11.5vw,76px)}.hero-copy>.hero-service{font-size:11px;letter-spacing:.08em;margin-top:24px}.hero-portrait{max-width:480px}.hero-portrait p{font-size:8px}}
