:root {
  --ink:#0A0A0A;--bg:#FAF8F3;--bg-warm:#F2EDE3;--surface:#FFFFFF;--text:#1A1A1A;--text-soft:#4A4A4A;--text-mute:#7A7A7A;--line:#E5E0D5;--hot:#E63E11;--hot-deep:#B82D08;--gold:#C9A227;--green:#1F6F47;
  --r-sm:6px;--r-md:12px;--r-lg:20px;--r-xl:28px;--r-full:999px;
}
body { font-family:'Inter',sans-serif; background:var(--bg); color:var(--text); line-height:1.7; -webkit-font-smoothing:antialiased; }
.wrap { max-width:1200px; margin:0 auto; padding:0 24px; }
.wrap-narrow { max-width:820px; margin:0 auto; padding:0 24px; }

h1,h2,h3 { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; letter-spacing:-0.025em; color:var(--ink); }
h1 { font-size:clamp(36px,5vw,60px); letter-spacing:-0.035em; line-height:1.05; font-weight:800; }
h2 { font-size:clamp(22px,2.6vw,28px); margin:48px 0 16px; letter-spacing:-0.02em; }
h3 { font-size:18px; margin:28px 0 12px; }
em.script { font-family:'Instrument Serif',serif; font-style:italic; color:var(--hot); font-weight:400; }

.eyebrow { font-size:11px; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--hot); display:inline-flex; align-items:center; gap:10px; }
.eyebrow::before { content:''; width:24px; height:1px; background:var(--hot); }

/* (Header / NAV / disclosure styles live in common.css) */

.page-head { padding:80px 0 48px; position:relative; overflow:hidden; }
.page-head::before { content:''; position:absolute; top:-150px; right:-150px; width:500px; height:500px; background:radial-gradient(circle,rgba(230,62,17,0.06) 0%,transparent 60%); border-radius:50%; }
.page-head .eyebrow { margin-bottom:20px; position:relative; }
.page-head h1 { max-width:800px; margin-bottom:24px; position:relative; }
.page-head h1 em { font-style:italic; color:var(--hot); }
.last-updated { font-size:14px; color:var(--text-mute); font-weight:500; display:inline-flex; align-items:center; gap:10px; padding:8px 14px; background:var(--surface); border:1px solid var(--line); border-radius:var(--r-full); position:relative; }

.content { padding:40px 0 100px; }
.content p { font-size:16px; color:var(--text-soft); line-height:1.75; margin-bottom:18px; }
.content p strong { color:var(--ink); font-weight:600; }
.content ul,.content ol { margin:18px 0 24px 28px; font-size:16px; color:var(--text-soft); }
.content li { margin-bottom:10px; line-height:1.7; }
.content li strong { color:var(--ink); font-weight:600; }
.content a { color:var(--hot); text-decoration:underline; text-underline-offset:2px; font-weight:500; }

.callout { background:var(--bg-warm); border-left:3px solid var(--hot); border-radius:var(--r-md); padding:20px 24px; margin:28px 0; }
.callout p { margin-bottom:0; font-size:15px; }
.callout strong { color:var(--ink); }

.cookie-table { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-xl); overflow:hidden; margin:32px 0; }
.cookie-row { display:grid; grid-template-columns:1.2fr 1fr 1.4fr; border-bottom:1px solid var(--line); }
.cookie-row:last-child { border-bottom:none; }
.cookie-row.head { background:var(--ink); color:white; }
.cookie-cell { padding:18px 22px; font-size:14px; border-right:1px solid var(--line); display:flex; align-items:center; }
.cookie-row.head .cookie-cell { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:13px; letter-spacing:0.04em; text-transform:uppercase; border-right:1px solid rgba(255,255,255,0.1); }
.cookie-cell:last-child { border-right:none; }
.cookie-cell.name { color:var(--ink); font-weight:600; font-family:'Bricolage Grotesque',sans-serif; }
.cookie-cell.purpose { color:var(--text-soft); }
.cookie-cell.dur { color:var(--green); font-weight:500; }

.category-card { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-xl); padding:28px 32px; margin:20px 0; }
.category-card h3 { margin:0 0 8px; font-size:20px; }
.category-card .req-tag {
  display:inline-block;
  background:var(--green);
  color:white;
  padding:3px 10px;
  border-radius:var(--r-full);
  font-size:10.5px;
  font-weight:700;
  letter-spacing:0.04em;
  margin-bottom:14px;
  text-transform:uppercase;
}
.category-card .req-tag.optional { background:var(--gold); color:var(--ink); }
.category-card p { font-size:15px; margin-bottom:10px; }

.browser-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin:24px 0; }
.browser-card { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); padding:20px 24px; text-decoration:none; transition:all 0.2s; }
.browser-card:hover { border-color:var(--hot); transform:translateY(-2px); }
.browser-card .name { font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:16px; color:var(--ink); margin-bottom:4px; }
.browser-card .desc { font-size:13px; color:var(--text-mute); }

.contact-box { background:var(--ink); color:white; border-radius:var(--r-xl); padding:36px 40px; margin:48px 0; }
.contact-box h3 { color:white; margin-top:0; font-size:22px; margin-bottom:16px; }
.contact-box p { color:rgba(255,255,255,0.78); margin-bottom:8px; font-size:14.5px; }
.contact-box strong { color:white; }
.contact-box a { color:var(--gold); }

/* (Footer styles live in common.css) */

@media (max-width:900px) {
  .browser-grid { grid-template-columns:1fr; }
}
@media (max-width:640px) {
  .wrap { padding:0 20px; }
  .page-head { padding:56px 0 32px; }
  .content { padding:32px 0 64px; }
  .cookie-row { grid-template-columns:1fr; }
  .cookie-cell { border-right:none; border-bottom:1px solid var(--line); }
  .cookie-row.head { display:none; }
}
