
/* Publication readability and accessible interaction refinements. */
body { overflow-x: visible; }
main { padding-top: 0; }
section[id] { scroll-margin-top: 115px; }
.site-header { position: sticky; grid-template-columns: auto 1fr auto auto; }
.brand-mark { display:none; }
.site-header .brand { min-width: 94px; }
.sur-wordmark { font-size: 27px; font-weight: 950; letter-spacing: -.045em; color:white; }
.sur-wordmark span { color:#ff6039; }
.sur-skip { position:absolute; z-index:200; top:-100px; left:12px; padding:10px; background:#fff; color:#111; }
.sur-skip:focus { top:10px; }
.sur-hero { margin-top:0; min-height:500px; height:auto; padding:80px 0; display:grid; align-items:center; overflow:hidden; position:relative; }
.sur-hero picture { position:absolute; inset:0; width:100%; height:100%; }
.sur-hero picture img { width:100%; height:100%; object-fit:cover; }
.sur-hero .hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.78)); }
.sur-hero .hero-content { position:relative; z-index:1; max-width:1180px; }
.sur-hero h1 { max-width:900px; font-size:clamp(31px,4vw,60px); line-height:1.12; overflow-wrap:normal; }
.sur-hero .quick-verdict { max-width:850px; color:#f5f5f5; font-size:18px; }
.sur-section { padding:50px 0; }
.sur-section:nth-of-type(even) { background:rgba(255,255,255,.025); }
.sur-section .container > p { max-width:83ch; line-height:1.8; color:#d7d7d7; }
.sur-section h2 { font-size:clamp(24px,2.4vw,36px); line-height:1.25; max-width:900px; }
.sur-section h3 { line-height:1.4; }
.sur-figure { margin:32px 0; max-width:900px; }
.sur-figure img { width:100%; height:auto; border-radius:14px; aspect-ratio:16/9; object-fit:cover; }
.sur-promo { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); align-items:center; gap:24px; margin-top:32px; padding:20px; border:1px solid rgba(255,255,255,.2); border-radius:16px; background:#191919; }
.sur-promo img { width:100%; height:auto; border-radius:10px; aspect-ratio:16/9; object-fit:cover; }
.sur-promo p { color:#ddd; }
.hero-metrics { transform:none!important; rotate:none!important; }
.hero-metrics span { color:#fff; background:#191919; padding:12px; border:1px solid #555; border-radius:8px; }
.table-wrap { width:100%; max-width:100%; overflow:auto; margin:24px 0; border:1px solid #555; border-radius:8px; }
table { width:100%; border-collapse:collapse; min-width:0; }
th,td { color:#e8e8e8; padding:14px; vertical-align:top; white-space:normal; word-break:normal; overflow-wrap:break-word; border:1px solid #444; min-width:115px; font-size:15px; }
th { background:#272727; color:#fff; }
.sur-section details { padding:20px; background:#191919; border:1px solid #555; border-radius:8px; margin:12px 0; }
.sur-section summary { cursor:pointer; font-weight:700; color:#fff; min-height:30px; }
.sur-section details p { color:#dedede; max-width:85ch; }
.site-footer { padding:40px 0; background:#101010; border-top:1px solid #555; }
.site-footer nav { display:flex; flex-wrap:wrap; gap:14px 24px; margin:24px 0; }
.site-footer a { color:#eee; text-decoration:underline; text-underline-offset:4px; }
.site-footer p { color:#d0d0d0; max-width:90ch; }
.button,.header-action,.menu-button,.cookie-banner button { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:12px 20px; line-height:1.35; background:#d52c09; color:#fff; border:2px solid transparent; text-align:center; white-space:normal; }
.button.ghost,.header-action.ghost-action { color:#fff; background:#242424; border-color:#aaa; }
a:hover,.button:hover,button:hover { filter:brightness(1.08); }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #ffd365; outline-offset:4px; }
.cookie-banner { position:fixed; z-index:150; bottom:12px; left:12px; right:12px; max-width:900px; margin:auto; padding:18px; background:#171717; border:1px solid #aaa; border-radius:12px; box-shadow:0 10px 40px #000; }
.cookie-banner[hidden] { display:none!important; }
.cookie-banner p { color:#eee; margin:0 0 12px; }
.cookie-banner div { display:flex; flex-wrap:wrap; gap:12px; }
.menu-button { display:none; }
@media(max-width:950px) {
 .site-header { gap:12px; padding:12px 16px; grid-template-columns:auto 1fr auto; }
 .site-header .nav { display:none; }
 .header-actions { justify-self:end; }
 .header-action { font-size:13px; padding:9px 12px; }
 .menu-button { display:inline-flex; font-size:13px; padding:9px 12px; }
 .site-header .nav.is-open { display:flex; position:absolute; top:100%; left:0; right:0; padding:22px; flex-direction:column; align-items:stretch; background:#151515; box-shadow:0 10px 30px #000; max-height:65vh; overflow:auto; }
 .site-header .nav a { padding:14px; font-size:18px; }
}
@media(max-width:560px) {
 .site-header { gap:8px; padding:10px 12px; }
 .header-actions { gap:6px; }
 .header-action { min-height:42px; font-size:11px; padding:8px; max-width:100px; }
 .sur-wordmark { font-size:23px; }
 .site-header .brand { min-width:74px; }
 .menu-button { padding:8px; font-size:12px; }
 .container { width:calc(100% - 32px); }
 .sur-hero { padding:50px 0; min-height:540px; }
 .sur-hero .quick-verdict { font-size:16px; }
 .sur-promo { grid-template-columns:minmax(0,1fr); padding:14px; }
 .sur-section { padding:32px 0; }
 th,td { min-width:120px; padding:12px; }
 .cookie-banner { bottom:8px; left:8px; right:8px; max-height:45vh; overflow:auto; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; animation:none!important; } }

/* Keep both informational primary actions available on small screens. */
.site-header .header-actions { display:flex!important; }

/* Keep hero rhythm consistent with the substantial introductory text. */
.hero .hero-content { display:block!important; padding-top:0!important; padding-bottom:0!important; }
.hero .hero-content h1 { margin:0 0 20px; }
.hero .quick-verdict { margin:0 0 22px; }
.hero .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:0; }
.hero .hero-metrics { margin-top:16px; }
.cookie-banner { width:auto; display:block; }
