.site-footer{margin-top:var(--space-16);padding-top:var(--space-12);padding-bottom:var(--space-8);background:radial-gradient(circle at top,rgba(185,140,56,0.22),transparent 55%),var(--color-bg-alt);border-top:1px solid rgba(74,74,80,0.9)}.footer-main{display:flex;flex-direction:column;gap:var(--space-8)}.footer-brand{display:flex;align-items:center;gap:var(--space-4)}.footer-logo{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--color-accent),#3a0b0b);box-shadow:0 0 0 1px rgba(229,201,122,0.55),0 18px 35px rgba(0,0,0,0.85)}.footer-brand-text{display:flex;flex-direction:column;gap:4px}.footer-brand-name{text-transform:uppercase;letter-spacing:0.18em;font-size:0.78rem;color:var(--color-heading);font-family:var(--font-sans)}.footer-brand-tagline{font-size:0.85rem;color:var(--gray-700)}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-8)}.footer-heading{font-size:0.95rem;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:var(--space-4)}.footer-links{display:flex;flex-direction:column;gap:var(--space-2)}.footer-links a{font-size:0.9rem;color:var(--gray-700);transition:color var(--transition-base),transform var(--transition-fast)}.footer-links a:hover{color:var(--color-accent);transform:translateX(2px)}.footer-contact .footer-text{font-size:0.9rem;color:var(--gray-800);margin-bottom:var(--space-4)}.footer-cta{font-size:0.78rem;padding-inline:var(--space-5)}.footer-bottom{border-top:1px solid rgba(74,74,80,0.9);padding-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.footer-note{font-size:0.8rem;color:var(--gray-700);max-width:720px}.footer-copy{font-size:0.78rem;color:var(--gray-700)}@media (max-width:960px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.site-footer{padding-top:var(--space-10);padding-bottom:var(--space-6)}.footer-main{gap:var(--space-6)}.footer-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.footer-brand{align-items:flex-start}.footer-note{font-size:0.78rem}}.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:40;background:linear-gradient(to top,rgba(15,15,16,0.98),rgba(15,15,16,0.96));border-top:1px solid rgba(74,74,80,0.95);box-shadow:0 -18px 40px rgba(0,0,0,0.85);transform:translateY(100%);opacity:0;pointer-events:none;transition:transform var(--transition-slow),opacity var(--transition-slow)}.cookie-banner.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}.cookie-banner-inner{max-width:var(--container-max-width);margin:0 auto;padding:var(--space-4) var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.cookie-banner-title{font-size:0.9rem;margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:0.16em}.cookie-banner-text p{font-size:0.85rem;color:var(--gray-700);margin:0}.cookie-banner-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.cookie-banner-actions .btn-sm{min-width:140px;justify-content:center}@media (max-width:768px){.cookie-banner-inner{flex-direction:column;align-items:flex-start;padding-inline:var(--space-4)}.cookie-banner-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.cookie-banner-actions .btn-sm{flex:1}}.cookie-banner[hidden]{display:none}.age-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:opacity var(--transition-slow),visibility var(--transition-slow)}.age-modal.is-active{visibility:visible;opacity:1}.age-modal-backdrop{position:absolute;inset:0;background:radial-gradient(circle at top,rgba(0,0,0,0.7),rgba(0,0,0,0.95));backdrop-filter:blur(6px)}.age-modal-dialog{position:relative;max-width:520px;width:100%;padding:0 var(--space-4)}.age-modal-content{position:relative;z-index:1;background:radial-gradient(circle at top left,rgba(185,140,56,0.18),transparent 55%),var(--color-card);border-radius:var(--radius-card);border:1px solid rgba(229,201,122,0.5);box-shadow:var(--shadow-elevated);padding:var(--space-6)}.age-modal-title{font-size:1.4rem;margin-bottom:var(--space-4)}.age-modal-text{font-size:0.95rem;color:var(--gray-800);margin-bottom:var(--space-3)}.age-modal-subtext{font-size:0.82rem;color:var(--gray-700);margin-bottom:var(--space-6)}.age-modal-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.age-modal-actions .btn{flex:1;justify-content:center;min-width:150px}@media (max-width:480px){.age-modal-content{padding:var(--space-5)}.age-modal-title{font-size:1.2rem}}