/* Accessibility and crawl-friendliness overrides on top of the compiled Next.js CSS. */
.dark,.dim{--v2-text-dim:#8e9bb5}
.dim{--v2-text-dim:#93a3bd}
:root:not(.dark):not(.dim){--v2-text-dim:#5b6475}
.v2-card-meta,.v2-trending-item span:last-child{color:var(--v2-text-dim)}
.article-body a,.wp-page-content a,.prose a{text-decoration:underline;text-underline-offset:2px}
.article-body a.rrb-link{text-decoration:none}
.light .article-body a,.light .wp-page-content a{color:#c2410c}
.light .article-body a.internal-link{color:#c2410c}
.cnl-skip{position:absolute;left:-9999px;top:0;z-index:10000}
.cnl-skip:focus{left:8px;top:8px;background:#f97316;color:#fff;padding:8px 14px;border-radius:6px;font-weight:600;outline:2px solid #fff}
:focus-visible{outline:2px solid #f97316;outline-offset:2px}
/* the price and trending tickers must keep scrolling on phones even with "remove animations" on, as on the original site */
/* reserve space so the late-loading price ticker does not shift the page (CLS) */
.cnl-live-slot{min-height:33px;background:var(--v2-surface);border-bottom:1px solid var(--v2-border)}
/* white-on-orange fails WCAG AA (2.8:1); orange-700 passes (5.2:1) and stays on brand */
.bg-orange-500.text-white,.v2-load-more,[style*="background:#f97316"][style*="color:#fff"],[style*="background: rgb(249, 115, 22)"][style*="color: rgb(255, 255, 255)"],button[type="submit"][style*="#f97316"]{background-color:#c2410c!important}
.bg-orange-500.text-white:hover{background-color:#9a3412!important}
[style*="color:#ef4444"][style*="text-transform:uppercase"]{color:#f87171!important}
a.text-primary.hover\:underline{color:#c2410c;text-decoration:underline}
.dark a.text-primary.hover\:underline,.dim a.text-primary.hover\:underline{color:#fb923c}
/* consent / notification popup contrast */
button[data-act="all"]{background-color:#c0302f!important}
.text-orange-400{color:#c2410c}
.dark .text-orange-400,.dim .text-orange-400{color:#fb923c}
button[data-x]{color:#94a3b8!important}
.article-body img{max-width:100%;height:auto}
.bg-white .text-orange-400{color:#c2410c!important}
/* hero carousel: swipeable track, arrows, dots */
.v2-hero-carousel{position:relative;min-width:0}
.cnl-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border-radius:10px}
.cnl-track::-webkit-scrollbar{display:none}
.cnl-track:focus-visible{outline:2px solid #f97316;outline-offset:2px}
.cnl-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
.cnl-car-btn{position:absolute;top:110px;z-index:2;width:36px;height:36px;border-radius:50%;border:none;background:rgba(0,0,0,.55);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.cnl-car-btn:hover{background:rgba(0,0,0,.8)}
.cnl-prev{left:8px}.cnl-next{right:8px}
.cnl-dots{display:flex;justify-content:center;gap:8px;padding:10px 0 0}
.cnl-dot{width:10px;height:10px;padding:0;border-radius:50%;border:none;background:#64748b;cursor:pointer;opacity:.6}
.cnl-dot[aria-current="true"]{background:#f97316;opacity:1;width:22px;border-radius:6px}
@media (min-width:769px){.cnl-car-btn{top:150px}}
.cnl-slide-img{height:auto!important;aspect-ratio:16/9}
/* long words/links in body copy must never widen the page on phones */
.article-body{overflow-wrap:anywhere;word-break:normal}
.article-body img,.article-body video,.article-body iframe,.article-body table,.article-body pre{max-width:100%}
.article-body table,.article-body pre{display:block;overflow-x:auto}
.article-body img{height:auto}
/* the carousel's slides must never widen the page grid (they scroll inside the track) */
.v2-hero-carousel{contain:inline-size;max-width:100%}
.v2-page-grid>main,.v2-hero-grid>*{min-width:0}
/* header: the full nav + date + tools need ~1450px; below that drop the date and, below ~1340px, fall back to the phone menu so the search/theme buttons never sit off-screen */
@media (max-width:1535px){.cnl-date{display:none!important}}
@media (min-width:1024px) and (max-width:1399px){header nav.hidden.lg\:flex{display:none!important}header button[class*="lg:hidden"]{display:inline-flex!important}}
