:root,[data-theme=navy]{--gold: #D4A853;--gold-light: #EEC97A;--gold-dim: #96721F;--bg-primary: #0F1E35;--bg-secondary: #162440;--bg-card: #1C2D4F;--bg-nav: rgba(15,30,53,.9);--border: rgba(212,168,83,.16);--text-heading: #EEF3FA;--text-body: #C5D3E8;--text-muted: #7E95B8;--text-faint: #4A6080;--btn-text: #0F1E35;--footer-bg: #09131F;--shadow-card: 0 8px 40px rgba(0,0,0,.3);--shadow-hover: 0 12px 48px rgba(0,0,0,.4)}[data-theme=light]{--gold: #A8722A;--gold-light: #C9924A;--gold-dim: #7A5118;--bg-primary: #FAF7F2;--bg-secondary: #F2EDE4;--bg-card: #EDE5D8;--bg-nav: rgba(250,247,242,.92);--border: rgba(168,114,42,.18);--text-heading: #1C1510;--text-body: #3D3028;--text-muted: #7A6E62;--text-faint: #B0A598;--btn-text: #FFFFFF;--footer-bg: #EDE5D8;--shadow-card: 0 4px 24px rgba(168,114,42,.08);--shadow-hover: 0 10px 36px rgba(168,114,42,.14)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Jost,sans-serif;background:var(--bg-primary);color:var(--text-body);overflow-x:hidden;transition:background .35s ease,color .35s ease}.container{max-width:1100px;margin:0 auto;padding:0 2rem}section{padding:7rem 2rem;transition:background .35s ease}.section-label{font-family:Jost,sans-serif;font-size:.68rem;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem}.section-heading{font-family:Cormorant Garamond,serif;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:300;line-height:1.1;color:var(--text-heading)}.section-heading em{color:var(--gold);font-style:italic}.divider{width:60px;height:1px;background:var(--gold);opacity:.45;margin:1.8rem 0}p.lead{font-size:1.05rem;line-height:1.8;color:var(--text-muted);max-width:580px}.btn-gold{display:inline-block;padding:.85rem 2rem;background:var(--gold);color:var(--btn-text);font-family:Jost,sans-serif;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:background .2s}.btn-gold:hover{background:var(--gold-light)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(7px)}}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@media (max-width: 600px){section{padding:5rem 1.5rem}}
