/* Typografi og fælles indholdselementer under folden. */

.hk-lede{font-size:1.15rem;color:var(--hk-text-soft);max-width:62ch}
.hk-muted{color:var(--hk-text-soft)}
.hk-small{font-size:.9rem;color:var(--hk-text-faint)}
.hk-center{text-align:center}
.hk-nowrap{white-space:nowrap}

.hk-section{padding-block:clamp(3rem,7vw,5.5rem)}
.hk-section--tight{padding-block:clamp(2rem,4vw,3rem)}
.hk-section--alt{background:var(--hk-bg-alt)}
.hk-section--surface{background:var(--hk-surface)}
.hk-section__head{max-width:62ch;margin-bottom:var(--hk-s-6)}
.hk-section__head--center{margin-inline:auto;text-align:center}

.hk-grid{display:grid;gap:var(--hk-s-5)}
@media (min-width:700px){
  .hk-grid--2{grid-template-columns:repeat(2,1fr)}
  .hk-grid--3{grid-template-columns:repeat(2,1fr)}
  .hk-grid--4{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1000px){
  .hk-grid--3{grid-template-columns:repeat(3,1fr)}
  .hk-grid--4{grid-template-columns:repeat(4,1fr)}
}
.hk-split{display:grid;gap:clamp(2rem,5vw,4rem);align-items:center}
@media (min-width:900px){
  .hk-split{grid-template-columns:1fr 1fr}
  .hk-split--wide-text{grid-template-columns:1.15fr .85fr}
  .hk-split--flip>*:first-child{order:2}
}

/* Brødtekst i sider. */
.hk-content>*+*{margin-top:var(--hk-s-4)}
.hk-content h2{margin-top:var(--hk-s-7)}
.hk-content h3{margin-top:var(--hk-s-6)}
.hk-content>h2:first-child,.hk-content>h3:first-child{margin-top:0}
.hk-content ul,.hk-content ol{padding-left:1.35rem}
.hk-content li+li{margin-top:.4rem}
.hk-content li::marker{color:var(--hk-accent-text)}
.hk-content blockquote{
  margin:var(--hk-s-5) 0;padding:var(--hk-s-4) var(--hk-s-5);
  border-left:4px solid var(--hk-accent-fill);background:var(--hk-surface-2);
  border-radius:0 var(--hk-r-md) var(--hk-r-md) 0;font-size:1.05rem;
}
.hk-content blockquote p:last-child{margin-bottom:0}
.hk-content figure{margin:var(--hk-s-5) 0}
.hk-content img{border-radius:var(--hk-r-md)}
.hk-content hr{border:0;border-top:1px solid var(--hk-border);margin:var(--hk-s-6) 0}

/* Afkrydsnings- og krydslister. Originalen bruger ✅/❌ som tegn midt i
   teksten; her er de rigtige ikoner, så skærmlæsere ikke læser emoji op. */
.hk-checklist{list-style:none;padding:0;margin:0}
.hk-checklist li{position:relative;padding-left:1.9rem;margin-bottom:.6rem}
.hk-checklist li::before{
  content:"";position:absolute;left:0;top:.42em;width:1.15rem;height:1.15rem;
  border-radius:var(--hk-r-pill);background:var(--hk-ok);
  -webkit-mask:var(--hk-check) center/.78rem no-repeat;mask:var(--hk-check) center/.78rem no-repeat;
  background-color:var(--hk-ok);
}
.hk-checklist li[data-excluded]::before{background-color:var(--hk-text-faint);-webkit-mask-image:var(--hk-cross);mask-image:var(--hk-cross)}
.hk-checklist li[data-excluded]{color:var(--hk-text-faint)}
:root{
  --hk-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6 9 17l-5-5' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --hk-cross:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 6l12 12M18 6 6 18' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round'/%3E%3C/svg%3E");
}

/* Tabeller — bruges til ekstraudgifter og prisoversigter. */
.hk-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-block:var(--hk-s-5)}
.hk-table{width:100%;border-collapse:collapse;font-size:.98rem;min-width:26rem}
.hk-table caption{text-align:left;font-weight:700;margin-bottom:var(--hk-s-3);color:var(--hk-text)}
.hk-table th,.hk-table td{padding:.8rem 1rem;text-align:left;border-bottom:1px solid var(--hk-border)}
.hk-table th{font-weight:700;background:var(--hk-surface-2)}
.hk-table td:last-child,.hk-table th:last-child{text-align:right;white-space:nowrap}
.hk-table tbody tr:last-child td{border-bottom:0}

.hk-note{
  padding:var(--hk-s-4) var(--hk-s-5);border-radius:var(--hk-r-md);
  background:var(--hk-gold-soft);border:1px solid var(--hk-border);
}
.hk-note p:last-child{margin-bottom:0}

/* Sidefod. */
.hk-footer{background:var(--hk-surface);border-top:1px solid var(--hk-border);padding-block:var(--hk-s-7) var(--hk-s-5);margin-top:var(--hk-s-8)}
.hk-footer__grid{display:grid;gap:var(--hk-s-6)}
@media (min-width:760px){.hk-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.hk-footer h2,.hk-footer h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--hk-text-faint);margin-bottom:var(--hk-s-4);font-weight:800}
.hk-footer ul{list-style:none;margin:0;padding:0}
.hk-footer li+li{margin-top:.6rem}
.hk-footer a{color:var(--hk-text-soft);text-decoration:none}
.hk-footer a:hover{color:var(--hk-accent-text);text-decoration:underline}
.hk-footer__brand .hk-logo{height:34px;margin-bottom:var(--hk-s-4);color:var(--hk-text)}
.hk-footer__bottom{
  margin-top:var(--hk-s-6);padding-top:var(--hk-s-5);border-top:1px solid var(--hk-border);
  display:flex;flex-wrap:wrap;gap:var(--hk-s-4);justify-content:space-between;
  font-size:.88rem;color:var(--hk-text-faint);
}
.hk-social{display:flex;gap:var(--hk-s-3);margin-top:var(--hk-s-4)}
.hk-social a{
  display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border-radius:var(--hk-r-pill);border:1px solid var(--hk-border-strong);color:var(--hk-text-soft);
}
.hk-social a:hover{color:var(--hk-accent-text);border-color:currentColor}

/* Brødkrummer. */
.hk-crumbs{font-size:.875rem;color:var(--hk-text-faint);padding-block:var(--hk-s-4)}
.hk-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0}
.hk-crumbs li+li::before{content:"›";margin-right:.45rem;color:var(--hk-text-faint)}
.hk-crumbs a{color:var(--hk-text-soft);text-decoration:none}
.hk-crumbs a:hover{color:var(--hk-accent-text);text-decoration:underline}
.hk-crumbs [aria-current]{color:var(--hk-text)}
