/* Scoped headline fonts never swap after their optional first-paint window.
   Body typography and the website's existing font loading remain unchanged. */
@font-face{font-family:'RD Bebas';font-style:normal;font-weight:400;font-display:optional;src:url('/fonts/article/bebas-neue-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'RD Bebas';font-style:normal;font-weight:400;font-display:optional;src:url('/fonts/article/bebas-neue-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'RD Lato';font-style:normal;font-weight:700;font-display:optional;src:url('/fonts/article/lato-bold-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'RD Lato';font-style:normal;font-weight:700;font-display:optional;src:url('/fonts/article/lato-bold-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
div.rd-herowrap .rd-hero-title{font-family:'RD Bebas',Impact,'Arial Narrow',sans-serif;}
div.rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero-title,[data-rd-brand="mm"] div.rd-herowrap .rd-hero-title,[data-rd-brand="md"] div.rd-herowrap .rd-hero-title{font-family:'RD Lato',Arial,sans-serif;}

/* article-ingredients.css is linked by the renderer immediately before this file (file-stamped);
   it is no longer @imported here so its cache-buster does not need hand editing. */
/* ============================================================================
   Article redesign — hero treatments, editorial body typography, follow-ad rail.
   Ported from tools/preview/article-header-redesign-v16.html (the design source of
   truth). Loaded ONLY on article/magazine pages when Functions.EnableArticleRedesign
   is true (GET_MAIN_CONTENT injects the <link> into HEADER_CONTENT), so these rules
   never touch non-article pages. Hero markup is server-rendered with explicit
   .rd-hero-- modifier classes; the body-typography rebuild + follow-ad rail are done
   by article-redesign.js.
   ============================================================================ */

/* ---- Load-order hardening ----
   The header/footer CMS rows re-load Bootstrap AFTER this file, so any single-class rule here that ties
   Bootstrap (.row>* padding/width, .container padding) loses on source order. Selectors that must beat
   Bootstrap are compound (.container.article-readable, div.rd-herowrap) rather than !important. */

/* ---- Brand accents: MCAA red by default. Masonry Magazine pages carry data-rd-brand="mm" (set server-side
        from the request domain; article-redesign.js copies it onto the rail) and use its blue/navy, no red. ---- */
:root{--rd-accent:#c8232c;--rd-accent-line:rgba(200,35,44,.32);--rd-accent-deep:#7a1419;--rd-accent-deep-tint:rgba(122,20,25,.80);}
/* Shared MCAA chrome supplies the compact layout; only its homepage had the
   trigger. Article navigation follows it while honoring reduced motion. */
header.rd-compact-navigation .primary-nav-bar .dropdown-toggle[aria-expanded="true"] + .dropdown-menu{
    visibility:visible;opacity:1;pointer-events:auto;
}
@media (prefers-reduced-motion:reduce){
    header.sticky-navigation.rd-compact-navigation,
    header.sticky-navigation.rd-compact-navigation .top-bar,
    header.sticky-navigation.rd-compact-navigation .second-tier,
    header.sticky-navigation.rd-compact-navigation .dropdown-menu{transition:none!important;}
}
[data-rd-brand="mm"]{--rd-accent:#3e60ab;--rd-accent-line:rgba(62,96,171,.32);--rd-accent-deep:#192644;--rd-accent-deep-tint:rgba(25,38,68,.80);}
[data-rd-brand="md"]{--rd-accent:#2a668b;--rd-accent-line:rgba(42,102,139,.32);--rd-accent-deep:#112938;--rd-accent-deep-tint:rgba(17,41,56,.80);}
[data-bs-theme="dark"] [data-rd-brand="mm"]{--rd-accent:#8ca9ed;--rd-accent-line:rgba(140,169,237,.48);--rd-accent-deep:#273a66;--rd-accent-deep-tint:rgba(39,58,102,.86);--rd-reader-ink:#f0f3f8;--rd-reader-lead:#e2e8f2;--rd-reader-heading:#fff;--rd-reader-muted:#c3ccd9;--rd-reader-surface:#191d25;--rd-reader-border:#3b4454;}
[data-bs-theme="dark"] [data-rd-brand="md"]{--rd-accent:#91cce5;--rd-accent-line:rgba(145,204,229,.48);--rd-accent-deep:#193f50;--rd-accent-deep-tint:rgba(25,63,80,.86);--rd-reader-ink:#f0f3f8;--rd-reader-lead:#e2e8f2;--rd-reader-heading:#fff;--rd-reader-muted:#c3ccd9;--rd-reader-surface:#172229;--rd-reader-border:#3d505a;}
/* Plain fallbacks first: a browser without color-mix() drops that declaration and would otherwise
   keep the brand red for a sponsored article. */
[data-rd-sponsored="true"]{--rd-accent-line:rgba(89,99,111,.38);--rd-accent-deep:#3a4048;--rd-accent-deep-tint:rgba(89,99,111,.72);}
[data-rd-sponsored="true"]{--rd-accent:var(--rd-sponsor-readable,#59636f);--rd-accent-line:color-mix(in srgb,var(--rd-sponsor-accent,#59636f) 38%,transparent);--rd-accent-deep:color-mix(in srgb,var(--rd-sponsor-accent,#59636f) 58%,#07101c);--rd-accent-deep-tint:color-mix(in srgb,var(--rd-sponsor-accent,#59636f) 72%,transparent);}
[data-bs-theme="dark"] [data-rd-sponsored="true"]{--rd-accent:color-mix(in srgb,var(--rd-sponsor-accent,#59636f) 42%,#fff);--rd-accent-line:color-mix(in srgb,var(--rd-sponsor-accent,#59636f) 55%,#fff 15%,transparent);}

/* ---- Full-bleed hero wrapper (lifted above the three-column wrapper by the inline script) ---- */
div.rd-herowrap{position:relative;width:100%;max-width:100%;margin:0;padding:0;}
@media(max-width:991.98px){body:has(.mobile-top-bar) div.rd-herowrap{padding-top:var(--rd-mobile-inset,76px);}}
/* When the disclosure cannot follow beside the cart (narrow phones), keep it below the fixed phone header, not under it. */
@media(max-width:991.98px){body:has(.mobile-top-bar) div.rd-herowrap>.rd-sponsored-pill:not(.is-following){top:var(--rd-mobile-inset,76px);}}
.rd-sponsored-pill{position:absolute;z-index:8;top:0;left:0;right:auto;display:inline-flex;align-items:center;gap:8px;width:184px;min-height:44px;max-height:68px;padding:8px;border:0;border-radius:0;overflow:hidden;background:var(--rd-sponsor-accent,#59636f);color:var(--rd-sponsor-card-ink,var(--rd-sponsor-on,#fff))!important;box-shadow:0 3px 10px rgba(7,16,28,.16);font:700 10px/1.3 system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;text-decoration:none!important;}
.rd-sponsored-pill:hover,.rd-sponsored-pill:focus-visible{color:var(--rd-sponsor-card-ink,var(--rd-sponsor-on,#fff))!important;text-decoration:none!important;}
.rd-sponsored-pill:focus-visible{outline:2px solid currentColor;outline-offset:-5px;}
.rd-sponsored-pill.is-following{position:fixed;top:var(--rd-sponsor-follow-top,0px);left:0;right:auto;z-index:30;}
.rd-sponsored-pill.is-outside-article{visibility:hidden;pointer-events:none;}
.rd-sponsored-pill i{font-size:9px;flex:none;}
.rd-sponsored-pill{max-width:100%;box-sizing:border-box;white-space:normal;}
.rd-sponsored-label{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0;}
.rd-sponsored-company{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px;line-height:1.3;letter-spacing:0;text-transform:none;overflow-wrap:anywhere;}
.rd-printhead{display:none;}
@media print{
  div.rd-herowrap{display:none!important;}
  .container.article-readable .rd-printhead{display:block;margin:0 0 1rem;}
  .rd-printhead h1{font-size:1.8rem;line-height:1.2;margin:0 0 .4rem;}
  .rd-printmeta{font-size:.95rem;}
  .rd-print-sponsored{display:block;margin:0 0 .55rem;font:700 .75rem/1.3 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#333;}
}
@media(max-width:639px){.rd-sponsored-pill{width:164px;padding:7px 8px;gap:6px;}}

/* ---- Reading measure ---- */
.container.article-readable{max-width:100%!important;margin-left:0!important;margin-right:auto!important;padding-left:clamp(1.5rem,6vw,6rem);padding-top:clamp(1.75rem,3.5vw,2.75rem);}
/* Browser-extension junk pasted into some CMS bodies; it only adds a stray gap above the lead. */
.article-readable grammarly-desktop-integration{display:none;}
.article-readable>article{display:block;max-width:72ch;}
/* Default.aspx's end-of-article "Download as PDF" row: keep the right-aligned icon on the article's
   right edge instead of the far edge of the (now much wider) column. Same font-size as the article so
   72ch matches; the -12px cancels the article row's negative gutter. */
#articlePrintRoot + .mcaa-no-print{box-sizing:content-box;width:auto;flex:1 1 auto;min-width:0;font-size:1.12rem;max-width:72ch;padding-left:calc(clamp(1.5rem,6vw,6rem) - 12px);}

/* ---- Editorial body typography (raw CMS rich text -> designed reading experience) ---- */
.article-readable article{font-size:1.12rem;line-height:1.72;color:var(--rd-reader-ink,#26313c);}
.article-readable article a{color:var(--rd-accent);text-decoration:none;border-bottom:1px solid var(--rd-accent-line);}
.article-readable article a:hover{border-bottom-color:var(--rd-accent);}
.rd-readtime{opacity:.88;}
.rd-p{margin:0 0 1.25em;}
.rd-lead{font-size:1.25rem;line-height:1.62;color:var(--rd-reader-lead,#1c2730);}
.rd-lead::first-letter{float:left;font-weight:800;font-size:3.4em;line-height:.78;padding:.02em .12em 0 0;color:var(--rd-accent);}
[data-rd-dropcap="off"] .rd-lead::first-letter{float:none;font:inherit;line-height:inherit;padding:0;color:inherit;}
.rd-h2{font-weight:700;font-size:1.55rem;line-height:1.24;color:var(--rd-reader-heading,#13202e);margin:1.9em 0 .55em;letter-spacing:-.01em;text-transform:none;}
.rd-h2 u,.rd-h2 b{text-decoration:none;font-weight:inherit;}
.rd-h2::before{content:"";display:block;width:44px;height:3px;background:var(--rd-accent);margin-bottom:.55em;border-radius:2px;}
.rd-figure{margin:1.9em 0;}
.rd-figure img{display:block;width:100%!important;height:auto!important;border-radius:10px;box-shadow:0 6px 22px rgba(11,31,51,.10);}
.rd-figcaption{margin-top:.55em;font:500 .82rem/1.45 system-ui;color:var(--rd-reader-muted,#8a939c);}
/* Ordinary semantic tables from source imports and historical stories do not have the Studio
   component's .rd-table-scroll shell. Keep the real table intact and contain its intrinsic width. */
.rd-plain-table-scroll{box-sizing:border-box;width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--rd-accent) transparent;}
.rd-plain-table-scroll:focus-visible{outline:3px solid var(--rd-accent);outline-offset:3px;}
@media print{
  .rd-plain-table-scroll{width:auto;max-width:none;overflow:visible;}
  .rd-plain-table-scroll>table{display:table;width:100%!important;min-width:0!important;max-width:100%!important;}
  .rd-plain-table-scroll>table th,.rd-plain-table-scroll>table td{white-space:normal!important;overflow-wrap:anywhere;}
  .rd-plain-table-scroll>table img{max-width:100%!important;height:auto!important;}
}

/* ---- Hero (photo overlay is the default; kicker/avatar only surface in the no-image variants) ---- */
.rd-hero{--rd-photo-cap-pad:clamp(1.2rem,4.5vw,3.4rem);position:relative;width:100%;line-height:0;background:#0b1320;overflow:hidden;}
.rd-hero>img,.rd-hero-photo>img{display:block;width:100%;height:clamp(300px,46vw,600px);object-fit:cover;object-position:50% 50%;transform-origin:50% 50%;}
.rd-hero-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,15,26,.74) 0%,rgba(8,15,26,.36) 34%,rgba(8,15,26,0) 62%);pointer-events:none;z-index:1;}
.rd-hero-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(1.2rem,4.5vw,3.4rem) clamp(1.5rem,6vw,6rem);}
.rd-hero-title{--rd-title-preferred:28ch;--rd-title-cap:34ch;color:#fff;font-weight:700;width:100%;max-width:min(100%,var(--rd-title-fit-width,var(--rd-title-preferred)));font-size:clamp(1.7rem,4.2vw,3.3rem);line-height:1.12;margin:0 0 .4em;text-shadow:0 1px 3px rgba(0,0,0,.35),0 2px 22px rgba(0,0,0,.5);text-wrap:balance;overflow-wrap:anywhere;}
/* A complete long title can grow even a Short photo hero. Sharing one grid cell
   keeps the crop band at its preset height until the caption needs more room. */
.rd-hero:not(.rd-hero--below):not(.rd-hero--noimg){display:grid;grid-template-columns:minmax(0,1fr);}
.rd-hero.rd-hero--h-short{--rd-photo-cap-pad:clamp(2rem,5vw,3.6rem);}
.rd-hero.rd-hero--h-tall{--rd-photo-cap-pad:clamp(3.4rem,9vw,7rem);}
.rd-hero:not(.rd-hero--below):not(.rd-hero--noimg)>img{grid-area:1/1;min-height:100%;}
.rd-hero:not(.rd-hero--below):not(.rd-hero--noimg) .rd-hero-cap{grid-area:1/1;position:relative;align-self:end;padding-top:max(var(--rd-photo-cap-pad),var(--rd-badge-space,0px));padding-bottom:max(3rem,var(--rd-photo-cap-pad));}
/* The title-fit layer fades through the caption instead of holding the same
   darkness up to its top edge. The darkest band stays at the photo's foot;
   a longer, softer shoulder continues above even a wrapped headline. */
.rd-hero--title-fitted:not(.rd-hero--scrim-heavy) .rd-hero-scrim{background:none;}
.rd-hero-scrim::after{content:"";position:absolute;inset:0;opacity:var(--rd-title-fit-active,0);background:linear-gradient(to top,rgba(8,15,26,.86) 0,rgba(8,15,26,.86) 16px,rgba(8,15,26,.78) calc(var(--rd-title-scrim-height,160px)*.35),rgba(8,15,26,.64) calc(var(--rd-title-scrim-height,160px)*.72),rgba(8,15,26,.48) var(--rd-title-scrim-height,160px),rgba(8,15,26,.14) calc(var(--rd-title-scrim-height,160px) + 64px),transparent calc(var(--rd-title-scrim-height,160px) + clamp(120px,14vw,200px)));}
.rd-hero-meta{color:#e9eef4;font-size:clamp(.85rem,1.5vw,1.05rem);line-height:1.4;}
.rd-hero-meta i{color:#7cb6ff;}.rd-hero-meta a{color:#e9eef4;text-decoration:none;}
/* Photo credit: camera icon + text. The icon never shrinks; the text truncates so a long credit
   can't run the width of a phone screen. */
/* Vertical padding only: the camera chip and the arrow are absolute overlays, so they sit ON the
   track rather than adding width or height to the pill. */
.rd-hero-credit{position:absolute;right:12px;bottom:10px;z-index:2;display:flex;align-items:center;max-width:min(62vw,420px);font:500 11px/1.3 system-ui;color:#fff;background:rgba(0,0,0,.5);padding:3px 0;border-radius:3px;overflow:hidden;backdrop-filter:saturate(1.2) blur(2px);}
/* Camera: solid chip pinned left that doubles as the "scroll back" button, mirroring the right
   arrow. Credits scroll underneath and are hidden cleanly behind it. */
.rd-credit-prev{position:absolute;left:0;top:0;bottom:0;z-index:2;display:flex;align-items:center;border:0;margin:0;padding:0 7px 0 9px;background:rgba(0,0,0,.92);color:inherit;font-size:10px;line-height:1;cursor:pointer;}
.rd-hero-credit:not(.is-scrollable) .rd-credit-prev{cursor:default;}
.rd-hero-credit.is-start .rd-credit-prev i{opacity:.55;}
.rd-credit-prev:focus-visible{outline:1px solid currentColor;outline-offset:-2px;}
/* Match ingredient credits without depending on an icon font loading in previews. */
.rd-credit-prev .fa-camera{display:inline-block;width:14px;height:14px;background-color:currentColor;-webkit-mask:url("/Assets/Icons/lucide/camera.svg") center/contain no-repeat;mask:url("/Assets/Icons/lucide/camera.svg") center/contain no-repeat;}
.rd-credit-prev .fa-camera::before{content:none;}
@media(forced-colors:active){.rd-credit-prev .fa-camera{forced-color-adjust:none;color:CanvasText;}}
/* The credits themselves live in a horizontal scroller, so a long stock-photo credit list scrolls
   instead of stretching the pill across the hero. Scrollbar hidden; the arrow is the affordance. */
/* Track clears the two overlays with padding, so nothing is ever stranded under them. */
.rd-credit-track{display:flex;align-items:center;min-width:0;padding:0 9px 0 26px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;}
.rd-credit-track::-webkit-scrollbar{display:none;}
.rd-hero-credit.is-scrollable .rd-credit-track{padding-right:24px;}
.rd-credit-item{flex:none;white-space:nowrap;}
.rd-credit-item:not(:last-child)::after{content:"\00b7";margin:0 7px;opacity:.55;}
/* Arrow: a light fade over the right edge, so the credits look like they continue under it. */
.rd-credit-next{position:absolute;right:0;top:0;bottom:0;z-index:2;display:none;align-items:center;border:0;color:inherit;padding:0 7px 0 16px;margin:0;cursor:pointer;font-size:10px;line-height:1;background:linear-gradient(to right,rgba(0,0,0,0) 0,rgba(0,0,0,.55) 45%,rgba(0,0,0,.72) 100%);}
.rd-hero-credit.is-scrollable .rd-credit-next{display:inline-flex;}
.rd-hero-credit.is-end .rd-credit-next i{opacity:.35;}
.rd-credit-next:focus-visible{outline:1px solid currentColor;outline-offset:-2px;}
@media (max-width:640px){
  .rd-hero-credit{right:8px;bottom:8px;max-width:72vw;font-size:10px;padding:3px 7px;}
}
.rd-hero-kicker{display:none;}
.rd-hero-avatar{display:none;}
.rd-authorblock{display:none;}

/* ---- Image framing options (editor: Header treatment). Height presets change the crop band; zoom scales
        the photo in past the cover fit, anchored on the focal point, and needs the box to clip. ---- */
.rd-hero--h-short>img{height:clamp(220px,32vw,420px);}
.rd-hero--h-tall>img{height:clamp(380px,58vw,760px);}
.rd-hero--h-full>img{height:max(220px,calc(100vh - var(--rd-hero-top,90px)));height:max(220px,calc(100svh - var(--rd-hero-top,90px)));}
.rd-hero--zoom{overflow:hidden;}
.rd-hero--h-short .rd-hero-cap{padding-top:clamp(2rem,5vw,3.6rem);padding-bottom:clamp(2rem,5vw,3.6rem);}
.rd-hero--h-tall .rd-hero-cap{padding-top:clamp(3.4rem,9vw,7rem);padding-bottom:clamp(3.4rem,9vw,7rem);}
.rd-hero--h-full.rd-hero--noimg .rd-hero-cap{min-height:max(220px,calc(100vh - var(--rd-hero-top,90px)));min-height:max(220px,calc(100svh - var(--rd-hero-top,90px)));justify-content:center;}

/* ---- Photo treatments: the scrim/tint over the feature image itself ---- */
.rd-hero--photo-bw>img,.rd-hero--photo-bw>.rd-hero-photo>img{filter:grayscale(1) contrast(1.06);}
.rd-hero--scrim-heavy .rd-hero-scrim{background:linear-gradient(to top,rgba(8,15,26,.94) 0%,rgba(8,15,26,.70) 42%,rgba(8,15,26,.22) 78%,rgba(8,15,26,.10) 100%);}
/* Brand tint = desaturate the photo, wash it with the brand colour, and keep the STANDARD scrim for
   legibility. Tinting through the scrim as well (multiply on top of a dark gradient) turned the hero
   almost black, so the wash is its own controlled layer and the scrim is left alone. */
.rd-hero--photo-brand>img,.rd-hero--photo-brand>.rd-hero-photo>img{filter:grayscale(1) contrast(1.06);}
.rd-hero--photo-brand::after{content:"";position:absolute;inset:0;z-index:1;background:var(--rd-accent-deep);opacity:.45;mix-blend-mode:multiply;pointer-events:none;}

/* ---- Extra backdrop colours behind the no-image treatments ---- */
.rd-hero--bg-brand .rd-hero-bg{filter:grayscale(1) contrast(1.06) brightness(.92);}
.rd-hero--bg-brand .rd-hero-tint{background:linear-gradient(150deg,var(--rd-accent-deep-tint) 0%,rgba(11,31,51,.92) 100%);mix-blend-mode:multiply;}
.rd-hero--bg-brand.rd-bg-on::after{content:"";position:absolute;inset:0;z-index:1;background:rgba(7,16,28,.26);pointer-events:none;}
.rd-hero--bg-dark .rd-hero-bg{filter:brightness(.72) saturate(.85);}
.rd-hero--bg-dark .rd-hero-tint{background:linear-gradient(180deg,rgba(8,18,30,.72) 0%,rgba(8,18,30,.86) 100%);}

/* ---- Masonry texture backdrop: a running-bond brick course drawn in CSS, so a feature image is
        not required. Deliberately low-contrast — it is a surface, not a picture. ---- */
.rd-hero--noimg.rd-hero--bg-texture{
  background-color:var(--rd-accent-deep);
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.05) 0%,rgba(0,0,0,.28) 100%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.085) 0 2px,transparent 2px 46px),
    repeating-linear-gradient(90deg,rgba(255,255,255,.085) 0 2px,transparent 2px 96px);
  background-size:auto,auto,auto;
}
/* Offset every other course so the vertical joints stagger like real running bond. */
.rd-hero--noimg.rd-hero--bg-texture::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.085) 0 2px,transparent 2px 96px);
  background-position:48px 0;
  -webkit-mask-image:repeating-linear-gradient(0deg,#000 0 46px,transparent 46px 92px);
  mask-image:repeating-linear-gradient(0deg,#000 0 46px,transparent 46px 92px);
}
.rd-hero--noimg.rd-hero--bg-texture .rd-hero-cap{position:relative;z-index:2;}

/* Independent header colors and masonry patterns. Values are a bounded appearance catalog. */
.rd-hero[data-rd-palette]{--rd-hero-ink:#fff;--rd-hero-muted:#e4e9ed;--rd-hero-joint:rgba(255,255,255,.14);}
.rd-hero[data-rd-palette="site"]{--rd-hero-surface:var(--rd-accent-deep);--rd-hero-wash:var(--rd-accent-deep-tint);}
.rd-hero[data-rd-palette="clay"]{--rd-hero-surface:#783f32;--rd-hero-wash:rgba(120,63,50,.82);}
.rd-hero[data-rd-palette="slate"]{--rd-hero-surface:#344b5e;--rd-hero-wash:rgba(52,75,94,.82);}
.rd-hero[data-rd-palette="limestone"]{--rd-hero-surface:#e6dbc7;--rd-hero-wash:rgba(230,219,199,.82);--rd-hero-ink:#282d32;--rd-hero-muted:#45505b;--rd-hero-joint:rgba(51,41,25,.16);}
.rd-hero[data-rd-palette="charcoal"]{--rd-hero-surface:#272b2f;--rd-hero-wash:rgba(39,43,47,.82);}
.rd-hero[data-rd-palette="sage"]{--rd-hero-surface:#394c40;--rd-hero-wash:rgba(57,76,64,.82);}
.rd-hero--noimg[data-rd-palette]{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(0,0,0,.06)),var(--rd-hero-surface);}
.rd-hero--noimg[data-rd-palette] .rd-hero-title{color:var(--rd-hero-ink);}
.rd-hero--noimg[data-rd-palette] .rd-hero-meta,.rd-hero--noimg[data-rd-palette] .rd-hero-meta a,.rd-hero--noimg[data-rd-palette] .rd-hero-meta i{color:var(--rd-hero-muted);}
.rd-hero--noimg.rd-bg-on[data-rd-palette]{--rd-hero-ink:#fff;--rd-hero-muted:#f0f2f4;}
.rd-hero--noimg.rd-bg-on[data-rd-palette] .rd-hero-tint{background:linear-gradient(rgba(8,18,30,.55),rgba(8,18,30,.75)),linear-gradient(140deg,var(--rd-hero-wash),rgba(8,18,30,.93));mix-blend-mode:normal;}
.rd-hero--photo-brand[data-rd-palette]::after{background:var(--rd-hero-surface);}
.rd-hero--below[data-rd-palette] .rd-hero-cap{background:var(--rd-hero-surface);padding-bottom:clamp(1.1rem,3vw,1.9rem);margin-top:12px;}
.rd-hero--below[data-rd-palette] .rd-hero-title{color:var(--rd-hero-ink);}
.rd-hero--below[data-rd-palette] .rd-hero-meta,.rd-hero--below[data-rd-palette] .rd-hero-meta a,.rd-hero--below[data-rd-palette] .rd-hero-meta i{color:var(--rd-hero-muted);}
.rd-hero--noimg.rd-hero--masonry{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(0,0,0,.06)),var(--rd-hero-surface,var(--rd-accent-deep));}
.rd-hero--noimg[data-rd-palette="custom"]{background:var(--rd-hero-surface);}
.rd-hero--noimg.rd-hero--masonry::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:var(--rd-hero-joint,rgba(255,255,255,.14));mask-image:var(--rd-mortar);-webkit-mask-image:var(--rd-mortar);mask-size:var(--rd-course);-webkit-mask-size:var(--rd-course);mask-repeat:repeat;-webkit-mask-repeat:repeat;}
.rd-hero--bond-running{--rd-course:120px 80px;--rd-mortar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='80' viewBox='0 0 120 80'%3E%3Cpath d='M0 0H120M0 40H120M0 80H120M0 0V40M120 0V40M60 40V80' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");}
.rd-hero--bond-stacked{--rd-course:100px 44px;--rd-mortar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='44'%3E%3Cpath d='M0 0H100V44H0Z' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");}
.rd-hero--bond-ashlar{--rd-course:180px 120px;--rd-mortar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='120'%3E%3Cpath d='M0 0H180V120H0ZM0 48H112V0M112 72H180M64 48V120M64 90H180M144 90V120' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");}
.rd-hero--bond-weave{--rd-course:112px 112px;--rd-mortar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='112' height='112'%3E%3Cpath d='M0 0H112V112H0ZM0 56H112M56 0V112M0 28H56M84 0V56M28 56V112M56 84H112' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E");}

/* ---- Photo hero, title below: the photo is a clean band and the title + byline sit under it, aligned to the
        reading column. Credit is static under the photo (the hero box is taller than the image here). ---- */
.rd-hero--below{background:transparent;overflow:visible;}
.rd-hero--below>img,.rd-hero--below>.rd-hero-photo>img{height:clamp(240px,40vw,500px);}
/* Until the shared enhancer supplies a clipping frame, show an unscaled cover
   image rather than allowing a saved zoom to obscure the caption. */
.rd-hero--below>img{transform:none!important;}
/* Clip the photo itself, leaving the title and credits outside its crop. */
.rd-hero-photo{position:relative;overflow:hidden;line-height:0;isolation:isolate;}
.rd-hero--below.rd-hero--h-short>img,.rd-hero--below.rd-hero--h-short>.rd-hero-photo>img{height:clamp(220px,32vw,420px);}
.rd-hero--below.rd-hero--h-tall>img,.rd-hero--below.rd-hero--h-tall>.rd-hero-photo>img{height:clamp(380px,58vw,760px);}
.rd-hero--below.rd-hero--h-full>img,.rd-hero--below.rd-hero--h-full>.rd-hero-photo>img{height:max(220px,calc(100vh - var(--rd-hero-top,90px)));height:max(220px,calc(100svh - var(--rd-hero-top,90px)));}
.rd-hero--below.rd-hero--photo-brand::after{display:none;}
.rd-hero--below.rd-hero--photo-brand>.rd-hero-photo::after{content:"";position:absolute;inset:0;background:var(--rd-hero-surface,var(--rd-accent-deep));opacity:.45;mix-blend-mode:multiply;pointer-events:none;}
.rd-hero--below .rd-hero-scrim{display:none;}
/* Title-below sits on the page, not on the photo, so the overlays fade to white instead of black. */
.rd-hero--below .rd-hero-credit{position:static;display:flex;width:max-content;max-width:calc(100% - clamp(1.5rem,6vw,6rem));margin:6px clamp(1.5rem,6vw,6rem) 0 auto;color:#8a939c;background:none;padding:0;backdrop-filter:none;}
.rd-hero--below .rd-credit-prev{position:static;background:none;color:#8a939c;opacity:.7;padding:0 6px 0 0;}
.rd-hero--below .rd-credit-track{padding-left:0;}
.rd-hero--below .rd-credit-next{background:linear-gradient(to right,rgba(255,255,255,0) 0,#fff 45%);color:#8a939c;}
.rd-hero--below .rd-hero-cap{position:static;padding:clamp(1.1rem,3vw,1.9rem) clamp(1.5rem,6vw,6rem) 0;line-height:1.2;}
.rd-hero--below .rd-hero-title{--rd-title-preferred:30ch;--rd-title-cap:36ch;color:#13202e;text-shadow:none;}
.rd-hero--below .rd-hero-meta,.rd-hero--below .rd-hero-meta a{color:#4a5560;}
.rd-hero--below .rd-hero-meta i{color:var(--rd-accent);}
[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero--below:not([data-rd-palette]) .rd-hero-title{color:var(--rd-reader-heading);}
[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero--below:not([data-rd-palette]) .rd-hero-meta,[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero--below:not([data-rd-palette]) .rd-hero-meta a{color:var(--rd-reader-muted);}
[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero--below .rd-hero-credit,[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero--below .rd-credit-prev{color:var(--rd-reader-muted);}
[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-hero--below .rd-credit-next{background:linear-gradient(to right,rgba(16,16,16,0) 0,#101010 45%);color:var(--rd-reader-muted);}

/* ---- No-image centered hero: the DEFAULT for features with no header image ---- */
.rd-hero--noimg{overflow:visible;background:radial-gradient(120% 140% at 50% -20%,#1b4068 0%,#0e2742 46%,#091a2e 100%);}
.rd-hero--noimg>img{display:none;}
.rd-hero--noimg .rd-hero-scrim{display:none;}
.rd-hero--noimg .rd-hero-credit{display:none;}
.rd-hero--noimg.rd-bg-on .rd-hero-credit{display:block;z-index:3;}
.rd-hero--noimg .rd-hero-cap{position:relative;z-index:2;line-height:1.2;text-align:center;display:flex;flex-direction:column;align-items:center;padding:clamp(2.8rem,7vw,5.4rem) clamp(1.5rem,6vw,6rem);}
.rd-hero--noimg .rd-hero-kicker{display:inline-block;color:#fff;background:var(--rd-accent);font:700 11px/1 system-ui;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:3px;margin-bottom:1.25rem;}
.rd-hero--noimg .rd-hero-title{--rd-title-preferred:34ch;--rd-title-cap:40ch;text-align:center;margin:0 0 .5em;text-shadow:none;}
.rd-herowrap[data-rd-sponsored="true"] .rd-hero--noimg .rd-hero-cap{padding-top:max(clamp(2.8rem,7vw,5.4rem),var(--rd-badge-space,6rem));}
.rd-hero--noimg .rd-hero-meta{color:#bcd0e6;}

/* ---- Author feature: no-image band + circular author photo straddling the seam ---- */
.rd-hero--author{padding-bottom:8px;}
.rd-hero--author .rd-hero-meta{display:none;}
.rd-hero--author .rd-hero-title{--rd-title-preferred:34ch;--rd-title-cap:40ch;}
.rd-hero--author .rd-hero-avatar{display:block;position:absolute;left:50%;bottom:0;transform:translate(-50%,50%);width:132px;height:132px;border-radius:50%;border:5px solid #fff;box-shadow:0 12px 34px rgba(0,0,0,.32);overflow:hidden;z-index:3;background:#0e2742;}
.rd-hero-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.rd-hero-avatar .rd-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font:700 2.7rem/1 system-ui;letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,var(--rd-accent) 0%,var(--rd-accent-deep) 100%);}
/* Author credit block sits just under the straddling avatar; server emits it only in author mode. */
.rd-authorblock.rd-authorblock--on{display:flex;flex-direction:column;align-items:center;text-align:center;padding:84px clamp(1.5rem,6vw,6rem) 6px;}
.rd-authorblock .rd-ab-name{font:700 1.18rem/1.2 system-ui;color:#13202e;}
.rd-authorblock .rd-ab-meta{margin-top:5px;font:700 11px/1 system-ui;letter-spacing:.1em;text-transform:uppercase;color:var(--rd-accent);}
[data-bs-theme="dark"] .rd-herowrap:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-authorblock .rd-ab-name{color:var(--rd-reader-heading);}

/* ---- Optional photo backdrop behind the no-image treatments; clipped so it can't bleed into the article ---- */
.rd-hero-bgclip{display:none;}
.rd-hero--noimg.rd-bg-on .rd-hero-bgclip{display:block;position:absolute;inset:0;overflow:hidden;z-index:0;}
.rd-hero-bg{position:absolute;inset:0;background-size:cover!important;background-position:center;background-repeat:no-repeat;transform:scale(calc(var(--rd-photo-zoom,1)*var(--rd-photo-overscan,1)));transform-origin:center;}
.rd-hero-tint{position:absolute;inset:0;}
.rd-hero--bg-blur .rd-hero-bg{--rd-photo-overscan:1.07;filter:blur(15px) saturate(1.1) brightness(.92);}
.rd-hero--bg-blur .rd-hero-tint{background:linear-gradient(180deg,rgba(8,18,30,.68) 0%,rgba(8,18,30,.80) 100%);}
.rd-hero--bg-bw .rd-hero-bg{filter:grayscale(1) contrast(1.08) brightness(.95);}
.rd-hero--bg-bw .rd-hero-tint{background:linear-gradient(150deg,rgba(11,31,51,.86) 0%,var(--rd-accent-deep-tint) 100%);mix-blend-mode:multiply;}
.rd-hero--bg-bw.rd-bg-on::after{content:"";position:absolute;inset:0;z-index:1;background:rgba(7,16,28,.30);pointer-events:none;}

/* ---- Layout: hide the left gutter, pin the right rail, let the article fill.
        2-8-2 guardrail: match BOTH col-lg-9 (today) and col-lg-8 (the stashed 2-8-2 change)
        so a Site.Master column rebalance can't strand the content column. ---- */
#left-sidebar{display:none!important;}
#right-sidebar{background:transparent!important;padding-top:clamp(1.2rem,4vw,2.6rem);padding-left:18px;}
/* margin-right offsets the Site.Master row's -12px gutter (its container-fluid has no padding), which
   otherwise pushes the rail 12px past the viewport edge and clips the ad + modules. */
/* flex-basis 0 + width:auto beats Bootstrap's width:75% on the content column; with the old
   flex:1 1 auto, 75% + 330px + gutters wrapped the rail under the body between 1100 and 1400px.
   Match the Site.Master content column only; CMS header/footer/body grids retain their widths. */
@media(min-width:1100px){#right-sidebar{flex:0 0 330px!important;max-width:330px!important;margin-right:12px;}#left-sidebar + :is(.col-lg-9,.col-lg-8),.rd-article-column{flex:1 1 0!important;min-width:0;width:auto!important;max-width:none!important;}}
@media(max-width:1099px){#right-sidebar{flex:0 0 100%!important;max-width:100%!important;padding-left:0;}#left-sidebar + :is(.col-lg-9,.col-lg-8),.rd-article-column{flex:0 0 100%!important;max-width:100%!important;}.rd-railgap{height:0!important;}#right-sidebar .sidebar-ad{position:static!important;top:auto!important;}}
/* The centered editorial area supplies outer breathing room on wide screens.
   Keep the rail in its own column so Wide ingredients cannot run underneath it. */
#right-sidebar.bg-body,#right-sidebar .bg-body{background:transparent!important;}

/* ---- Follow-ad rail: the existing sticky ad ends above the final recommendation module. ---- */
.rd-railmod{position:relative;z-index:2;background:#fff;border-top:2px solid var(--rd-accent);padding:10px 12px 14px;margin:0 -12px 8px;font-family:system-ui,sans-serif;box-shadow:0 0 0 12px #fff;}
[data-bs-theme="dark"] #right-sidebar:is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-railmod,[data-bs-theme="dark"] :is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-section-rail .rd-railmod{background:var(--rd-reader-surface);box-shadow:0 0 0 12px var(--rd-reader-surface);}
.rd-railgap{height:0;}
.article-readable article img{max-width:100%;height:auto!important;}
/* Desktop leaderboard creatives may outlive a resize to phone width. Keep their existing
   slots inside the page bounds without refreshing or creating another ad unit. */
@media(max-width:1099px){body:has(.article-readable) .top-leaderboard-ad,body:has(.article-readable) .bottom-leaderboard-ad{max-width:100%;overflow:hidden;}}
.rd-railmod.rd-latest{margin-top:18px;}
@media(max-width:1099px){#right-sidebar .rd-railmod{margin-left:0;margin-right:0;box-shadow:none;}}
.rd-railmod h4{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#33414f;margin:0 0 6px;}
[data-bs-theme="dark"] :is([data-rd-brand="mm"],[data-rd-brand="md"]) .rd-railmod h4{color:var(--rd-reader-heading);}
.rc-mini{display:flex;gap:10px;text-decoration:none;color:inherit;padding:9px 0;border-bottom:1px solid #e7ebef;}
.rc-mini:last-child{border-bottom:0;}
.rc-mthumb{flex:0 0 74px;height:54px;border-radius:6px;background:#eef1f4 center/cover;background-size:cover;}
.rc-mthumb{overflow:hidden;}
.rd-card-visual{display:block;width:100%;height:100%;object-fit:cover;}
.rd-card-poster{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--rd-accent-deep),var(--rd-accent));color:#fff;min-height:54px;font:700 9px/1.3 system-ui;letter-spacing:.06em;}

/* Full-bleed stories have server-rendered text/ad sections. The single existing ad is owned by
   one rail and its sticky travel ends with that section, before the following figure. */
.container.article-readable.rd-sectioned{width:100%;padding:0!important;}
.container-fluid:has(.rd-sectioned){padding-inline:0!important;}
.container-fluid:has(.rd-sectioned)>.row,#articlePrintRoot:has(.rd-sectioned)>.row{margin-inline:0!important;}
#articlePrintRoot:has(.rd-sectioned){padding-inline:0!important;}
.container.article-readable.rd-sectioned>article{max-width:none;}
.rd-text-section{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;}
.rd-section-main{min-width:0;padding:clamp(1.75rem,3.5vw,2.75rem) clamp(1.5rem,4vw,4rem) 1.5rem clamp(1.5rem,6vw,6rem);}
.rd-section-measure{max-width:72ch;}
.rd-section-rail{min-width:0;padding:clamp(1.75rem,3.5vw,2.75rem) 30px 1.5rem 0;}
.rd-section-rail .rd-railmod{margin:0 0 18px;box-shadow:none;}
.rd-section-rail .sidebar-ad{position:sticky;top:calc(var(--rd-stick,16px) + var(--rd-sponsor-follow-space,0px) + var(--rd-sponsor-strip-space,0px));}
.rd-section-ad-static .sidebar-ad{position:static;}
.rd-sectioned .rd-fullbleed{width:100%;max-width:none;margin:0;background:var(--rd-reader-surface,#eef1f4);}
.rd-sectioned .rd-fullbleed img{width:100%!important;border-radius:0;box-shadow:none;object-fit:cover;}
.rd-sectioned .rd-fullbleed[data-rd-height="cinematic"] img{height:clamp(240px,44vw,720px)!important;}
.rd-sectioned .rd-fullbleed[data-rd-height="tall"] img{height:clamp(320px,64vw,920px)!important;}
.rd-sectioned .rd-fullbleed figcaption{margin:0;padding:14px clamp(1.5rem,6vw,6rem);font:500 .82rem/1.55 system-ui;overflow-wrap:anywhere;}
.rd-sectioned .rd-fullbleed:not(.rd-gallery):not(.rd-component) figcaption{color:var(--rd-reader-muted,#56616e);}
.rd-sectioned .rd-fullbleed.rd-gallery{padding-inline:clamp(8px,2vw,24px);}
.rd-sectioned .rd-fullbleed.rd-gallery[data-rd-style="clean"]{padding-inline:0;}
.rd-sectioned .rd-fullbleed.rd-gallery>.rd-gallery-grid{width:100%;}
/* Center text and its rail as one editorial area on wide screens. Only the text
   sections are capped: heroes and full-bleed ingredients retain the viewport width. */
@media screen and (min-width:1440px){
  .container-fluid>.row:has(> #right-sidebar):has(.article-readable){max-width:1440px;margin-inline:auto;}
  .container.article-readable:not(.rd-sectioned){max-width:1440px!important;margin-left:auto!important;}
  .rd-text-section{max-width:1440px;margin-inline:auto;}
  .rd-hero:not(.rd-hero--noimg) .rd-hero-cap{padding-inline:calc((100% - 1440px)/2 + 6rem);}
  .rd-sectioned .rd-fullbleed figcaption{padding-inline:calc((100% - 1440px)/2 + 6rem);}
}
@media(max-width:1099px){.rd-text-section{grid-template-columns:minmax(0,1fr);gap:0;}.rd-section-rail{padding:0 24px 24px;}.rd-section-rail .sidebar-ad{position:static;}}
/* A 320px preview can have only 305px after its scrollbar. Give fixed 300px creatives
   the rail's full width; leave the story measure and the creative dimensions untouched. */
@media(max-width:359px){.rd-section-rail{padding-inline:0;}.rd-section-rail .sidebar-ad>.row{margin-inline:0;}.rd-section-rail .sidebar-ad>.row>.col-12{padding-inline:0!important;display:flex;justify-content:center;}}
/* Stored Magazine/Design footer logos have a 300px width plus 12px margins. */
body:has(.article-readable) img:is([src$="/masonry-logo.svg"],[src$="/masonry-design-main.svg"]){max-width:calc(100% - 24px);height:auto;}
@media print{.rd-text-section{display:block;}.rd-section-rail{display:none!important;}.rd-section-main{padding:12px 0;}.rd-section-measure{max-width:none;}.rd-sectioned .rd-fullbleed{break-inside:avoid;margin:12px 0;}.rd-sectioned .rd-fullbleed img{height:auto!important;}.rd-sectioned .rd-fullbleed figcaption{padding:10px 0;}.rd-recommendations-source{display:none!important;}}
@media print{body:has(.rd-sectioned) *:not(:has(#articlePrintRoot)):not(#articlePrintRoot):not(#articlePrintRoot *){display:none!important;}.rd-sectioned .article-categories{display:none!important;}}
.rd-recommendations-source{padding:24px clamp(1.5rem,6vw,6rem);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
@media(max-width:640px){.rd-recommendations-source{grid-template-columns:minmax(0,1fr);}}
.rc-mk{display:block;font:700 10px/1 system-ui;letter-spacing:.06em;text-transform:uppercase;color:var(--rd-accent);margin-bottom:3px;}
.rc-mt{font-weight:600;font-size:.86rem;line-height:1.25;color:#13202e;}
[data-bs-theme="dark"] :is([data-rd-brand="mm"],[data-rd-brand="md"]) .rc-mini{border-bottom-color:var(--rd-reader-border);}
[data-bs-theme="dark"] :is([data-rd-brand="mm"],[data-rd-brand="md"]) .rc-mt{color:var(--rd-reader-ink);}
.rc-mini:hover .rc-mt{color:var(--rd-accent);}
/* The single real ad unit (MC-SIDEBAR-1-AUTO-AD) becomes the follow-ad. */
.sidebar-ad.rd-followad{position:sticky;top:min(calc(var(--rd-stick,270px) + var(--rd-sponsor-follow-space,0px) + var(--rd-sponsor-strip-space,0px)),var(--rd-ad-limit,99999px));z-index:1;}
#right-sidebar .rd-related + .rd-followad{margin-top:28px;}

/* Logo variants sit on their intended surface, independent of the article accent. */
.rd-sponsor-panel.rd-railmod{box-sizing:border-box;width:100%;max-width:330px;margin:0 0 18px;padding:14px;border:1px solid var(--rd-reader-border,#dce3e9);border-top:3px solid var(--rd-sponsor-readable,#59636f);border-radius:4px;background:var(--rd-reader-surface,#fff);box-shadow:none;}
.rd-sponsor-panel-heading{display:block;margin-bottom:10px;color:var(--rd-reader-muted,#536273);font:700 11px/1.3 system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;}
:is(.article-readable,#right-sidebar) .rd-sponsor-panel-link{display:flex;flex-direction:column;gap:10px;min-width:0;color:var(--rd-reader-ink,#26313c);text-decoration:none;border:0;}
:is(.article-readable,#right-sidebar) .rd-sponsor-panel-link:hover .rd-sponsor-panel-company{text-decoration:underline;text-decoration-color:var(--rd-sponsor-readable,#59636f);text-underline-offset:3px;}
.rd-sponsor-panel-link:focus-visible{outline:3px solid var(--rd-sponsor-readable,#59636f);outline-offset:4px;}
.rd-sponsor-panel-logo{display:block;min-width:0;}
.rd-sponsor-panel-logo .rd-sponsor-logo{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:176px;padding:3px;background:#fff;}
.rd-sponsor-panel-logo .rd-sponsor-logo--dark{display:none;background:#101010;}
[data-bs-theme="dark"] .rd-sponsor-panel-logo .rd-sponsor-logo--light{display:none;}
[data-bs-theme="dark"] .rd-sponsor-panel-logo .rd-sponsor-logo--dark{display:flex;}
.rd-sponsor-panel-logo .rd-sponsor-logo--only,[data-bs-theme="dark"] .rd-sponsor-panel-logo .rd-sponsor-logo--only{display:flex;}
.rd-sponsor-panel-logo .rd-sponsor-logo[hidden]{display:none!important;}
.rd-sponsor-panel-logo img{display:block;box-sizing:border-box;width:170px;height:170px;max-width:100%;object-fit:contain;}
.rd-sponsor-panel-company{display:block;min-width:0;font:700 14px/1.35 system-ui,sans-serif;overflow-wrap:anywhere;}
[data-bs-theme="dark"] .rd-sponsor-panel.rd-railmod{--rd-reader-surface:#191d25;--rd-reader-ink:#f0f3f8;--rd-reader-muted:#c3ccd9;--rd-reader-border:#485566;}
@media(max-width:1099px){.article-readable>.rd-sponsor-panel{margin:0 0 24px;}}
@media(max-width:1099px){.article-readable.rd-sectioned>.rd-sponsor-panel{width:calc(100% - clamp(3rem,12vw,12rem));margin:24px 0 24px clamp(1.5rem,6vw,6rem);}}
.rd-sponsored-pill.is-compact-dock{padding-block:6px;}
.rd-sponsored-pill.is-compact-dock .rd-sponsored-company{-webkit-line-clamp:1;}
.rd-sponsored-pill.is-gutter-dock{width:var(--rd-sponsor-gutter-width,72px);min-height:44px;padding:6px;font-size:9px;line-height:1.35;letter-spacing:0;text-align:center;}
.rd-sponsored-pill.is-gutter-dock .rd-sponsored-label{gap:0;}
.rd-sponsored-pill.is-gutter-dock .rd-sponsored-company{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
.rd-sponsored-pill.is-nav-strip{width:var(--rd-sponsor-strip-width,180px);height:44px;max-height:44px;font-size:9px;line-height:1.2;letter-spacing:0;}
.rd-sponsored-pill.is-nav-strip .rd-sponsored-label{gap:2px;}
.rd-sponsored-pill.is-nav-strip .rd-sponsored-company{font-size:11px;line-height:1.25;}
.rd-sponsor-nav-strip{position:fixed;top:var(--rd-sponsor-follow-top,0px);left:0;right:0;height:44px;z-index:29;background:var(--bs-body-bg,#fff);border-bottom:1px solid var(--bs-border-color,#dce3e9);box-shadow:0 2px 5px rgba(7,16,28,.08);}
[data-bs-theme="dark"] .rd-sponsor-nav-strip{background:var(--bs-body-bg,#191d25);}
.rd-sponsor-nav-strip[hidden]{display:none;}
html:has(.rd-sponsor-nav-strip:not([hidden])){scroll-padding-top:calc(var(--rd-stick,16px) + var(--rd-sponsor-strip-space,0px));}
body:has(.rd-sponsor-nav-strip:not([hidden])) .sidebar-ad{scroll-margin-top:calc(var(--rd-stick,16px) + var(--rd-sponsor-strip-space,0px));}
#rdSponsorPartner{width:100%;max-width:100%;margin-bottom:8px;}
#rdSponsorLogoStatus:empty{display:none;}

/* A manual horizontal continuation uses the same editorial recommendation pool. */
.rd-reading-next{clear:both;min-width:0;margin:40px 0 24px;padding:24px 0;border-top:2px solid var(--rd-accent);font-family:system-ui,sans-serif;}
.rd-sectioned>.rd-reading-next{max-width:1440px;margin:36px auto 24px;padding:24px clamp(1.5rem,6vw,6rem);}
.rd-reading-next-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;}
.rd-reading-next-heading h2{margin:0;font:700 clamp(1.35rem,2vw,1.85rem)/1.2 system-ui,sans-serif;letter-spacing:-.02em;color:var(--rd-reader-heading,#172432);}
.rd-reading-next-controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.rd-reading-next-controls[hidden],.rd-reading-next-controls button[hidden]{display:none!important;}
.rd-reading-next-controls button{min-height:44px;min-width:44px;padding:9px 14px;border:1px solid var(--rd-reader-border,#c7d2dd);border-radius:4px;background:var(--rd-reader-surface,#fff);color:var(--rd-reader-ink,#203044);font:600 .8rem/1.3 system-ui,sans-serif;cursor:pointer;touch-action:manipulation;}
.rd-reading-next-controls button:hover:not(:disabled){border-color:var(--rd-accent);color:var(--rd-accent);}
.rd-reading-next-controls button:disabled{opacity:.45;cursor:default;}
.rd-reading-next-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/4);gap:18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding:3px;padding:3px 3px 12px;scrollbar-width:thin;}
.rd-next-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;scroll-snap-align:start;border:1px solid var(--rd-reader-border,#dce3e9);border-radius:6px;background:var(--rd-reader-surface,#fff);color:var(--rd-reader-ink,#203044);text-decoration:none!important;transition:box-shadow .15s ease-out;}
.rd-next-visual{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--rd-reader-border,#e3e9ef);}
.rd-next-visual .rd-card-visual{width:100%;height:100%;object-fit:cover;}
.rd-next-visual .rd-card-poster{font-size:13px;letter-spacing:.12em;}
.rd-next-copy{display:flex;flex-direction:column;gap:8px;padding:14px;}
.rd-next-category{font:700 .65rem/1.4 system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--rd-accent);overflow-wrap:anywhere;}
.rd-next-title{font:650 1rem/1.4 system-ui,sans-serif;color:var(--rd-reader-heading,#172432);overflow-wrap:anywhere;}
.rd-next-card:hover{border-color:var(--rd-accent);box-shadow:0 4px 14px rgba(19,32,46,.1);}
.rd-next-card:hover .rd-next-title{color:var(--rd-accent);}
.rd-next-card:focus-visible,.rd-reading-next-controls button:focus-visible{outline:3px solid var(--rd-accent);outline-offset:2px;}
.rd-reading-next-status{min-height:1.4em;margin:10px 0 0;font-size:.8rem;color:var(--rd-reader-muted,#526170);}
.rd-reading-next-status:empty{display:none;}
.rd-reading-next-status.is-quiet{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.article-readable[data-rd-sponsored="true"] .rd-reading-next{--rd-accent:var(--rd-sponsor-readable,#59636f);}
[data-bs-theme="dark"] .rd-reading-next{--rd-accent:#ffadaf;--rd-reader-surface:#202932;--rd-reader-ink:#e8eef5;--rd-reader-heading:#f5f7fa;--rd-reader-muted:#c3ccd9;--rd-reader-border:#465568;}
[data-bs-theme="dark"] .rd-reading-next[data-rd-brand="mm"]{--rd-accent:#aec6ff;}
[data-bs-theme="dark"] .rd-reading-next[data-rd-brand="md"]{--rd-accent:#abdcec;}
[data-bs-theme="dark"] .article-readable[data-rd-sponsored="true"] .rd-reading-next{--rd-accent:color-mix(in srgb,var(--rd-sponsor-accent,#59636f) 42%,#fff);}
@media(max-width:1099px){.rd-reading-next-track{grid-auto-columns:calc((100% - 18px)/2);}}
@media(max-width:639px){.rd-reading-next-heading{align-items:flex-start;flex-direction:column;gap:12px;}.rd-reading-next-track{grid-auto-columns:85%;}.rd-next-copy{padding:12px;}}
@media(prefers-reduced-motion:reduce){.rd-next-card{transition:none;}}
@media print{.rd-reading-next{display:none!important;}}

/* Additional alternate-break leaderboards stay in normal document flow. */
.article-readable .rd-article-break-ad{position:static;display:flex;justify-content:center;align-items:center;container-type:inline-size;box-sizing:border-box;max-width:100%;margin:0;padding:24px 0;background:var(--rd-reader-surface,#f5f7f9);}
.article-readable .rd-article-break-ad[hidden]{display:none!important;}
.rd-article-break-ad-slot{width:320px;max-width:100%;min-height:50px;flex:none;}
@container(min-width:728px){.rd-article-break-ad-slot{width:728px;min-height:90px;}}
@media print{.article-readable .rd-article-break-ad{display:none!important;}}

/* Reader tools sit above the rail recommendations and after the story on phones. */
:is(.article-readable,#right-sidebar) .rd-reader-actions{box-sizing:border-box;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:6px;margin:0 0 16px;max-width:100%;padding:10px 0 12px;border-top:2px solid var(--rd-accent);border-bottom:0;box-shadow:none;background:transparent;font:600 .8rem/1.3 system-ui,sans-serif;}
.rd-reader-actions .rd-reader-actions-title{grid-column:1/-1;margin:0 0 3px;font:700 .76rem/1.3 system-ui,sans-serif;letter-spacing:.055em;text-transform:uppercase;color:var(--rd-reader-heading,#33414f);}
:is(.article-readable,#right-sidebar) .rd-reader-actions :is(button,a){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:9px 10px;margin:0;border:1px solid var(--rd-reader-border,#cbd4de);border-radius:6px;color:var(--rd-reader-ink,#344557);background:var(--rd-reader-surface,#fff);font:inherit;text-decoration:none;cursor:pointer;}
:is(.article-readable,#right-sidebar) .rd-reader-actions :is(button,a):hover{border-color:var(--rd-accent);color:var(--rd-accent);}
:is(.article-readable,#right-sidebar) .rd-reader-actions :is(button,a,input):focus-visible{outline:3px solid var(--rd-accent);outline-offset:3px;}
:is(.article-readable,#right-sidebar) .rd-reader-actions button:disabled{opacity:.6;cursor:wait;}
.rd-reader-actions>button{grid-column:span 3;}
.rd-reader-actions :is(.rd-reader-action-social,.rd-reader-action-share){grid-column:span 2;}
.rd-reader-actions :is(.rd-reader-action-social,.rd-reader-action-share) .rd-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.rd-reader-actions :is(.rd-share-status,.rd-share-address){grid-column:1/-1;}
@media(min-width:1100px){#right-sidebar>.rd-reader-actions{width:calc(100% + 24px);max-width:none;margin-inline:-12px;padding-inline:12px;}.rd-section-rail>.rd-reader-actions{padding-inline:12px;}}
.rd-reader-actions .rd-share-status{color:var(--rd-reader-muted,#536273);font-weight:500;}
.rd-reader-actions .rd-share-status:empty{display:none;}
.rd-reader-actions .rd-share-address{box-sizing:border-box;width:100%;min-height:44px;padding:8px;border:1px solid var(--rd-reader-border,#aab8c7);border-radius:4px;color:var(--rd-reader-ink,#26313c);background:var(--rd-reader-surface,#fff);font:400 .85rem/1.4 system-ui,sans-serif;}
.rd-reader-actions [hidden],.rd-print-photo{display:none;}
[data-bs-theme="dark"] .rd-reader-actions{--rd-reader-ink:#f0f3f8;--rd-reader-heading:#f0f3f8;--rd-reader-muted:#c3ccd9;--rd-reader-surface:#191d25;--rd-reader-border:#485566;}
@media(min-width:1100px){.container.article-readable.rd-has-actions-rail{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;}.rd-has-actions-rail>article{grid-column:1;grid-row:1;}.rd-has-actions-rail>.rd-reader-actions-rail{grid-column:2;grid-row:1;}.rd-has-actions-rail>.rd-reading-next{grid-column:1/-1;}}
@media(max-width:1099px){:is(.container.article-readable,#right-sidebar)>.rd-reader-actions{width:100%;max-width:none;margin:24px 0;}:is(.container.article-readable,#right-sidebar).rd-sectioned>.rd-reader-actions{width:auto;margin:24px clamp(1.5rem,4vw,4rem) 24px clamp(1.5rem,6vw,6rem);}}
/* Plain stories use nested legacy Bootstrap rows. Cancel their negative gutters
   before applying the same mobile reading inset used by sectioned stories. */
@media(max-width:1099px){.container-fluid:has(.article-readable:not(.rd-sectioned)),#articlePrintRoot:has(.article-readable:not(.rd-sectioned)),.rd-article-column:has(.article-readable:not(.rd-sectioned)){padding-inline:0!important;}.container-fluid:has(.article-readable:not(.rd-sectioned))>.row,#articlePrintRoot:has(.article-readable:not(.rd-sectioned))>.row{margin-inline:0!important;}.container.article-readable:not(.rd-sectioned){padding-inline:clamp(1.5rem,4vw,4rem);}}

/* The same clean document is used by Print and the browser's Save as PDF choice. */
@page rd-article{margin:16mm;}
@media print{
  #articlePrintRoot:has(.article-readable){page:rd-article;}
  html:has(.article-readable),body:has(.article-readable){overflow:visible!important;height:auto!important;min-height:0!important;background:#fff!important;color:#111!important;}
  body:has(.article-readable) *:not(:has(#articlePrintRoot)):not(#articlePrintRoot):not(#articlePrintRoot *){display:none!important;}
  .article-readable :is(.rd-reader-actions,.rd-section-rail,.rd-recommendations-source,.rd-reading-next,.rd-article-break-ad,.article-categories,.rd-carousel-controls,.rd-lightbox),.mcaa-no-print,#ProductList{display:none!important;}
  /* The native article wrapper is a Bootstrap row with negative gutters. Reset that
     outer row as well as the article column so printed text starts inside the page. */
  body:has(.article-readable) :is(#articlePrintRoot,.rd-article-column,.container.article-readable),#articlePrintRoot:has(.article-readable)>.row,.container-fluid:has(#articlePrintRoot),.container-fluid:has(#articlePrintRoot)>.row{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;float:none!important;}
  .article-readable article{max-width:none!important;font:11pt/1.55 Georgia,serif!important;}
  .article-readable article *,.article-readable .rd-printhead *{color:#111!important;background:transparent!important;box-shadow:none!important;text-shadow:none!important;}
  .article-readable .rd-printhead{display:block!important;margin:0 0 5mm;padding:0 0 5mm;border-bottom:1px solid #aaa;break-after:avoid;}
  .article-readable .rd-printhead h1{font:700 25pt/1.13 Georgia,serif;margin:0 0 3mm;}
  .article-readable :is(.rd-printmeta,.rd-print-credit){font:10pt/1.45 system-ui,sans-serif;margin:2mm 0;}
  .article-readable .rd-print-photo{display:block;margin:5mm 0 0;break-inside:avoid;}
  .article-readable .rd-print-photo img{display:block;width:100%;height:auto;max-height:95mm;object-fit:contain;}
  .article-readable :is(.rd-text-section,.rd-section-main,.rd-section-measure){display:block;max-width:none;padding:0;}
  .article-readable article :is(p,li){orphans:3;widows:3;}
  .article-readable article :is(h2,h3,h4){break-after:avoid;margin-top:5mm;}
  .article-readable article :is(figure,blockquote,.rd-callout){break-inside:avoid;}
  .article-readable article :is(.rd-component,.rd-fullbleed,.rd-gallery)[data-rd-version="1"],.article-readable article .rd-fullbleed{width:100%!important;max-width:100%!important;margin:5mm 0!important;}
  .article-readable article :is(.rd-gallery,.rd-table)[data-rd-version="1"]{break-inside:auto;}
  .article-readable article .rd-gallery[data-rd-version="1"]>figcaption{break-after:avoid;}
  .article-readable article .rd-gallery[data-rd-version="1"]>.rd-gallery-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;columns:auto!important;gap:4mm;overflow:visible!important;max-width:100%;padding:0;}
  .article-readable article .rd-gallery-grid>[data-rd-gallery-item]{display:block!important;min-width:0;max-width:100%;width:auto!important;margin:0!important;overflow:visible;break-inside:avoid;}
  .article-readable article :is(.rd-figure,.rd-gallery,.rd-fullbleed)[data-rd-version="1"] img,.article-readable article .rd-fullbleed img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;max-height:120mm!important;transform:none!important;border-radius:0;}
  .article-readable article figcaption{padding:2mm 0!important;}
  .article-readable article .rd-table-scroll{overflow:visible!important;}
  .article-readable article table{min-width:0!important;max-width:100%!important;}
  .article-readable article :is(th,td){white-space:normal!important;overflow-wrap:anywhere;}
  .article-readable article a{text-decoration:underline;border:0;}
  .article-readable article :is(.rd-quote,.rd-callout){border:1px solid #aaa!important;border-left:3px solid #555!important;}
}
/* Lucide (ISC/MIT) and Font Awesome Free brand SVGs are vendored, never fetched from a CDN. */
:is(.article-readable,#right-sidebar) .rd-reader-actions :is(button,a){gap:7px;}
.rd-reader-actions .rd-action-icon{display:block;flex:0 0 17px;width:17px;height:17px;background:currentColor;-webkit-mask:var(--rd-action-icon) center/contain no-repeat;mask:var(--rd-action-icon) center/contain no-repeat;}
.rd-action-icon--printer{--rd-action-icon:url('/Assets/Icons/lucide/printer.svg');}
.rd-action-icon--file-down{--rd-action-icon:url('/Assets/Icons/lucide/file-down.svg');}
.rd-action-icon--share-2{--rd-action-icon:url('/Assets/Icons/lucide/share-2.svg');}
.rd-action-icon--facebook{--rd-action-icon:url('/CSS/fontawesome-7.0.0/svgs/brands/facebook-f.svg');}
.rd-action-icon--linkedin{--rd-action-icon:url('/CSS/fontawesome-7.0.0/svgs/brands/linkedin-in.svg');}
@media(forced-colors:active){.rd-reader-actions .rd-action-icon{forced-color-adjust:none;color:ButtonText;}}
