/* RSS-18 shared September promotion popup.
   Third shared asset pair alongside tabs and gallery - never forked per page.
   Follows the gallery lightbox pattern: the overlay sits above the site's
   custom cursor (z-index 9999), so the native cursor is restored and the
   painted one hidden for as long as the overlay is open. */

.promo{position:fixed;inset:0;z-index:10000;display:none;
  background:rgba(0,0,0,.88);align-items:center;justify-content:center;padding:32px 16px}
.promo.open{display:flex}

.promo-card{position:relative;width:100%;max-width:520px;background:#0a0a0a;
  border:1px solid rgba(255,255,255,.12);padding:56px 40px 40px;text-align:center;
  box-shadow:0 30px 90px rgba(0,0,0,.7)}
.promo-card:focus{outline:none}

.promo-eyebrow{font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:10px;font-weight:700;letter-spacing:3.4px;text-transform:uppercase;line-height:1.5;
  color:var(--red,#C00303);margin:0 0 18px;padding:0 34px}

.promo-h{font-family:var(--ff-d,'Bebas Neue',Impact,sans-serif);
  font-size:clamp(38px,9vw,60px);line-height:.92;letter-spacing:-1px;
  color:var(--white,#fff);margin:0 0 22px}

.promo-rows{list-style:none;margin:0 0 24px;padding:0;
  border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.promo-rows li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;
  padding:13px 2px;font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:13px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.72)}
.promo-rows li+li{border-top:1px solid rgba(255,255,255,.07)}
.promo-was{color:rgba(255,255,255,.34);text-decoration:line-through;margin-right:8px}
.promo-now{font-family:var(--ff-d,'Bebas Neue',Impact,sans-serif);font-size:22px;
  letter-spacing:1px;color:var(--white,#fff)}

.promo-code{font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.6);margin:0 0 26px}
.promo-code b{display:inline-block;font-family:var(--ff-d,'Bebas Neue',Impact,sans-serif);
  font-size:20px;letter-spacing:4px;color:var(--white,#fff);
  border:1px dashed rgba(255,255,255,.32);padding:6px 16px 4px;margin-left:8px}

.promo-cta{font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:11px;font-weight:700;letter-spacing:4px;text-transform:uppercase;
  background:var(--red,#C00303);color:var(--white,#fff);padding:18px 44px;
  text-decoration:none;display:inline-block;transition:background .2s,transform .2s}
.promo-cta:hover{background:var(--red-dark,#8A0202);transform:translateY(-2px)}
.promo-cta:focus-visible{outline:2px solid #fff;outline-offset:3px}

.promo-fine{font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:10px;letter-spacing:1.4px;line-height:1.65;color:rgba(255,255,255,.34);
  margin:22px 0 0;text-transform:none}

.promo-close{position:absolute;top:8px;right:12px;background:none;border:0;
  color:#fff;font-size:30px;line-height:1;opacity:.6;padding:10px;cursor:pointer;
  font-family:inherit;transition:opacity .2s}
.promo-close:hover{opacity:1}
.promo-close:focus-visible{outline:2px solid var(--red,#C00303);outline-offset:2px;opacity:1}

/* Same treatment the lightbox uses: restore a real cursor while the overlay is open. */
body.promo-lock{overflow:hidden;cursor:auto}
body.promo-lock .cur,body.promo-lock .cur-ring{display:none}

@media(max-width:600px){
  .promo-card{padding:52px 22px 30px}
  .promo-eyebrow{letter-spacing:2.2px;padding:0 26px}
  .promo-rows li{font-size:11px;letter-spacing:1.5px}
  .promo-cta{padding:16px 30px;letter-spacing:3px}
}
@media(prefers-reduced-motion:reduce){
  .promo-cta{transition:none}
}

/* Portraits-page campaign line. Injected by promo.js only inside the campaign
   window, so it cannot advertise the code before it works. Deliberately quiet:
   it sits under the section subtitle and does not touch the pricing rows. */
.promo-note{font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:11px;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--red,#C00303);margin:14px 0 0;padding-left:14px;
  border-left:2px solid var(--red,#C00303)}
.promo-note[hidden]{display:none}

/* Persistent campaign bar. Bottom, not top: the site has a fixed nav and paints
   its own cursor up there. Sits below the modal (10000) and below the site's
   custom cursor (9999) so the cursor stays visible over it. */
.promo-bar{position:fixed;left:0;right:0;bottom:0;z-index:9990;
  display:flex;align-items:center;justify-content:center;gap:18px;
  background:var(--red,#C00303);color:var(--white,#fff);
  padding:11px 52px 11px 20px;
  box-shadow:0 -6px 24px rgba(0,0,0,.35)}
.promo-bar-msg{margin:0;font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:12px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.92)}
.promo-bar-msg strong{color:var(--white,#fff);font-weight:700}
.promo-bar-msg b{font-family:var(--ff-d,'Bebas Neue',Impact,sans-serif);
  font-size:16px;letter-spacing:3px;color:var(--white,#fff);
  border:1px dashed rgba(255,255,255,.55);padding:2px 9px 0;margin-left:4px}
.promo-bar-cta{flex:none;font-family:var(--ff-b,'Barlow Condensed','Arial Narrow',Arial,sans-serif);
  font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;
  background:var(--white,#fff);color:var(--red,#C00303);padding:9px 22px;
  text-decoration:none;transition:transform .2s}
.promo-bar-cta:hover{transform:translateY(-1px)}
.promo-bar-cta:focus-visible{outline:2px solid #fff;outline-offset:3px}
.promo-bar-x{position:absolute;right:10px;top:50%;transform:translateY(-50%);
  background:none;border:0;color:#fff;font-size:24px;line-height:1;
  opacity:.75;cursor:pointer;padding:6px 10px;font-family:inherit}
.promo-bar-x:hover{opacity:1}
.promo-bar-x:focus-visible{outline:2px solid #fff;outline-offset:2px;opacity:1}

/* Keep the bar off the page footer rather than covering it. */
body.promo-bar-on{padding-bottom:56px}

@media(max-width:700px){
  .promo-bar{gap:12px;padding:10px 46px 10px 14px}
  .promo-bar-msg{font-size:10px;letter-spacing:1.2px;line-height:1.45}
  .promo-bar-msg b{font-size:14px;letter-spacing:2px}
  .promo-bar-cta{padding:8px 15px;letter-spacing:2px;font-size:10px}
  body.promo-bar-on{padding-bottom:74px}
}
