:root {--navy:#0A2342;--navy-dark:#061529;--cream:#F8F5F0;--cream-dark:#EDE8E0;--charcoal:#3A3A3A;--orange:#D85C43;--orange-dk:#bf4d36;--green:#2E5C3D;--gold:#D4AF37;--white:#ffffff;--shadow-sm:0 2px 8px rgba(10,35,66,.08);--shadow-md:0 8px 32px rgba(10,35,66,.12);--r:4px;--rl:10px;--tr:.25s cubic-bezier(.4,0,.2,1);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans','Helvetica Neue',Arial,sans-serif;}
*, *::before, *::after {box-sizing:border-box;margin:0;padding:0;}
html {scroll-behavior:smooth;}
body {font-family:var(--sans);color:var(--charcoal);background:var(--cream);line-height:1.7;overflow-x:hidden;}
a {color:var(--orange);text-decoration:none;}
a:hover {text-decoration:underline;}
ul {list-style:none;}
#cookie-banner {position:fixed;bottom:0;left:0;right:0;background:var(--navy-dark);color:var(--cream);padding:1rem 1.5rem;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.85rem;border-top:2px solid var(--orange);}
#cookie-banner.hidden {display:none;}
#cookie-banner a {color:var(--gold);}
.btn {display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-family:var(--sans);font-size:.875rem;font-weight:600;border-radius:var(--r);transition:all var(--tr);border:none;cursor:pointer;text-decoration:none;}
.btn-primary {background:var(--orange);color:var(--white);}
.btn-primary:hover {background:var(--orange-dk);transform:translateY(-1px);color:var(--white);text-decoration:none;}
.page-hero {background:var(--navy);padding:3.5rem 0 3rem;text-align:center;}
.page-hero .eyebrow {font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.75rem;}
.page-hero h1 {font-family:var(--serif);font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--white);line-height:1.1;margin-bottom:.75rem;}
.page-hero .meta {font-size:.82rem;color:rgba(248,245,240,.45);display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:.5rem;}
.page-hero .meta span::before {content:'·';margin-right:.5rem;}
.page-hero .meta span:first-child::before {content:'';}
.content-wrap {display:grid;grid-template-columns:220px 1fr;gap:3rem;max-width:1100px;margin:0 auto;padding:3rem 1.5rem 5rem;}
.toc-sidebar {position:sticky;top:88px;align-self:start;max-height:calc(100vh - 120px);overflow-y:auto;}
.toc-sidebar h3 {font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(10,35,66,.4);margin-bottom:1rem;}
.toc-list {display:flex;flex-direction:column;gap:.1rem;}
.toc-list a {font-size:.78rem;color:#888;padding:.35rem .6rem;border-radius:var(--r);transition:color var(--tr),background var(--tr);display:block;text-decoration:none;border-left:2px solid transparent;line-height:1.4;}
.toc-list a:hover {color:var(--navy);background:var(--cream-dark);}
.toc-list a.active {color:var(--navy);font-weight:600;border-left-color:var(--orange);background:rgba(216,92,67,.05);}
.legal-article {min-width:0;}
.summary-box {background:linear-gradient(135deg,var(--navy) 0%,#1a3a5c 100%);border-radius:var(--rl);padding:1.75rem 2rem;margin-bottom:2rem;color:var(--white);}
.summary-box h3 {font-family:var(--serif);font-size:1.25rem;font-weight:600;color:var(--gold);margin-bottom:.75rem;}
.summary-box p {font-size:.88rem;color:rgba(248,245,240,.8);line-height:1.7;}
.clause {margin-bottom:2.75rem;scroll-margin-top:96px;}
.clause h2 {font-family:var(--serif);font-size:1.45rem;font-weight:700;color:var(--navy);margin-bottom:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--cream-dark);display:flex;align-items:baseline;gap:.65rem;}
.clause h2 .clause-num {font-size:.8rem;font-weight:700;color:var(--orange);font-family:var(--sans);letter-spacing:.06em;flex-shrink:0;}
.clause p {font-size:.92rem;color:var(--charcoal);line-height:1.8;margin-bottom:.9rem;}
.clause p:last-child {margin-bottom:0;}
.clause ul {margin:.5rem 0 .9rem 0;}
.clause ul li {font-size:.92rem;color:var(--charcoal);line-height:1.75;padding:.3rem 0 .3rem 1.25rem;position:relative;}
.clause ul li::before {content:'—';position:absolute;left:0;color:var(--orange);font-weight:700;}
.clause h3 {font-family:var(--serif);font-size:1.1rem;font-weight:600;color:var(--navy);margin:1.5rem 0 .6rem;}
.legal-table {width:100%;border-collapse:collapse;font-size:.8rem;margin:1rem 0 1.25rem;}
.legal-table th {background:var(--navy);color:var(--white);padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.72rem;letter-spacing:.04em;}
.legal-table td {padding:.65rem 1rem;border-bottom:1px solid var(--cream-dark);vertical-align:top;line-height:1.6;color:var(--charcoal);}
.legal-table tr:last-child td {border-bottom:none;}
.legal-table tr:nth-child(even) td {background:rgba(10,35,66,.02);}
.badge {display:inline-block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .55rem;border-radius:100px;}
.badge-required {background:rgba(216,92,67,.1);color:var(--orange);}
.badge-no {background:rgba(46,92,61,.1);color:var(--green);}
.category-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1rem 0 1.5rem;}
.cat-card {background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--rl);padding:1.25rem;}
.cat-card.necessary {border-top:3px solid var(--green);}
.cat-card.analytics {border-top:3px solid var(--navy);}
.cat-card.functional {border-top:3px solid var(--gold);}
.cat-card.marketing {border-top:3px solid var(--orange);}
.cat-card h4 {font-family:var(--serif);font-size:1rem;font-weight:600;color:var(--navy);margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem;}
.cat-card p {font-size:.78rem;color:#777;line-height:1.6;}
.browser-list {display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0;}
.browser-item {background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--r);padding:.85rem 1rem;font-size:.82rem;color:var(--charcoal);}
.browser-item strong {display:block;color:var(--navy);margin-bottom:.2rem;}
.contact-box {background:var(--navy);border-radius:var(--rl);padding:2rem;color:var(--white);margin-top:3rem;text-align:center;}
.contact-box h3 {font-family:var(--serif);font-size:1.4rem;font-weight:600;color:var(--white);margin-bottom:.5rem;}
.contact-box p {font-size:.85rem;color:rgba(248,245,240,.65);margin-bottom:1.25rem;}
.contact-box .contact-row {display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap;}
.contact-box .contact-row a {color:var(--gold);font-size:.88rem;font-weight:600;}
.legal-nav {background:var(--white);border-bottom:1px solid var(--cream-dark);padding:.6rem 0;}
.legal-nav-inner {max-width:1100px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.legal-nav a {font-size:.75rem;font-weight:600;color:#888;padding:.3rem .7rem;border-radius:100px;border:1px solid var(--cream-dark);transition:all var(--tr);text-decoration:none;}
.legal-nav a:hover {color:var(--navy);border-color:var(--navy);}
.legal-nav a.current {background:var(--navy);color:var(--white);border-color:var(--navy);}
#cc-whatsapp-btn {position:fixed;bottom:1.5rem;right:1.5rem;z-index:9998;width:48px;height:48px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(37,211,102,.4);transition:transform var(--tr);}
#cc-whatsapp-btn:hover {transform:scale(1.08);}
#cc-whatsapp-btn svg {width:26px;height:26px;fill:#fff;}
@media(max-width:860px) {
.content-wrap {grid-template-columns:1fr;}
.toc-sidebar {display:none;}
}
@media(max-width:640px) {
.btn-primary {display:none;}
.legal-table {display:block;overflow-x:auto;}
.category-grid, .browser-list {grid-template-columns:1fr;}
}
