/* legal.css - delt stylesheet for politikker, kontakt og blog (Malerprisguide) */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter-400.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter-500.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/inter-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/inter-700.woff2') format('woff2')}
:root{
  --page:#FAFAF9;--card:#FFFFFF;--border:#E7E5E4;--border-strong:#D6D3D1;
  --ink:#111827;--body:#374151;--muted:#6B7280;--soft:#4B5563;
  --brand:#7C2D12;--brand-dark:#5C210D;--brand-tint:#FAF0EB;--brand-bright:#DA9271;
  --dark-2:#1C1917;--dark-text:#FAFAF9;--dark-muted:#A8A29E;--dark-border:rgba(255,255,255,.12);
  --field-bg:#F5F5F4;
  --shadow-card:0 1px 2px rgb(16 24 40/.05),0 1px 3px rgb(16 24 40/.06);
  --shadow-form:0 12px 40px rgb(16 24 40/.12);
  --r-sm:8px;--r-md:12px;--r-lg:20px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.65;color:var(--body);background:var(--page);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{text-wrap:balance;color:var(--ink);font-weight:700;letter-spacing:-0.02em}
p,li{text-wrap:pretty}
h1{font-size:clamp(2.1rem,4vw,3rem);line-height:1.08;letter-spacing:-0.03em}
h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;letter-spacing:-0.025em}
h3{font-size:1.125rem;line-height:1.4}
a{color:inherit}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
input,textarea,select{font:inherit;color:var(--ink)}
.icon{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.num{font-variant-numeric:tabular-nums}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(250,250,249,.8);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;letter-spacing:-0.02em;font-size:1.0625rem;color:var(--ink)}
.logo b{color:inherit}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{font-size:.9375rem;font-weight:500;color:var(--soft);text-decoration:none;transition:color .15s}
.nav-links a:hover{color:var(--ink)}
.nav-links a.btn,.nav-links a.btn:hover{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 26px;border-radius:var(--r-md);background:var(--brand);color:#fff;font-weight:600;font-size:1rem;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 1px 2px rgb(16 24 40/.1)}
.btn:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:0 6px 16px rgb(21 94 117/.28)}
.btn:active{transform:translateY(0)}
.btn-sm{height:42px;padding:0 18px;font-size:.9375rem}
.btn .icon{width:19px;height:19px;stroke-width:2}
/* doc layout */
.doc{padding:64px 0 96px}
.crumbs{font-size:.8125rem;color:var(--muted);margin-bottom:20px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.crumbs a{text-decoration:none;color:var(--soft)}
.crumbs a:hover{color:var(--ink)}
.doc-head h1{margin:10px 0 14px}
.doc-head .lede{font-size:1.0625rem;color:var(--soft);max-width:62ch}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:var(--brand-tint);border:1px solid #F0D9CD;color:var(--brand-dark);font-size:.8125rem;font-weight:600}
.chip .icon{width:15px;height:15px;stroke-width:1.75}
.doc-grid{display:grid;grid-template-columns:260px 1fr;gap:48px;align-items:start;margin-top:44px}
@media(max-width:900px){.doc-grid{grid-template-columns:1fr;gap:24px}}
.toc{position:sticky;top:92px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:20px;box-shadow:var(--shadow-card)}
.toc h2{font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:12px}
.toc ol{list-style:none;counter-reset:toc}
.toc li{counter-increment:toc;margin-bottom:6px}
.toc a{font-size:.875rem;text-decoration:none;color:var(--soft);display:flex;gap:8px;line-height:1.4}
.toc a:hover{color:var(--brand)}
.toc a::before{content:counter(toc) ".";color:var(--brand);font-weight:600;font-variant-numeric:tabular-nums;flex:none}
.doc-body{min-width:0}
.doc-sec{margin-bottom:44px}
.doc-sec h2{display:flex;gap:10px;align-items:baseline;margin-bottom:14px}
.doc-sec h2 .sn{color:var(--brand);font-size:.8125rem;font-weight:700;letter-spacing:.06em;flex:none;font-variant-numeric:tabular-nums}
.doc-sec p+p{margin-top:10px}
.doc-sec a{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.doc-sec ul{margin:10px 0 0 22px}
.doc-sec ul li{margin-bottom:6px}
/* tabeller */
.tbl{width:100%;border-collapse:collapse;margin:18px 0 6px;font-size:.9rem;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}
.tbl th{background:#ECFDF5;color:#064E3B;text-align:left;font-weight:600;padding:10px 14px;border-bottom:1px solid var(--border);font-size:.8125rem}
.tbl td{padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
@media(max-width:640px){.tbl{display:block;overflow-x:auto;white-space:nowrap}}
/* note-bokse */
.note{display:flex;gap:12px;padding:16px 18px;border-radius:var(--r-md);background:var(--card);border:1px solid var(--border);font-size:.9375rem;color:var(--soft);margin:18px 0}
.note .icon{width:20px;height:20px;color:var(--brand);margin-top:2px}
.note a{color:var(--brand);font-weight:600}
/* accordions */
details{border:1px solid var(--border);border-radius:var(--r-md);background:var(--card);margin-bottom:12px;box-shadow:var(--shadow-card)}
details[open]{border-color:var(--brand)}
summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;font-weight:600;color:var(--ink);cursor:pointer;list-style:none;font-size:.9688rem}
summary::-webkit-details-marker{display:none}
summary .icon{width:18px;height:18px;color:var(--muted);transition:transform .2s}
details[open] summary .icon{transform:rotate(180deg);color:var(--brand)}
.acc-body{padding:0 18px 16px;font-size:.9375rem}
/* kompakt CTA-kort, venstrestillet */
.cta-card{margin-top:56px;padding:20px 24px;background:linear-gradient(180deg,var(--brand-tint),var(--page));border:1px solid #F0D9CD;border-radius:var(--r-lg)}
.cta-card h2{font-size:1.25rem;margin:0 0 6px}
.cta-card p{font-size:.9375rem;color:var(--soft);margin-bottom:16px}
.cta-card .btn{height:48px;padding:0 22px;font-size:.9375rem}
.cta-card a.btn{color:#fff}
/* footer */
footer{background:var(--dark-2);color:var(--dark-muted);padding:56px 0 40px;border-top:1px solid var(--dark-border)}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:44px}
.foot-brand .logo{color:var(--dark-text)}
.foot-brand .logo b{color:inherit}
.foot-brand p{font-size:.9375rem;margin-top:14px;max-width:34ch}
.foot-col h4{color:var(--dark-text);font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.foot-col ul{list-style:none}
.foot-col li{margin-bottom:10px}
.foot-col a{font-size:.9375rem;text-decoration:none;transition:color .15s}
.foot-col a:hover{color:var(--dark-text)}
.foot-col .linkbtn{font-size:.9375rem;color:var(--dark-muted);padding:0;transition:color .15s}
.foot-col .linkbtn:hover{color:var(--dark-text)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding-top:24px;border-top:1px solid var(--dark-border);font-size:.8125rem}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:720px){
  .nav-links a{display:none}
  .foot-grid{grid-template-columns:1fr;gap:36px}
  .foot-bottom{flex-direction:column;align-items:flex-start}
  .doc{padding:40px 0 72px}
}