:root{--primary:#153d36;--primary-dark:#102f2a;--accent:#e1b875;--ink:#182b27;--muted:#68736c;--paper:#fbfaf6;--soft:#efeee7;--border:#dcded4;--white:#fff;--radius:18px;--shadow:0 20px 60px #173a3014;--space:100px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.75;color:var(--ink);background:var(--paper);margin:0}h1,h2,h3,h4{font-family:Manrope,sans-serif;line-height:1.18;font-weight:600;letter-spacing:-.045em}h1{font-size:clamp(2.7rem,5vw,4.5rem)}h2{font-size:clamp(2rem,3.4vw,3.2rem);margin:18px 0 24px}h3{font-size:1.35rem;letter-spacing:-.025em}p{color:var(--muted);margin-bottom:24px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.container{max-width:1240px;padding-left:32px;padding-right:32px}.section{padding:var(--space) 0}.soft{background:var(--soft)}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--primary);display:block}.section-heading{max-width:680px}.section-heading p{max-width:610px}.btn{border-radius:6px;padding:15px 25px;font-size:14px;font-weight:600;min-height:52px;transition:background .2s,transform .2s;letter-spacing:.01em}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--white)}.btn-primary:hover,.btn-primary:focus{background:var(--primary-dark);border-color:var(--primary-dark)}.btn-outline{border:1px solid var(--border);color:var(--primary);background:transparent}.btn-outline:hover{background:var(--soft);border-color:var(--primary)}.btn-light{background:var(--paper);color:var(--primary);border-color:var(--paper)}.button-row{display:flex;gap:14px;flex-wrap:wrap}.site-header{position:sticky;top:0;background:var(--paper);z-index:50;border-bottom:1px solid var(--border);transition:box-shadow .3s}.site-header.scrolled{box-shadow:var(--shadow)}.nav-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand-mark{font:italic 47px Georgia,serif;color:var(--primary);line-height:1;border-right:1px solid var(--border);padding-right:15px;letter-spacing:-4px}.brand-mark span{color:var(--accent)}.brand-name{font-family:Manrope,sans-serif;font-size:16px;font-weight:700;letter-spacing:-.04em;line-height:1.4}.brand-name small{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:.26em;font-weight:500}.desktop-nav{display:flex;gap:29px;font-size:14px}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a[aria-current]{color:var(--primary);font-weight:700}.desktop-nav a[aria-current]:after{content:'';height:3px;width:17px;background:var(--accent);position:absolute;bottom:0;left:0}.menu-toggle,.menu-close{border:0;background:transparent;color:var(--primary);font-size:28px;padding:8px}.menu-toggle{display:none}.hero{background:var(--paper);overflow:hidden;padding-top:55px}.hero-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:65px;align-items:center}.hero-copy{padding:25px 0}.hero-copy h1{margin:27px 0;line-height:1.12;letter-spacing:-.055em}.hero-copy h1 em{font-family:Georgia,serif;font-weight:400;color:var(--primary);letter-spacing:-.05em}.hero-copy p{max-width:480px;font-size:17px}.tiny-line{display:inline-block;width:26px;height:1px;background:var(--primary);vertical-align:middle;margin-right:10px}.hero-note{display:flex;gap:14px;align-items:center;font-size:12px;line-height:1.5;margin-top:35px;color:var(--muted)}.hero-note i{font-size:27px;color:var(--primary)}.hero-note strong{font-weight:500;color:var(--ink)}.hero-visual{position:relative;padding:16px 14px 0 0}.hero-photo{width:100%;height:560px;border-radius:160px 14px 14px 14px;object-position:50% 48%}.photo-label{display:block;text-align:right;letter-spacing:.18em;font-size:10px;color:var(--muted);margin-bottom:12px}.mentor-caption{position:absolute;left:0;right:14px;bottom:0;padding:55px 28px 24px;color:white;background:linear-gradient(transparent,#102f2add);border-radius:0 0 14px 14px}.mentor-caption span{font-size:10px;letter-spacing:.16em;display:block}.mentor-caption strong{font-family:Manrope;font-size:23px;font-weight:500}.photo-stamp{position:absolute;right:-20px;top:66px;background:var(--primary);color:white;padding:24px 27px;font-family:Georgia,serif;font-style:italic;font-size:23px;line-height:1.15;transform:rotate(6deg);border-radius:4px;box-shadow:var(--shadow)}.photo-stamp i{display:block;font-size:20px;margin-top:10px;color:var(--accent)}.hero-bottom{display:flex;justify-content:space-between;padding-top:37px;padding-bottom:27px;font-size:10px;color:var(--muted);letter-spacing:.16em}.hero-bottom i{margin-left:15px}.trust-strip{background:var(--primary);color:var(--paper)}.trust-strip .container{display:flex;justify-content:space-between;padding-top:25px;padding-bottom:25px;gap:22px}.trust-strip span{display:flex;gap:13px;align-items:center;font-size:14px}.trust-strip i{font-size:22px;color:var(--accent)}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.editorial-photo img{height:430px;width:100%;border-radius:var(--radius);object-position:48% 50%}.image-footnote{display:block;font-size:12px;color:var(--muted);padding-top:18px;border-top:1px solid var(--border);margin-top:20px}.value-card{padding:28px 25px;border-top:1px solid var(--border);height:100%}.value-card i{font-size:28px;color:var(--primary);display:block;margin-bottom:25px}.value-card p{font-size:15px;margin-bottom:0}.value-card h3{margin-bottom:15px}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:30px}.heading-row .btn{flex-shrink:0}.heading-row .section-heading h2{margin-bottom:0}.sample-note{font-size:12px;color:var(--muted)}.program-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:32px;height:100%;transition:transform .3s,box-shadow .3s}.program-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.program-top{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.12em}.program-card>i{display:block;font-size:36px;color:var(--primary);margin:32px 0 24px}.program-card h3{font-size:23px;min-height:55px}.program-card p{font-size:15px;min-height:53px}.program-features{font-size:12px;color:var(--muted);padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:23px}.program-card>a{font-size:13px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.process{background:var(--primary);color:var(--paper)}.process .eyebrow{color:var(--accent)}.process p{color:#c4d2cc}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:55px}.steps article{border-top:1px solid #ffffff30;padding-top:23px}.steps span{color:var(--accent);font-size:14px}.steps h3{margin:28px 0 14px}.steps p{font-size:14px;margin:0}.portrait-frame img{height:580px;width:100%;border-radius:var(--radius);object-position:center 40%}.mentor-section blockquote{font:italic 26px/1.5 Georgia;color:var(--primary);border-left:3px solid var(--accent);padding-left:22px;margin:28px 0 14px}.quote-card{background:var(--paper);border:1px solid var(--border);padding:30px;border-radius:12px;height:100%}.quote-card>i{font-size:35px;color:var(--primary)}.quote-card blockquote{font:20px/1.55 Georgia;margin:15px 0 25px}.quote-card span{font-size:12px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-item{padding:0;position:relative;border:0;border-radius:12px;overflow:hidden;text-align:left;background:var(--primary)}.gallery-item img{height:360px;width:100%;transition:transform .5s;object-position:50% 35%}.gallery-item:hover img{transform:scale(1.035)}.gallery-item>span{position:absolute;bottom:0;left:0;right:0;padding:55px 22px 22px;background:linear-gradient(transparent,#102f2ae8);color:white;font-size:10px;letter-spacing:.06em}.gallery-item strong{display:block;font-size:16px;font-weight:500;letter-spacing:0;margin-top:5px;padding-right:25px}.gallery-item span i{position:absolute;right:20px;bottom:25px;font-size:20px}.cta{background:var(--paper);padding:70px 0;color:var(--ink)}.cta-panel{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center;background:#f2e6d0;border:1px solid #ddc8a3;border-radius:22px;padding:58px 64px;overflow:hidden;box-shadow:0 12px 35px #173a3008}.cta-panel:before{content:'';position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--accent)}.cta h2{font-size:clamp(2.2rem,3.6vw,3.25rem);margin:18px 0 20px}.cta h2 em{font-family:Georgia,serif;font-weight:400;color:var(--primary)}.cta p{margin:0;color:#586358}.cta-action{display:flex;flex-direction:column;align-items:center;gap:19px;border-left:1px solid #d9c7a8;padding-left:40px}.cta-symbol{display:grid;place-items:center;width:85px;height:85px;border:1px solid #c7ae85;border-radius:50%;color:var(--primary);font-size:34px;background:#ffffff38}.cta-action-note{font-size:12px;color:#586358;text-align:center}.faq-section{padding:70px 0 80px}.faq-layout{display:grid;grid-template-columns:.8fr 1.4fr;gap:75px;align-items:start}.faq-layout .section-heading{padding-top:8px}.faq-layout h2{font-size:clamp(1.8rem,2.7vw,2.5rem);max-width:330px;margin-bottom:0}.faq-layout details{border:1px solid var(--border);border-radius:10px;background:var(--white);padding:0;margin-bottom:12px;transition:border-color .25s,background .25s}.faq-layout details:last-child{margin-bottom:0}.faq-layout details[open]{background:#f3f4ed;border-color:#b5c4b6}.faq-layout summary{list-style:none;display:grid;grid-template-columns:25px 1fr 27px;align-items:center;gap:14px;padding:19px 21px;font-size:15px;line-height:1.5;font-weight:500;cursor:pointer}.faq-layout summary::-webkit-details-marker{display:none}.faq-number{font-size:11px;letter-spacing:.06em;color:var(--muted)}.faq-toggle{width:26px;height:26px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center;color:var(--primary);position:relative}.faq-toggle:before,.faq-toggle:after{content:'';position:absolute;width:10px;height:1px;background:currentColor;transition:transform .25s}.faq-toggle:after{transform:rotate(90deg)}details[open] .faq-toggle:after{transform:rotate(0)}.faq-layout details p{font-size:14px;line-height:1.75;margin:0;padding:0 62px 22px 60px;max-width:700px}.faq-layout details[open] p{animation:faq-answer-arrive .3s ease-out}@keyframes faq-answer-arrive{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}footer{background:var(--primary-dark);color:var(--paper);padding:70px 0 24px}footer .brand-mark,footer .brand-name{color:var(--paper)}footer p{color:#b0c0b8;font-size:14px;margin-top:23px}footer h3{font-family:'DM Sans';font-size:14px;letter-spacing:0;margin:0 0 22px;font-weight:600}footer a{display:block;color:#c4d2cc;font-size:13px;margin-bottom:9px}footer a:hover{color:var(--white)}footer .brand{display:flex}.footer-grid{display:grid;grid-template-columns:1.6fr .8fr 1.1fr 1fr;gap:40px}.footer-bottom{margin-top:55px;border-top:1px solid #ffffff20;padding-top:23px;font-size:11px;color:#b0c0b8;display:flex;justify-content:space-between}.footer-social{display:flex;gap:8px;margin-top:20px}.social-dock{position:fixed;right:15px;top:58%;z-index:35;background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow);padding:7px;border-radius:30px;display:flex;flex-direction:column;gap:5px}.social-dock a,.footer-social a{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--primary);font-size:14px;transition:background .2s}.social-dock a:hover{background:var(--soft)}.footer-social a{color:var(--paper);border:1px solid #ffffff30}.back-top{position:fixed;bottom:22px;right:22px;border:1px solid var(--border);background:var(--primary);color:var(--paper);width:44px;height:44px;border-radius:50%;z-index:40;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}.back-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.page-hero{padding:35px 0 62px;background:linear-gradient(110deg,var(--soft),#f7f5ee);border-bottom:1px solid var(--border);position:relative}.page-hero:after{content:'';position:absolute;left:0;bottom:-1px;width:24%;height:4px;background:var(--accent)}.page-hero-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:25px;margin-bottom:42px;gap:24px}.breadcrumb-custom{font-size:13px;color:var(--muted)}.breadcrumb-custom ol{display:flex;align-items:center;gap:13px;list-style:none;padding:8px 15px;margin:0;border:1px solid var(--border);border-radius:30px;background:#ffffff55}.breadcrumb-custom li{display:flex;align-items:center;gap:13px}.breadcrumb-custom a{display:flex;align-items:center;gap:7px}.breadcrumb-custom a:hover{color:var(--primary)}.breadcrumb-custom .bi-chevron-right{font-size:9px}.breadcrumb-custom [aria-current]{color:var(--primary);font-weight:500}.page-hero-content{display:grid;grid-template-columns:1.65fr 1fr;gap:65px;align-items:center}.page-hero h1{margin:0;font-size:clamp(2.6rem,4.4vw,4rem);line-height:1.2}.page-hero-aside{border-left:1px solid #cdd3c6;padding-left:35px;max-width:370px}.page-hero-icon{display:grid;place-items:center;width:55px;height:55px;border:1px solid #bfcbbd;border-radius:16px;color:var(--primary);font-size:23px;margin-bottom:18px;background:#ffffff55}.page-hero p{font-size:16px;margin-bottom:20px;line-height:1.65}.page-hero-note{font-size:10px;letter-spacing:.13em;color:var(--primary);font-weight:600}.signature{font:italic 29px Georgia;color:var(--primary);margin-top:30px}.signature span{font:10px 'DM Sans';display:block;letter-spacing:.18em;margin-top:12px}.lead{font-size:20px;color:var(--ink)}.check-list p{padding:20px 0;border-bottom:1px solid var(--border);margin:0;color:var(--ink);display:flex;align-items:center;gap:17px}.check-list i{color:var(--primary);font-size:24px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:35px}.filter{padding:10px 22px;border:1px solid var(--border);background:transparent;border-radius:25px;font-size:14px}.filter.active{background:var(--primary);color:white;border-color:var(--primary)}.gallery-item[hidden]{display:none}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.form-panel{padding:40px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius)}.form-panel h2{font-size:28px;margin-top:0}.form-intro{font-size:14px}label{font-size:13px;font-weight:600;margin-bottom:9px;display:block}.form-control,.form-select{padding:13px 15px;border-color:var(--border);border-radius:6px;font-size:15px;background:var(--paper)}.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #153d3618}.invalid-feedback{font-size:12px}.form-status{font-size:14px;margin-top:20px}.form-status.success{color:var(--primary);padding:18px;background:var(--soft);border-radius:6px}.form-status.error{color:#9f3324}.contact-details article{padding:18px 0;border-bottom:1px solid var(--border);display:flex;gap:20px}.contact-details i{font-size:23px;color:var(--primary)}.contact-details strong{font-size:14px;display:block}.contact-details span,.contact-details a{font-size:14px;color:var(--muted)}.contact-tip{margin-top:35px;padding:26px;background:var(--soft);border-radius:12px}.contact-tip i{font-size:27px}.contact-tip h3{margin-top:14px;font-size:19px}.contact-tip p{font-size:14px;margin:0}.mobile-menu{position:fixed;right:0;top:0;width:min(420px,100%);height:100dvh;z-index:100;background:var(--paper);padding:26px;transform:translateX(100%);transition:transform .35s;overflow-y:auto;visibility:hidden}.mobile-menu.open{transform:translateX(0);visibility:visible}.menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:45px}.mobile-menu nav{display:flex;flex-direction:column;margin:20px 0 30px}.mobile-menu nav a{padding:12px 0;border-bottom:1px solid var(--border);font-size:27px;font-family:Manrope}.mobile-menu nav a[aria-current]{color:var(--primary);font-weight:700}.mobile-menu>p{font-size:13px;margin-top:30px}.menu-overlay{position:fixed;inset:0;background:#102f2a70;z-index:90;backdrop-filter:blur(3px)}body.menu-open{overflow:hidden}.skip-link{position:fixed;left:20px;top:-60px;z-index:200;background:var(--primary);color:white;padding:10px}.skip-link:focus{top:10px}#lightbox{background:var(--primary-dark);color:white;border:0;border-radius:12px;padding:50px 65px 25px;width:min(1080px,94vw);max-height:94dvh;overflow:auto}#lightbox::backdrop{background:#091914e8}#lightbox figure{margin:0}#lightbox-image{height:70dvh;width:100%;object-fit:contain}#lightbox-caption{text-align:center;padding-top:15px;font-size:14px}#lightbox button{background:transparent;border:0;color:white;padding:12px;font-size:22px;position:absolute}.lightbox-close{top:8px;right:12px}.lightbox-prev{left:8px;top:45%}.lightbox-next{right:8px;top:45%}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}.reveal.shown{opacity:1;transform:none}.entrance{animation:content-arrive .95s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--entrance-delay,0ms)}.hero-visual.entrance{animation-name:image-arrive;animation-duration:1.15s}.photo-stamp{animation:stamp-float 5.5s ease-in-out infinite;transform-origin:50% 50%;will-change:transform}.photo-stamp i{animation:stamp-sparkle 4s ease-in-out infinite}.hero-visual:hover .photo-stamp{animation-play-state:paused}.developer-credit a{display:inline;font-size:inherit;font-weight:600;margin:0;color:var(--accent);text-underline-offset:4px}.developer-credit a:hover{text-decoration:underline;color:var(--accent)}.mobile-menu nav a{font-family:'DM Sans',sans-serif;font-size:19px;line-height:1.5;letter-spacing:0;padding:14px 0}.mobile-menu nav a[aria-current]{font-weight:600}.mobile-menu.open nav a{animation:menu-link-arrive .45s ease both}.mobile-menu.open nav a:nth-child(2){animation-delay:40ms}.mobile-menu.open nav a:nth-child(3){animation-delay:80ms}.mobile-menu.open nav a:nth-child(4){animation-delay:120ms}.mobile-menu.open nav a:nth-child(5){animation-delay:160ms}@keyframes content-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes image-arrive{from{opacity:0;transform:translateY(28px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes stamp-float{0%,100%{transform:translateY(0) rotate(6deg)}50%{transform:translateY(-10px) rotate(3deg)}}@keyframes stamp-sparkle{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes menu-link-arrive{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal,.entrance{opacity:1;transform:none}.photo-stamp{transform:rotate(6deg);will-change:auto}}

.contact-details>article>div{min-width:0}.contact-details a{display:block;overflow-wrap:anywhere}.contact-details a:hover{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.contact-details span{display:block}.contact-details small{display:block;font-size:12px;color:var(--primary);margin-top:6px}.footer-contact{margin-bottom:17px}.footer-contact a{overflow-wrap:anywhere;font-size:12px}.footer-grid>div{min-width:0}

.program-audience{display:block;font-size:12px;line-height:1.6;color:var(--primary);font-weight:600;margin:-4px 0 15px}.program-intro{font-size:14px;max-width:750px;margin-bottom:30px}.program-card{display:flex;flex-direction:column}.program-card>p{flex:1}.program-card>a{margin-top:auto}
/* Footer column headings: a clear hierarchy with the brand's gold accent. */
.footer-grid h3{font-family:Manrope,sans-serif;font-size:16px;font-weight:700;letter-spacing:-.015em;line-height:1.45;color:var(--paper);margin:0 0 25px;padding-bottom:14px;position:relative}.footer-grid h3:after{content:'';position:absolute;bottom:0;left:0;width:32px;height:2px;border-radius:2px;background:var(--accent)}
@media(max-width:767px){.footer-grid h3{font-size:15px;margin-bottom:20px;padding-bottom:12px}}
