/* Oct–Nov 2026 enrolment offer — campaign-scoped styles.
   Loaded only on the 31 campaign pages; removed by the expiry release.
   Visual language = the homepage's reviewed dated notice (.home .notice). */
.offer-note,.offer-page{--offer-link:#A4471B}  /* D10 deep orange for text on light (>=5:1) */
[data-offer][hidden],[data-offer-ended][hidden]{display:none!important}

.offer-note{background:var(--c-paper);padding-block:16px}
.offer-note__box{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0;
  padding:12px 16px;border:1px solid var(--c-ink);border-left:6px solid var(--c-accent);
  background:var(--c-paper-2);font-size:15px;line-height:1.55;color:var(--c-ink-2);
}
.offer-note__date{font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-mute)}
.offer-note__text{margin:0;flex:1 1 32ch}
.offer-note__text strong{color:var(--c-ink)}
.offer-note__link,.offer-page .offer-link{
  color:var(--offer-link);font-weight:600;text-decoration:underline;
  text-decoration-thickness:2px;text-underline-offset:4px;white-space:nowrap;
}
.offer-note__link:hover,.offer-page .offer-link:hover{color:var(--c-ink)}
.offer-note__link:focus-visible,.offer-page .offer-link:focus-visible{outline:2px solid var(--c-ink);outline-offset:3px}
.offer-note--home{padding-block:18px 0}

/* Central page */
.offer-page .offer-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--c-ink)}
.offer-page .offer-steps li{padding:18px 20px 20px 0;border-bottom:1px solid var(--c-line)}
.offer-page .offer-steps li + li{padding-left:20px;border-left:1px solid var(--c-line)}
.offer-page .offer-steps b{display:block;font-family:var(--f-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--c-mute);margin-bottom:8px;font-weight:500}
.offer-page .offer-steps p{margin:0;font-size:16px;line-height:1.55;color:var(--c-ink-2)}
.offer-page .offer-compare{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--c-ink)}
.offer-page .offer-compare > div{padding:20px 22px}
.offer-page .offer-compare > div + div{border-left:1px solid var(--c-ink);background:var(--c-paper-2);border-left-width:6px;border-left-color:var(--c-accent)}
.offer-page .offer-compare h3{font-family:var(--f-display);font-size:var(--fs-m);text-transform:uppercase;line-height:1.05;margin:0 0 10px}
.offer-page .offer-compare ul{margin:0;padding:0;list-style:none}
.offer-page .offer-compare li{padding:6px 0;border-top:1px solid var(--c-line);font-size:15px;line-height:1.5;color:var(--c-ink-2)}
.offer-page .offer-ask{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.offer-page .offer-ask .btn{white-space:normal;text-align:center}
.offer-page .offer-ended{margin:0;padding:14px 18px;border:1px solid var(--c-ink);border-left:6px solid var(--c-ink);background:var(--c-paper-2);font-size:16px;line-height:1.55}
@media (max-width:780px){
  .offer-page .offer-steps{grid-template-columns:1fr}
  .offer-page .offer-steps li,.offer-page .offer-steps li + li{padding:16px 0;border-left:0}
  .offer-page .offer-compare{grid-template-columns:1fr}
  .offer-page .offer-compare > div + div{border-left:6px solid var(--c-accent);border-top:1px solid var(--c-ink)}
}
@media (max-width:520px){
  .offer-page .offer-ask .btn{width:100%}
}
