:root{--navy: #142c4c;--navy-deep: #0d1f38;--navy-soft: #1d3a61;--gold: #b3893b;--gold-light: #cfa75e;--gold-pale: #f4ead8;--ivory: #faf8f4;--paper: #ffffff;--ink: #17202e;--slate: #4c5768;--slate-light: #71809a;--line: #e6e2d9;--line-dark: rgba(255, 255, 255, .14);--serif: "Playfair Display", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(13, 31, 56, .08);--shadow-md: 0 8px 24px rgba(13, 31, 56, .1);--shadow-lg: 0 16px 48px rgba(13, 31, 56, .16)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);line-height:1.7;color:var(--ink);background-color:var(--paper);font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.2;color:var(--navy);letter-spacing:-.01em}h1{font-size:clamp(2.25rem,5vw,3.5rem)}h2{font-size:clamp(1.75rem,3.5vw,2.5rem);margin-bottom:1rem}h3{font-size:1.35rem}h4{font-family:var(--sans);font-size:1.05rem;font-weight:600}p{line-height:1.8;color:var(--slate)}a{color:var(--gold);transition:color .2s ease,background-color .2s ease,border-color .2s ease}img{max-width:100%;height:auto}.container{max-width:1160px;margin:0 auto;padding:0 24px}.narrow{max-width:780px;margin-left:auto;margin-right:auto}.eyebrow{display:inline-block;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem}.section-intro{max-width:640px;margin:0 auto 3rem;text-align:center;font-size:1.05rem}.skip-link{position:absolute;left:-9999px;top:0;background:var(--navy);color:#fff;padding:.75rem 1.25rem;z-index:2000;border-radius:0 0 var(--radius) 0}.skip-link:focus{left:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.topbar{background:var(--navy-deep);color:#ffffffd9;font-size:.82rem;padding:.45rem 0}.topbar-inner{display:flex;justify-content:flex-end;gap:1.75rem;flex-wrap:wrap}.topbar a{color:#ffffffd9;text-decoration:none}.topbar a:hover{color:var(--gold-light)}.navbar{background-color:var(--paper);position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm)}.nav-container{display:flex;justify-content:space-between;align-items:center;min-height:76px;gap:1.5rem}.logo{display:flex;align-items:center;gap:12px;text-decoration:none}.logo img{height:52px;width:auto}.logo-text{display:flex;flex-direction:column;line-height:1.15}.logo-name{font-family:var(--serif);font-size:1.15rem;font-weight:700;color:var(--navy);letter-spacing:-.01em;white-space:nowrap}.logo-tagline{white-space:nowrap;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.nav-menu{display:flex;list-style:none;gap:1.9rem;align-items:center}.nav-menu>li>a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem;padding:.5rem 0;border-bottom:2px solid transparent;white-space:nowrap}.nav-menu>li>a:hover{color:var(--gold)}.nav-menu>li>a.active{color:var(--navy);border-bottom-color:var(--gold)}.dropdown{position:relative}.dropdown:after{content:"";position:absolute;top:100%;left:0;right:0;height:10px}.dropdown-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);background-color:var(--paper);min-width:210px;box-shadow:var(--shadow-md);border-radius:var(--radius);padding:.5rem 0;z-index:1001;border:1px solid var(--line)}.dropdown-menu a{color:var(--ink);padding:.7rem 1.25rem;display:block;text-decoration:none;font-size:.92rem;font-weight:500}.dropdown-menu a:hover{background-color:var(--ivory);color:var(--gold)}.contact-btn{background-color:var(--navy);color:#fff!important;padding:.7rem 1.5rem;border-radius:999px;text-decoration:none;font-weight:600;font-size:.9rem;white-space:nowrap;border:1px solid var(--navy)}.contact-btn:hover{background-color:var(--gold);border-color:var(--gold)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:5px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--navy);transition:transform .25s ease,opacity .25s ease}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.btn{display:inline-block;padding:.9rem 2.1rem;background-color:var(--gold);color:#fff;text-decoration:none;border-radius:999px;font-weight:600;font-size:.95rem;letter-spacing:.02em;border:1px solid var(--gold);cursor:pointer;transition:all .2s ease}.btn:hover{background-color:var(--navy);border-color:var(--navy);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-navy{background-color:var(--navy);border-color:var(--navy)}.btn-navy:hover{background-color:var(--gold);border-color:var(--gold)}.btn-outline{background:transparent;color:var(--navy);border:1px solid var(--navy)}.btn-outline:hover{background:var(--navy);color:#fff}.btn-light{background:#fff;color:var(--navy);border-color:#fff}.btn-light:hover{background:var(--gold);border-color:var(--gold);color:#fff}.btn-group{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero{background:radial-gradient(ellipse at 20% -20%,rgba(179,137,59,.22),transparent 55%),linear-gradient(160deg,var(--navy-deep) 0%,var(--navy) 60%,var(--navy-soft) 100%);background-size:cover;background-position:center;color:#fff;padding:6.5rem 0 7rem;text-align:center;position:relative;overflow:hidden}.hero-photo{background-blend-mode:normal}.hero:after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}.hero .eyebrow{color:var(--gold-light)}.hero h1{color:#fff;margin-bottom:1.25rem}.hero-lede{font-size:1.15rem;color:#ffffffd1;max-width:620px;margin:0 auto 2.5rem}.hero-stats{display:flex;justify-content:center;gap:3rem;margin-top:3.5rem;flex-wrap:wrap}.hero-stat{text-align:center}.hero-stat strong{display:block;font-family:var(--serif);font-size:1.35rem;color:var(--gold-light)}.hero-stat span{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6}.page-hero{background:linear-gradient(160deg,var(--navy-deep) 0%,var(--navy) 100%);color:#fff;padding:4.5rem 0;text-align:center;position:relative}.page-hero:after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.6}.page-hero h1{color:#fff}.page-hero p{color:#fffc;max-width:640px;margin:1rem auto 0;font-size:1.08rem}.page-hero .eyebrow{color:var(--gold-light)}.section{padding:5rem 0;background:var(--paper)}.section-ivory{background:var(--ivory)}.section-navy{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff}.section-navy h2,.section-navy h3{color:#fff}.section-navy p{color:#ffffffd1}.section-header{text-align:center;margin-bottom:3rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.split-reverse .split-media{order:2}.split-media{position:relative}.split-media img{display:block;width:100%;height:100%;min-height:320px;max-height:460px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.split-media:before{content:"";position:absolute;top:1.25rem;right:-1.25rem;bottom:-1.25rem;left:1.25rem;border:2px solid var(--gold);border-radius:var(--radius-lg);opacity:.55;pointer-events:none}.split-reverse .split-media:before{top:1.25rem;right:1.25rem;bottom:-1.25rem;left:-1.25rem}.split-body h2{margin-bottom:1.25rem}.split-body p{margin-bottom:1rem}.split-body .btn{margin-top:1rem}.grid{display:grid;gap:1.75rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:2.25rem 2rem;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.card h3{margin-bottom:.85rem}.card p{font-size:.96rem}.card-accent{border-top:3px solid var(--gold)}.card ul{color:var(--slate);padding-left:1.25rem;line-height:1.9}.price-tag{display:inline-block;margin-top:1.25rem;background:var(--gold-pale);color:var(--navy);font-weight:700;padding:.5rem 1.1rem;border-radius:999px;font-size:.95rem}.program-item{text-align:center;padding:2rem 1.5rem;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--paper);transition:transform .2s ease,box-shadow .2s ease}.program-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.program-item h3{font-family:var(--sans);font-size:1.05rem;font-weight:700;letter-spacing:.06em;color:var(--gold);margin-bottom:.6rem}.program-item p{font-size:.92rem}.price-table{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:2rem 2.25rem;box-shadow:var(--shadow-sm)}.price-table h3{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--gold);display:block}.price-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.price-row:last-child{border-bottom:none}.price-row span{color:var(--slate)}.price-row strong{color:var(--navy);white-space:nowrap}.step{display:flex;gap:1.75rem;padding:2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.step-number{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:var(--navy);color:var(--gold-light);font-family:var(--serif);font-size:1.4rem;font-weight:700;display:flex;align-items:center;justify-content:center}.step h3{margin-bottom:.75rem}.step ul{color:var(--slate);padding-left:1.25rem;line-height:1.9;margin:.5rem 0 1rem}.step p+p{margin-top:.75rem}.notice{padding:1.1rem 1.4rem;border-radius:var(--radius);margin-top:1.25rem;font-size:.95rem;line-height:1.6}.notice p{margin:0;font-size:.95rem}.notice-warn{background:#fdf6e7;border:1px solid #e8c56b}.notice-warn p,.notice-warn{color:#7a5a12}.notice-info{background:#eef4fb;border:1px solid #b6cfe8}.notice-info p,.notice-info{color:var(--navy-soft)}.notice-info a{color:var(--navy);font-weight:600}.notice-success{background:#eef8f0;border:1px solid #a8d5b2}.notice-success p,.notice-success{color:#1f5c31}.quote-block{position:relative;max-width:760px;margin:0 auto;text-align:center;padding:0 1rem}.quote-block:before{content:"“";font-family:var(--serif);font-size:5rem;line-height:1;color:var(--gold);display:block;margin-bottom:.5rem}.quote-block p{margin-bottom:1.25rem}.quote-signature{margin-top:2rem}.quote-signature strong{display:block;font-family:var(--serif);font-size:1.25rem;color:var(--navy)}.section-navy .quote-signature strong{color:var(--gold-light)}.quote-signature span{font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-light)}.section-navy .quote-signature span{color:#fff9}.cta-band{background:radial-gradient(ellipse at 80% 120%,rgba(179,137,59,.25),transparent 55%),linear-gradient(160deg,var(--navy-deep) 0%,var(--navy) 100%);background-size:cover;background-position:center;color:#fff;padding:4.5rem 0;text-align:center}.cta-band h2{color:#fff}.cta-band p{color:#fffc;max-width:560px;margin:0 auto 2rem;font-size:1.08rem}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:3.5rem;align-items:start}.contact-detail{margin-bottom:2rem}.contact-detail h3{font-family:var(--sans);font-size:.82rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}.contact-detail a{color:var(--navy);text-decoration:none;font-weight:500}.contact-detail a:hover{color:var(--gold)}.form-card{background:var(--ivory);padding:2.5rem;border-radius:var(--radius-lg);border:1px solid var(--line)}.form-field{margin-bottom:1.4rem}.form-field label{display:block;margin-bottom:.45rem;font-weight:600;font-size:.9rem;color:var(--ink)}.form-field input,.form-field select,.form-field textarea{width:100%;padding:.8rem 1rem;border:1px solid #d4cfc3;border-radius:var(--radius);font-size:1rem;font-family:var(--sans);background:var(--paper);color:var(--ink);transition:border-color .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--gold)}.form-field textarea{resize:vertical}.footer{background:var(--navy-deep);color:#ffffffc7;padding:4rem 0 2rem}.footer-content{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:3rem;margin-bottom:3rem}.footer-brand .logo-name{color:#fff;font-size:1.3rem}.footer-brand p{color:#ffffffa6;font-size:.92rem;margin-top:1rem;max-width:320px}.footer-section h3{font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light);margin-bottom:1.1rem}.footer-section p,.footer-section a{color:#ffffffc7;text-decoration:none;margin-bottom:.55rem;display:block;font-size:.94rem}.footer-section a:hover{color:var(--gold-light)}.footer-bottom{border-top:1px solid var(--line-dark);padding-top:1.5rem;text-align:center}.footer-bottom p{color:#ffffff80;font-size:.85rem}.nav-item-mobile{display:none}@media (max-width: 1040px){.nav-toggle{display:flex}.nav-item-mobile{display:block}.nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:.75rem 0 1.25rem;border-bottom:1px solid var(--line);box-shadow:var(--shadow-md)}.nav-menu.open{display:flex}.nav-menu>li>a{display:block;padding:.85rem 24px;border-bottom:none}.nav-menu>li>a.active{color:var(--gold)}.dropdown-menu{position:static;transform:none;box-shadow:none;border:none;padding:0;background:var(--ivory)}.dropdown-menu a{padding:.75rem 44px}.nav-cta-desktop{display:none}.contact-grid{grid-template-columns:1fr;gap:2.5rem}.footer-content{grid-template-columns:1fr;gap:2rem}.split{grid-template-columns:1fr;gap:2.5rem}.split-reverse .split-media{order:0}.split-media:before,.split-reverse .split-media:before{top:.9rem;right:-.9rem;bottom:-.9rem;left:.9rem}}@media (max-width: 640px){.section{padding:3.5rem 0}.hero{padding:4.5rem 0 5rem}.hero-stats{gap:1.75rem}.step{flex-direction:column;gap:1rem}.topbar-inner{justify-content:center;gap:1rem}.form-card{padding:1.75rem 1.25rem}}
