:root{--color-primary: #133447;--color-secondary: #2C709B;--color-accent: #92C6DF;--color-bg: #FFFFFF;--color-bg-alt: #F4F8FB;--color-text: #133447;--color-text-light: #5A7185;--color-border: #E2E8F0;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 8rem;--container-width: 1200px;--header-height: 90px;--border-radius: 4px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);line-height:1.2;font-weight:400}h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-.02em}h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--spacing-md)}h3{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--spacing-sm);max-width:70ch}a{color:inherit;text-decoration:none;transition:all .3s ease}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0;position:relative}.section-alt{background-color:var(--color-bg-alt)}.text-center{text-align:center}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-light{color:var(--color-text-light)}.uppercase-tracking{text-transform:uppercase;letter-spacing:.15em;font-size:.85rem;font-weight:600}.desktop-only{display:flex!important}.mobile-only{display:none!important}@media (max-width: 900px){.desktop-only{display:none!important}.mobile-only{display:flex!important}}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:var(--color-primary);z-index:2000;padding:2rem;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-menu-overlay.open{opacity:1;pointer-events:all}.mobile-nav-link{font-family:var(--font-heading);font-size:2rem;color:#fff;margin-bottom:2rem;opacity:0;transform:translateY(20px);transition:all .4s ease}.mobile-menu-overlay.open .mobile-nav-link{opacity:1;transform:translateY(0)}.mobile-menu-toggle{background:none;border:none;color:var(--color-primary);font-size:1.5rem;cursor:pointer;z-index:2001;position:relative}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2rem;border-radius:50px;font-weight:600;font-family:var(--font-body);transition:all .3s ease;cursor:pointer;border:1px solid transparent;gap:.5rem}.btn-primary{background-color:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}.btn-primary:hover{background-color:var(--color-primary);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #13344726}.btn-outline{background-color:transparent;color:var(--color-secondary);border-color:var(--color-secondary)}.btn-outline:hover{background-color:var(--color-secondary);color:#fff}.card{background:#fff;padding:var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-border);transition:all .3s ease}.card:hover{border-color:var(--color-secondary);transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}.grid-2{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}.grid-3{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media (min-width: 768px){.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-1-2{grid-template-columns:1fr 2fr}.grid-2-3{grid-template-columns:minmax(300px,1fr) 1.5fr}}.grid-1-2,.grid-2-3{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}.header{position:sticky;top:0;z-index:1000;background-color:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05);transition:all .3s ease}.header.scrolled{box-shadow:0 4px 20px #0000000d}.nav-link{font-weight:500;position:relative}.nav-link:after{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:var(--color-secondary);transition:width .3s ease}.nav-link:hover:after,.nav-link.active:after{width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .8s ease forwards}
