/* glass/families/guides.css - the guides family (B2). Loaded after core.css (tokens + components); it never redefines a core selector.
   Scope: body.g-guide (article guides) and body.g-guidehub (guider/index.html). Mobile first: base = 320-390 px, then min-width steps.
   The article/FAQ/hero/TOC zones come raw from the generator (guider/src); every class they use is styled here:
   hero guide-hero hero-eyebrow dot hero-lede guide-meta | guide-toc guide-toc-title | guide-body (h2 h3 p ul ol table strong em a)
   stat-grid stat-card stat-num stat-label | fact-box fact-box-title | guide-figure guide-video | guide-table-wrap | guide-kilde
   guide-cta-inline btn-primary | guide-faq faq-item faq-q faq-a | qz-* (practice test) | bs-* (boat check) | knop-calculator */

/* ---------- compat tokens: the raw zones (and the quiz/boat-check inline <style>) use the old guide tokens ---------- */
.g-guide{
  --font-ui:var(--g-font-ui);--font-masthead:var(--g-font-display);--ease-out:var(--g-ease-out);
  --color-accent-wood:var(--g-red);--color-text-on-read-body:var(--g-ink-soft);--color-surface-read:#fff;--color-surface-read-warm:#fff;
  --color-link-on-read:var(--g-red);--color-link-on-read-hover:var(--g-red-hover);--color-action:var(--g-red);--color-surface-action-tint:#bc1c2b12;
  --sj-green-600:#1b6e43;--sj-white:#fff;--red:var(--g-red);--sj-red-600:var(--g-red);
  --gd-surface:#fff;--gd-wash:#f5f8fa;--gd-col:760px;--gd-wrap:1096px;
  background:var(--gd-wash);
}
.g-guide .gd,.g-guidehub .gd{padding-bottom:0}
.g-guide .wrap{max-width:none}

/* ---------- hero (light glass over a washed photo; text never sits on the raw photo) ---------- */
.gd .guide-hero{padding:calc(var(--g-head-space) + 18px) var(--g-gutter) 30px}
.gd .guide-hero>*{max-width:var(--gd-col)}
.gd .hero-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:13.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--g-ink-soft)}
.gd .hero-eyebrow .dot{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:var(--g-red)}
.gd .guide-hero h1{margin:0;font:500 clamp(34px,9.4vw,64px)/1.02 var(--g-font-display);text-transform:uppercase;letter-spacing:.002em;color:var(--g-ink);
  overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;text-wrap:balance}
.gd .guide-hero h1 em{display:block;margin-top:.22em;font:500 .5em/1.15 var(--g-font-ui);text-transform:none;letter-spacing:0;color:var(--g-red)}
.gd .hero-lede{margin:18px 0 0;font-size:clamp(18px,4.6vw,21px);line-height:1.55;color:var(--g-ink-soft);max-width:60ch}
.gd .guide-meta{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0}
.gd .guide-meta span{display:inline-block;padding:6px 13px;border:1px solid var(--g-glass-edge);border-radius:var(--g-pill);
  background:var(--g-glass);font-size:14px;line-height:1.3;color:var(--g-ink-soft);-webkit-backdrop-filter:var(--g-blur);backdrop-filter:var(--g-blur)}
.gd .guide-meta a{position:relative;color:var(--g-ink);font-weight:600;text-underline-offset:3px;min-height:0}
.gd .guide-meta a::after{content:"";position:absolute;inset:-13px -6px}  /* F47: a 44 px target without a taller line */

/* ---------- short answer (AEO box) ---------- */
.gd .kortsvar{padding:6px var(--g-gutter) 8px}
.gd .kortsvar .wrap{max-width:var(--gd-col);margin:0 auto 0 0;padding:22px 20px 20px;border:1px solid var(--g-glass-edge);border-radius:var(--g-glass-radius);
  background:#fff;box-shadow:var(--g-shadow-card);position:relative}
.gd .kortsvar .wrap::before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:4px;border-radius:0 4px 4px 0;background:var(--g-red)}
.gd .kortsvar .eyebrow{margin:0 0 8px;color:var(--g-red)}
.gd .kortsvar h2{margin:0 0 12px;font:500 clamp(24px,6vw,30px)/1.15 var(--g-font-display);color:var(--g-ink);text-wrap:balance}
.gd .kortsvar-lede{margin:0;font-size:18px;line-height:1.65;color:var(--g-ink)}
.gd .kortsvar-liste{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:0;border-top:1px solid var(--g-line)}
.gd .kortsvar-liste li{position:relative;padding:11px 0 11px 30px;border-bottom:1px solid var(--g-line);font-size:16.5px;line-height:1.45}
.gd .kortsvar-liste li::before{content:"";position:absolute;left:2px;top:15px;width:16px;height:16px;border-radius:50%;background:var(--g-red)
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.4 8.3l2.4 2.4 4.8-5' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.gd .kortsvar-kilde{margin:14px 0 0;font-size:14px;line-height:1.5;color:var(--g-ink-soft)}

/* ---------- layout: TOC + article ---------- */
.gd-layout{display:block;padding:20px var(--g-gutter) 0}
.gd-main{min-width:0;max-width:var(--gd-col)}
.gd-toc{margin:0 0 6px;max-width:var(--gd-col)}
.gd-toc-box{border:1px solid var(--g-glass-edge);border-radius:var(--g-glass-radius);background:#fff;box-shadow:var(--g-shadow-card);overflow:hidden}
.gd-toc-box summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:56px;padding:0 18px;list-style:none;cursor:pointer;
  font-size:15px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--g-ink-soft)}
.gd-toc-box summary::-webkit-details-marker{display:none}
.gd-toc-box summary::after{content:"";flex:0 0 9px;width:9px;height:9px;margin-top:-4px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform 180ms var(--g-ease-out)}
.gd-toc-box[open] summary::after{margin-top:3px;transform:rotate(225deg)}
.gd-toc-box .guide-toc{padding:0 18px 12px}
.gd-toc-box .guide-toc-title{display:none}
.gd-toc-box ol{list-style:none;margin:0;padding:0;counter-reset:toc;border-top:1px solid var(--g-line)}
.gd-toc-box li{counter-increment:toc;border-bottom:1px solid var(--g-line)}
.gd-toc-box li:last-child{border-bottom:0}
.gd-toc-box li a{display:flex;gap:12px;align-items:baseline;min-height:44px;padding:10px 0;font-size:16px;line-height:1.35;color:var(--g-ink);text-decoration:none}
.gd-toc-box li a::before{content:counter(toc,decimal-leading-zero);flex:0 0 22px;font:500 14px/1 var(--g-font-display);letter-spacing:.04em;color:var(--g-red)}
.gd-toc-box li a.active{font-weight:600}
.gd-toc-box li a.active::before{color:var(--g-ink)}
.gd-toc-box a:focus-visible{outline:3px solid var(--g-ink);outline-offset:2px;box-shadow:0 0 0 6px #fff}

/* ---------- article typography (prose, ~68 characters) ---------- */
.gd .guide-body{font-size:18px;line-height:1.7;color:var(--g-ink);padding:16px 0 8px}
.gd .guide-body>*{max-width:68ch}
.gd .guide-body>:is(figure,table,.guide-table-wrap,.stat-grid,.fact-box,.guide-cta-inline,.qz,.bs,.knop-calculator,.guide-kilde,aside,details,video){max-width:100%}
.gd .guide-body h2{margin:2.1em 0 .55em;font:500 clamp(26px,6.4vw,34px)/1.14 var(--g-font-display);letter-spacing:.003em;color:var(--g-ink);scroll-margin-top:calc(var(--g-head-space) + 8px);text-wrap:balance;overflow-wrap:break-word}
.gd .guide-body>h2:first-child{margin-top:.6em}
.gd .guide-body h3{margin:1.7em 0 .4em;font:600 clamp(19px,4.8vw,22px)/1.3 var(--g-font-ui);color:var(--g-ink)}
.gd .guide-body p{margin:0 0 1.05em}
.gd .guide-body strong{font-weight:600}
.gd .guide-body a{color:var(--g-red);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.gd .guide-body a:hover{color:var(--g-press-red)}
.gd .guide-body ul,.gd .guide-body ol{margin:0 0 1.2em;padding:0 0 0 1.3em}
.gd .guide-body li{margin:0 0 .5em;padding-left:.25em}
.gd .guide-body li::marker{color:var(--g-red);font-weight:600}
.gd .guide-body ul>li::marker{content:"\2013  "}
.gd .guide-body :is(a,summary,button,input,label):focus-visible{outline:3px solid var(--g-ink);outline-offset:3px;border-radius:4px}
.gd .guide-body hr{border:0;border-top:1px solid var(--g-line);margin:2em 0}

/* tables: two or three columns stack as cards on phones (guides.js labels the cells); wider ones scroll inside their own box */
.gd .guide-body table{width:100%;border-collapse:separate;border-spacing:0;margin:1.2em 0 1.6em;font-size:16px;line-height:1.5;background:#fff;
  border:1px solid var(--g-line);border-radius:14px;overflow:hidden}
.gd .guide-body caption{padding:12px 14px;text-align:left;font-weight:600;font-size:15px;color:var(--g-ink-soft)}
.gd .guide-body th{padding:12px 14px;text-align:left;font-size:13.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--g-ink-soft);background:#18272d0a;border-bottom:1px solid var(--g-line)}
.gd .guide-body td{padding:12px 14px;vertical-align:top;border-bottom:1px solid #18272d1c}
.gd .guide-body tr:last-child td{border-bottom:0}
.gd .guide-body td:first-child{font-weight:600}
.gd .guide-table-wrap{margin:1.2em 0 1.6em;overflow-x:auto;-webkit-overflow-scrolling:touch}
.gd .guide-table-wrap table{margin:0}
.gd .guide-body table.gd-scroll{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:normal}
.gd .guide-body table.gd-scroll :is(th,td){min-width:96px}
@media(max-width:700px){
  .gd .guide-body table.gd-stack,.gd .guide-body table.gd-stack :is(tbody,tr,td),.gd .guide-body table.gd-stack tbody th{display:block;width:100%}
  .gd .guide-body table.gd-stack{border:0;background:transparent;border-radius:0;overflow:visible}
  .gd .guide-body table.gd-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .gd .guide-body table.gd-stack tr{margin:0 0 10px;border:1px solid var(--g-line);border-radius:14px;background:#fff;overflow:hidden}
  .gd .guide-body table.gd-stack :is(td,th){border-bottom:0;padding:11px 14px;text-align:left}
  .gd .guide-body table.gd-stack :is(td,th):first-child{background:#18272d0a;border-bottom:1px solid var(--g-line)}
  .gd .guide-body table.gd-stack :is(td,th)+td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:12.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--g-ink-soft)}
  .gd .guide-body table.gd-stack :is(td,th)+td+td{border-top:1px solid #18272d14}
  .gd .guide-body table.gd-stack caption{display:block;width:100%;margin:0 0 10px;text-align:left}
  .gd .guide-body table.gd-stack :is(td,th):first-child[data-label]::before{content:attr(data-label) ": ";font-weight:500;color:var(--g-ink-soft)}
}

/* stat cards, fact box, figures, sources */
.gd .stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:1.4em 0 1.8em}
.gd .stat-card{padding:16px 15px;border:1px solid var(--g-line);border-radius:16px;background:#fff;box-shadow:0 4px 14px #17212610}
.gd .stat-num{font:500 clamp(20px,5.2vw,26px)/1.1 var(--g-font-display);color:var(--g-red);overflow-wrap:anywhere}
.gd .stat-label{margin-top:6px;font-size:14.5px;line-height:1.4;color:var(--g-ink-soft)}
.gd .fact-box{margin:1.5em 0 1.8em;padding:18px 18px 8px;border:1px solid var(--g-line);border-left:4px solid var(--g-red);border-radius:16px;background:#fff}
.gd .fact-box-title{display:block;margin:0 0 10px;font:500 20px/1.2 var(--g-font-display);color:var(--g-ink)}
.gd .guide-figure{margin:1.6em 0 1.9em}
.gd .guide-figure img{display:block;width:100%;height:auto;border-radius:16px;border:1px solid var(--g-line);background:#fff}
.gd .guide-figure figcaption{margin-top:9px;font-size:14.5px;line-height:1.5;color:var(--g-ink-soft)}
.gd .guide-video video{border-radius:16px}
.gd .guide-kilde{margin:2.4em 0 1em;padding:18px 18px 8px;border:1px solid var(--g-line);border-radius:16px;background:#ffffff99;font-size:15.5px;line-height:1.55;color:var(--g-ink-soft)}
.gd .guide-kilde h2{margin:0 0 8px;font:500 22px/1.2 var(--g-font-display)}
.gd .guide-kilde li{margin-bottom:.1em}
.gd .guide-kilde li a{display:inline-block;padding:10px 0}
p.guide-kilde{margin:10px 0 0;padding:0;border:0;background:none;font-size:14px}

/* inline buy block inside the article */
.gd .guide-cta-inline{display:grid;gap:14px;margin:2em 0;padding:20px 18px;border:1px solid var(--g-glass-edge);border-radius:var(--g-glass-radius);
  background:linear-gradient(135deg,#fff 0,#eef2f4 100%);box-shadow:var(--g-shadow-card)}
.gd .guide-cta-inline p{margin:0;font-size:17px;line-height:1.55}
.gd .guide-body a.btn-primary,.gd a.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:12px 22px;border-radius:var(--g-control-radius);
  background:var(--g-red);color:#fff;font:600 17px/1.25 var(--g-font-ui);text-decoration:none;text-align:center;transition:background-color 160ms var(--g-ease-out),transform 160ms var(--g-ease-out)}
.gd .guide-body a.btn-primary:active,.gd a.btn-primary:active{background:var(--g-press-red);transform:translateY(1px)}
.gd .guide-body a.btn-primary:focus-visible,.gd a.btn-primary:focus-visible{outline:3px solid var(--g-ink);outline-offset:4px;box-shadow:0 0 0 7px #fff}

/* ---------- FAQ ---------- */
.gd .guide-faq{max-width:calc(var(--gd-col) + 2 * var(--g-gutter));padding:34px var(--g-gutter) 6px}
.gd .guide-faq h2{margin:0 0 16px;font:500 clamp(26px,6.4vw,34px)/1.14 var(--g-font-display);color:var(--g-ink)}
.gd .faq-item{margin:0 0 10px;border:1px solid var(--g-line);border-radius:16px;background:#fff;overflow:hidden}
.gd .faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:12px 18px;list-style:none;cursor:pointer;font-size:17.5px;font-weight:600;line-height:1.35;color:var(--g-ink)}
.gd .faq-q::-webkit-details-marker{display:none}
.gd .faq-q::after{content:"+";flex:0 0 auto;font:400 28px/1 var(--g-font-ui);color:var(--g-red);transition:transform 180ms var(--g-ease-out)}
.gd .faq-item[open]>.faq-q::after{transform:rotate(45deg)}
.gd .faq-item[open]>.faq-q{border-bottom:1px solid var(--g-line)}
.gd .faq-a{margin:0;padding:14px 18px 18px;font-size:17px;line-height:1.65;color:var(--g-ink)}
.gd .faq-item :is(summary):focus-visible{outline:3px solid var(--g-ink);outline-offset:-3px}

/* ---------- related guides ---------- */
.gd .related-guides{padding:34px var(--g-gutter) 6px;max-width:calc(1120px + 2 * var(--g-gutter))}
.gd .related-guides h2{margin:0 0 14px;font:500 clamp(24px,5.6vw,30px)/1.15 var(--g-font-display)}
.gd .related-grid{display:grid;grid-template-columns:1fr;gap:10px}
.gd .related-card{display:flex;flex-direction:column;justify-content:center;min-height:84px;padding:14px 18px;border:1px solid var(--g-line);border-radius:16px;background:#fff;color:var(--g-ink);text-decoration:none;
  transition:transform 160ms var(--g-ease-out),box-shadow 160ms var(--g-ease-out)}
.gd .related-card p{margin:0}
.gd .related-eyebrow{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--g-red)}
.gd .related-title{margin-top:3px!important;font-size:17.5px;font-weight:600;line-height:1.3}
.gd .related-card:focus-visible{outline:3px solid var(--g-ink);outline-offset:3px;box-shadow:0 0 0 7px #fff}

/* ---------- closing buy block ---------- */
.gd .guide-cta{margin:40px var(--g-gutter) 40px;padding:26px 20px 18px;border-radius:24px;color:#fff;background:var(--g-ink)}
.gd-cta-in{display:grid;gap:22px;max-width:1120px;margin:0 auto}
.gd .guide-cta .eyebrow{margin:0 0 8px;color:#ffffffc7}
.gd .guide-cta h2{margin:0 0 10px;font:500 clamp(30px,8vw,46px)/1.04 var(--g-font-display);text-transform:uppercase}
.gd .guide-cta p{margin:0 0 10px;font-size:17.5px;line-height:1.55;color:#ffffffe6}
.gd .guide-cta a{color:#fff;text-underline-offset:4px}
.gd .gd-cta-price{display:flex;align-items:baseline;gap:10px;margin-top:14px!important}
.gd .gd-cta-price b{font:500 38px/1 var(--g-font-display);letter-spacing:.01em}
.gd .gd-cta-price span{font-size:16px;color:#ffffffc7}
.gd .gd-cta-label{margin:0 0 10px!important;font-size:15px!important;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#ffffffc7!important}
.gd .gd-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.gd .gd-chip{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid #ffffff66;border-radius:var(--g-pill);font-size:16px;font-weight:600;text-decoration:none!important;color:#fff;background:#ffffff1c;
  transition:background-color 160ms var(--g-ease-out)}
.gd .gd-chip:active{background:#ffffff40}
.gd .guide-cta a.btn{display:flex;width:100%;min-height:56px;background:var(--g-red);color:#fff;text-decoration:none}
.gd .guide-cta :is(a,summary):focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:none}
.gd .guide-cta-fine{display:block;max-width:1120px;margin:20px auto 0;padding-top:14px;border-top:1px solid #ffffff33;font-size:13.5px;line-height:1.55;color:#ffffffbf}

/* ---------- footer spacing on the light page + sticky phone bar room ---------- */
.g-guide .ft,.g-guidehub .ft{margin-top:0}
@media(max-width:760px){.g-guide .ft,.g-guidehub .ft{padding-bottom:96px}}
body.g-guide .sbar b{font-size:20px}

/* ---------- quiz (batforerproven-test): the raw inline <style> stays; these rules win by specificity ---------- */
.gd .guide-body .qz{margin:10px 0 34px;max-width:100%}
.gd .guide-body .qz-bar{font-family:var(--g-font-ui);font-size:15px;margin-bottom:18px}
.gd .guide-body .qz-track{height:8px;background:#18272d1c}
.gd .guide-body .qz-fill{background:var(--g-red)}
.gd .guide-body .qz-q{padding:20px 16px 18px;border:1px solid var(--g-line);border-radius:var(--g-glass-radius);background:#fff;box-shadow:var(--g-shadow-card)}
.gd .guide-body .qz-q h3{margin:0 0 16px;font:500 clamp(21px,5.6vw,26px)/1.22 var(--g-font-display);color:var(--g-ink)}
.gd .guide-body .qz-topic{font-size:12.5px;font-weight:600;letter-spacing:.07em;color:var(--g-red)}
.gd .guide-body .qz-opts{gap:9px}
.gd .guide-body .qz-opts label{min-height:56px;align-items:center;padding:12px 14px;border:1px solid #18272d38;border-radius:14px;background:#fff;font-size:17px;line-height:1.4;color:var(--g-ink)}
.gd .guide-body .qz-opts label:hover{border-color:var(--g-ink)}
.gd .guide-body .qz-opts input{width:20px;height:20px;margin:0;accent-color:var(--g-red)}
.gd .guide-body .qz-opts label:has(input:checked){border-color:var(--g-ink);background:#18272d0d}
.gd .guide-body .qz-opts label.is-right{border-color:var(--sj-green-600);background:#1b6e4312}
.gd .guide-body .qz-opts label.is-wrong{border-color:var(--g-red);background:#bc1c2b10}
.gd .guide-body .qz-fasit{font-size:16px;line-height:1.6}
.gd .guide-body .qz-fasit summary{min-height:44px;display:flex;align-items:center;font-size:16px;color:var(--g-red)}
.gd .guide-body .qz-fasit p{color:var(--g-ink-soft)}
.gd .guide-body .qz-fasit .guide-kilde{margin-top:8px}
.gd .guide-body .qz-nav{gap:10px}
.gd .guide-body .qz-btn{min-height:52px;padding:12px 24px;border-radius:var(--g-control-radius);border:1px solid var(--g-red);background:var(--g-red);color:#fff;font:600 17px/1.2 var(--g-font-ui)}
.gd .guide-body .qz-btn.ghost{background:transparent;color:var(--g-ink);border-color:#18272d77}
.gd .guide-body .qz-btn:focus-visible{outline:3px solid var(--g-ink);outline-offset:4px;box-shadow:0 0 0 7px #fff}
.gd .guide-body .qz-mer{font-size:15px;color:var(--g-red);border-bottom:1px solid currentColor;text-decoration:none}
.gd .guide-body .qz-result{padding:26px 18px;border:1px solid var(--g-line);border-radius:var(--g-glass-radius);background:#fff;box-shadow:var(--g-shadow-card);text-align:center}
.gd .guide-body .qz-score{font:500 clamp(46px,14vw,64px)/1 var(--g-font-display);color:var(--g-ink)}
.gd .guide-body .qz-verdict{font-size:18px;color:var(--g-ink)}
.gd .guide-body .qz-result p{font-size:16.5px;color:var(--g-ink-soft)}
.gd .guide-body .qz-result>p{margin-inline:auto;max-width:44ch}
.gd .guide-body .qz-result .qz-tilbud p{margin-inline:0;max-width:none;text-align:left}
.gd .guide-body .qz-tilbud{border:1px solid var(--g-red);border-radius:16px;background:#fff}
.gd .guide-body .qz-tilbud-eyebrow{color:var(--g-red)}
.gd .guide-body .qz-emner{text-align:left;max-width:44ch;margin:0 auto 18px;padding-left:1.1em;font-size:16px}

/* boat check (hvor-stor-bat-kan-jeg-kjore) */
.gd .guide-body .bs{padding:18px 16px;border:1px solid var(--g-line);border-radius:var(--g-glass-radius);background:#fff;box-shadow:var(--g-shadow-card);max-width:100%}
.gd .guide-body .bs legend{font:600 17px/1.3 var(--g-font-ui);color:var(--g-ink)}
.gd .guide-body .bs-valg span{min-height:48px;display:flex;align-items:center;border-color:#18272d77;color:var(--g-ink);font-size:16px;border-radius:14px;padding:10px 14px}
.gd .guide-body .bs-valg input:checked+span{background:var(--g-ink);color:#fff;border-color:var(--g-ink)}
.gd .guide-body .bs-valg input:focus-visible+span{outline:3px solid var(--g-ink);outline-offset:3px}
.gd .guide-body .bs-svar strong{font:500 24px/1.2 var(--g-font-display);color:var(--g-ink)}
.gd .guide-body .bs-svar a{color:var(--g-red)}
.gd .guide-body .bs-svar .bs-vent{color:var(--g-ink-soft)}

/* knop calculator */
.gd .guide-body .knop-calculator{padding:18px 16px;border:1px solid var(--g-line);border-radius:var(--g-glass-radius);background:#fff;box-shadow:var(--g-shadow-card);max-width:100%}
.gd .guide-body .knop-calculator label{font-size:16px}
.gd .guide-body .knop-calculator input{font:inherit;font-size:18px;width:100%;max-width:18rem;min-height:52px;padding:.65rem .8rem;border:1px solid #18272d77;border-radius:var(--g-control-radius);background:#fff;color:var(--g-ink)}
.gd .guide-body .knop-calculator input:focus-visible{outline:3px solid var(--g-ink);outline-offset:3px}
.gd .guide-body .knop-calculator input[aria-invalid="true"]{border:2px solid var(--g-red)}

/* ---------- wider screens ---------- */
@media(min-width:561px){
  .gd .stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gd .related-grid{grid-template-columns:1fr 1fr}
  .gd .guide-cta{padding:34px 34px 22px}
  .gd .guide-cta a.btn{width:auto;display:inline-flex}
}
@media(min-width:701px){
  .gd .guide-hero{padding-top:calc(var(--g-head-space) + 34px);padding-bottom:44px}
  .gd .kortsvar .wrap{padding:28px 30px 24px}
  .gd .kortsvar-lede{font-size:19px}
  .gd .guide-body{font-size:18.5px}
  .gd .guide-cta-inline{grid-template-columns:1fr auto;align-items:center;gap:22px;padding:22px 26px}
  .gd .gd-chips{max-width:560px}
}
@media(min-width:1051px){
  .gd .guide-hero{padding-inline:max(var(--g-gutter),calc((100% - var(--gd-wrap)) / 2))}
  .gd .kortsvar{padding-inline:max(var(--g-gutter),calc((100% - var(--gd-wrap)) / 2))}
  .gd-layout{display:grid;grid-template-columns:280px minmax(0,var(--gd-col));gap:56px;justify-content:center;align-items:start;padding-top:26px}
  .gd-toc{position:sticky;top:calc(var(--g-head-space) + 6px);max-height:calc(100svh - var(--g-head-space) - 20px);overflow:auto;overscroll-behavior:contain;margin:0}
  .gd .guide-faq{margin:0 auto;padding-inline:var(--g-gutter);max-width:calc(280px + 56px + var(--gd-col))}
  .gd .related-guides,.gd .guide-cta{max-width:1180px;margin-inline:auto}
  .gd .related-guides{padding-inline:0;width:calc(100% - 2 * var(--g-gutter))}
  .gd .guide-cta{width:calc(100% - 2 * var(--g-gutter))}
  .gd .related-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gd-cta-in{grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
  .gd .guide-cta{padding:46px 48px 26px}
}
@media(hover:hover) and (pointer:fine){
  .gd .related-card:hover{transform:translateY(-2px);box-shadow:var(--g-shadow-card)}
  .gd .guide-body a.btn-primary:hover,.gd a.btn-primary:hover{background:var(--g-red-hover)}
  .gd .guide-cta a.btn:hover{background:var(--g-red-hover)}
  .gd .gd-chip:hover{background:#ffffff40}
  .gd .faq-q:hover{background:#18272d08}
  .gd-toc-box li a:hover{text-decoration:underline;text-underline-offset:4px}
  .gd .guide-body .qz-btn:hover{background:var(--g-red-hover)}
  .gd .guide-body .qz-btn.ghost:hover{background:#18272d0d}
}
@media(prefers-reduced-motion:reduce){
  .gd-toc-box summary::after,.gd .faq-q::after,.gd .related-card,.gd .gd-chip,.gd a.btn-primary{transition:none}
  .gd .related-card:hover{transform:none}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
  .gd .guide-meta span{background:var(--g-solid);-webkit-backdrop-filter:none;backdrop-filter:none;border-color:#526168}
}
@media print{.masthead,.sbar,.gd-toc,.guide-cta,.related-guides{display:none!important}}

/* practice test buttons that are links (offer box) read as buttons, not prose links */
.gd .guide-body a.qz-btn,.gd .guide-body a.qz-btn:hover{text-decoration:none}

/* touch targets (44 px): rows that are only a link, and the plain summaries of the quiz FAQ */
.gd .guide-body .lnk-row>a{display:inline-block;padding:10px 0}
.gd .faq-item>summary:not(.faq-q){min-height:44px;padding-block:10px;box-sizing:border-box;cursor:pointer}
