/* Home redesign: warm paper, petroleum, sage and sunshine. */
:root{--ink:#153f49;--paper:#fcfaf6;--plum:#245965;--plum-bright:#327181;--plum-deep:#133f49;--plum-deep-2:#1d505a;--gold:#f4c65d;--gold-bright:#ffda7c;--mist:#e1efea;--mist-line:#dce4df;--ink-soft:#526163;--max:1200px}
body{font-size:15px}h1,h2,h3{font-weight:500;letter-spacing:-.035em}h2{font-size:clamp(30px,3.3vw,43px);line-height:1.16}h3{line-height:1.25}a{text-underline-offset:5px}section[id],div[id]{scroll-margin-top:110px}.section{padding:65px 0}.eyebrow{font-size:10px;letter-spacing:.13em}.center-head{text-align:center;margin:0 auto 30px;max-width:850px}.center-head h2{margin:10px 0 14px}.center-head p{font-size:14px}.btn{border-radius:40px;font-size:12px;padding:12px 21px;line-height:1.4}.btn-gold{color:var(--ink)}.btn-ghost{border-color:#7f9d9d}.hero-actions{margin-top:26px;gap:12px}.skip-link{position:fixed;left:15px;top:-80px;z-index:200;background:var(--gold);padding:12px}.skip-link:focus{top:15px}
header.site-nav,header.site-nav.scrolled{background:rgba(252,250,246,.96);padding:13px 0;backdrop-filter:blur(14px);border-bottom:1px solid #e7e9e2}nav.links{gap:22px}nav.links a{font-size:11px;font-weight:500}nav.links a.cta-link{background:var(--gold);color:var(--ink);border-radius:30px;padding:12px 18px}.fde-brand{display:flex;flex-direction:column;text-decoration:none;line-height:1;color:var(--ink);min-width:106px}.brand-script{font-family:'Fraunces',Georgia,serif;font-size:37px;font-style:italic;letter-spacing:-3px}.brand-sun{font-style:normal;font-size:24px;letter-spacing:0;color:#eabd50;vertical-align:top;display:inline-block;margin:0 0 0 3px}.brand-small{font-size:12px;letter-spacing:-.3px;margin-top:1px}
.reveal-hero{max-height:900px}.intro{border-bottom:1px solid var(--mist-line);background:linear-gradient(115deg,#f7f2e7,#fcfaf6)}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.intro h1{font-size:clamp(39px,5vw,66px);line-height:1.05;margin:17px 0}.intro h1 em{font-style:italic}.intro h2{font-size:clamp(23px,2.3vw,30px);line-height:1.25}.intro p{font-size:16px;line-height:1.8}.stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stage-card{display:flex;gap:18px;text-decoration:none;background:#f2f3ee;padding:27px 23px;border-radius:12px;transition:transform .2s,background .2s}.stage-card:hover{transform:translateY(-4px);background:var(--mist)}.stage-icon{font-family:'Fraunces',serif;font-size:33px;color:#8cae9f;line-height:1.1}.stage-card:first-child .stage-icon,.stage-card:last-child .stage-icon{color:#be9131}.stage-card h3{font-size:21px;margin-bottom:9px}.stage-card p{font-size:13px}.round-arrow{display:flex;align-items:center;justify-content:center;width:29px;height:29px;background:#d8ebe4;border-radius:50%;margin:15px 0 0 auto}
.paths{background:#f6f2e9}.path-grid{display:grid;grid-template-columns:1fr 1fr .6fr;gap:18px}.path-card{padding:30px;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start}.course{background:#e1eeea}.process{background:#f8ebcc}.path-card h3{font-size:27px;margin:13px 0 19px}.path-card p{font-size:13px}.path-card .ideal{padding:17px;background:#ffffff60;border-radius:8px;margin:20px 0}.path-card .btn{margin-top:auto}.personal{padding:26px 20px;background:#ffffffa6;border-radius:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}.personal h3{font-size:22px}.personal p{font-size:13px}.personal-symbol{font-size:46px;color:#7eaaa3}.personal .btn{margin-top:auto;white-space:nowrap}
.section-head{margin-bottom:30px}.section-head h2{max-width:none;margin-top:10px}.catalog-group{margin-top:32px}.catalog-group>h3{font-size:22px;margin-bottom:18px}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.program-card{border:1px solid #e1e5df;background:#fff;text-decoration:none;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.program-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #143e4910}.program-art{height:145px;position:relative;overflow:hidden;background:#e3eee6;display:flex;align-items:center;justify-content:flex-end;padding:25px 36px}.program-art>span:first-child{font-family:'Fraunces',serif;font-size:110px;line-height:1;color:#5a8f8055}.art-02{background:#eee9da}.art-02>span:first-child{color:#ad955b55}.art-03{background:#d7e9e6}.art-04{background:#f6ebd4}.program-badge{position:absolute;left:20px;top:20px;border-radius:30px;background:#ffffffd9;padding:5px 11px;font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.program-body{padding:25px;display:flex;flex-direction:column;gap:14px;flex:1}.program-body h3{font-size:26px}.program-body p{font-size:14px;max-width:52ch}.program-mode{font-size:11px;color:#617673}.program-link{font-size:12px;font-weight:700;margin-top:auto;padding-top:8px}.method{background:#f6f2e9}.dimensions{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.dimension{position:relative;text-align:center;border-radius:12px;background:#e0efea;padding:25px 18px}.dimension:nth-child(2){background:#f6e8de}.dimension:nth-child(3){background:#f7eed8}.dimension:nth-child(4){background:#e5edf0}.dimension>span{font-size:40px;line-height:1.2;color:#42716e}.dimension:nth-child(2)>span{color:#b97761}.dimension:nth-child(3)>span{color:#b08a3c}.dimension h3{font-family:'Libre Franklin',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:13px;margin:13px 0 8px}.dimension p{font-size:13px}.dimension:not(:last-child):after{content:'+';position:absolute;right:-18px;top:48%;color:var(--ink)}.method-note{text-align:center;font-size:12px;margin-top:25px}
.testimonials{padding:60px 0}.testimonials h2{margin-bottom:28px}.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.t-card{padding:24px;border:1px solid var(--mist-line);border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:15px}.t-mark{font-family:'Fraunces',serif;font-size:40px;line-height:.8;color:#a6c5b7}.t-quote{font-size:13px;flex:1}.t-name{font-weight:700;font-size:12px}.t-role{font-size:11px;color:var(--ink-soft)}.about{background:#f4f0e7}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.about-photo{border-radius:12px;overflow:hidden}.about-photo img{width:100%;aspect-ratio:1.1;object-fit:cover}.about h2{margin:15px 0 24px}.body-copy{display:grid;gap:16px;margin-bottom:26px}.closing{text-align:center;background:#e9f1e9}.closing h2{max-width:780px;margin:15px auto}.closing p{margin-bottom:24px}.contact-link{display:block;font-size:12px;margin-top:19px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-inner nav{display:flex;gap:20px;flex-wrap:wrap}.footer-inner nav a{font-size:11px;text-decoration:none}.ecosystem strong{display:block;font-size:17px;letter-spacing:.08em}.ecosystem small{font-size:10px}.ecosystem p{font-size:10px;margin-top:6px}footer{background:var(--paper);padding:35px 0 20px;border-top:1px solid var(--mist-line)}.footer-bottom{border-color:var(--mist-line);margin-top:28px;padding-top:20px;color:var(--ink-soft);font-size:10px}
@media(min-width:981px){.reveal-word-top{top:13%!important}.reveal-word-right{right:5%!important}}
@media(max-width:1100px){nav.links{gap:13px}.wrap{padding:0 24px}.path-card{padding:24px}.path-grid{grid-template-columns:1fr 1fr}.personal{grid-column:1/-1;flex-direction:row;text-align:left}.personal .btn{margin:auto 0 auto auto}.personal-symbol{display:none}.personal h3{max-width:260px}}
@media(max-width:980px){.menu-btn{z-index:102}nav.links{gap:23px;padding-top:100px}.intro-grid{gap:30px}.stage-grid{grid-template-columns:1fr}.stage-card{padding:23px}.stage-card .round-arrow{margin:10px 0 0}.about-grid{gap:30px}.t-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{flex-wrap:wrap}.dimensions{gap:20px}.dimension{padding:22px 10px}.dimension:not(:last-child):after{right:-15px}}
@media(max-width:600px){.section{padding:43px 0}.wrap{padding:0 21px}.intro-grid,.path-grid,.program-grid,.about-grid,.t-grid{grid-template-columns:1fr}.intro-grid{gap:24px}.intro h1{font-size:42px}.intro p{font-size:14px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{justify-content:center}.center-head{text-align:left}.center-head p br{display:none}.personal{grid-column:auto;flex-direction:column;align-items:flex-start;gap:15px}.personal .btn{margin:0}.dimensions{grid-template-columns:1fr 1fr;gap:14px}.dimension:not(:last-child):after{display:none}.about-photo{max-width:440px}.footer-inner{align-items:flex-start;gap:28px}.footer-inner nav{max-width:240px;gap:15px}.program-art{height:125px}.closing h2{font-size:30px}.reveal-hero{min-height:570px;height:85svh}}

/* Editorial hero inspired by the supplied reference. */
.welcome-hero{position:relative;isolation:isolate;overflow:hidden;margin-top:78px;background:#f6f3ec;min-height:540px;display:flex;align-items:center}
.welcome-photo{position:absolute;inset:0 0 0 40%;z-index:-2}
.welcome-photo img{width:100%;height:100%;object-fit:cover;object-position:48% center}
.welcome-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f8f6f0 0%,#f8f6f0 34%,rgba(248,246,240,.96) 40%,rgba(248,246,240,.7) 48%,rgba(248,246,240,0) 64%)}
.welcome-inner{width:100%;padding-top:60px;padding-bottom:65px}
.welcome-copy{max-width:580px;width:51%}
.welcome-copy h1{font-size:clamp(40px,4.3vw,61px);line-height:1.02;margin:17px 0 15px;letter-spacing:-.045em}
.welcome-copy h2{font-size:clamp(23px,2.05vw,29px);line-height:1.17;max-width:460px;margin-bottom:22px}
.welcome-copy p{font-size:13px;line-height:1.75;max-width:450px}
.welcome-copy .hero-actions{gap:10px;margin-top:25px;flex-wrap:nowrap}
.welcome-copy .btn{font-size:10px;padding:12px 15px;white-space:nowrap;gap:9px}
.welcome-copy .btn-ghost{background:#dceee7c7;border-color:#6f9894}
@media(min-width:1500px){.welcome-photo{left:45%}.welcome-hero::before{background:linear-gradient(90deg,#f8f6f0 0%,#f8f6f0 40%,#f8f6f0dd 48%,#f8f6f000 65%)}}
@media(max-width:980px){.welcome-hero{min-height:530px}.welcome-copy{width:57%}.welcome-photo{left:37%}.welcome-copy .hero-actions{flex-wrap:wrap}.welcome-copy h1{font-size:46px}.welcome-hero::before{background:linear-gradient(90deg,#f8f6f0 0%,#f8f6f0 30%,#f8f6f0ed 44%,#f8f6f000 80%)}}
@media(max-width:600px){.welcome-hero{margin-top:74px;display:flex;flex-direction:column;min-height:0}.welcome-hero::before{display:none}.welcome-inner{padding-top:34px;padding-bottom:30px;order:0}.welcome-copy{width:100%;max-width:none}.welcome-copy h1{font-size:43px;margin-top:14px}.welcome-copy h2{font-size:24px;max-width:360px}.welcome-copy p{font-size:13px}.welcome-copy p br{display:none}.welcome-copy .hero-actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:22px}.welcome-copy .btn{font-size:11px;justify-content:center;padding:13px 14px;white-space:normal}.welcome-photo{position:relative;inset:auto;z-index:0;width:100%;height:auto;aspect-ratio:1.6;order:1}.welcome-photo img{object-position:center}.stages{padding-top:35px}}
/* Scroll motion is progressive enhancement: content stays visible without JS. */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#c08d24;transform:scaleX(0);transform-origin:left;z-index:150;pointer-events:none}
.scroll-enter{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.3,1);transition-delay:var(--enter-delay,0ms)}
.scroll-enter.is-visible{opacity:1;transform:translateY(0)}
.about-photo img{transition:transform 1.2s ease}.about-photo.is-visible img{transform:scale(1.025)}
.stage-card:focus-visible,.program-card:focus-visible{outline:3px solid #996e14;outline-offset:5px}
/* Explicit semantic colors avoid low-contrast inherited colors in dark mode. */
:root{color-scheme:light dark;--ink-soft:#46595b}
.stage-icon{color:#55766a}.stage-card:first-child .stage-icon,.stage-card:last-child .stage-icon{color:#805b18}
.dimension:nth-child(2)>span{color:#9d5845}.dimension:nth-child(3)>span{color:#88671e}.program-mode{color:#4e6562}
@media(prefers-color-scheme:dark){
 :root{--ink:#edf5ef;--paper:#102126;--ink-soft:#c5d3ce;--plum:#abd8cc;--plum-bright:#c8e8dd;--plum-deep:#0b1b20;--mist:#263e3f;--mist-line:#486260;--gold:#f4c65d;--gold-bright:#ffda7c}
 body{background:var(--paper);color:var(--ink)}
 header.site-nav,header.site-nav.scrolled{background:rgba(16,33,38,.97);border-color:var(--mist-line)}
 .stages,.catalog,.testimonials,footer{background:#102126}
 .paths,.method,.about{background:#172c30}.closing{background:#203b3b}
 .stage-card,.program-card,.t-card,.personal{background:#20373b;border-color:var(--mist-line)}
 .stage-card:hover{background:#2b4848}.course{background:#23423f}.process{background:#443b29}
 .path-card .ideal{background:#0b1b205e}
 .dimension{background:#24423f}.dimension:nth-child(2){background:#48372f}.dimension:nth-child(3){background:#453e29}.dimension:nth-child(4){background:#293e4a}
 .dimension>span,.dimension:nth-child(2)>span,.dimension:nth-child(3)>span,.personal-symbol,.stage-icon{color:#b2d8ca}
 .stage-card:first-child .stage-icon,.stage-card:last-child .stage-icon{color:#f4c65d}
 .program-art{background:#2a4841}.art-02{background:#47422d}.art-03{background:#29484a}.art-04{background:#4a3d2b}
 .program-art>span:first-child,.art-02>span:first-child{color:#c5ded380}
 .program-badge{background:#102126;color:#edf5ef}.program-mode,.t-role{color:#c5d3ce}
 .round-arrow{background:#365a53;color:#edf5ef}.t-mark{color:#afd0bf}
 .btn-primary,.btn-primary:hover{background:#abd8cc;color:#102126}
 .btn-gold,.btn-gold:hover,nav.links a.cta-link,nav.links a.cta-link:hover{background:#f4c65d;color:#153f49}
 .btn-ghost{color:#edf5ef;border-color:#9cb9b2}.btn-ghost:hover{color:#ffda7c;border-color:#ffda7c}
 .welcome-hero{background:#102126}.welcome-hero::before{background:linear-gradient(90deg,#102126 0%,#102126 34%,#102126fa 43%,#102126b3 52%,#10212600 72%)}
 .welcome-copy .btn-ghost{background:#24423f;color:#edf5ef;border-color:#9cb9b2}
 .welcome-copy{background:#102126eb;border-radius:8px;padding:18px;margin-left:-18px}
 .footer-bottom{color:#c5d3ce}.scroll-progress{background:#f4c65d}
 @media(max-width:600px){.welcome-copy{background:transparent;padding:0;margin:0}}
}
@media(prefers-reduced-motion:reduce){.scroll-enter{opacity:1;transform:none;transition:none}.about-photo.is-visible img{transform:none}.scroll-progress{display:none}}
