/*!
 * kwokka-global.css
 *
 * Site-wide CSS shared across the legal pages (Privacy, Terms) and any
 * other standalone HTML pages that use the Kwokka navbar + footer chrome.
 *
 * This file consolidates what used to be ~300 lines of <style> block
 * duplicated inside both legal HTML files. Maintaining two copies in lock-
 * step was fragile: a tweak to the navbar went into one file and not the
 * other, and both files had to be re-deployed on every design change.
 *
 * How to adopt on a page:
 *   1. Enqueue this stylesheet via kwokka-quiz.php (already wired up by
 *      kwokkaquiz_enqueue_secondary_pages).
 *   2. Delete the inline <style> block from the page HTML — everything
 *      that was in there now lives below.
 *
 * Sections, in order:
 *   1. Resets + design tokens
 *   2. Navbar (desktop + mobile drawer)
 *   3. Legal-page layout (headers, tables of contents, sections)
 *   4. Site footer
 *
 * Scope: these rules are intentionally general. Page-specific styles
 * (e.g. FAQ accordions, cookie tables) still live inline in the page
 * HTML because they're genuinely unique to each page.
 */
 *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body.kwokka-legal-page ::selection{background:#c9a84c;color:#fff}body.kwokka-legal-page ::-moz-selection{background:#c9a84c;color:#fff}body.kwokka-legal-page .site-main,body.kwokka-legal-page .site-content,body.kwokka-legal-page .content-area,body.kwokka-legal-page .entry-content,body.kwokka-legal-page .wp-site-blocks,body.kwokka-legal-page .is-layout-constrained,body.kwokka-legal-page .is-layout-flow,body.kwokka-legal-page .has-global-padding,body.kwokka-legal-page article.page,body.kwokka-legal-page article.post,body.kwokka-legal-page .wp-block-post-content,body.kwokka-legal-page .post-content,body.kwokka-legal-page header.site-header,body.kwokka-legal-page .site-header,body.kwokka-legal-page .wp-block-template-part{max-width:none!important;margin:0!important;padding:0!important;margin-top:0!important;padding-top:0!important;margin-bottom:0!important;padding-bottom:0!important}:root{--bg:#f7f2df;--bg-card:#fffef9;--text:#3a352d;--text-muted:#7a7468;--accent:#8b6914;--accent2:#5a4510;--warm:#c9a84c;--highlight:#2e3a34;--border:#d6d2c8;--card-shadow:rgba(60, 50, 30, 0.1);--nav-height:72px}body.kwokka-legal-page{font-family:'Montserrat',sans-serif;background:url(/wp-content/plugins/kwokka-quiz/assets/paper-grain.svg) repeat fixed,var(--bg);color:var(--text);line-height:1.75;font-size:16px;padding-top:var(--nav-height)}body.kwokka-legal-page .kwokka-nav a,body.kwokka-legal-page .kwokka-nav a:hover,body.kwokka-legal-page .kwokka-nav a:active,body.kwokka-legal-page .kwokka-nav a:visited,body.kwokka-legal-page .mobile-drawer a,body.kwokka-legal-page .mobile-drawer a:hover,body.kwokka-legal-page .mobile-drawer a:active,body.kwokka-legal-page .mobile-drawer a:visited{text-decoration:none!important}body.kwokka-legal-page .kwokka-nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-height);background:rgb(247 242 223 / .92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgb(201 168 76 / .18);box-shadow:0 2px 16px rgb(58 50 38 / .12)}body.kwokka-legal-page .nav-inner{max-width:1200px;margin:0 auto;height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 32px}body.kwokka-legal-page .nav-social{display:flex;align-items:center;gap:14px;justify-self:start}body.kwokka-legal-page .social-icon{color:var(--text);transition:color 0.2s,transform 0.2s;display:flex}body.kwokka-legal-page .social-icon svg{width:22px;height:22px}body.kwokka-legal-page .social-icon:hover{color:var(--accent);transform:scale(1.12)}body.kwokka-legal-page .nav-brand{font-family:'Libre Baskerville',serif;font-size:1.45rem;color:var(--text);letter-spacing:.04em;justify-self:center;transition:opacity 0.25s}body.kwokka-legal-page .nav-brand:hover{opacity:.75}body.kwokka-legal-page .nav-brand em{color:var(--accent);font-style:normal}body.kwokka-legal-page .nav-links{display:flex;align-items:center;gap:8px;list-style:none;justify-self:end}body.kwokka-legal-page .nav-link{font-family:'Montserrat',sans-serif;font-size:.95rem;font-weight:600;color:var(--text);padding:10px 20px;border-radius:10px;transition:background 0.2s,color 0.2s;letter-spacing:.015em}body.kwokka-legal-page .nav-link:hover{background:rgb(201 168 76 / .1);color:var(--accent)}body.kwokka-legal-page .nav-link.active{color:var(--accent);background:rgb(139 105 20 / .07)}body.kwokka-legal-page .nav-dropdown{position:relative}body.kwokka-legal-page .dropdown-trigger{display:flex;align-items:center;gap:5px;cursor:pointer}body.kwokka-legal-page .dropdown-arrow{width:12px;height:12px;transition:transform 0.3s ease}body.kwokka-legal-page .nav-dropdown:hover .dropdown-arrow,body.kwokka-legal-page .nav-dropdown.open .dropdown-arrow{transform:rotate(180deg)}body.kwokka-legal-page .dropdown-menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);min-width:640px;background:rgb(255 253 245 / .97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgb(201 168 76 / .2);border-radius:18px;box-shadow:0 12px 48px rgb(58 50 38 / .16),0 2px 8px rgb(58 50 38 / .06);padding:24px;opacity:0;visibility:hidden;transform:translateX(-50%) translateY(8px);transition:opacity 0.3s ease,transform 0.3s ease,visibility 0.3s;pointer-events:none}body.kwokka-legal-page .dropdown-menu::before{content:'';position:absolute;top:-14px;left:0;right:0;height:16px}body.kwokka-legal-page .nav-dropdown:hover .dropdown-menu,body.kwokka-legal-page .nav-dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}body.kwokka-legal-page .dropdown-heading{font-family:'Libre Baskerville',serif;font-size:.88rem;color:#9a8c78;text-transform:uppercase;letter-spacing:.1em;padding-bottom:14px;border-bottom:1px solid rgb(201 168 76 / .15);margin-bottom:16px}body.kwokka-legal-page .dropdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}body.kwokka-legal-page .dropdown-item{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:12px;text-decoration:none;color:var(--text);transition:background 0.2s,transform 0.15s}body.kwokka-legal-page .dropdown-item:hover{background:rgb(201 168 76 / .1);transform:translateX(3px)}body.kwokka-legal-page .dropdown-item-num{font-family:'Libre Baskerville',serif;font-size:.78rem;font-weight:700;color:#fff;background:var(--accent);width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}body.kwokka-legal-page .dropdown-item-name{font-size:.92rem;font-weight:500;line-height:1.3}body.kwokka-legal-page .mobile-nav-section{margin-bottom:24px}body.kwokka-legal-page .mobile-section-title{font-family:'Libre Baskerville',serif;font-size:.88rem;color:#9a8c78;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;padding-top:8px}body.kwokka-legal-page .mobile-types-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}body.kwokka-legal-page .mobile-type-link{display:flex;align-items:center;gap:10px;padding:12px 10px;border-radius:10px;text-decoration:none;color:var(--text);font-size:.92rem;font-weight:500;transition:background 0.2s}body.kwokka-legal-page .mobile-type-link:hover{background:rgb(201 168 76 / .1)}body.kwokka-legal-page .mobile-type-num{font-family:'Libre Baskerville',serif;font-size:.7rem;font-weight:700;color:#fff;background:var(--accent);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}body.kwokka-legal-page .nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;z-index:1001}body.kwokka-legal-page .nav-hamburger span{display:block;width:28px;height:3px;background:var(--accent);border-radius:2px;transition:transform 0.3s ease,opacity 0.3s ease}body.kwokka-legal-page .nav-hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}body.kwokka-legal-page .nav-hamburger.open span:nth-child(2){opacity:0}body.kwokka-legal-page .nav-hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}body.kwokka-legal-page .mobile-drawer{display:none;position:fixed;top:var(--nav-height);left:0;right:0;bottom:0;background:rgb(247 242 223 / .98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:999;overflow-y:auto;padding:28px;transform:translateY(-10px);opacity:0;transition:opacity 0.35s ease,transform 0.35s ease;pointer-events:none}body.kwokka-legal-page .mobile-drawer.visible{transform:translateY(0);opacity:1;pointer-events:auto}body.kwokka-legal-page .mobile-nav-link{display:block;font-family:'Montserrat',sans-serif;font-size:1.15rem;font-weight:600;color:var(--text);padding:16px 0;border-bottom:1px solid rgb(201 168 76 / .12);transition:color 0.2s}body.kwokka-legal-page .mobile-nav-link:hover{color:var(--accent)}@media (max-width:820px){body.kwokka-legal-page .nav-links{display:none}body.kwokka-legal-page .nav-hamburger{display:flex;justify-self:end}body.kwokka-legal-page .mobile-drawer{display:block}body.kwokka-legal-page .nav-social svg{width:18px;height:18px}body.kwokka-legal-page .nav-social{gap:10px}body.kwokka-legal-page .nav-brand{font-size:1.25rem}}body.kwokka-legal-page .legal-hero{max-width:780px;margin:0 auto;padding:3.5rem 1.5rem 1.25rem;text-align:center}body.kwokka-legal-page .legal-pre-title{font-family:'Libre Baskerville',serif;font-style:italic;font-size:.95rem;color:var(--text-muted);letter-spacing:.04em;margin-bottom:.75rem}body.kwokka-legal-page .legal-title{font-family:'Libre Baskerville',serif;font-size:clamp(2rem, 5vw, 2.85rem);font-weight:700;color:var(--highlight);line-height:1.15;letter-spacing:-.01em}body.kwokka-legal-page .legal-updated{font-size:.85rem;color:var(--text-muted);margin-top:1rem;letter-spacing:.02em}body.kwokka-legal-page .legal-notice{max-width:780px;margin:2rem auto 0;padding:1rem 1.25rem;background:rgb(201 168 76 / .09);border-left:3px solid var(--warm);border-radius:6px;font-size:.9rem;color:var(--text)}body.kwokka-legal-page .legal-notice strong{color:var(--highlight)}body.kwokka-legal-page .legal-content{max-width:780px;margin:0 auto;padding:2rem 1.5rem 4rem}body.kwokka-legal-page .legal-content h2{font-family:'Libre Baskerville',serif;font-size:1.5rem;color:var(--highlight);margin-top:2.75rem;margin-bottom:.75rem;letter-spacing:-.005em;line-height:1.3}body.kwokka-legal-page .legal-content h2:first-child{margin-top:0}body.kwokka-legal-page .legal-content h3{font-family:'Libre Baskerville',serif;font-size:1.1rem;color:var(--accent2);margin-top:1.5rem;margin-bottom:.5rem}body.kwokka-legal-page .legal-content p{margin-bottom:1rem;color:var(--text)}body.kwokka-legal-page .legal-content ul,body.kwokka-legal-page .legal-content ol{margin:.75rem 0 1.25rem 1.5rem;padding-left:.5rem}body.kwokka-legal-page .legal-content li{margin-bottom:.55rem;color:var(--text)}body.kwokka-legal-page .legal-content strong{color:var(--highlight);font-weight:600}body.kwokka-legal-page .legal-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color 0.2s}body.kwokka-legal-page .legal-content a:hover{color:var(--accent2)}body.kwokka-legal-page .legal-content .toc{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:2.5rem}body.kwokka-legal-page .legal-content .toc h2{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:0 0 .75rem;font-family:'Montserrat',sans-serif;font-weight:600}body.kwokka-legal-page .legal-content .toc ol{margin:0;padding-left:1.25rem;font-size:.92rem;columns:2;column-gap:1.5rem}body.kwokka-legal-page .legal-content .toc li{margin-bottom:.3rem;break-inside:avoid}body.kwokka-legal-page .legal-content .toc a{text-decoration:none;color:var(--text)}body.kwokka-legal-page .legal-content .toc a:hover{color:var(--accent)}@media (max-width:640px){body.kwokka-legal-page .legal-hero{padding:2.25rem 1.25rem 1rem}body.kwokka-legal-page .legal-content{padding:1.5rem 1.25rem 3rem}body.kwokka-legal-page .legal-content .toc ol{columns:1}}body.kwokka-legal-page .kwokka-footer{--kf-bg:#f7f2df;--kf-text:#3a352d;--kf-muted:#7a7468;--kf-accent:#8b6914;--kf-border:rgba(201, 168, 76, 0.18);background:var(--kf-bg);color:var(--kf-muted);border-top:1px solid var(--kf-border);padding:2.25rem 1.5rem 2rem;margin-top:4rem;font-family:'Montserrat',sans-serif;position:relative;z-index:1}body.kwokka-legal-page .kwokka-footer-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.85rem;text-align:center}body.kwokka-legal-page .kwokka-footer-nav{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .75rem;font-size:.88rem;letter-spacing:.015em}body.kwokka-legal-page .kwokka-footer-nav a{color:var(--kf-text);text-decoration:none!important;padding:.25rem .4rem;border-radius:6px;transition:color 0.2s ease,background 0.2s ease}body.kwokka-legal-page .kwokka-footer-nav a:hover,body.kwokka-legal-page .kwokka-footer-nav a:focus-visible{color:var(--kf-accent);background:rgb(201 168 76 / .08);outline:none}body.kwokka-legal-page .kwokka-footer-sep{color:var(--kf-muted);opacity:.5;font-size:.9rem;user-select:none}body.kwokka-legal-page .kwokka-footer-meta{font-size:.78rem;color:var(--kf-muted);letter-spacing:.02em;opacity:.85}@media (max-width:600px){body.kwokka-legal-page .kwokka-footer{padding:1.75rem 1.25rem 1.5rem;margin-top:2.5rem}body.kwokka-legal-page .kwokka-footer-inner{gap:.75rem}body.kwokka-legal-page .kwokka-footer-nav{gap:.35rem .55rem;font-size:.85rem}body.kwokka-legal-page .kwokka-footer-meta{font-size:.74rem}}