/* Ballerup: keep the existing visual identity and contain long Danish text. */
.ballerup-page .ballerup-nav { display:flex; flex-wrap:wrap; gap:.4rem 1.2rem; padding-block:1rem; border-bottom:1px solid #d8d0c8; }
.ballerup-page .ballerup-nav a { display:inline-flex; align-items:center; min-height:44px; color:#302820; text-decoration:underline; text-underline-offset:.25em; }
.ballerup-page section[id] { scroll-margin-top:110px; }
.ballerup-page .hero.hero-slideshow h1 { max-width:16ch; font-size:clamp(2.75rem,7vw,6.2rem); line-height:1.05; overflow-wrap:normal; hyphens:none; }
.ballerup-page .hero.hero-slideshow .hero-lead { max-width:52ch; }
.ballerup-page .ballerup-copy { margin-block:1.25rem; line-height:1.8; }
.ballerup-page .ballerup-company-link { display:inline-block; margin:1rem 0 0 1.5rem; }
.ballerup-page .priority-focus-card { min-width:0; min-height:0; }
.ballerup-page .priority-focus-card p { color:#eee6db; }
.ballerup-page .priority-focus-card:hover p { color:#fff; }
.ballerup-page .priority-focus-card strong { color:#f6f3ee; }
.ballerup-page .priority-project-card figure { aspect-ratio:4/3; }
.ballerup-page .priority-project-card img { width:100%; height:100%; object-fit:cover; }
.ballerup-page .priority-answer-grid h2,
.ballerup-page .priority-section-heading h2,
.ballerup-page .priority-offer-grid h2 { font-size:clamp(2.25rem,4.1vw,4.5rem); line-height:1.1; max-width:17ch; overflow-wrap:anywhere; }
.ballerup-page .priority-offer-grid > div > p + p { margin-top:1rem; }
.ballerup-page .priority-answer-facts a { text-decoration:underline; text-underline-offset:.2em; }
.ballerup-page .local-context-copy p + p { margin-top:1rem; }
.ballerup-page .priority-official-link { color:#f3d4ac; line-height:1.65; }
.ballerup-page .button { white-space:normal; min-height:48px; text-align:center; }
.ballerup-page .button-dark { background:#171512; color:#fff; border-color:#171512; }
.ballerup-page .button-light { background:#f6f3ee; color:#171512; }
.ballerup-page .final-cta .button-dark { background:#f6f3ee; color:#171512; border-color:#f6f3ee; }
.ballerup-page a:focus-visible,
.ballerup-page summary:focus-visible { outline:3px solid #cc8747; outline-offset:4px; }
@media (max-width:680px) {
  .ballerup-page .hero.hero-slideshow .hero-copy { padding:6.5rem 1.25rem 7rem; }
  .ballerup-page .hero.hero-slideshow h1 { font-size:clamp(2.35rem,10.8vw,3.4rem); max-width:100%; }
  .ballerup-page .hero.hero-slideshow .hero-lead { font-size:1rem; line-height:1.6; }
  .ballerup-page .priority-answer-grid h2,
  .ballerup-page .priority-section-heading h2,
  .ballerup-page .priority-offer-grid h2 { font-size:clamp(2.1rem,9vw,3rem); }
  .ballerup-page .priority-answer-grid,
  .ballerup-page .priority-offer-grid { gap:2rem; }
  .ballerup-page .priority-answer-lead { font-size:1.25rem; }
  .ballerup-page .ballerup-company-link { margin:1rem 0 0; display:block; }
  .ballerup-page .local-hero-actions { align-items:flex-start; flex-direction:column; gap:1rem; }
  .ballerup-page .local-hero-actions .button { width:100%; }
}
