/* Oct-Nov 2026 enrolment offer: first-visit lightbox. Campaign-scoped; removed by the expiry release.
   Visual language = the live offer notice (ink border, orange left rule, warm paper) and the
   site's display/mono type. Only affects elements this campaign creates, plus one rule that
   keeps the optional replay card hidden while the lightbox is open (never at any other time). */
.offer-lb{
  --lb-ink:var(--c-ink,#0A0A0A);--lb-ink-2:var(--c-ink-2,#1F1F1F);--lb-mute:var(--c-mute,#616161);
  --lb-paper:var(--c-paper,#FFFFFF);--lb-paper-2:var(--c-paper-2,#F4F1EC);--lb-accent:var(--c-accent,#E97A3D);
  --lb-line:var(--c-line,rgba(10,10,10,.12));
  box-sizing:border-box;width:min(540px,calc(100vw - 32px));max-width:none;
  max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
  margin:auto;padding:0;overflow:hidden;
  border:2px solid var(--lb-ink);border-radius:0;background:var(--lb-paper);color:var(--lb-ink-2);
  box-shadow:0 18px 48px rgba(10,10,10,.28);
  font-family:var(--f-body,"Inter","Helvetica Neue",Arial,sans-serif);
}
.offer-lb::backdrop{background:rgba(10,10,10,.62)}
.offer-lb *,.offer-lb *::before{box-sizing:border-box}
.offer-lb__inner{max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);overflow:auto;overscroll-behavior:contain;padding:0 24px 24px}
.offer-lb__bar{
  position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:0 0 4px;padding:14px 0 10px;background:var(--lb-paper);
}
.offer-lb__eyebrow{
  display:flex;align-items:center;gap:10px;margin:0;min-width:0;
  font-family:var(--f-mono,"IBM Plex Mono",ui-monospace,Menlo,monospace);font-size:12px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;color:var(--lb-mute);
}
.offer-lb__eyebrow::before{content:"";flex:none;width:24px;height:3px;background:var(--lb-accent)}
.offer-lb__close{
  flex:none;display:inline-flex;align-items:center;gap:8px;min-width:44px;min-height:44px;margin:0;padding:8px 12px;
  border:2px solid var(--lb-ink);border-radius:0;background:var(--lb-paper);color:var(--lb-ink);
  font:600 14px/1 var(--f-body,"Inter",Arial,sans-serif);cursor:pointer;
}
.offer-lb__close span{font-size:20px;line-height:1}
.offer-lb__close:hover{background:var(--lb-ink);color:var(--lb-paper)}
.offer-lb__title{
  margin:0 0 16px;font-family:var(--f-display,"Archivo Black",Arial,sans-serif);font-weight:400;
  font-size:clamp(28px,6.5vw,40px);line-height:1.04;letter-spacing:0;text-transform:uppercase;
  color:var(--lb-ink);text-wrap:balance;overflow-wrap:break-word;
}
.offer-lb__hl{background:var(--lb-accent);color:var(--lb-ink);padding:0 .12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.offer-lb__terms{margin:0 0 14px;padding:12px 16px;border:1px solid var(--lb-ink);border-left:6px solid var(--lb-accent);background:var(--lb-paper-2)}
.offer-lb__when{margin:0 0 6px;font-size:18px;line-height:1.35;font-weight:700;color:var(--lb-ink)}
.offer-lb__and{text-decoration:underline;text-decoration-color:var(--lb-accent);text-decoration-thickness:3px;text-underline-offset:4px}
.offer-lb__nw{white-space:nowrap}
.offer-lb__what{margin:0;font-size:16px;line-height:1.45;font-weight:600;color:var(--lb-ink-2)}
.offer-lb__list{margin:0 0 14px;padding:0;list-style:none;font-size:15px;line-height:1.5;color:var(--lb-ink-2)}
.offer-lb__list li{position:relative;margin:0;padding:6px 0 6px 18px;border-top:1px solid var(--lb-line)}
.offer-lb__list li::before{content:"";position:absolute;left:0;top:14px;width:8px;height:8px;background:var(--lb-accent)}
.offer-lb__pre{margin:0 0 14px;font-size:15px;line-height:1.45;font-weight:600;color:var(--lb-ink)}
.offer-lb__actions{display:flex;flex-wrap:wrap;gap:10px}
.offer-lb__btn{
  flex:1 1 190px;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;
  border:2px solid var(--lb-ink);background:var(--lb-paper);color:var(--lb-ink);text-align:center;text-decoration:none;
  font-family:var(--f-display,"Archivo Black",Arial,sans-serif);font-size:15px;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;
}
.offer-lb__btn--accent{background:var(--lb-accent);border-color:var(--lb-accent);color:var(--lb-ink)}
.offer-lb__btn:hover{background:var(--lb-ink);border-color:var(--lb-ink);color:var(--lb-paper)}
.offer-lb__close:focus-visible,.offer-lb__btn:focus-visible{outline:3px solid var(--lb-ink);outline-offset:3px}
html.offer-lb-open .replay-choice{display:none!important}
@media (max-width:480px){
  .offer-lb{width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
  .offer-lb__inner{max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);padding:0 16px 18px}
  .offer-lb__bar{padding:12px 0 8px}
  .offer-lb__eyebrow{font-size:11px;letter-spacing:.12em}
  .offer-lb__title{font-size:28px;margin-bottom:14px}
  .offer-lb__when{font-size:17px}
  .offer-lb__btn{flex-basis:100%}
}
@media (max-width:360px){
  .offer-lb__eyebrow{letter-spacing:.06em}
  .offer-lb__eyebrow::before{display:none}
}
@media (prefers-reduced-motion:no-preference){
  .offer-lb[open]{animation:offer-lb-in .18s ease-out}
  @keyframes offer-lb-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
}
@media print{.offer-lb{display:none!important}}
