/* Avgränsat till kampanjguiderna. Inga ändringar av butikens CTA-/kassastilar. */
.kampanj-sida .sida { max-width: 920px; }
.kampanj-sida nav[aria-label="Brödsmulor"] { font-size: .9rem; margin-bottom: 2.5rem; }
.kampanj-sida header { max-width: 760px; margin-bottom: 2.5rem; }
.kampanj-sida h1 { font-size: clamp(2.1rem, 5vw, 3.7rem); line-height: 1.08; text-wrap: balance; }
.kampanj-sida p, .kampanj-sida li { line-height: 1.7; }
.kampanj-sida section, .kampanj-relaterat { margin-top: 2.8rem; }
.kampanj-sida h2 { margin-bottom: 1rem; text-wrap: balance; }
.kampanj-sida h3 { margin-top: 1.5rem; }
.kampanj-sida li + li { margin-top: .75rem; }
.kampanj-over { color: #685024; font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.kampanj-besked { padding: 1.25rem; border-left: 3px solid #e3b04b; background: #f7f5ef; color: #16244a; }
.kampanj-oversikt { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.kampanj-oversikt section { border-top: 1px solid #cbd0da; padding-top: 1.5rem; }
.kampanj-oversikt h2 { font-size: 1.45rem; }
.kampanj-tabell { overflow-x: auto; }
.kampanj-tabell table { width: 100%; border-collapse: collapse; text-align: left; }
.kampanj-tabell caption { text-align: left; margin: .5rem 0 1rem; color: #4e586d; }
.kampanj-tabell th, .kampanj-tabell td { padding: 1rem .75rem; border-bottom: 1px solid #dce0e7; vertical-align: top; }
.kampanj-tabell td:nth-child(2) { white-space: nowrap; }
.kampanj-tabell thead { color: #16244a; background: #f4f5f8; }
.kampanj-relaterat { padding-top: 1.75rem; border-top: 1px solid #cbd0da; }
.kampanj-sida a:focus-visible { outline: 2px solid #16244a; outline-offset: 4px; }
.kampanj-sida .kampanj-tillfallen { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.kampanj-sida .kampanj-tillfallen > li { margin: 0; padding-top: 1rem; border-top: 1px solid #cbd0da; min-width: 0; }
.kampanj-sida .kampanj-tillfallen h3 { margin-top: 0; font-size: 1.15rem; }
.kampanj-sida .kampanj-tillfallen time { white-space: normal; }
@media (max-width: 700px) {
  .kampanj-oversikt { grid-template-columns: 1fr; gap: 0; }
  .kampanj-sida .kampanj-tillfallen { grid-template-columns: 1fr; }
  .kampanj-tabell th, .kampanj-tabell td { padding: .8rem .4rem; }
}
