@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap");:root{--navy:#0a1628;--navy-mid:#0f2136;--navy-light:#132a42;--blue:#1a4a7a;--blue-bright:#2d6a9f;--blue-glow:#4a9fd4;--gold:#c9a84c;--gold-light:#e8c97a;--cream:#f5f0e8;--cream-dark:#e8e0d0;--white:#fff;--text:#1a2332;--text-mid:#3d5068;--text-light:#6a8fac;--border:hsla(0,0%,100%,.08);--border-dark:rgba(10,22,40,.12);--max-width:1280px;--section-pad:96px;--section-pad-sm:64px;--font-display:"Playfair Display",Georgia,serif;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"DM Mono",monospace;--shadow-sm:0 2px 8px rgba(10,22,40,.08);--shadow-md:0 8px 32px rgba(10,22,40,.12);--shadow-lg:0 24px 64px rgba(10,22,40,.18);--shadow-glow:0 0 40px rgba(45,106,159,.25);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);font-weight:400;color:var(--text);background:var(--cream);line-height:1.6}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.2;color:var(--navy)}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700}h2{font-size:clamp(1.8rem,3.5vw,2.8rem)}h2,h3{font-weight:600}h3{font-size:clamp(1.3rem,2.5vw,1.8rem)}h4{font-size:1.2rem;font-weight:600}p{color:var(--text-mid);line-height:1.7}a{color:var(--blue-bright);text-decoration:none;transition:color .2s}a:hover{color:var(--gold)}img{max-width:100%;display:block}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.section{padding:var(--section-pad) 0}.section-sm{padding:var(--section-pad-sm) 0}.dark-section{background:var(--navy)}.dark-section,.dark-section h1,.dark-section h2,.dark-section h3,.dark-section h4{color:var(--cream)}.dark-section p{color:hsla(37,39%,94%,.7)}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none;text-decoration:none}.btn-primary{background:var(--gold);color:var(--navy)}.btn-primary:hover{background:var(--gold-light);color:var(--navy);transform:translateY(-1px);box-shadow:0 8px 24px rgba(201,168,76,.3)}.btn-navy{background:var(--navy);color:var(--cream)}.btn-navy:hover{background:var(--blue);color:var(--cream);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--navy);border:2px solid var(--navy)}.btn-outline:hover{background:var(--navy);color:var(--cream)}.btn-outline-light{background:transparent;color:var(--cream);border:2px solid hsla(37,39%,94%,.4)}.btn-outline-light:hover{background:hsla(37,39%,94%,.1);border-color:var(--cream);color:var(--cream)}.card{background:var(--white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:all .3s}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.accent-line{display:block;width:48px;height:3px;background:var(--gold);border-radius:2px;margin-bottom:16px}.section-label{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;display:block}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:32px}.grid-2,.grid-3{display:grid;gap:32px}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:32px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px;gap:24px}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}:root{--section-pad:64px;--section-pad-sm:48px}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--cream-dark)}::-webkit-scrollbar-thumb{background:var(--blue-bright);border-radius:4px}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media (max-width:768px){.mobile-menu-btn{display:block!important}.desktop-nav{display:none!important}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.animate-fade-up{animation:fadeUp .6s ease forwards}.animate-fade-in{animation:fadeIn .4s ease forwards}