/* ===== CSS VARIABLES ===== */
:root {
    --frost-50:#f0f7ff;--frost-100:#ddeeff;--frost-200:#b3d9ff;--frost-300:#7bbfff;
    --frost-400:#3d9eff;--frost-500:#1a7ce6;--frost-600:#0d5fb8;--frost-700:#0a4a8f;
    --slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;
    --slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#374151;--slate-700:#334155;
    --slate-800:#1e293b;--slate-900:#0f172a;
    --emerald-400:#34d399;--emerald-500:#10b981;--emerald-600:#059669;
    --amber-500:#f59e0b;--coral-500:#ef4444;
    --white:#ffffff;
    --font-display:'Fraunces',Georgia,serif;
    --font-body:'DM Sans',-apple-system,sans-serif;
    --shadow-sm:0 1px 2px rgba(15,23,42,0.05);--shadow-md:0 4px 12px rgba(15,23,42,0.08);
    --shadow-lg:0 12px 32px rgba(15,23,42,0.1);
    --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;
}

/* ===== ANIMATIONS ===== */
@keyframes pulse {
    0%,100% { opacity:1; }
    50% { opacity:0.4; }
}
@keyframes fadeUp {
    from { opacity:0; transform:translateY(8px); }
    to { opacity:1; transform:translateY(0); }
}

/* ===== RESET & BASE ===== */
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
    font-family:var(--font-body);
    color:var(--slate-800);
    background:var(--white);
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}

/* ===== NAV ===== */
.nav {
    position:fixed; top:0; left:0; right:0; z-index:100;
    background:rgba(255,255,255,0.95);
    border-bottom:1px solid var(--slate-200);
    will-change:box-shadow;
}
.nav-inner {
    max-width:1120px; margin:0 auto; padding:0 24px;
    height:60px; display:flex; align-items:center; justify-content:space-between;
}
.nav-logo {
    font-family:var(--font-display); font-weight:700; font-size:1.2rem;
    color:var(--frost-600); text-decoration:none;
    display:flex; align-items:center; gap:8px;
}
.nav-logo span {
    background:var(--frost-600); color:#fff;
    padding:2px 8px; border-radius:4px;
    font-size:0.75rem; font-family:var(--font-body);
    font-weight:600; letter-spacing:0.03em;
}
.nav-links { display:flex; gap:24px; align-items:center; }
.nav-links a {
    font-size:0.85rem; font-weight:500; color:var(--slate-600);
    text-decoration:none; transition:color 0.2s;
}
.nav-links a:hover { color:var(--frost-600); }
.nav-wa {
    display:inline-flex; align-items:center; gap:6px;
    background:#25D366; color:#fff;
    padding:8px 14px; border-radius:var(--radius-sm);
    font-size:0.82rem; font-weight:600;
    text-decoration:none; transition:all 0.2s;
}
.nav-wa:hover { background:#1fb855; transform:translateY(-1px); }

/* ===== BREADCRUMB ===== */
.breadcrumb {
    max-width:1120px; margin:0 auto;
    padding:76px 24px 0; font-size:0.78rem; color:var(--slate-600);
}
.breadcrumb a { color:var(--slate-700); text-decoration:none; }
.breadcrumb a:hover { color:var(--frost-500); }

/* ===== SECTIONS (shared) ===== */
section { max-width:1120px; margin:0 auto; padding:72px 24px; }
.section-label {
    font-size:0.72rem; font-weight:700; text-transform:uppercase;
    letter-spacing:0.1em; color:var(--frost-600); margin-bottom:6px;
}
.section-title {
    font-family:var(--font-display); font-size:1.9rem;
    font-weight:700; color:var(--slate-900); margin-bottom:6px;
}
.section-sub {
    font-size:0.95rem; color:var(--slate-600);
    max-width:600px; margin-bottom:36px;
}

/* ===== FOOTER ===== */
footer {
    max-width:1120px; margin:0 auto; padding:32px 24px;
    border-top:1px solid var(--slate-200);
    display:flex; justify-content:space-between; align-items:center;
    font-size:0.78rem; color:var(--slate-600);
}
footer a { color:var(--slate-600); text-decoration:none; }
footer a:hover { color:var(--frost-600); }
footer strong { color:var(--slate-700); }
footer span { color:var(--slate-600); }
.footer-links { display:flex; gap:16px; }
.footer-profile-links { list-style:none; padding:0; margin:0; }
.footer-profile-links li { margin-bottom:4px; }
.footer-profile-links a { font-size:0.78rem; color:var(--slate-600); }

/* ===== COOKIE BANNER ===== */
.cookie-banner {
    display:none; position:fixed; bottom:0; left:0; right:0;
    background:#0f172a; color:#e2e8f0;
    padding:16px 24px; z-index:300;
    font-size:.85rem; line-height:1.6;
}
.cookie-banner.show {
    display:flex; align-items:center; justify-content:center;
    gap:16px; flex-wrap:wrap;
}
.cookie-banner a { color:#7bbfff; }
.cookie-btn {
    padding:8px 20px; border-radius:8px; border:none;
    font-size:.82rem; font-weight:600; cursor:pointer; transition:all .2s;
}
.cookie-accept { background:#0d5fb8; color:white; }
.cookie-accept:hover { background:#0a4a8f; }
.cookie-reject { background:transparent; color:#e2e8f0; border:1px solid #374151; }
.cookie-reject:hover { border-color:#e2e8f0; }

/* ===== SCROLL ANIMATIONS ===== */
.fade-in { opacity:0; transform:translateY(16px); transition:all 0.5s ease; }
.fade-in.visible { opacity:1; transform:translateY(0); }

/* ===== MOBILE RESPONSIVE (global) ===== */
@media (max-width:768px) {
    .nav-links { display:none; }
    .nav-inner { height:52px; }
    .nav-logo { font-size:1.05rem; }
    .breadcrumb { padding-top:64px; font-size:0.72rem; }
    section { padding:48px 16px; }
    .section-title { font-size:1.5rem; }
    .section-sub { font-size:0.88rem; margin-bottom:24px; }
    .section-label { font-size:0.68rem; }
    footer {
        flex-direction:column; gap:10px;
        text-align:center; padding:24px 16px;
    }
    #sticky-wa { width:48px; height:48px; bottom:16px; right:16px; }
    #sticky-wa svg { width:24px; height:24px; }
    .nav-wa { min-height:44px; padding:10px 16px; }
}

/* ===== EXIT-INTENT POPUP (deferred) ===== */
.exit-popup-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);z-index:400;align-items:center;justify-content:center}
.exit-popup-overlay.show{display:flex}
.exit-popup{background:var(--white);border-radius:16px;padding:40px 32px;max-width:460px;width:90%;text-align:center;position:relative;box-shadow:0 24px 48px rgba(0,0,0,.2)}
.exit-popup-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--slate-600);padding:4px 8px}
.exit-popup-close:hover{color:var(--slate-800)}
.exit-popup h2{font-family:'Fraunces',serif;font-size:1.4rem;font-weight:700;color:var(--slate-900);margin-bottom:8px}
.exit-popup p{font-size:.92rem;color:var(--slate-600);margin-bottom:20px;line-height:1.6}
.exit-popup form{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.exit-popup input[type="email"]{flex:1;min-width:200px;padding:12px 16px;border:1px solid var(--slate-200);border-radius:8px;font-size:.92rem;font-family:inherit;outline:none}
.exit-popup input[type="email"]:focus{border-color:var(--frost-500)}
.exit-popup button[type="submit"]{padding:12px 24px;background:var(--frost-600);color:white;border:none;border-radius:8px;font-size:.92rem;font-weight:600;cursor:pointer;font-family:inherit}
.exit-popup button[type="submit"]:hover{background:var(--frost-700)}
.exit-popup .popup-privacy{font-size:.72rem;color:var(--slate-600);margin-top:12px}
@media(max-width:768px){.exit-popup{padding:28px 20px}.exit-popup form{flex-direction:column}}
