/* DataDab shared header + footer styles. Loaded by every static HTML page.
   See /assets/css/header-footer.css */

:root{--color-ivory:#FDFBF7;--color-sand:#F5F1E8;--color-warm-gray:#D4CFC4;--color-charcoal:#2C2C2C;--color-deep-navy:#1A2332;--color-forest:#2F4538;--color-sage:#7B9B85;--color-bronze:#B8956A;--color-rust:#A85C49;--color-cream:#FAF8F3;--font-display:'Cormorant Garamond',serif;--font-body:'DM Sans',sans-serif;--font-accent:'Instrument Serif',serif;--space-xs:0.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:6rem;--space-2xl:8rem;--transition-smooth:cubic-bezier(0.4,0,0.2,1);--transition-bounce:cubic-bezier(0.68,-0.55,0.265,1.55);}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--color-ivory);color:var(--color-charcoal);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body::before{content:'';position:fixed;top:0;left:0;width:100%;height:100%;opacity:0.03;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");z-index:1;}
nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(253,251,247,0.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(212,207,196,0.3);padding:1.25rem 0;transition:background-color 0.3s var(--transition-smooth),border-color 0.3s var(--transition-smooth);}
.nav-container{max-width:1400px;margin:0 auto;padding:0 3rem;display:flex;justify-content:space-between;align-items:center;gap:2rem;}
.logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;transition:opacity 0.3s var(--transition-smooth);}
.logo img{height:22px;width:auto;aspect-ratio:auto;}
.logo:hover{opacity:0.8;}
.nav-links{display:flex;gap:2rem;align-items:center;flex-wrap:nowrap;}
.nav-links a:not(.cta-button){font-size:0.95rem;font-weight:500;color:var(--color-charcoal);text-decoration:none;transition:color 0.3s var(--transition-smooth);white-space:nowrap;}
.nav-links a:not(.cta-button):hover{color:var(--color-bronze);}
.cta-button{padding:0.75rem 1.75rem;background:var(--color-deep-navy);color:var(--color-ivory)!important;border:none;border-radius:100px;font-family:var(--font-body);font-size:0.9rem;font-weight:600;cursor:pointer;transition:background-color 0.3s var(--transition-smooth),transform 0.3s var(--transition-smooth),box-shadow 0.3s var(--transition-smooth);text-decoration:none;display:inline-block;white-space:nowrap;flex-shrink:0;}
.cta-button::after{display:none !important;}
.cta-button:hover{background:var(--color-forest);transform:translateY(-2px);box-shadow:0 8px 20px rgba(47,69,56,0.2);}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:0.5rem;flex-shrink:0;z-index:1001;}
.hamburger span{display:block;width:24px;height:2px;background:var(--color-deep-navy);margin:5px 0;transition:all 0.3s var(--transition-smooth);}
.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.hamburger.active span:nth-child(2){opacity:0;}
.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(253,251,247,0.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:999;padding:6rem 2rem 2rem;flex-direction:column;gap:1.5rem;overflow-y:auto;}
.mobile-menu .mobile-cta{margin-top:1rem;padding:1rem 2rem;background:var(--color-deep-navy);color:var(--color-ivory)!important;text-align:center;border-radius:100px;font-family:var(--font-body);font-size:1rem;font-weight:600;border:none;}
.mobile-menu a{font-family:var(--font-display);font-size:1.5rem;color:var(--color-deep-navy);text-decoration:none;font-weight:500;padding:0.75rem 0;border-bottom:1px solid rgba(212,207,196,0.3);}
.mobile-menu a:hover{color:var(--color-bronze);}
.mobile-menu.active{display:flex;}
footer{background:var(--color-deep-navy);color:var(--color-ivory);padding:4rem 3rem 2rem;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding-top:2rem;text-align:center;font-size:0.85rem;opacity:0.6;}
.footer-brand{display:flex;align-items:center;margin-bottom:1rem;}
.footer-brand img{height:28px;width:auto;filter:brightness(0)invert(1);}
.footer-column h3{font-family:var(--font-body);font-size:0.85rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:1.5rem;color:var(--color-bronze);}
.footer-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem;}
.footer-links{list-style:none;}
.footer-links a{color:var(--color-ivory);text-decoration:none;font-size:0.9rem;opacity:0.7;transition:all 0.3s var(--transition-smooth);}
.footer-links a:hover{opacity:1;color:var(--color-bronze);padding-left:5px;}
.footer-links li{margin-bottom:0.75rem;}
.footer-tagline{font-size:0.9rem;opacity:0.7;line-height:1.6;}

@media(max-width:1200px){
.nav-links{gap:1.5rem;}
.nav-links a:not(.cta-button){font-size:0.9rem;}
.cta-button{padding:0.65rem 1.5rem;font-size:0.85rem;}
}

@media(max-width:1024px){
.footer-container{grid-template-columns:1fr 1fr;}
}

@media(max-width:900px){
.nav-links a:not(.cta-button):nth-child(1),.nav-links a:not(.cta-button):nth-child(2){display:none;}
}

@media(max-width:768px){
.nav-container{padding:0 1.5rem;}
.nav-links{gap:1rem;}
.nav-links a:not(.cta-button){display:none;}
.cta-button{padding:0.6rem 1.25rem;font-size:0.85rem;}
.footer-container{grid-template-columns:1fr;}
}

@media(max-width:768px){
.hamburger{display:block;}
.nav-links{display:none;}
.mobile-menu{display:none;}
.mobile-menu.active{display:flex;}
}

@media(max-width:480px){
.logo{font-size:1.5rem;}
.cta-button{padding:0.55rem 1rem;font-size:0.8rem;}
.mobile-menu a{font-size:1.25rem;}
}
