.rm-offer-banner{background:linear-gradient(100deg,#ffef69,#ffdf00 48%,#e7ae12);color:#171713;border-block:1px solid #b98f0c}.rm-offer-banner .wrap{min-height:72px;display:flex;align-items:center;gap:24px}.rm-offer-kicker{font-size:.62rem;font-weight:850;letter-spacing:.14em}.rm-offer-banner strong{font-size:clamp(.9rem,1.5vw,1.15rem)}.rm-offer-total{margin-left:auto;padding:7px 11px;border:1px solid #171713;border-radius:999px;font-size:.68rem;font-weight:800;text-transform:uppercase}.rm-offer-banner a{color:#171713;font-size:.78rem;font-weight:800;white-space:nowrap}.rm-promo{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}.rm-promo.is-open{opacity:1;visibility:visible}.rm-promo-backdrop{position:absolute;inset:0;background:#050505bf;backdrop-filter:blur(7px)}.rm-promo-dialog{position:relative;width:min(920px,calc(100vw - 48px));max-height:calc(100dvh - 48px);display:grid;grid-template-columns:1.05fr 1fr;overflow:auto;border:1px solid #ffdf005c;border-radius:18px;background:#141518;color:#fff;box-shadow:0 30px 100px #000b;transform:translateY(22px) scale(.98);transition:transform .45s cubic-bezier(.22,1,.36,1)}.rm-promo.is-open .rm-promo-dialog{transform:none}.rm-promo-photo{min-height:560px;background:linear-gradient(0deg,#101114d9,transparent 55%),url('../../images/optimized/hero-halifax-lessons-800.webp') 58% center/cover no-repeat}.rm-promo-copy{position:relative;padding:clamp(34px,5vw,64px);background:radial-gradient(circle at 100% 0,#ffdf0015,transparent 43%),linear-gradient(145deg,#222328,#111216)}.rm-promo-copy:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#ffdf0012 1px,transparent 1px),linear-gradient(90deg,#ffdf0012 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(135deg,#000,transparent 70%)}.rm-promo-copy>*{position:relative}.rm-promo-copy h2{font-size:clamp(2.4rem,4.5vw,4.6rem);line-height:.94;letter-spacing:-.055em;margin:22px 0}.rm-promo-copy h2 em{color:#ffdf00;font-style:normal}.rm-promo-free{display:flex;align-items:center;gap:12px;margin:20px 0;color:#ffdf00}.rm-promo-free strong{font-size:5.2rem;line-height:.8;letter-spacing:-.07em}.rm-promo-voucher{align-items:flex-end}.rm-promo-voucher strong{font-size:clamp(3.7rem,6vw,5.2rem)}.rm-promo-voucher span{padding-bottom:.2rem}.rm-promo-free span{font-size:1rem;font-weight:900;line-height:1.05;letter-spacing:.08em}.rm-promo-copy p{color:#dedbd4;font-size:.92rem;line-height:1.65}.rm-promo-copy .rm-promo-total{color:#fff}.rm-promo-copy .button{margin:8px 0 18px}.rm-promo-copy small{display:block;color:#aaa69e;font-size:.62rem;line-height:1.5}.rm-promo-close{position:absolute;z-index:3;right:14px;top:14px;width:44px;height:44px;border:1px solid #ffffff55;border-radius:50%;background:#111c;color:#fff;font-size:1.6rem;cursor:pointer}.rm-promo-close:hover{background:#ffdf00;color:#111}.rm-promo-close:focus-visible{outline:3px solid #ffdf00;outline-offset:3px}@media(max-width:760px){.rm-offer-banner .wrap{padding-block:14px;display:grid;grid-template-columns:1fr auto;gap:7px 14px}.rm-offer-kicker,.rm-offer-banner strong{grid-column:1}.rm-offer-total{grid-column:2;grid-row:1/3;margin:0}.rm-offer-banner a{grid-column:1/-1}.rm-promo{align-items:end;padding:12px}.rm-promo-dialog{width:100%;max-height:min(82dvh,680px);grid-template-columns:1fr;border-radius:16px}.rm-promo-photo{min-height:170px;max-height:24vh;background-position:center 44%}.rm-promo-copy{padding:28px 24px 30px}.rm-promo-copy h2{font-size:2.65rem;margin:14px 0}.rm-promo-free{position:absolute;right:24px;top:-48px;padding:12px;border-radius:12px;background:#111e;box-shadow:0 10px 30px #0008}.rm-promo-free strong{font-size:3rem}.rm-promo-free span{font-size:.7rem}.rm-promo-copy p{font-size:.82rem}.rm-promo-close{top:10px;right:10px}}@media(prefers-reduced-motion:reduce){.rm-promo,.rm-promo-dialog{transition:none}}

/* Premium offer strip: a dark automotive surface keeps the yellow reserved for emphasis. */
.rm-offer-banner{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#fff;
  border-block:1px solid #ffdf0038;
  background:
    radial-gradient(circle at 18% -80%,#ffdf003d 0,transparent 42%),
    radial-gradient(circle at 88% 180%,#d89a1729 0,transparent 38%),
    linear-gradient(112deg,#0b0c0e 0%,#1b1c20 48%,#0c0d0f 100%);
  box-shadow:inset 0 1px #ffffff0b,inset 0 -1px #0009;
}
.rm-offer-banner::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  opacity:.22;
  background-image:
    linear-gradient(116deg,transparent 0 58%,#ffdf0022 58.2% 58.5%,transparent 58.7%),
    repeating-linear-gradient(90deg,#fff0 0 48px,#ffffff0a 49px,#fff0 50px);
  mask-image:linear-gradient(90deg,transparent,#000 20% 85%,transparent);
}
.rm-offer-banner::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:0;
  bottom:0;
  width:34%;
  height:2px;
  background:linear-gradient(90deg,#ffdf00,transparent);
  box-shadow:0 0 22px #ffdf0080;
}
.rm-offer-kicker{color:#ffdf00;text-shadow:0 0 22px #ffdf0040}
.rm-offer-banner strong{color:#fff}
.rm-offer-total{color:#ffed83;border-color:#ffdf0070;background:#ffdf000c;box-shadow:inset 0 0 18px #ffdf0009}
.rm-offer-banner a{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  padding:0 17px;
  border:1px solid #ffea62;
  border-radius:7px;
  color:#171713;
  background:linear-gradient(135deg,#fff06e,#ffdf00 62%,#e4b217);
  box-shadow:0 8px 24px #0005,0 0 0 1px #0002 inset;
  transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;
}
.rm-offer-banner a:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 12px 30px #0007,0 0 20px #ffdf0029}
.rm-offer-banner a:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(min-width:761px){.rm-offer-total{display:inline-flex;align-items:center;justify-content:center;min-width:154px;min-height:38px;padding:8px 18px;line-height:1;text-align:center;white-space:nowrap}}@media(max-width:760px){
  .rm-offer-banner{background:radial-gradient(circle at 15% 0,#ffdf0030,transparent 46%),linear-gradient(145deg,#17181c,#090a0c)}
  .rm-offer-banner::before{background-size:auto;opacity:.16}
  .rm-offer-banner::after{width:64%}
  .rm-offer-banner a{width:max-content;margin-top:4px}
}
@media(prefers-reduced-motion:reduce){.rm-offer-banner a{transition:none}.rm-offer-banner a:hover{transform:none}}
.rm-offer-banner a,.rm-promo-copy .button,.package .button.secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:12px}
.rm-link-arrow{display:block;flex:0 0 20px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.rm-offer-banner a:hover .rm-link-arrow,.rm-promo-copy .button:hover .rm-link-arrow,.package .button.secondary:hover .rm-link-arrow{transform:translateX(3px)}
@media(max-width:760px){.rm-offer-banner a,.package .button.secondary{gap:9px}.rm-link-arrow{flex-basis:18px;width:18px;height:18px}}
@media(max-width:760px){.rm-offer-banner .wrap{grid-template-columns:auto minmax(0,1fr);gap:10px 12px;padding-inline:18px}.rm-offer-kicker,.rm-offer-banner strong{grid-column:1/-1;grid-row:auto}.rm-offer-total{grid-column:1;grid-row:3;justify-self:start;max-width:100%;min-height:36px;padding:8px 14px;white-space:nowrap;line-height:1.25}.rm-offer-banner a{grid-column:2;grid-row:3;align-self:center;justify-self:end;max-width:100%;margin-top:0;white-space:nowrap;text-align:center;font-size:clamp(.68rem,3vw,.78rem)}}
