/*
Theme Name: Soccer Observer Pro
Theme URI: https://soccerobserver.com/
Author: MWeb Services
Description: A premium global football newsroom theme with a live match centre, auto-calculated standings, breaking news, tactical analysis, transfer coverage, native SEO, audience tools, newsletter, analytics and editorial operations.
Version: 2.0.0
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.1
Text Domain: soccer-observer-pro
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
  --so-bg:var(--wp--preset--color--soccer-observer-black,#070707);
  --so-surface:var(--wp--preset--color--soccer-observer-surface,#0e0e0f);
  --so-surface-2:#141416;
  --so-line:#2a2a2e;
  --so-text:var(--wp--preset--color--soccer-observer-text,#f6f6f7);
  --so-muted:var(--wp--preset--color--soccer-observer-muted,#a9a9af);
  --so-green:var(--wp--preset--color--soccer-observer-green,#38f56b);
  --so-green-dark:var(--wp--preset--color--soccer-observer-green-dark,#15973a);
  --so-pitch:#0d3e22;
  --so-accent:var(--so-green);
  /* Compatibility aliases used by inherited newsroom modules. */
  --so-red:var(--so-green);
  --so-red-text:var(--so-green);
  --so-red-dark:var(--so-green-dark);
  --so-white:var(--wp--preset--color--soccer-observer-white,#fff);
  --so-shadow:0 18px 45px rgba(0,0,0,.24);
  --so-radius:2px;
  --so-max:1480px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--so-bg);color:var(--so-text);font-family:var(--wp--preset--font-family--soccer-observer-system,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--so-red-text,var(--so-red))}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.so-container{width:min(calc(100% - 40px),var(--so-max));margin-inline:auto}
.so-hidden{display:none!important}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* utility */
.so-kicker,.so-card__cat,.so-section-title,.so-trending__num,.so-breaking__label,.so-button,.so-nav a,.so-date,.so-footer__title,.so-meta,.so-breadcrumbs{font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.so-display,.so-card__title,.so-hero__title,h1,h2,h3{font-family:"Arial Narrow",Impact,Haettenschweiler,Arial,sans-serif;font-stretch:condensed;letter-spacing:-.022em}

/* breaking strip */
.so-breaking{background:#030303;border-bottom:1px solid #202024;min-height:40px;display:flex;align-items:center;overflow:hidden}
.so-breaking__inner{display:flex;align-items:center;gap:0;min-width:0}
.so-breaking__label{background:var(--so-red);color:#fff;align-self:stretch;display:flex;align-items:center;padding:0 20px;clip-path:polygon(0 0,92% 0,100% 50%,92% 100%,0 100%);font-size:.76rem;white-space:nowrap}
.so-breaking__ticker{display:flex;gap:28px;align-items:center;min-width:0;overflow:hidden;padding-left:22px;color:#d6d6d8;font-size:.8rem;white-space:nowrap}
.so-breaking__ticker a{overflow:hidden;text-overflow:ellipsis;max-width:520px}

/* masthead */
.so-site-header{background:#080809;position:relative;z-index:50}
.so-masthead{min-height:116px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--so-line);gap:20px}
.so-menu-toggle,.so-search-toggle{width:44px;height:44px;border:0;background:transparent;color:#fff;display:grid;place-items:center;border-radius:50%}
.so-menu-toggle:hover,.so-search-toggle:hover{background:#161618}
.so-menu-toggle span,.so-menu-toggle:before,.so-menu-toggle:after{content:"";display:block;width:28px;height:3px;background:currentColor;border-radius:5px;transition:.2s}
.so-menu-toggle{gap:5px;align-content:center}
.so-brand{text-align:center;line-height:.86;font-size:clamp(2.55rem,5.2vw,5rem);font-weight:950;letter-spacing:-.07em;font-family:Impact,"Arial Black",sans-serif}
.so-masthead__right{justify-self:end;display:flex;align-items:center;gap:10px;min-width:0}
.so-header-ad{width:min(390px,34vw);height:72px;background:linear-gradient(135deg,#131315,#1b1b1e);border:1px solid #222226;display:grid;place-items:center;text-align:center;color:#9a9aa0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.so-header-ad strong{display:block;color:#c9c9ce;font-size:.62rem;font-weight:700}

/* nav */
.so-navbar{border-bottom:1px solid var(--so-line);background:#09090a}
.so-nav-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:54px}
.so-date{font-size:.72rem;color:#d0d0d3;white-space:nowrap}
.so-nav ul{list-style:none;padding:0;margin:0;display:flex;justify-content:center;gap:clamp(16px,1.8vw,32px);align-items:center}
.so-nav a{font-size:.82rem;color:#eee;position:relative;padding:18px 0;display:block}
.so-nav a:hover,.so-nav .current-menu-item>a{color:#fff}
.so-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:10px;height:2px;background:var(--so-red);transition:.2s}
.so-nav a:hover:after,.so-nav .current-menu-item>a:after{right:0}
.so-social-mini{display:flex;gap:14px;font-size:.76rem;color:#d5d5d8}

/* overlay menus */
.so-drawer{position:fixed;inset:0 auto 0 0;width:min(400px,90vw);background:#0b0b0d;z-index:1000;transform:translateX(-102%);transition:.28s cubic-bezier(.2,.7,.2,1);box-shadow:30px 0 70px rgba(0,0,0,.45);padding:28px;border-right:1px solid #242427}
.so-drawer.is-open{transform:none}
.so-drawer__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}
.so-drawer__close{border:0;background:#1a1a1d;color:#fff;width:42px;height:42px;border-radius:50%;font-size:1.4rem}
.so-drawer nav ul{list-style:none;margin:0;padding:0}
.so-drawer nav li{border-top:1px solid #242427}
.so-drawer nav a{display:block;padding:17px 0;font-size:1.4rem;font-weight:900;text-transform:uppercase}
.so-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.68);z-index:999;opacity:0;visibility:hidden;transition:.2s}
.so-backdrop.is-open{opacity:1;visibility:visible}
.so-search-panel{position:absolute;left:0;right:0;top:100%;background:#0d0d0f;border-bottom:1px solid #2a2a2e;z-index:70;padding:28px 0;display:none;box-shadow:0 20px 35px rgba(0,0,0,.35)}
.so-search-panel.is-open{display:block}
.so-search-panel form{display:flex;gap:10px}
.so-search-panel input[type=search]{flex:1;background:#17171a;border:1px solid #313136;color:#fff;padding:16px 18px;font-size:1.1rem;outline:0}
.so-search-panel button{border:0;background:var(--so-red);color:#fff;padding:0 24px;font-weight:900;text-transform:uppercase}

/* homepage */
.so-main{padding:16px 0 54px}
.so-front-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(280px,.62fr);gap:18px;align-items:start}
.so-lead-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(250px,.72fr);gap:10px}
.so-hero{position:relative;min-height:500px;overflow:hidden;border:1px solid #2e2e32;background:#121214;isolation:isolate;box-shadow:var(--so-shadow)}
.so-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.7) 34%,rgba(0,0,0,.18) 68%,rgba(0,0,0,.08) 100%);z-index:1}
.so-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.so-hero:hover img{transform:scale(1.015)}
.so-hero__content{position:absolute;z-index:2;left:34px;bottom:34px;width:min(68%,640px)}
.so-kicker{display:inline-flex;background:var(--so-red);color:#fff;padding:7px 10px;font-size:.67rem;margin-bottom:15px}
.so-hero__title{font-size:clamp(3.4rem,6vw,6.5rem);line-height:.83;text-transform:uppercase;margin:0 0 18px;color:#fff;text-wrap:balance}
.so-hero__title .accent{color:var(--so-red-text,var(--so-red))}
.so-hero__excerpt{color:#d9d9dc;font-size:1rem;max-width:500px;margin-bottom:22px}
.so-button{display:inline-flex;align-items:center;gap:12px;border:1px solid #777;background:rgba(5,5,6,.3);color:#fff;padding:11px 18px;font-size:.73rem;transition:.2s}
.so-button:hover{background:var(--so-red);border-color:var(--so-red-text,var(--so-red));color:#fff}

.so-secondary-stack{display:grid;grid-template-rows:1fr 1fr;gap:10px}
.so-image-card{min-height:245px;position:relative;overflow:hidden;border:1px solid #2e2e32;background:#131315}
.so-image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.94),rgba(0,0,0,.02) 70%)}
.so-image-card img{width:100%;height:100%;object-fit:cover;position:absolute;transition:.35s}
.so-image-card:hover img{transform:scale(1.035)}
.so-image-card__body{position:absolute;z-index:2;left:18px;right:18px;bottom:16px}
.so-card__cat{display:inline-flex;font-size:.57rem;background:var(--so-red);padding:4px 6px;color:#fff;margin-bottom:7px}
.so-card__title{font-size:clamp(1.5rem,2.4vw,2.4rem);line-height:.92;text-transform:uppercase;margin:0;color:#fff;text-wrap:balance}

.so-trending{border-top:2px solid var(--so-red);background:#0d0d0f;padding:0 0 16px;margin-top:1px}
.so-section-title{font-size:.82rem;margin:0;padding:13px 10px;border-bottom:1px solid #252529;color:#f3f3f5}
.so-trending-list{list-style:none;margin:0;padding:0 10px}
.so-trending-item{display:grid;grid-template-columns:44px 1fr 90px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #252529}
.so-trending__num{font-size:1.8rem;color:var(--so-red-text,var(--so-red));line-height:1}
.so-trending__title{font-size:.9rem;line-height:1.05;font-weight:900;text-transform:uppercase}
.so-trending__thumb{height:58px;object-fit:cover;width:90px}
.so-trending-more{display:block;text-align:center;padding:15px 0 2px;font-size:.7rem;font-weight:800;text-transform:uppercase;color:#c8c8cc}

.so-newsletter{border:1px solid #3c2024;border-left:4px solid var(--so-red);margin-top:20px;padding:22px;background:linear-gradient(135deg,#101012,#171719)}
.so-newsletter h3{font-size:1.55rem;text-transform:uppercase;margin:0 0 5px;line-height:.98}
.so-newsletter h3 span{color:var(--so-red-text,var(--so-red))}
.so-newsletter p{margin:0 0 14px;color:var(--so-muted);font-size:.83rem}
.so-newsletter form{display:flex;gap:8px}
.so-newsletter input{min-width:0;flex:1;background:#09090a;border:1px solid #333339;color:#fff;padding:11px}
.so-newsletter button{background:var(--so-red);border:0;color:#fff;padding:0 14px;font-size:.7rem;font-weight:900;text-transform:uppercase}

.so-story-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}
.so-story-row .so-image-card{min-height:220px}
.so-story-row .so-card__title{font-size:1.35rem}

.so-adbar{height:92px;background:linear-gradient(135deg,#121214,#1c1c1f);border:1px solid #202024;display:grid;place-items:center;text-align:center;margin:18px auto;color:#8d8d93;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem}
.so-adbar small{display:block}

/* sections */
.so-section{margin-top:36px}
.so-section-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2a2a2e;margin-bottom:16px}
.so-section-head h2{font-size:1.35rem;text-transform:uppercase;margin:0;padding:0 0 10px;border-bottom:3px solid var(--so-red)}
.so-section-head a{font-size:.7rem;text-transform:uppercase;color:#aaaab0;font-weight:800}
.so-post-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.so-post-card{background:#0f0f11;border:1px solid #242428;overflow:hidden;transition:.2s}
.so-post-card:hover{transform:translateY(-3px);border-color:#3d3d43}
.so-post-card__media{aspect-ratio:16/10;overflow:hidden;background:#161619}
.so-post-card__media img{width:100%;height:100%;object-fit:cover;transition:.35s}
.so-post-card:hover img{transform:scale(1.025)}
.so-post-card__body{padding:14px}
.so-post-card .so-card__title{font-size:1.45rem;margin:4px 0 8px}
.so-card__meta{font-size:.68rem;color:#86868c;text-transform:uppercase;font-weight:700}

/* content templates */
.so-content-wrap{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:36px;padding:30px 0 60px}
.so-breadcrumbs{font-size:.64rem;color:#85858b;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.so-breadcrumbs a{color:#b7b7bb}
.so-breadcrumbs .sep{color:var(--so-red-text,var(--so-red))}
.so-article{min-width:0}
.so-article__cat{color:var(--so-red-text,var(--so-red));font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.so-article__title{font-size:clamp(3rem,6vw,6.2rem);line-height:.9;text-transform:uppercase;margin:.12em 0 .2em;text-wrap:balance}
.so-article__subtitle{font-size:clamp(1.3rem,2.25vw,1.85rem);line-height:1.22;font-weight:800;letter-spacing:-.025em;color:#f2f2f4;margin:-.05em 0 .55em;max-width:960px;text-wrap:balance}
.so-article__dek{font-size:1.22rem;line-height:1.45;color:#c4c4c8;margin:0 0 16px;max-width:900px}
.so-meta{display:flex;gap:16px;flex-wrap:wrap;color:#89898f;font-size:.65rem;border-top:1px solid #29292d;border-bottom:1px solid #29292d;padding:12px 0;margin-bottom:22px}
.so-featured-media{margin:0 0 26px;aspect-ratio:16/9;overflow:hidden;background:#151517}
.so-featured-media img{width:100%;height:100%;object-fit:cover}
.so-entry-content{font-family:Georgia,"Times New Roman",serif;font-size:1.09rem;line-height:1.82;color:#e7e7e9;max-width:860px}
.so-entry-content h2,.so-entry-content h3,.so-entry-content h4{font-family:var(--wp--preset--font-family--soccer-observer-system,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif);text-transform:none;letter-spacing:-.025em;line-height:1.12;margin:1.5em 0 .5em}
.so-entry-content h2{font-size:2rem}.so-entry-content h3{font-size:1.5rem}
.so-entry-content a{color:#ff5b67;text-decoration:underline;text-underline-offset:3px}
.so-entry-content blockquote{border-left:4px solid var(--so-red);margin:1.8em 0;padding:3px 0 3px 22px;color:#fff;font-size:1.3rem;font-style:italic}
.so-entry-content img{margin:1.7em auto}
.so-entry-content figure{max-width:100%}
.so-entry-content figcaption{color:#85858c;font-size:.75rem;text-align:center}
.so-entry-content ul,.so-entry-content ol{padding-left:1.4em}
.so-entry-content table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.so-entry-content td,.so-entry-content th{border:1px solid #333338;padding:10px}
.so-sharebar{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.so-sharebar a{border:1px solid #303035;padding:8px 11px;font-size:.68rem;text-transform:uppercase;font-weight:800;background:#111113}
.so-sharebar a:hover{background:var(--so-red);border-color:var(--so-red-text,var(--so-red));color:#fff}

/* sidebar */
.so-sidebar{min-width:0}
.so-widget{background:#0f0f11;border:1px solid #252529;padding:18px;margin-bottom:20px}
.so-widget-title{font-size:.8rem;text-transform:uppercase;margin:-18px -18px 16px;padding:12px 16px;border-bottom:1px solid #29292d;border-top:2px solid var(--so-red)}
.so-widget ul{list-style:none;padding:0;margin:0}
.so-widget li{padding:9px 0;border-bottom:1px solid #242428}
.so-widget li:last-child{border-bottom:0}
.so-widget select,.so-widget input{max-width:100%}

/* archive */
.so-archive-head{padding:24px 0 6px}
.so-archive-head h1{font-size:clamp(2.6rem,5vw,5rem);text-transform:uppercase;margin:0;line-height:.9}
.so-archive-head p{color:#aaaab0;max-width:760px}
.so-list{display:grid;gap:16px}
.so-list-card{display:grid;grid-template-columns:260px 1fr;gap:20px;border-bottom:1px solid #29292d;padding-bottom:16px}
.so-list-card__media{aspect-ratio:16/10;overflow:hidden;background:#171719}
.so-list-card__media img{width:100%;height:100%;object-fit:cover}
.so-list-card h2{font-size:2rem;text-transform:uppercase;line-height:.95;margin:4px 0 8px}
.so-list-card p{color:#aaaab0;margin:0 0 8px}
.so-pagination{margin:30px 0;display:flex;gap:7px;flex-wrap:wrap}
.so-pagination .page-numbers{border:1px solid #2c2c31;padding:8px 12px;font-size:.78rem;font-weight:800}
.so-pagination .current,.so-pagination a:hover{background:var(--so-red);border-color:var(--so-red-text,var(--so-red));color:#fff}

/* footer */
.so-site-footer{position:relative;background:#060607;color:#f7f7f8;margin-top:58px;overflow:hidden}
.so-site-footer:before{content:"";position:absolute;inset:0 0 auto auto;width:620px;height:620px;transform:translate(35%,-44%);background:radial-gradient(circle,rgba(225,29,46,.13),rgba(225,29,46,0) 68%);pointer-events:none}
.so-footer-accent{height:5px;background:linear-gradient(90deg,var(--so-red) 0 14%,#fff 14% 16%,#202024 16% 100%);box-shadow:0 0 24px rgba(225,29,46,.28)}
.so-footer-shell{position:relative;padding-top:34px}
.so-footer-newsletter-zone{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:34px;align-items:center;position:relative;padding:28px 30px;margin-bottom:34px;border:1px solid #2d2d32;border-left:4px solid var(--so-red);background:linear-gradient(120deg,#0e0e10 0%,#141417 64%,#190b0e 100%);box-shadow:0 22px 54px rgba(0,0,0,.3)}
.so-footer-newsletter-zone:after{content:"";position:absolute;right:-80px;top:-120px;width:320px;height:320px;border:1px solid rgba(225,29,46,.13);border-radius:50%;box-shadow:0 0 0 34px rgba(225,29,46,.025),0 0 0 70px rgba(225,29,46,.018);pointer-events:none}
.so-footer-newsletter-copy{position:relative;z-index:1}
.so-footer-newsletter-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--so-red-text,var(--so-red));font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.13em;margin-bottom:8px}
.so-footer-newsletter-kicker:before{content:"";width:22px;height:2px;background:var(--so-red)}
.so-footer-newsletter-copy h2{max-width:820px;margin:0;font-family:"Arial Narrow",Impact,Arial,sans-serif;font-size:clamp(1.4rem,1.8vw,1.75rem);font-weight:900;line-height:1.02;letter-spacing:-.035em;text-transform:uppercase}
.so-footer-newsletter-copy p{margin:12px 0 0;color:#a7a7ad;font-size:.88rem}
.so-footer-newsletter-action{position:relative;z-index:1;justify-self:stretch}
.so-footer-newsletter-stamp{display:flex;flex-direction:column;align-items:flex-end;text-transform:uppercase;line-height:.92}
.so-footer-newsletter-stamp strong{font-size:clamp(1rem,2vw,1.65rem);letter-spacing:.03em}
.so-footer-newsletter-stamp span{color:var(--so-red-text,var(--so-red));font-family:Georgia,serif;font-size:clamp(1.7rem,3.2vw,3.2rem);font-style:italic;font-weight:700;margin-top:7px;transform:rotate(-3deg)}
.so-footer-newsletter-widget form,.so-footer-newsletter-widget .wp-block-search,.so-footer-newsletter-widget .wp-block-jetpack-subscriptions__container{display:flex;gap:8px;margin:0}
.so-footer-newsletter-widget input[type=email],.so-footer-newsletter-widget input[type=text],.so-footer-newsletter-widget input[type=search]{width:100%;min-width:0;background:#08080a;border:1px solid #3a3a40;color:#fff;padding:13px 14px;outline:0}
.so-footer-newsletter-widget input:focus{border-color:var(--so-red-text,var(--so-red));box-shadow:0 0 0 2px rgba(225,29,46,.12)}
.so-footer-newsletter-widget button,.so-footer-newsletter-widget input[type=submit],.so-footer-newsletter-widget .wp-element-button{border:0;border-radius:0;background:var(--so-red);color:#fff;padding:12px 18px;font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}
.so-footer-newsletter-widget button:hover,.so-footer-newsletter-widget input[type=submit]:hover,.so-footer-newsletter-widget .wp-element-button:hover{background:#fff;color:#09090a}
.so-footer-newsletter-note{margin:8px 0 0;color:#77777e;font-size:.64rem;line-height:1.45}
.so-footer-newsletter-widget--fallback{width:100%}
.so-footer-brand-row{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:9px 0 27px;border-bottom:1px solid #25252a}
.so-footer-brand-lockup{display:flex;align-items:center;gap:22px;min-width:0}
.so-footer-logo .custom-loso-link{display:block}.so-footer-logo .custom-logo{width:auto;max-width:300px;max-height:76px;object-fit:contain}
.so-footer-brand{display:inline-block;font-size:3rem;font-family:Impact,"Arial Black",sans-serif;letter-spacing:-.055em;line-height:.9}.so-footer-brand span{color:var(--so-red-text,var(--so-red))}
.so-footer-text{color:#8e8e95;font-size:.78rem;max-width:360px;margin:0;line-height:1.55}
.so-footer-brand-promise{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.so-footer-brand-promise span{border:1px solid #303035;background:#0c0c0e;padding:7px 9px;color:#bcbcc2;font-size:.61rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.so-footer-brand-promise span:last-child{border-color:rgba(225,29,46,.7);color:#fff;background:rgba(225,29,46,.09)}
.so-footer-grid{display:grid;grid-template-columns:1.05fr 1.1fr 1.1fr .85fr;gap:52px;padding:34px 0 31px}
.so-footer-column{min-width:0}
.so-footer__title,.so-footer-widget>.wp-block-heading:first-child,.so-footer-widget>.widget-title:first-child{position:relative;font-size:.69rem;margin:0 0 14px;padding-bottom:10px;color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.11em}
.so-footer__title:after,.so-footer-widget>.wp-block-heading:first-child:after,.so-footer-widget>.widget-title:first-child:after{content:"";position:absolute;left:0;bottom:0;width:28px;height:2px;background:var(--so-red)}
.so-footer-links,.so-footer-widget ul,.so-footer-widget .wp-block-navigation__container{display:flex;flex-direction:column;align-items:flex-start;gap:0;list-style:none;padding:0;margin:0}
.so-footer-links li,.so-footer-widget li{margin:0;padding:0;border:0;color:#a7a7ad;font-size:.78rem}
.so-footer-links a,.so-footer-widget a{display:inline-block;padding:5px 0;color:#aaaab0;transition:color .16s ease,transform .16s ease}
.so-footer-links a:hover,.so-footer-widget a:hover{color:#fff;transform:translateX(3px)}
.so-footer-column--follow .so-footer-social{margin-top:3px}
.so-footer-follow-note{max-width:230px;margin:13px 0 0;color:#77777e;font-size:.72rem;line-height:1.5}
.so-footer-social-names{max-width:240px;color:#aaaab0;font-size:.72rem;line-height:1.8}
.so-social-mini a:hover,.so-footer-social a:hover{color:#fff;transform:translateY(-2px)}
.so-footer-social{display:flex;gap:8px;flex-wrap:wrap}
.so-footer-social a{width:38px;height:38px;padding:0;border:1px solid #34343a;background:#0d0d0f;border-radius:50%;font-size:.77rem;font-weight:900}
.so-footer-social a:hover{background:var(--so-red);border-color:var(--so-red-text,var(--so-red))}
.so-footer-widget{margin:0}.so-footer-widget p{color:#97979e;font-size:.78rem}.so-footer-widget .wp-block-social-links{gap:8px}.so-footer-widget .wp-social-link{margin:0}.so-footer-widget .wp-social-link a{padding:.45em}
.so-footer-legacy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:4px 0 24px;border-top:1px solid #202024}
.so-footer-topics{display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap;border-top:1px solid #25252a;padding:17px 0}
.so-footer-topics a{position:relative;padding:4px 13px;color:#77777e;font-size:.61rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.so-footer-topics a:not(:last-child):after{content:"";position:absolute;right:-1px;top:50%;width:2px;height:2px;border-radius:50%;background:var(--so-red)}
.so-footer-topics a:hover{color:#fff}
.so-footer-bottom{border-top:1px solid #1d1d21;background:#030304}
.so-footer-bottom__inner{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#66666d;font-size:.65rem}
.so-footer-bottom__tagline{color:#9c9ca3;font-weight:900;text-transform:uppercase;letter-spacing:.11em}

/* comments */
.comments-area{margin-top:45px;border-top:1px solid #2b2b30;padding-top:22px}
.comment-list{list-style:none;padding:0}.comment-body{padding:16px 0;border-bottom:1px solid #242429}.comment-meta{font-size:.75rem;color:#888}.comment-content{font-family:Georgia,serif}.comment-respond input,.comment-respond textarea{width:100%;background:#101012;border:1px solid #303036;color:#fff;padding:12px}.comment-respond input[type=submit]{width:auto;background:var(--so-red);border:0;font-weight:900;text-transform:uppercase}

/* responsive */
@media (max-width:1180px){
  .so-header-ad{width:300px}
  .so-nav ul{gap:22px}
  .so-front-grid{grid-template-columns:minmax(0,1fr) 290px}
  .so-lead-grid{grid-template-columns:minmax(0,1.7fr) minmax(220px,.72fr)}
  .so-story-row{grid-template-columns:repeat(3,1fr)}
  .so-post-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:960px){
  .so-container{width:min(calc(100% - 28px),var(--so-max))}
  .so-masthead{grid-template-columns:50px 1fr 50px;min-height:92px}
  .so-header-ad{display:none}
  .so-masthead__right{justify-self:end}
  .so-search-toggle{justify-self:end}
  .so-nav-inner{grid-template-columns:1fr auto}.so-nav{display:none}.so-date{padding:10px 0}.so-social-mini{justify-self:end}
  .so-front-grid{grid-template-columns:1fr}
  .so-sidebar-front{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}
  .so-newsletter{margin-top:0}
  .so-content-wrap{grid-template-columns:1fr}
  .so-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
  .so-widget{margin:0}
  .so-footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .so-container{width:min(calc(100% - 20px),var(--so-max))}
  .so-breaking__ticker{font-size:.68rem}.so-breaking__ticker a{max-width:300px}.so-breaking__label{padding:0 14px;font-size:.67rem}
  .so-brand{font-size:3rem}
  .so-lead-grid{grid-template-columns:1fr}
  .so-hero{min-height:460px}
  .so-hero:before{background:linear-gradient(0deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.5) 56%,rgba(0,0,0,.05) 100%)}
  .so-hero__content{left:20px;right:20px;bottom:24px;width:auto}
  .so-hero__title{font-size:clamp(3rem,14vw,5rem)}
  .so-secondary-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .so-image-card{min-height:240px}
  .so-sidebar-front{grid-template-columns:1fr}
  .so-story-row{display:grid;grid-auto-flow:column;grid-auto-columns:78%;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px}
  .so-story-row .so-image-card{scroll-snap-align:start}
  .so-post-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .so-list-card{grid-template-columns:140px 1fr;gap:12px}.so-list-card h2{font-size:1.4rem}.so-list-card p{display:none}
  .so-sidebar{grid-template-columns:1fr}
  .so-footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px}
  .so-article__title{font-size:clamp(2.8rem,13vw,5rem)}
}
@media (max-width:480px){
  .so-masthead{min-height:78px}.so-brand{font-size:2.5rem}.so-menu-toggle,.so-search-toggle{width:40px;height:40px}.so-menu-toggle span,.so-menu-toggle:before,.so-menu-toggle:after{width:24px}
  .so-social-mini{display:none}.so-nav-inner{grid-template-columns:1fr}.so-date{text-align:center}
  .so-secondary-stack{grid-template-columns:1fr}.so-image-card{min-height:210px}
  .so-story-row{grid-auto-columns:88%}
  .so-post-grid{grid-template-columns:1fr}
  .so-post-card{display:grid;grid-template-columns:42% 1fr}.so-post-card__media{aspect-ratio:auto;min-height:120px}.so-post-card .so-card__title{font-size:1.2rem}
  .so-footer-grid{grid-template-columns:1fr}.so-newsletter form{flex-direction:column}.so-newsletter button{padding:12px}
  .so-list-card{grid-template-columns:110px 1fr}.so-list-card h2{font-size:1.15rem}
}

/* responsive footer */
@media (max-width:1100px){
  .so-footer-newsletter-zone{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)}
  .so-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 46px}
}
@media (max-width:720px){
  .so-site-footer{margin-top:42px}
  .so-footer-shell{padding-top:22px}
  .so-footer-newsletter-zone{grid-template-columns:1fr;gap:22px;padding:24px 22px}
  .so-footer-newsletter-stamp{align-items:flex-start}
  .so-footer-brand-row{align-items:flex-start;flex-direction:column}
  .so-footer-brand-lockup{align-items:flex-start;flex-direction:column;gap:10px}
  .so-footer-logo .custom-logo{max-width:260px;max-height:68px}
  .so-footer-brand-promise{justify-content:flex-start}
  .so-footer-grid{grid-template-columns:1fr 1fr;gap:28px 24px;padding-top:29px}
  .so-footer-bottom__inner{align-items:flex-start;flex-direction:column;justify-content:center;gap:5px;padding:14px 0}
}
@media (max-width:480px){
  .so-footer-newsletter-copy h2{font-size:1.45rem}
  .so-footer-newsletter-widget form,.so-footer-newsletter-widget .wp-block-search,.so-footer-newsletter-widget .wp-block-jetpack-subscriptions__container{flex-direction:column}
  .so-footer-newsletter-widget button,.so-footer-newsletter-widget input[type=submit],.so-footer-newsletter-widget .wp-element-button{width:100%;padding:13px}
  .so-footer-grid{grid-template-columns:1fr;gap:24px}
  .so-footer-topics{justify-content:flex-start}
  .so-footer-topics a{padding-left:0;padding-right:18px;margin-right:10px}
  .so-footer-topics a:not(:last-child):after{right:3px}
}

/* accessibility */
:focus-visible{outline:3px solid var(--so-red);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* v1.1 flexible layouts, social, advanced editorial modules and ad system */
.so-home-wide .so-front-grid{grid-template-columns:1fr}
.so-home-wide .so-sidebar-front{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px;margin-top:18px}
.so-home-wide .so-newsletter{margin-top:0}
.so-single-left .so-content-wrap{grid-template-columns:330px minmax(0,1fr)}
.so-single-left .so-article{order:2}.so-single-left .so-sidebar{order:1}
.so-single-full .so-content-wrap{grid-template-columns:minmax(0,1fr)}
.so-single-full .so-article{width:min(100%,1100px);margin-inline:auto}
.so-single-full .so-entry-content{max-width:900px}


.so-ad-slot{width:100%;overflow:hidden;clear:both;text-align:center;margin:22px 0}
.so-ad-slot .so-ad-widget{display:flex;justify-content:center;align-items:center;max-width:100%;overflow:hidden}
.so-ad-slot iframe,.so-ad-slot img,.so-ad-slot ins{max-width:100%!important}
.so-ad-slot--leaderboard{min-height:0;margin:20px 0 10px;padding:6px 0;border-top:1px solid #1e1e22;border-bottom:1px solid #1e1e22}
.so-ad-slot--inline{margin:34px 0;padding:22px 0;border-top:1px solid #29292e;border-bottom:1px solid #29292e}
.so-ad-slot--sidebar{margin:0 0 20px}.so-ad-slot--article-top{margin-top:16px}.so-ad-slot--article-bottom{margin-top:38px}
.so-header-ad--live{padding:4px;overflow:hidden}.so-header-ad--live .so-ad-widget{width:100%}

.so-author-box{display:grid;grid-template-columns:76px 1fr;gap:18px;align-items:center;border-top:1px solid #2a2a2e;border-bottom:1px solid #2a2a2e;padding:24px 0;margin:38px 0}
.so-author-box__avatar img{border-radius:50%}.so-author-box__label{font-size:.62rem;color:var(--so-red-text,var(--so-red));text-transform:uppercase;font-weight:900;letter-spacing:.08em}
.so-author-box h2{margin:2px 0 4px;font-size:1.4rem;text-transform:uppercase}.so-author-box p{margin:0;color:#aaaab0;font-size:.88rem;line-height:1.55}
.so-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0 38px}
.so-post-nav>div{border:1px solid #29292e;background:#0e0e10;padding:16px;min-width:0}.so-post-nav>div:last-child{text-align:right}
.so-post-nav span{display:block;color:#7f7f86;font-size:.58rem;text-transform:uppercase;font-weight:900;letter-spacing:.08em;margin-bottom:5px}
.so-post-nav a{font-family:"Arial Narrow",Impact,Arial,sans-serif;font-weight:900;text-transform:uppercase;line-height:1.02}
.so-related{margin:40px 0}.so-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.so-related .so-card__title{font-size:1.25rem}
.so-archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-content:start}
.so-archive-grid .so-pagination{grid-column:1/-1}

@media (max-width:960px){
  .so-home-wide .so-sidebar-front{grid-template-columns:1.2fr 1fr}
  .so-single-left .so-content-wrap{grid-template-columns:1fr}.so-single-left .so-article,.so-single-left .so-sidebar{order:initial}
}
@media (max-width:720px){
  .so-home-wide .so-sidebar-front{grid-template-columns:1fr}
  .so-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .so-archive-grid{grid-template-columns:1fr 1fr;gap:10px}
}
@media (max-width:480px){
  .so-post-nav{grid-template-columns:1fr}.so-post-nav>div:last-child{text-align:left}
  .so-related-grid,.so-archive-grid{grid-template-columns:1fr}
  .so-author-box{grid-template-columns:58px 1fr}.so-author-box__avatar img{width:58px;height:58px}
}

/* v1.3 Newsroom Edition */
.so-card-labels,.so-hero__kickers,.so-article__eyebrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.so-story-badges{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}
.so-story-badge{display:inline-flex;align-items:center;min-height:22px;padding:4px 7px;border:1px solid #3a3a40;background:#111114;color:#f0f0f2;font-size:.56rem;line-height:1;font-weight:900;letter-spacing:.075em;text-transform:uppercase}
.so-story-badge--status-breaking,.so-story-badge--status-correction,.so-story-badge--disclosure{background:var(--so-red);border-color:var(--so-red-text,var(--so-red));color:#fff}
.so-story-badge--status-developing{border-color:#d8a33a;color:#f0c15e}
.so-story-badge--status-updated{border-color:#4f76e5;color:#8ba8ff}
.so-story-badge--status-exclusive{border-color:#fff;color:#fff}
.so-story-badge--format-video,.so-story-badge--format-gallery,.so-story-badge--format-social{background:#f2f2f3;color:#080809;border-color:#f2f2f3}
.so-story-badges--compact .so-story-badge{min-height:18px;padding:3px 5px;font-size:.49rem}
.so-article__eyebrow{margin-bottom:10px}.so-article__eyebrow .so-article__cat{margin:0}
.so-meta a{color:#bdbdc3}.so-meta a:hover{color:#fff}.so-meta__updated{color:#d7d7dc;font-weight:700}

.so-hot-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;margin:24px 0;padding:15px 18px;border:1px solid #303035;border-left:4px solid var(--so-red);background:linear-gradient(90deg,#151518,#0d0d0f)}
.so-hot-strip__label{display:flex;align-items:center;gap:7px;color:var(--so-red-text,var(--so-red));font-size:.64rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}.so-hot-strip__label span{font-size:.55rem}
.so-hot-strip__title{font-family:"Arial Narrow",Impact,Arial,sans-serif;font-size:1.3rem;font-weight:900;line-height:1;text-transform:uppercase}.so-hot-strip__arrow{font-size:1.5rem;color:var(--so-red-text,var(--so-red))}
.so-trending__head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.so-trending__head>span{color:#66666d;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:9px}

.so-editorial-note{margin:18px 0;padding:13px 15px;border-left:3px solid #6f6f76;background:#111114;color:#d9d9dd;font-size:.82rem;line-height:1.55}.so-editorial-note strong{color:#fff;text-transform:uppercase;font-size:.68rem;letter-spacing:.07em}
.so-editorial-note--correction{border-left-color:var(--so-red-text,var(--so-red));background:rgba(225,29,46,.08)}.so-editorial-note--breaking{border-left-color:var(--so-red-text,var(--so-red))}
.so-disclosure{display:flex;gap:10px;align-items:flex-start;margin:16px 0;padding:12px 14px;border:1px solid #3a3a40;background:#0c0c0e;font-size:.75rem;color:#aaaab0}.so-disclosure strong{flex:0 0 auto;color:#fff;background:var(--so-red);padding:3px 6px;text-transform:uppercase;font-size:.58rem;letter-spacing:.07em}.so-disclosure span{line-height:1.5}

.so-featured-media{overflow:visible;aspect-ratio:auto;background:transparent}.so-featured-media>img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#151517}
.so-featured-caption{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:8px 2px 0;color:#77777e;font-size:.65rem;line-height:1.45}.so-media-caption{max-width:70%}.so-media-credit{margin-left:auto;white-space:nowrap}.so-media-credit a{color:#aaaab0}.so-media-credit a:hover{color:#fff}
.so-lead-embed{margin:0 0 28px;padding:18px;border:1px solid #2b2b30;background:#0d0d0f}.so-lead-embed iframe{display:block;width:100%;max-width:100%;margin:0 auto}.so-lead-embed--video{border-top:3px solid var(--so-red)}.so-lead-embed--social{max-width:760px}
.so-story-format-gallery .wp-block-gallery,.so-story-format-gallery .gallery{margin:30px 0}.so-story-format-gallery .wp-block-gallery img{border:1px solid #29292e}

.so-reading-progress{position:fixed;z-index:9998;left:0;right:0;top:0;height:3px;background:transparent;pointer-events:none}.so-reading-progress span{display:block;width:0;height:100%;background:var(--so-red);box-shadow:0 0 10px rgba(225,29,46,.6)}
.so-share-rail{position:fixed;z-index:40;top:44%;left:max(10px,calc((100vw - 1180px)/2 - 62px));display:flex;flex-direction:column;gap:6px}
.so-share-rail a,.so-share-dock a{display:grid;place-items:center;width:38px;height:38px;border:1px solid #333338;background:#0b0b0d;color:#bdbdc3;font-size:.65rem;font-weight:900;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.18)}.so-share-rail a:hover,.so-share-dock a:hover{background:var(--so-red);border-color:var(--so-red-text,var(--so-red));color:#fff}
.so-share-dock{display:none}

.so-sources{margin:40px 0 34px;border:1px solid #2d2d32;background:#0d0d0f}.so-sources__head{display:flex;align-items:baseline;gap:10px;padding:13px 16px;border-bottom:1px solid #27272c}.so-sources__head span{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:#fff}.so-sources__head small{color:#6f6f76;font-size:.62rem}.so-sources ul{display:flex;gap:8px;flex-wrap:wrap;list-style:none;margin:0;padding:14px 16px}.so-sources li{border:1px solid #333338;padding:7px 9px;color:#aaaab0;font-size:.7rem}.so-sources a{color:#d3d3d8}.so-sources a:hover{color:#fff;text-decoration:underline}

.so-author-box{grid-template-columns:96px 1fr}.so-author-box__main{min-width:0}.so-author-box__role{color:var(--so-red-text,var(--so-red));font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.so-author-social,.so-author-hero__social{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.so-author-social a,.so-author-hero__social a{border:1px solid #323237;padding:5px 7px;color:#aaaab0;font-size:.58rem;font-weight:900;text-transform:uppercase}.so-author-social a:hover,.so-author-hero__social a:hover{border-color:var(--so-red-text,var(--so-red));color:#fff}.so-author-box__more{display:inline-block;margin-top:11px;color:#fff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.so-author-hero{display:grid;grid-template-columns:180px minmax(0,1fr);gap:30px;align-items:center;margin:24px 0 40px;padding:30px;border:1px solid #2c2c31;border-top:4px solid var(--so-red);background:linear-gradient(120deg,#0e0e10,#151518)}.so-author-hero__avatar img{width:180px;height:180px;object-fit:cover;border-radius:50%;border:3px solid #2e2e33}.so-author-hero__kicker{color:var(--so-red-text,var(--so-red));font-size:.63rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.so-author-hero h1{margin:5px 0 3px;font-size:clamp(2.8rem,6vw,5.8rem);line-height:.86;text-transform:uppercase;letter-spacing:-.04em}.so-author-hero__role{font-size:.82rem;font-weight:900;text-transform:uppercase;color:#d4d4d8}.so-author-hero p{max-width:760px;color:#aaaab0;line-height:1.65}.so-author-stories-head>span{color:#77777e;font-size:.65rem;text-transform:uppercase;font-weight:800}

.so-related--enhanced{padding-top:9px;border-top:1px solid #242429}.so-related--enhanced+.so-related--enhanced{margin-top:18px}

.so-404{text-align:center;max-width:900px;margin:34px auto 54px;padding:48px 24px;border:1px solid #2b2b30;background:radial-gradient(circle at 50% 0,rgba(225,29,46,.16),transparent 48%),#0b0b0d}.so-404__code{font-family:Impact,"Arial Black",sans-serif;font-size:clamp(6rem,18vw,13rem);line-height:.72;color:#151519;text-shadow:0 0 0 #151519}.so-404 h1{font-size:clamp(3rem,7vw,6rem);line-height:.9;text-transform:uppercase;margin:12px 0}.so-404 p{max-width:680px;margin:0 auto 22px;color:#aaaab0;font-size:1rem;line-height:1.65}.so-404__search{max-width:600px;margin:0 auto 18px}.so-404__search .search-form{display:flex}.so-404__search .search-field{flex:1}.so-404-trending{margin-top:20px}
.so-search-hero{padding:30px 0 24px;border-bottom:1px solid #2a2a2f;margin-bottom:24px}.so-search-hero__kicker{color:var(--so-red-text,var(--so-red));font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.so-search-hero h1{font-size:clamp(2.6rem,6vw,5.5rem);line-height:.9;text-transform:uppercase;margin:6px 0 18px}.so-search-hero__form{max-width:720px}.so-search-hero p{color:#77777e;font-size:.68rem;text-transform:uppercase;font-weight:800}.so-search-empty{padding:28px;border:1px solid #2c2c31;background:#0d0d0f;margin-bottom:20px}.so-search-empty h2{margin:0 0 8px;font-size:2rem;text-transform:uppercase}.so-search-empty p{color:#aaaab0}.so-search-fallback{margin-bottom:30px}

@media (max-width:1320px){.so-share-rail{display:none}}
@media (max-width:720px){
  .so-hot-strip{grid-template-columns:1fr auto;gap:7px 12px}.so-hot-strip__label{grid-column:1/-1}.so-hot-strip .so-story-badges{display:none}
  .so-featured-caption{flex-direction:column}.so-media-caption{max-width:100%}.so-media-credit{margin-left:0;white-space:normal}
  .so-author-hero{grid-template-columns:1fr;text-align:center;padding:24px 18px}.so-author-hero__avatar{display:flex;justify-content:center}.so-author-hero__social{justify-content:center}.so-author-hero p{margin-left:auto;margin-right:auto}
  .so-share-dock{position:fixed;z-index:9980;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:5px;padding:7px 8px;background:rgba(5,5,7,.96);border-top:1px solid #2b2b30;backdrop-filter:blur(8px)}.so-share-dock a{width:36px;height:36px;box-shadow:none}.so-sharebar--inline{display:none}
  body.so-is-singular{padding-bottom:56px}
}
@media (max-width:480px){
  .so-story-badges--compact{display:none}.so-article__eyebrow .so-story-badges--compact,.so-article__eyebrow .so-story-badges{display:inline-flex}
  .so-sources__head{align-items:flex-start;flex-direction:column;gap:3px}.so-author-box{grid-template-columns:64px 1fr}.so-author-box__avatar img{width:64px;height:64px}
  .so-author-social{grid-column:1/-1}.so-404{padding:34px 15px}.so-404__code{font-size:7rem}
}

/* v1.4 Discovery, Continuous Reading & Resiliency */
.so-theme-toggle{width:42px;height:42px;border:1px solid #2d2d31;border-radius:50%;background:#111114;color:#f3f3f5;display:grid;place-items:center;font-size:1rem;line-height:1;transition:background .18s,border-color .18s,transform .18s}
.so-theme-toggle:hover{background:#1a1a1e;border-color:#48484e;transform:translateY(-1px)}
.so-theme-toggle__icon{display:block;transform:translateY(-1px)}

/* Multi-item breaking ticker with one unique visual set per pass. */
.so-breaking__ticker{flex:1;position:relative;min-width:0;overflow:hidden;padding-left:22px}
.so-breaking__track{display:flex;width:max-content;will-change:transform;animation:so-breaking-marquee-unique 38s linear infinite}
.so-breaking__set{display:flex;align-items:center;gap:42px;padding-right:42px;flex:0 0 auto}
.so-breaking__set a{display:inline-flex;align-items:center;gap:8px;max-width:none!important;overflow:visible!important;text-overflow:clip!important;color:#d8d8dc;font-weight:750;letter-spacing:.01em}
.so-breaking__set a:hover{color:#fff}
.so-breaking__dot{font-size:.45rem;color:var(--so-red-text,var(--so-red));flex:0 0 auto}
.so-breaking__fallback{padding:10px 0;color:#d8d8dc}
.so-breaking__ticker:hover .so-breaking__track,.so-breaking__ticker:focus-within .so-breaking__track{animation-play-state:paused}
@keyframes so-breaking-marquee-unique{from{transform:translateX(0)}to{transform:translateX(calc(-100% - 42px))}}

/* Dynamic discovery / native Query Loop zones. */
.so-home-discovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0 34px}
.so-home-discovery>.so-query-widget{min-width:0}
.so-query-widget,.so-discovery-module{border:1px solid var(--so-line);border-top:3px solid var(--so-red);background:var(--so-surface);padding:18px}
.so-query-widget__title,.so-discovery-module__head h2{margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.035em}
.so-discovery-module__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--so-line)}
.so-discovery-module__head>a{color:var(--so-muted);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}
.so-discovery-module__head>a:hover{color:var(--so-red-text,var(--so-red))}
.so-discovery-list{display:grid}
.so-discovery-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--so-line)}
.so-discovery-card:last-child{border-bottom:0;padding-bottom:0}
.so-discovery-card__media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--so-surface-2)}
.so-discovery-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .25s}
.so-discovery-card:hover .so-discovery-card__media img{transform:scale(1.025)}
.so-discovery-card__meta{display:block;margin-bottom:3px;color:var(--so-muted);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.so-discovery-card h3{margin:0;font-size:1rem;line-height:1.03;text-transform:uppercase}
.so-sidebar-discovery{display:grid;gap:18px;margin-top:18px}
.so-sidebar-discovery .so-discovery-module{padding:16px}
.so-sidebar-discovery .so-discovery-card{grid-template-columns:84px minmax(0,1fr);gap:10px}
.so-sidebar-discovery .so-discovery-card h3{font-size:.86rem}
.so-discovery-ranked{list-style:none;margin:0;padding:0}
.so-discovery-ranked li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;align-items:start;padding:12px 0;border-bottom:1px solid var(--so-line)}
.so-discovery-ranked li:last-child{border-bottom:0;padding-bottom:0}
.so-discovery-ranked span{color:var(--so-red-text,var(--so-red));font-family:Impact,"Arial Black",sans-serif;font-size:1.25rem;line-height:1}
.so-discovery-ranked a{font-family:"Arial Narrow",Impact,sans-serif;font-size:.9rem;font-weight:900;line-height:1.05;text-transform:uppercase}
.so-query-pattern .wp-block-heading{margin:0 0 12px;padding-bottom:9px;border-bottom:2px solid var(--so-red);text-transform:uppercase}
.so-query-pattern .wp-block-post-template{display:grid;gap:10px}

/* Inline recirculation built for scanners. */
.so-read-next{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;margin:30px 0;border:1px solid var(--so-line);border-left:4px solid var(--so-red);background:linear-gradient(110deg,var(--so-surface),var(--so-surface-2));box-shadow:0 12px 28px rgba(0,0,0,.12)}
.so-read-next__label{display:flex;align-items:center;padding:14px 13px;background:var(--so-red);color:#fff;font-size:.61rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg)}
.so-read-next__story{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;color:var(--so-text)}
.so-read-next__thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--so-surface-2)}
.so-read-next__thumb img{width:100%;height:100%;object-fit:cover}
.so-read-next__title{font-family:"Arial Narrow",Impact,sans-serif;font-size:1.25rem;font-weight:950;line-height:.96;text-transform:uppercase}
.so-read-next__arrow{color:var(--so-red-text,var(--so-red));font-size:1.5rem}
.so-read-next__story:hover .so-read-next__title{color:var(--so-red-text,var(--so-red))}

/* Native ad insertion hooks. Empty programmatic hooks take zero space. */
.so-ad-hook:empty{display:none!important}
.so-ad-slot{overflow:hidden;contain:layout style;position:relative}
.so-ad-slot iframe,.so-ad-slot img{max-width:100%}
.so-ad-slot--leaderboard{min-height:90px}
.so-ad-slot--article-top,.so-ad-slot--inline{min-height:90px}
.so-ad-slot--sidebar{min-height:250px}
.so-ad-slot--home-grid{grid-column:1/-1;min-height:90px;margin:6px 0 10px}
.so-ad-slot--continuous{min-height:90px;margin:28px 0}
.so-post-grid>.so-ad-hook--home-grid{grid-column:1/-1}

/* Continuous article loading / endless reading. */
.so-continuous-reader{margin-top:42px;border-top:1px solid var(--so-line)}
.so-continuous-article{padding:46px 0 18px;border-bottom:1px solid var(--so-line)}
.so-continuous-article__divider{display:flex;align-items:center;gap:14px;margin-bottom:22px;color:var(--so-red-text,var(--so-red));font-size:.62rem;font-weight:950;text-transform:uppercase;letter-spacing:.11em}
.so-continuous-article__divider:before,.so-continuous-article__divider:after{content:"";height:1px;background:var(--so-line);flex:1}
.so-continuous-article__title{margin:8px 0 14px;font-size:clamp(2.6rem,5vw,5.5rem);line-height:.88;text-transform:uppercase;letter-spacing:-.035em}
.so-continuous-article__media{margin:24px 0;aspect-ratio:16/9;overflow:hidden;background:var(--so-surface-2)}
.so-continuous-article__media img{width:100%;height:100%;object-fit:cover}
.so-continuous-article__content{margin-top:24px}
.so-continuous-article__canonical{margin:28px 0 0;padding-top:16px;border-top:1px solid var(--so-line);font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em}
.so-continuous-article__canonical a{color:var(--so-red-text,var(--so-red))}
.so-continuous-sentinel{min-height:72px;display:grid;place-items:center;margin:16px 0;color:var(--so-muted)}
.so-continuous-sentinel.is-finished{display:none}
.so-continuous-spinner{display:none;width:26px;height:26px;border:2px solid var(--so-line);border-top-color:var(--so-red-text,var(--so-red));border-radius:50%;animation:so-spin .75s linear infinite}
.so-continuous-sentinel.is-loading .so-continuous-spinner{display:block}
@keyframes so-spin{to{transform:rotate(360deg)}}

/* Visual story gallery format: masonry + native lazy loading. */
.wp-block-gallery.is-style-soccer-observer-masonry,.so-story-format-gallery .wp-block-gallery{display:block!important;columns:3 250px;column-gap:12px;margin:30px 0!important}
.wp-block-gallery.is-style-soccer-observer-masonry>.wp-block-image,.so-story-format-gallery .wp-block-gallery>.wp-block-image{display:block!important;width:100%!important;margin:0 0 12px!important;break-inside:avoid;content-visibility:auto;contain-intrinsic-size:300px 220px}
.wp-block-gallery.is-style-soccer-observer-masonry img,.so-story-format-gallery .wp-block-gallery img{width:100%!important;height:auto!important;border:1px solid var(--so-line);background:var(--so-surface-2)}
.wp-block-gallery.is-style-soccer-observer-masonry figcaption,.so-story-format-gallery .wp-block-gallery figcaption{font-size:.66rem;line-height:1.4}

/* Reader light mode. Dark remains Soccer Observer's default brand presentation. */
html[data-so-theme="light"]{--so-bg:#f5f5f6;--so-surface:#ffffff;--so-surface-2:#ededf0;--so-line:#d8d8dd;--so-text:#101014;--so-muted:#686870;--so-white:#101014;--so-shadow:0 18px 45px rgba(18,18,24,.12)}
html[data-so-theme="light"] body{background:var(--so-bg);color:var(--so-text)}
html[data-so-theme="light"] .so-site-header,html[data-so-theme="light"] .so-navbar,html[data-so-theme="light"] .so-search-panel{background:#fff;color:#111;border-color:var(--so-line)}
html[data-so-theme="light"] .so-nav a,html[data-so-theme="light"] .so-date,html[data-so-theme="light"] .so-social-mini{color:#1a1a1e}
html[data-so-theme="light"] .so-menu-toggle,html[data-so-theme="light"] .so-search-toggle{color:#111}
html[data-so-theme="light"] .so-menu-toggle:hover,html[data-so-theme="light"] .so-search-toggle:hover,html[data-so-theme="light"] .so-theme-toggle{background:#f1f1f3;color:#111;border-color:#d6d6dc}
html[data-so-theme="light"] .so-search-panel input[type=search],html[data-so-theme="light"] .comment-respond input,html[data-so-theme="light"] .comment-respond textarea{background:#fff;color:#111;border-color:#cfcfd4}
html[data-so-theme="light"] .so-image-card,html[data-so-theme="light"] .so-trending,html[data-so-theme="light"] .so-newsletter,html[data-so-theme="light"] .so-widget,html[data-so-theme="light"] .so-hot-strip,html[data-so-theme="light"] .so-editorial-note,html[data-so-theme="light"] .so-disclosure,html[data-so-theme="light"] .so-sources,html[data-so-theme="light"] .so-lead-embed,html[data-so-theme="light"] .so-author-box,html[data-so-theme="light"] .so-author-hero,html[data-so-theme="light"] .so-query-widget,html[data-so-theme="light"] .so-discovery-module{background:var(--so-surface);border-color:var(--so-line);color:var(--so-text)}
html[data-so-theme="light"] .so-card__title a,html[data-so-theme="light"] .so-trending__title,html[data-so-theme="light"] .so-widget a,html[data-so-theme="light"] .so-entry-content,html[data-so-theme="light"] .so-related a,html[data-so-theme="light"] .so-author-box h2 a,html[data-so-theme="light"] .so-continuous-article__title a{color:var(--so-text)}
html[data-so-theme="light"] .so-entry-content blockquote{color:#202026}
html[data-so-theme="light"] .so-meta,html[data-so-theme="light"] .so-meta a,html[data-so-theme="light"] .so-breadcrumbs,html[data-so-theme="light"] .so-article__dek,html[data-so-theme="light"] .so-article__subtitle{color:var(--so-muted)}
html[data-so-theme="light"] .so-sharebar a,html[data-so-theme="light"] .so-share-rail a{background:#fff;color:#202026;border-color:#d2d2d7}
html[data-so-theme="light"] .so-drawer{background:#fff;color:#111;border-color:#ddd}
html[data-so-theme="light"] .so-drawer__close{background:#eee;color:#111}
html[data-so-theme="light"] .so-drawer nav li{border-color:#ddd}
/* Footer intentionally remains dark in both modes to preserve the masthead/footer brand frame. */

@media (max-width:900px){
  .so-home-discovery{grid-template-columns:1fr}
  .so-breaking__track{animation-duration:31s}
}
@media (max-width:720px){
  .so-theme-toggle{width:38px;height:38px}
  .so-read-next{grid-template-columns:1fr}
  .so-read-next__label{writing-mode:horizontal-tb;transform:none;padding:7px 12px}
  .so-read-next__story{grid-template-columns:76px minmax(0,1fr) auto;padding:10px 12px}
  .so-read-next__title{font-size:1rem}
  .so-continuous-article{padding-top:34px}
  .so-continuous-article__title{font-size:clamp(2.25rem,11vw,4rem)}
  .so-breaking__ticker{padding-left:14px}
  .so-breaking__label{padding:0 14px;font-size:.65rem}
}
@media (max-width:520px){
  .so-discovery-card{grid-template-columns:88px minmax(0,1fr)}
  .so-home-discovery{margin:20px 0 28px}
  .so-theme-toggle{display:none}
}
@media (prefers-reduced-motion:reduce){
  .so-breaking__track{animation:none!important;transform:none!important}
  .so-breaking__set[aria-hidden="true"]{display:none}
  .so-continuous-spinner{animation:none}
}

/* v1.5.1 stability, logo visibility and conversation UX fixes */

/* Header logo: preserve the transparent white/red masthead on dark mode and
   provide a guaranteed high-contrast alternate on light mode. */
.so-brand-wrap{display:grid;place-items:center;min-width:0;overflow:visible}
.so-brand-image{grid-area:1/1;display:block;line-height:0;overflow:visible}
.so-brand-image .custom-loso-link,.so-light-loso-link{display:block;line-height:0}
.so-brand-image .custom-logo,.so-light-mode-logo{display:block;width:auto;height:auto;max-width:min(500px,52vw);max-height:92px;object-fit:contain;overflow:visible}
.so-brand-image--light{display:none}
html[data-so-theme="light"] .so-brand-image--dark{display:none}
html[data-so-theme="light"] .so-brand-image--light{display:block}
html[data-so-theme="light"] .so-brand--light-fallback .so-brand__opi{color:var(--so-red-text,var(--so-red))}

/* Sticky desktop sharing must live outside the 1480px content container.
   Below 1600px there is not enough guaranteed gutter, so the rail disappears
   instead of ever covering article text. The inline/mobile share controls remain. */
.so-share-rail{left:calc((100vw - var(--so-max))/2 - 52px)}
@media (max-width:1599px){.so-share-rail{display:none}}

/* Comments: composer first, newest conversation immediately below it. */
.comments-area{margin-top:45px;border-top:1px solid var(--so-line);padding-top:26px}
.so-comment-composer{margin:0 0 34px;padding:22px;border:1px solid var(--so-line);border-top:3px solid var(--so-red);background:var(--so-surface)}
.so-comment-composer .comment-reply-title{margin:0 0 8px;font-size:1.15rem}
.so-comment-note{margin:0 0 16px;color:var(--so-muted);font-size:.78rem}
.so-comment-composer .comment-form{margin:0}
.so-comment-composer .comment-form-comment{margin-top:10px}
.so-comment-composer label{display:block;margin:0 0 6px;color:var(--so-muted);font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.so-comment-composer input[type="text"],.so-comment-composer input[type="email"],.so-comment-composer input[type="url"],.so-comment-composer textarea{width:100%;background:#101012;border:1px solid #303036;color:#fff;padding:12px;border-radius:0}
.so-comment-composer textarea{min-height:150px;resize:vertical}
.so-comment-composer .form-submit{margin-bottom:0}
.so-comment-submit{width:auto!important;background:var(--so-red)!important;border:0!important;color:#fff!important;font-weight:900!important;text-transform:uppercase;padding:12px 18px!important}
.so-comment-submit:disabled{opacity:.58;cursor:wait}
.so-comment-thread{margin-top:0}
.so-comments-title{margin:0 0 12px}
.comment-list{list-style:none;padding:0;margin:0}
.comment-list .children{list-style:none;margin:0 0 0 34px;padding:0 0 0 15px;border-left:1px solid var(--so-line)}
.comment-body{padding:18px 0;border-bottom:1px solid var(--so-line)}
.comment-meta{font-size:.75rem;color:var(--so-muted)}
.comment-content{font-family:Georgia,"Times New Roman",serif}
.so-comment-ajax-status{min-height:1.35em;margin-top:12px;font-size:.73rem;font-weight:750}
.so-comment-ajax-status.is-loading{color:var(--so-muted)}
.so-comment-ajax-status.is-success{color:#67cf89}
.so-comment-ajax-status.is-moderation{color:#e2b85f}
.so-comment-ajax-status.is-error{color:#ff6c78}
.so-comment-new{animation:so-comment-highlight 1.25s ease-out}
@keyframes so-comment-highlight{0%{background:rgba(225,29,46,.14)}100%{background:transparent}}
html[data-so-theme="light"] .so-comment-composer{background:#fff;border-color:var(--so-line)}
html[data-so-theme="light"] .so-comment-composer input[type="text"],html[data-so-theme="light"] .so-comment-composer input[type="email"],html[data-so-theme="light"] .so-comment-composer input[type="url"],html[data-so-theme="light"] .so-comment-composer textarea{background:#fff;color:#111;border-color:#cfcfd4}

@media (max-width:720px){
  .so-brand-image .custom-logo,.so-light-mode-logo{max-width:min(330px,58vw);max-height:70px}
  .so-comment-composer{padding:17px}
  .comment-list .children{margin-left:16px;padding-left:10px}
}

/* ========================================================================== 
   v1.6.0 Growth, Retention & Newsroom Systems
   ========================================================================== */

/* Smart sticky global header. The breaking strip remains above it; once the
   masthead reaches the viewport it becomes a compact, reveal-on-up utility. */
.so-site-header.so-smart-header{position:sticky;top:0;z-index:950;transition:transform .22s ease,box-shadow .22s ease;background:var(--so-bg)}
.so-site-header.so-smart-header.is-scroll-hidden{transform:translateY(-102%)}
.so-site-header.so-smart-header.is-compact{box-shadow:0 14px 30px rgba(0,0,0,.28)}
.so-site-header.so-smart-header.is-compact .so-masthead{min-height:72px}
.so-site-header.so-smart-header.is-compact .so-brand-image .custom-logo,
.so-site-header.so-smart-header.is-compact .so-light-mode-logo{max-height:56px}
.so-site-header.so-smart-header.is-compact .so-navbar{min-height:34px}

/* Live search/autocomplete */
.so-live-search-form{position:relative}
.so-live-search-results{position:absolute;z-index:120;left:0;right:0;top:calc(100% + 8px);background:var(--so-surface);border:1px solid var(--so-line);box-shadow:var(--so-shadow);max-height:min(68vh,620px);overflow:auto;text-align:left}
.so-live-search-results[hidden]{display:none!important}
.so-live-search-results.is-loading:before{content:"Searching…";display:block;padding:15px;color:var(--so-muted);font-size:.72rem;text-transform:uppercase;font-weight:900;letter-spacing:.06em}
.so-live-search-result{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--so-line);background:var(--so-surface)}
.so-live-search-result:hover{background:var(--so-surface-2);color:var(--so-text)}
.so-live-search-result img{width:76px;height:54px;object-fit:cover;background:var(--so-surface-2)}
.so-live-search-result__copy{min-width:0;display:block}
.so-live-search-result__copy small{display:block;color:var(--so-red-text,var(--so-red));font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:3px}
.so-live-search-result__copy strong{display:block;font-size:.88rem;line-height:1.18;color:var(--so-text)}
.so-live-search-all,.so-live-search-empty{display:block;padding:12px 14px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em}
.so-live-search-all{color:var(--so-red-text,var(--so-red))}
.so-live-search-empty{color:var(--so-muted)}

/* Most Read */
.so-most-read{margin:0 0 20px;border:1px solid var(--so-line);background:var(--so-surface)}
.so-most-read__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:2px solid var(--so-red)}
.so-most-read__head h2{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}
.so-most-read__head span{color:var(--so-muted);font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.so-most-read ol{list-style:none;margin:0;padding:0}
.so-most-read li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px 14px;border-bottom:1px solid var(--so-line);align-items:start}
.so-most-read li:last-child{border-bottom:0}
.so-most-read li>span{color:var(--so-red-text,var(--so-red));font-size:.72rem;font-weight:950;letter-spacing:.04em}
.so-most-read li a{font-size:.82rem;font-weight:850;line-height:1.25}
.so-most-read--topic{margin:18px 0 28px}
.so-most-read--topic ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.so-most-read--topic li{grid-template-columns:26px 1fr;border-bottom:0;border-right:1px solid var(--so-line)}
.so-most-read--topic li:last-child{border-right:0}

/* Team / competition / topic hubs */
.so-topic-hub{margin:24px 0 18px;border-top:5px solid var(--so-red);background:linear-gradient(135deg,var(--so-surface) 0%,var(--so-surface-2) 100%);border-left:1px solid var(--so-line);border-right:1px solid var(--so-line);border-bottom:1px solid var(--so-line)}
.so-topic-hub__identity{padding:26px 28px 18px}
.so-topic-hub__identity h1{font-family:Impact,"Arial Black",sans-serif;font-size:clamp(3.2rem,7vw,7rem);line-height:.88;text-transform:uppercase;letter-spacing:-.03em;margin:.08em 0 .12em}
.so-topic-hub__identity p{max-width:820px;margin:0;color:var(--so-muted);font-size:.95rem}
.so-topic-hub__lead{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:26px;align-items:center;padding:0 28px 26px}
.so-topic-hub__lead img{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--so-surface-2)}
.so-topic-hub__lead h2{font-size:clamp(2rem,4vw,4.4rem);line-height:.92;text-transform:uppercase;margin:.2em 0}
.so-topic-hub__lead p{color:var(--so-muted);margin:0}
.so-topic-hub__related{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:15px 28px;border-top:1px solid var(--so-line)}
.so-topic-hub__related strong{font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;color:var(--so-muted);margin-right:2px}
.so-topic-hub__related a{border:1px solid var(--so-line);padding:6px 9px;font-size:.65rem;font-weight:850;background:var(--so-bg)}
.so-topic-hub__related a:hover{border-color:var(--so-red-text,var(--so-red));color:var(--so-red-text,var(--so-red))}

/* Automatic table of contents */
.so-toc{margin:0 0 28px;border:1px solid var(--so-line);border-left:4px solid var(--so-red);background:var(--so-surface)}
.so-toc__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:transparent;border:0;color:var(--so-text);padding:13px 15px;font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.075em}
.so-toc__toggle span:last-child{color:var(--so-red-text,var(--so-red));font-size:1rem}
.so-toc__list{margin:0;padding:2px 18px 15px 40px}
.so-toc__item{margin:7px 0;color:var(--so-muted);font-family:var(--wp--preset--font-family--soccer-observer-system,system-ui,sans-serif);font-size:.76rem;line-height:1.35}
.so-toc__item--h3{margin-left:16px;font-size:.71rem}
.so-toc__item a:hover{color:var(--so-red-text,var(--so-red))}
.so-toc.is-collapsed .so-toc__list{display:none}
.so-entry-content h2[id],.so-entry-content h3[id]{scroll-margin-top:120px}

/* What We Know */
.so-what-we-know{margin:18px 0 25px;border:1px solid var(--so-line);border-top:4px solid var(--so-red);background:var(--so-surface)}
.so-what-we-know__head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;border-bottom:1px solid var(--so-line)}
.so-what-we-know__head>span{font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.075em}
.so-what-we-know__head small{color:var(--so-muted);font-size:.62rem}
.so-what-we-know__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.so-what-we-know__grid section{padding:14px 15px;border-right:1px solid var(--so-line)}
.so-what-we-know__grid section:last-child{border-right:0}
.so-what-we-know__grid h3{margin:0 0 8px;font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;color:var(--so-red-text,var(--so-red))}
.so-what-we-know__grid ul{margin:0;padding-left:18px}
.so-what-we-know__grid li{margin:5px 0;font-size:.76rem;line-height:1.4;color:var(--so-muted)}

/* Story timeline */
.so-story-timeline{margin:38px 0}
.so-story-timeline ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--so-line)}
.so-story-timeline li{position:relative;display:grid;grid-template-columns:145px minmax(0,1fr);gap:20px;padding:0 0 22px 24px}
.so-story-timeline li:before{content:"";position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--so-red);box-shadow:0 0 0 4px var(--so-bg)}
.so-story-timeline li>span{font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--so-red-text,var(--so-red))}
.so-story-timeline li p{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:1rem;line-height:1.5}

/* Mid-article newsletter */
.so-article-newsletter{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);gap:22px;align-items:center;margin:34px 0;padding:22px 24px;border:1px solid var(--so-line);border-top:4px solid var(--so-red);background:linear-gradient(120deg,var(--so-surface),var(--so-surface-2))}
.so-article-newsletter h2{font-family:var(--wp--preset--font-family--soccer-observer-system,system-ui,sans-serif)!important;font-size:1.35rem!important;line-height:1.08!important;text-transform:none!important;margin:.18em 0!important}
.so-article-newsletter p{font-family:var(--wp--preset--font-family--soccer-observer-system,system-ui,sans-serif)!important;font-size:.78rem!important;color:var(--so-muted);margin:0!important}
.so-article-newsletter__action{text-align:right}
.so-article-newsletter-widget form{display:flex;gap:7px;justify-content:flex-end}
.so-article-newsletter-widget input[type=email],.so-article-newsletter-widget input[type=text]{min-width:0;background:var(--so-bg);border:1px solid var(--so-line);color:var(--so-text);padding:11px 12px}
.so-article-newsletter-widget button,.so-article-newsletter-widget input[type=submit]{border:0;background:var(--so-red);color:#fff;font-weight:900;text-transform:uppercase;padding:10px 14px}

/* Comment conversation controls */
.so-comment-thread__bar{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:12px}
.so-comment-thread__bar .so-comments-title{margin:0}
.so-comment-sort{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.so-comment-sort[hidden]{display:none!important}
.so-comment-sort button{border:1px solid var(--so-line);background:var(--so-surface);color:var(--so-muted);padding:6px 9px;font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.so-comment-sort button.is-active,.so-comment-sort button:hover{border-color:var(--so-red-text,var(--so-red));color:#fff;background:var(--so-red)}
.so-comment-actions{margin-top:10px}
.so-comment-like{border:1px solid var(--so-line);background:transparent;color:var(--so-muted);padding:5px 8px;font-size:.65rem;font-weight:850}
.so-comment-like span:first-child{color:var(--so-red-text,var(--so-red));margin-right:2px}
.so-comment-like.is-liked{border-color:rgba(225,29,46,.65);background:rgba(225,29,46,.09);color:var(--so-text)}
.so-comment-like:disabled{opacity:.6}

/* Ad resiliency and viewability */
.so-ad-slot{margin-block:44px;isolation:isolate}
.so-ad-slot--leaderboard,.so-ad-slot--home-grid,.so-ad-slot--continuous{min-height:90px}
.so-ad-slot--article-top,.so-ad-slot--inline,.so-ad-slot--article-bottom{min-height:100px}
.so-ad-slot--sidebar{min-height:250px}
.so-sticky-sidebar-ad .so-sidebar .so-ad-slot--sidebar{position:sticky;top:102px;z-index:4}
.so-ad-slot--mobile{display:none;min-height:250px;margin:36px 0}
.so-entry-content figure+.so-ad-slot,.so-entry-content .wp-block-image+.so-ad-slot{margin-top:56px}

/* Push provider compatibility surface */
.so-push-subscribe{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--so-line);background:var(--so-surface);color:var(--so-text);height:42px;padding:0 10px;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.so-push-subscribe span:first-child{color:var(--so-red-text,var(--so-red))}
.so-push-subscribe:hover{border-color:var(--so-red-text,var(--so-red))}

/* Focal-point-aware imagery. Source files remain responsive via WordPress srcset. */
.so-hero>img,.so-image-card>img,.so-post-card__media img,.so-featured-media>img{object-fit:cover}

html[data-so-theme="light"] .so-live-search-results,
html[data-so-theme="light"] .so-live-search-result,
html[data-so-theme="light"] .so-most-read,
html[data-so-theme="light"] .so-topic-hub,
html[data-so-theme="light"] .so-toc,
html[data-so-theme="light"] .so-what-we-know,
html[data-so-theme="light"] .so-article-newsletter{background:#fff;color:#111;border-color:var(--so-line)}
html[data-so-theme="light"] .so-live-search-result__copy strong,
html[data-so-theme="light"] .so-toc__toggle{color:#111}

@media (max-width:960px){
  .so-most-read--topic ol{grid-template-columns:repeat(2,minmax(0,1fr))}
  .so-most-read--topic li{border-bottom:1px solid var(--so-line)}
  .so-topic-hub__lead{grid-template-columns:1fr}
  .so-what-we-know__grid{grid-template-columns:1fr}
  .so-what-we-know__grid section{border-right:0;border-bottom:1px solid var(--so-line)}
  .so-what-we-know__grid section:last-child{border-bottom:0}
  .so-sticky-sidebar-ad .so-sidebar .so-ad-slot--sidebar{position:static}
}
@media (max-width:720px){
  .so-site-header.so-smart-header.is-compact .so-masthead{min-height:62px}
  .so-live-search-results{left:-10px;right:-10px;max-height:62vh}
  .so-topic-hub__identity,.so-topic-hub__lead,.so-topic-hub__related{padding-left:18px;padding-right:18px}
  .so-most-read--topic ol{grid-template-columns:1fr}
  .so-article-newsletter{grid-template-columns:1fr;padding:18px}
  .so-article-newsletter__action{text-align:left}
  .so-article-newsletter-widget form{justify-content:flex-start;flex-direction:column}
  .so-story-timeline li{grid-template-columns:1fr;gap:4px;padding-left:22px}
  .so-comment-thread__bar{align-items:flex-start;flex-direction:column}
  .so-comment-sort{justify-content:flex-start}
  .so-ad-slot--mobile{display:block}
  .so-push-subscribe span:last-child{display:none}
}
@media (prefers-reduced-motion:reduce){
  .so-site-header.so-smart-header{transition:none}
}
.admin-bar .so-site-header.so-smart-header{top:32px}
@media(max-width:782px){.admin-bar .so-site-header.so-smart-header{top:46px}}

/* ========================================================================== */
/* v1.7.0 — finishing, accessibility, hot topics, consent and print           */
/* ========================================================================== */
.so-skip-link{position:fixed;left:16px;top:12px;z-index:100000;transform:translateY(-180%);background:#fff;color:#111!important;border:3px solid var(--so-red);padding:10px 14px;font-weight:900;text-transform:uppercase;box-shadow:0 8px 26px rgba(0,0,0,.3)}
.so-skip-link:focus{transform:none}

.so-hot-topics{background:#0b0b0d;border-bottom:1px solid #252529;color:#fff;position:relative;z-index:40}
.so-hot-topics__inner{display:flex;align-items:center;gap:18px;min-height:38px;overflow:hidden}
.so-hot-topics__inner>strong{flex:0 0 auto;color:var(--so-red-text,var(--so-red));font-size:.65rem;letter-spacing:.11em;text-transform:uppercase}
.so-hot-topics__links{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding:6px 0}
.so-hot-topics__links::-webkit-scrollbar{display:none}
.so-hot-topics__links a{display:inline-flex;padding:4px 10px;border-left:1px solid #303034;color:#d8d8dc;font-size:.68rem;font-weight:800;text-transform:uppercase}
.so-hot-topics__links a:hover,.so-hot-topics__links a:focus-visible{color:#fff;background:var(--so-red)}
html[data-so-theme="light"] .so-hot-topics{background:#f5f5f7;color:#111;border-color:#ddd}
html[data-so-theme="light"] .so-hot-topics__links a{color:#333;border-color:#d7d7da}
html[data-so-theme="light"] .so-hot-topics__links a:hover,html[data-so-theme="light"] .so-hot-topics__links a:focus-visible{color:#fff}

.so-ad-slot--consent-blocked{min-height:var(--so-ad-min-height,90px);display:block;background:transparent!important;border-color:transparent!important}
.so-ad-slot--consent-blocked:empty{visibility:hidden}

.so-admin-quality-warnings{margin:0;padding-left:18px}.so-admin-quality-warnings li{margin:0 0 8px;color:#8a2f00}.so-admin-quality-ok{color:#16803c}
.so-admin-revision-list{margin:0;padding-left:20px}.so-admin-revision-list li{margin-bottom:10px}.so-admin-revision-list span{color:#646970;font-size:12px}
.so-social-card-picker__preview img{display:block;width:100%;height:auto;max-height:160px;object-fit:cover;border:1px solid #dcdcde;margin-bottom:10px}

/* Accessible controls: touch targets and high-contrast text remain readable. */
.so-menu-toggle,.so-search-toggle,.so-theme-toggle,.so-drawer__close,.so-comment-sort button,.so-comment-submit{min-width:44px;min-height:44px}
.so-entry-content :where(a,button,input,select,textarea):focus-visible,.so-nav a:focus-visible,.so-drawer a:focus-visible{outline:3px solid #ff394a;outline-offset:3px}
@media (forced-colors:active){.so-story-badge,.so-kicker,.so-card__cat,.so-button{border:1px solid ButtonText}.so-reading-progress span{background:Highlight}.so-hot-topics__links a{border-color:ButtonText}}

@media(max-width:700px){.so-hot-topics__inner{gap:10px}.so-hot-topics__inner>strong{font-size:.6rem}.so-hot-topics__links a{font-size:.62rem}}

/* Reader-friendly print output: editorial content only. */
@media print{
  @page{margin:18mm}
  html,body{background:#fff!important;color:#000!important;font-size:11pt}
  .so-breaking,.so-site-header,.so-hot-topics,.so-drawer,.so-backdrop,.so-reading-progress,.so-sharebar,.so-share-rail,.so-share-dock,.so-ad-slot,.so-ad-hook,.so-sidebar,.so-post-nav,.so-related,.comments-area,.so-continuous-reader,.so-site-footer,.so-article-newsletter,.so-toc__toggle{display:none!important}
  .so-container,.so-content-wrap,.so-article,.so-entry-content{display:block!important;max-width:none!important;width:auto!important;margin:0!important;padding:0!important;color:#000!important}
  .so-article__title{font-size:28pt!important;color:#000!important;text-transform:none!important;line-height:1.05!important}
  .so-article__subtitle,.so-article__dek,.so-meta,.so-entry-content,.so-entry-content p,.so-entry-content li{color:#000!important}
  .so-featured-media{aspect-ratio:auto!important;overflow:visible!important;break-inside:avoid}
  .so-featured-media img{height:auto!important;max-width:100%!important}
  .so-entry-content a{color:#000!important;text-decoration:underline}
  .so-entry-content a[href^="http"]:after{content:" (" attr(href) ")";font-size:8pt;word-break:break-all}
  .so-toc{border:1px solid #999!important;background:#fff!important;color:#000!important;break-inside:avoid}
}
.so-comment-native-fallback{margin-left:8px;border:1px solid currentColor;background:transparent;color:inherit;padding:5px 9px;font-weight:800;cursor:pointer}

html[data-so-theme="light"]{--so-red-text:#b51222}

/* v1.8.0 Native newsletter */
.so-native-newsletter-form{display:flex;gap:8px;margin:0;flex-wrap:wrap}
.so-native-newsletter-form input[type=email]{width:100%;min-width:0;background:#08080a;border:1px solid #3a3a40;color:#fff;padding:13px 14px;outline:0}
.so-native-newsletter-form input[type=email]:focus{border-color:var(--so-red-text,var(--so-red));box-shadow:0 0 0 2px rgba(225,29,46,.13)}
.so-native-newsletter-form button{border:0;border-radius:0;background:var(--so-red);color:#fff;padding:12px 18px;font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}
.so-native-newsletter-form button:hover,.so-native-newsletter-form button:focus-visible{background:#fff;color:#09090a}
.so-newsletter-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.so-newsletter-status{margin:0 0 10px;padding:9px 11px;border-left:3px solid var(--so-red);background:rgba(255,255,255,.06);font-size:.78rem;line-height:1.4}
.so-newsletter-status--success{border-left-color:#3dbb69}
.so-newsletter-status--error{border-left-color:#ff5964}
.so-footer-newsletter-note a{text-decoration:underline;text-underline-offset:2px}
html[data-so-theme="light"] .so-native-newsletter-form input[type=email]{background:#fff;color:#111;border-color:#cfcfd4}
html[data-so-theme="light"] .so-newsletter-status{background:#f3f3f5;color:#111}
@media(max-width:600px){.so-native-newsletter-form{flex-direction:column}.so-native-newsletter-form button{width:100%;padding:13px}}

/* v1.9.0 Native Stats dashboard uses admin-only CSS in assets/css/stats-admin.css. */


/* ========================================================================== */
/* v1.9.1 — editorial design polish                                           */
/* ========================================================================== */
:root{
  --so-radius:5px;
  --so-reading:740px;
  --so-article-column:860px;
  --so-sidebar-width:320px;
  --so-layout-gap:40px;
}

/* 1–2. Intentional article/sidebar proportions and comfortable reading width. */
.so-single-right .so-content-wrap,
.so-single-left .so-content-wrap{
  width:min(100%,1220px);
  margin-inline:auto;
  grid-template-columns:minmax(0,var(--so-article-column)) minmax(300px,var(--so-sidebar-width));
  gap:var(--so-layout-gap);
  align-items:start;
}
.so-single-left .so-content-wrap{grid-template-columns:minmax(300px,var(--so-sidebar-width)) minmax(0,var(--so-article-column))}
.so-single-right .so-article,.so-single-left .so-article{width:100%;min-width:0}
.so-entry-content{max-width:var(--so-reading);font-size:1.08rem;line-height:1.82}
.so-article__title,.so-article__subtitle,.so-article__dek,.so-meta,.so-article__eyebrow,.so-featured-media,.so-sharebar--inline,.so-editorial-note,.so-disclosure,.so-what-we-know,.so-lead-embed,.so-toc,.so-article-newsletter,.so-story-timeline,.so-sources{max-width:var(--so-article-column)}
.so-article__title{font-size:clamp(3rem,5.2vw,5.35rem);line-height:.93;letter-spacing:-.035em;max-width:840px}
.so-article__subtitle{max-width:810px}
.so-article__dek{max-width:780px}
.so-sidebar{width:100%;max-width:var(--so-sidebar-width)}
.so-sidebar>*{width:100%}
.so-sidebar .so-ad-slot--sidebar{margin-bottom:22px}

/* 3. Headline hierarchy: unforgettable lead, calmer article, disciplined cards. */
.so-hero{min-height:560px;border-color:#323238;border-radius:var(--so-radius);box-shadow:0 24px 62px rgba(0,0,0,.38);outline:1px solid rgba(255,255,255,.025);outline-offset:-6px}
.so-hero:after{content:"";position:absolute;z-index:2;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--so-red),rgba(225,29,46,.2) 72%,transparent);pointer-events:none}
.so-hero__content{left:38px;bottom:38px;width:min(72%,690px)}
.so-hero__title{font-size:clamp(3.8rem,6.4vw,7rem);line-height:.82;letter-spacing:-.045em;text-shadow:0 3px 20px rgba(0,0,0,.35)}
.so-secondary-stack .so-card__title{font-size:clamp(1.35rem,1.8vw,2rem);line-height:.96}
.so-story-row .so-card__title{font-size:1.22rem;line-height:.98}
.so-post-card .so-card__title{font-size:1.36rem;line-height:1.02}

/* 4. Consistent image ratios and crops. */
.so-hero{aspect-ratio:16/9;min-height:0}
.so-secondary-stack .so-image-card,.so-story-row .so-image-card,.so-post-card__media{aspect-ratio:16/9;min-height:0}
.so-list-card__media{aspect-ratio:16/9}
.so-featured-media>img{aspect-ratio:16/9}
.so-trending__thumb,.so-sidebar .so-discovery-card img{aspect-ratio:4/3;object-fit:cover}
.so-most-read img,.so-widget img{object-fit:cover}

/* 5 + 9. Red is an editorial signal, not wallpaper; labels stay compact. */
.so-card__cat{
  background:rgba(8,8,9,.78);
  color:#fff;
  border:1px solid rgba(225,29,46,.82);
  border-left:3px solid var(--so-red);
  border-radius:4px;
  padding:4px 7px;
  margin-bottom:0;
  letter-spacing:.075em;
}
.so-story-badge{border-radius:4px}
.so-story-badge--status-breaking,.so-story-badge--status-correction,.so-story-badge--disclosure{background:var(--so-red);border-color:var(--so-red)}
.so-kicker{border-radius:4px}
.so-section-head h2{border-bottom-width:2px}

/* 6. More breathing room, fewer heavy boxes. */
.so-section{margin-top:46px}
.so-section-head{margin-bottom:20px}
.so-post-grid{gap:24px 20px}
.so-story-row{gap:14px;margin-top:14px}
.so-secondary-stack{gap:14px}
.so-lead-grid{gap:14px}
.so-post-card{border-color:rgba(255,255,255,.09);background:var(--so-surface);border-radius:var(--so-radius);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.so-post-card__body{padding:15px 15px 17px}
.so-widget,.so-most-read,.so-query-widget,.so-discovery-module,.so-newsletter{border-radius:var(--so-radius);overflow:hidden}
.so-widget{padding:19px;border-color:rgba(255,255,255,.1);margin-bottom:22px}
.so-widget-title{margin:-19px -19px 17px;padding:13px 17px;border-top:0;border-bottom:1px solid var(--so-line);position:relative}
.so-widget-title:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--so-red)}
.so-most-read__head{border-bottom:1px solid var(--so-line);position:relative;padding-left:18px}
.so-most-read__head:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--so-red)}
.so-sidebar-discovery{gap:20px;margin-top:20px}

/* 7. Light mode is a designed editorial palette, not a simple inversion. */
html[data-so-theme="light"]{
  --so-bg:#f6f3ee;
  --so-surface:#fffdfa;
  --so-surface-2:#efebe5;
  --so-line:#d9d4cc;
  --so-text:#171619;
  --so-muted:#68645f;
  --so-white:#171619;
  --so-shadow:0 18px 45px rgba(54,45,35,.10);
  --so-red-text:#b51222;
}
html[data-so-theme="light"] .so-site-header,
html[data-so-theme="light"] .so-navbar,
html[data-so-theme="light"] .so-search-panel{background:#fffdfa}
html[data-so-theme="light"] .so-post-card,
html[data-so-theme="light"] .so-widget,
html[data-so-theme="light"] .so-most-read,
html[data-so-theme="light"] .so-newsletter,
html[data-so-theme="light"] .so-discovery-module{background:#fffdfa;border-color:#ddd7cf;box-shadow:0 8px 26px rgba(65,54,43,.06)}
html[data-so-theme="light"] .so-card__cat{background:rgba(255,253,250,.93);color:#19181b;border-color:#c8a7aa;border-left-color:var(--so-red)}
html[data-so-theme="light"] .so-post-card__media{background:#e9e4de}
html[data-so-theme="light"] .so-entry-content{color:#242225}
html[data-so-theme="light"] .so-entry-content a{color:#a80f1d}
html[data-so-theme="light"] .so-entry-content figcaption{color:#716b65}
html[data-so-theme="light"] .so-meta{border-color:#d9d4cc}

/* 8. Subtle cinematic image treatment. */
.so-post-card__media,.so-image-card,.so-list-card__media,.so-featured-media>img{overflow:hidden;border-radius:var(--so-radius)}
.so-post-card__media img,.so-image-card img,.so-list-card__media img,.so-trending__thumb{transition:transform .32s ease,filter .32s ease}
.so-post-card:hover .so-post-card__media img,.so-list-card:hover .so-list-card__media img{transform:scale(1.025);filter:contrast(1.02) saturate(1.025)}
.so-image-card:after{background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.38) 44%,rgba(0,0,0,.04) 78%)}

/* 10. Mobile: disciplined headlines, compact controls, deliberate sidebar order. */
@media (max-width:960px){
  .so-single-right .so-content-wrap,.so-single-left .so-content-wrap{width:100%;grid-template-columns:1fr;gap:38px}
  .so-single-left .so-article,.so-single-left .so-sidebar{order:initial}
  .so-sidebar{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .so-sidebar>*{margin:0!important}
}
@media (max-width:720px){
  .so-hero{aspect-ratio:auto;min-height:470px}
  .so-hero__content{left:20px;right:20px;bottom:24px;width:auto}
  .so-hero__title{font-size:clamp(3rem,13vw,5rem);line-height:.84;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .so-card__title,.so-trending__title,.so-list-card h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
  .so-article__title{font-size:clamp(2.65rem,12vw,4.5rem);line-height:.94}
  .so-entry-content{font-size:1.05rem;line-height:1.76;max-width:none}
  .so-post-grid{gap:14px}
  .so-sidebar{grid-template-columns:1fr;gap:18px}
  .so-share-dock{padding-bottom:max(7px,env(safe-area-inset-bottom))}
  .so-story-badges--compact{gap:4px}
  .so-story-badges--compact .so-story-badge{font-size:.47rem;padding:3px 5px}
}
@media (max-width:480px){
  .so-post-card{grid-template-columns:40% 1fr;gap:0}
  .so-post-card__media{aspect-ratio:4/3;min-height:0;border-radius:var(--so-radius) 0 0 var(--so-radius)}
  .so-post-card .so-card__title{font-size:1.12rem;line-height:1.02;-webkit-line-clamp:3}
  .so-post-card__body{padding:11px 12px}
  .so-card__cat{font-size:.5rem;padding:3px 5px}
  .so-card__meta{font-size:.61rem}
}

/* 11. One consistent sharp editorial corner language. */
.so-hero,.so-image-card,.so-post-card,.so-widget,.so-most-read,.so-newsletter,.so-hot-strip,.so-related .so-post-card,.so-query-widget,.so-discovery-module,.so-read-next,.so-what-we-know,.so-toc,.so-article-newsletter,.so-sources,.so-editorial-note,.so-disclosure,.so-lead-embed{border-radius:var(--so-radius)}
.so-button,.so-sharebar a,.so-push-subscribe,.so-comment-sort button,.so-comment-submit,.so-native-newsletter-form input,.so-native-newsletter-form button{border-radius:4px}

/* 12. Signature Top Story frame: strong, memorable, still restrained. */
.so-lead-grid{position:relative;padding:8px;background:linear-gradient(135deg,#0a0a0b,#111114);border:1px solid #242429;border-radius:7px}
.so-lead-grid:before{content:"TOP STORY";position:absolute;z-index:4;right:18px;top:16px;color:rgba(255,255,255,.42);font-size:.55rem;font-weight:950;letter-spacing:.16em;pointer-events:none}
html[data-so-theme="light"] .so-lead-grid{background:linear-gradient(135deg,#ebe6df,#fffdfa);border-color:#d8d1c8}
html[data-so-theme="light"] .so-lead-grid:before{color:rgba(20,18,18,.42)}

@media (prefers-reduced-motion:reduce){
  .so-post-card__media img,.so-image-card img,.so-list-card__media img,.so-trending__thumb{transition:none!important;transform:none!important}
}

/* Native sidebar newsletter polish for v1.9.1. */
.so-widget--newsletter{background:linear-gradient(145deg,var(--so-surface),var(--so-surface-2))}
.so-sidebar-newsletter-copy{margin:0 0 14px;color:var(--so-muted);font-size:.8rem;line-height:1.5}
.so-widget--newsletter .so-native-newsletter-form{display:grid;grid-template-columns:1fr;gap:8px}
.so-widget--newsletter .so-native-newsletter-form input[type=email],.so-widget--newsletter .so-native-newsletter-form button{width:100%;min-width:0}
.so-widget--newsletter .so-footer-newsletter-note{margin-top:9px;font-size:.59rem;line-height:1.45;color:var(--so-muted)}

/* The 2.1:1 lead geometry lets both secondary 16:9 cards align naturally with the 16:9 hero. */
.so-lead-grid{grid-template-columns:minmax(0,2.1fr) minmax(260px,1fr)}
@media (max-width:720px){.so-lead-grid{grid-template-columns:1fr}}

/* ========================================================================== 
   Soccer Observer Pro v2.0 — Publication Experience
   ========================================================================== */

/* 1. Editorial mega menu */
.so-mega-menu{position:absolute;z-index:120;left:0;right:0;background:rgba(8,8,9,.985);border-top:1px solid #242429;border-bottom:1px solid #2f2f35;box-shadow:0 28px 55px rgba(0,0,0,.4)}
.so-site-header{position:relative}
.so-mega-menu[hidden],.so-mega-panel[hidden]{display:none!important}
.so-mega-panel{padding:20px 0 24px}
.so-mega-panel__label{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.so-mega-panel__label span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:950;color:#fff}
.so-mega-panel__label a{font-size:.7rem;color:var(--so-red-text);font-weight:850}
.so-mega-panel__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1.75fr);gap:24px}
.so-mega-lead{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:center;background:#111114;border:1px solid #28282d;padding:10px;border-radius:var(--so-radius)}
.so-mega-lead img,.so-mega-lead .so-zero-image{width:180px;aspect-ratio:16/9;object-fit:cover}
.so-mega-lead strong{font-size:1.45rem;line-height:1.02;letter-spacing:-.02em}
.so-mega-headlines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.so-mega-headlines a{display:grid;gap:4px;padding:11px 0;border-bottom:1px solid #2a2a2f}
.so-mega-headlines small{font-size:.58rem;color:var(--so-red-text);font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.so-mega-headlines span{font-size:.9rem;font-weight:780;line-height:1.18}
.so-nav a.is-mega-active{color:var(--so-red-text)}
html[data-so-theme="light"] .so-mega-menu{background:rgba(255,253,250,.99);border-color:#d9d4cc;box-shadow:0 24px 45px rgba(48,38,28,.12)}
html[data-so-theme="light"] .so-mega-lead{background:#f5f0e9;border-color:#d8d1c8}
html[data-so-theme="light"] .so-mega-panel__label span{color:#171619}
html[data-so-theme="light"] .so-mega-headlines a{border-color:#ddd6ce}

/* 2. Premium section landing pages */
.so-section-landing{margin:28px 0 42px;border-bottom:1px solid var(--so-line);padding-bottom:36px}
.so-section-landing__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:28px;align-items:end;margin-bottom:20px}
.so-section-landing__head span,.so-package-archive-head>span{display:block;color:var(--so-red-text);font-size:.62rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase;margin-bottom:7px}
.so-section-landing__head h1,.so-package-archive-head h1{margin:0;font-size:clamp(3.6rem,7vw,7.4rem);line-height:.82;letter-spacing:-.05em;text-transform:uppercase}
.so-section-landing__head p{margin:0;color:var(--so-muted);font-size:.94rem;line-height:1.6}
.so-section-landing__lead{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:16px}
.so-section-lead{position:relative;min-height:460px;overflow:hidden;background:#0d0d0f;border:1px solid #2b2b30}
.so-section-lead__media,.so-section-lead__media img,.so-section-lead__media .so-zero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.so-section-lead:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.08) 75%);pointer-events:none}
.so-section-lead__copy{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;color:#fff}
.so-section-lead__copy h2{margin:8px 0 8px;max-width:720px;font-size:clamp(2.5rem,4vw,4.6rem);line-height:.88;letter-spacing:-.04em}
.so-section-lead__copy p{margin:0;max-width:620px;color:#d7d7da}
.so-section-landing__rail{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.so-section-rail-card a{height:100%;display:grid;grid-template-rows:120px auto;background:var(--so-surface);border:1px solid var(--so-line)}
.so-section-rail-card img,.so-section-rail-card .so-zero-image{width:100%;height:120px;object-fit:cover}
.so-section-rail-card span{display:block;padding:11px;font-size:.98rem;font-weight:850;line-height:1.08}
.so-section-popular{display:flex;gap:14px;align-items:center;overflow:auto;margin-top:16px;padding:12px 14px;border:1px solid var(--so-line);background:var(--so-surface);scrollbar-width:thin}
.so-section-popular strong{flex:none;color:var(--so-red-text);text-transform:uppercase;font-size:.58rem;letter-spacing:.1em}
.so-section-popular a{flex:none;max-width:250px;font-size:.75rem;font-weight:800}
.so-section-head--archive{margin-top:32px}

/* 3. Story packages */
.so-story-package{max-width:var(--so-reading);margin:34px 0;border:1px solid var(--so-line);background:linear-gradient(135deg,var(--so-surface),var(--so-surface-2));padding:18px}
.so-story-package__head{display:flex;align-items:end;justify-content:space-between;gap:14px;border-bottom:1px solid var(--so-line);padding-bottom:12px}
.so-story-package__head>span{font-size:.54rem;letter-spacing:.12em;text-transform:uppercase;color:var(--so-red-text);font-weight:950}
.so-story-package__head h2{margin:0;font-size:1.35rem;line-height:1}
.so-story-package__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.so-story-package__item{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--so-line)}
.so-story-package__item span{font-size:.86rem;font-weight:800;line-height:1.14}
.so-story-package__item small{flex:none;color:var(--so-muted);font-size:.58rem}
.so-package-archive-head{padding:42px 0 26px;border-bottom:1px solid var(--so-line);margin-bottom:24px}
.so-package-archive-head div{max-width:760px;color:var(--so-muted)}
.so-package-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.so-package-archive-lead{grid-column:1/-1;display:grid;grid-template-columns:1.55fr 1fr;gap:26px;border-bottom:1px solid var(--so-line);padding-bottom:26px;margin-bottom:6px}
.so-package-archive-lead__media{aspect-ratio:16/9;overflow:hidden;background:var(--so-surface)}
.so-package-archive-lead__media img,.so-package-archive-lead__media .so-zero-image{width:100%;height:100%;object-fit:cover}
.so-package-archive-lead h2{font-size:clamp(2.4rem,4vw,4.4rem);line-height:.9;letter-spacing:-.04em;margin:10px 0}

/* 4. LIVE mode */
.so-story-badge--status-live{background:var(--so-red);border-color:var(--so-red);color:#fff;animation:goLiveGlow 1.8s ease-in-out infinite}
.so-live-story{max-width:var(--so-reading);margin:22px 0 28px;border:1px solid rgba(225,29,46,.55);background:linear-gradient(145deg,#141416,#09090a);box-shadow:inset 4px 0 0 var(--so-red)}
.so-live-story__head{display:flex;align-items:center;gap:9px;padding:12px 15px;border-bottom:1px solid #28282e}
.so-live-story__head strong{font-size:.7rem;letter-spacing:.15em;color:#fff}
.so-live-story__head>span:last-child{font-size:.62rem;color:#aaaab0}
.so-live-pulse{width:8px;height:8px;border-radius:50%;background:var(--so-red);box-shadow:0 0 0 0 rgba(225,29,46,.55);animation:goLivePulse 1.5s infinite}
.so-live-story__updates{padding:0 15px}
.so-live-update{display:grid;grid-template-columns:92px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid #27272c}
.so-live-update:last-child{border-bottom:0}
.so-live-update time{font-size:.68rem;font-weight:900;color:var(--so-red-text)}
.so-live-update p{margin:0;color:#f2f2f4;font-size:.94rem}
.so-live-update a{display:inline-block;margin-top:5px;font-size:.6rem;color:var(--so-red-text);font-weight:850}
.so-live-story__empty{margin:0;padding:16px;color:var(--so-muted)}
@keyframes goLivePulse{70%{box-shadow:0 0 0 9px rgba(225,29,46,0)}100%{box-shadow:0 0 0 0 rgba(225,29,46,0)}}
@keyframes goLiveGlow{50%{filter:brightness(1.18)}}
html[data-so-theme="light"] .so-live-story{background:#fffafa}
html[data-so-theme="light"] .so-live-update p{color:#201d20}
html[data-so-theme="light"] .so-live-story__head{border-color:#e5d3d5}

/* 5 + 6. Mobile bottom navigation and saved stories */
.so-mobile-nav{display:none}
.so-saved-panel{position:fixed;z-index:250;right:0;top:0;bottom:0;width:min(430px,92vw);background:var(--so-surface);border-left:1px solid var(--so-line);box-shadow:-24px 0 60px rgba(0,0,0,.42);transform:translateX(102%);transition:transform .24s ease;padding:22px;overflow:auto}
.so-saved-panel.is-open{transform:translateX(0)}
.so-saved-panel__head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--so-line);padding-bottom:16px;margin-bottom:10px}
.so-saved-panel__head span{display:block;color:var(--so-red-text);font-size:.55rem;text-transform:uppercase;letter-spacing:.12em;font-weight:950}
.so-saved-panel__head h2{margin:3px 0 0;font-size:2rem;line-height:.95}
.so-saved-panel__head button{background:none;border:0;color:var(--so-text);font-size:1.8rem}
.so-saved-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--so-line)}
.so-saved-item a{font-size:.88rem;font-weight:800;line-height:1.15}
.so-saved-item button{border:0;background:none;color:var(--so-red-text);font-size:.6rem;font-weight:850}
.so-saved-panel__empty{color:var(--so-muted);font-size:.78rem}
.so-saved-backdrop{position:fixed;z-index:240;inset:0;background:rgba(0,0,0,.58)}
.so-save-story{border:1px solid var(--so-line);background:transparent;color:var(--so-text);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;padding:7px 10px}
.so-save-story.is-saved{border-color:var(--so-red);color:var(--so-red-text)}

/* 7. Copy link as a first-class share action */
.so-copy-link{border:1px solid var(--so-line);background:var(--so-surface-2);color:var(--so-text);padding:8px 11px;font-size:.66rem;font-weight:850;white-space:nowrap}
.so-share-rail .so-copy-link,.so-share-dock .so-copy-link{font-size:.55rem;padding:7px}

/* 8. Editorial blocks and pull quotes */
.so-entry-content .so-editorial-card{margin:30px 0;padding:20px 22px;border:1px solid var(--so-line);border-left:4px solid var(--so-red);background:linear-gradient(135deg,var(--so-surface),var(--so-surface-2));border-radius:var(--so-radius)}
.so-entry-content .so-editorial-card h3{margin:0 0 7px;font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;color:var(--so-red-text)}
.so-entry-content .so-editorial-card p:last-child{margin-bottom:0}
.so-entry-content .so-pull-quote{margin:38px 0;padding:8px 0 8px 24px;border-left:5px solid var(--so-red)}
.so-entry-content .so-pull-quote p{font-size:clamp(1.8rem,4vw,3.2rem);line-height:.98;letter-spacing:-.035em;font-weight:900;margin:0 0 12px}
.so-entry-content .so-pull-quote cite{font-size:.7rem;color:var(--so-muted);font-style:normal;text-transform:uppercase;letter-spacing:.08em}

/* 9. Compact author trust strip */
.so-author-trust{max-width:var(--so-article-column);display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;gap:10px;align-items:center;border-top:1px solid var(--so-line);border-bottom:1px solid var(--so-line);padding:10px 0;margin:12px 0 16px}
.so-author-trust__avatar img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.so-author-trust>div{display:flex;flex-direction:column;min-width:0}
.so-author-trust strong{font-size:.73rem;line-height:1.05}
.so-author-trust>div>span{font-size:.58rem;color:var(--so-muted)}
.so-author-trust__updated{font-size:.6rem;color:var(--so-muted);white-space:nowrap}

/* 10. Smart homepage density */
.so-density-spacious .so-section{margin-top:60px}.so-density-spacious .so-post-grid{gap:32px 24px}.so-density-spacious .so-lead-grid{gap:20px}.so-density-spacious .so-story-row{gap:18px;margin-top:18px}
.so-density-dense .so-section{margin-top:30px}.so-density-dense .so-post-grid{gap:13px}.so-density-dense .so-post-card__body{padding:11px}.so-density-dense .so-card__title{font-size:1.15rem}.so-density-dense .so-lead-grid{gap:8px;padding:6px}.so-density-dense .so-story-row{gap:8px;margin-top:8px}.so-density-dense .so-hero__title{font-size:clamp(3.3rem,5.6vw,6rem)}

/* 11. Ad density guardrail */
.so-ad-slot--guarded{display:none!important}
.so-ad-slot{isolation:isolate}

/* 12. Typography-first missing-image treatment */
.so-zero-image{position:relative;display:flex!important;flex-direction:column;justify-content:flex-end;gap:5px;width:100%;height:100%;min-height:120px;padding:16px;overflow:hidden;background:radial-gradient(circle at 80% 10%,rgba(225,29,46,.2),transparent 35%),linear-gradient(145deg,#161619,#080809);color:#fff}
.so-zero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 50%,rgba(225,29,46,.12));pointer-events:none}
.so-zero-image small{position:relative;z-index:1;font-size:.52rem;letter-spacing:.12em;text-transform:uppercase;color:#ff6875;font-weight:950}
.so-zero-image strong{position:relative;z-index:1;font-size:1.6rem;line-height:.9;letter-spacing:-.06em}.so-zero-image strong span{color:var(--so-red)}
.so-zero-image em{position:relative;z-index:1;font-style:normal;font-size:.67rem;font-weight:800;line-height:1.08;color:#e7e7e8;max-width:95%}
.so-zero-image--card{min-height:100%}.so-zero-image--takeover{min-height:480px}.so-zero-image--section{min-height:460px}

/* 13. Skeleton/loading states */
.so-live-search-results.is-loading{min-height:168px;position:relative}
.so-live-search-results.is-loading:before,.so-live-search-results.is-loading:after,.so-continuous-sentinel.is-loading:before{content:"";display:block;border-radius:3px;background:linear-gradient(90deg,var(--so-surface-2) 25%,rgba(255,255,255,.09) 40%,var(--so-surface-2) 55%);background-size:300% 100%;animation:goSkeleton 1.1s ease-in-out infinite}
.so-live-search-results.is-loading:before{height:54px;margin:10px}.so-live-search-results.is-loading:after{height:54px;margin:10px}
.so-continuous-sentinel.is-loading:before{height:78px;max-width:740px;margin:22px auto}
@keyframes goSkeleton{0%{background-position:100% 0}100%{background-position:0 0}}

/* 15. Breaking News Takeover */
.so-breaking-takeover{position:relative;margin:22px 0 28px;min-height:600px;overflow:hidden;background:#050506;border:1px solid #3b1519;box-shadow:0 30px 75px rgba(0,0,0,.42)}
.so-breaking-takeover__media,.so-breaking-takeover__media img,.so-breaking-takeover__media .so-zero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.so-breaking-takeover:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.82) 40%,rgba(0,0,0,.24) 75%),linear-gradient(0deg,rgba(0,0,0,.65),transparent 52%)}
.so-breaking-takeover__copy{position:relative;z-index:2;display:flex;min-height:600px;flex-direction:column;justify-content:center;align-items:flex-start;width:min(720px,66%);padding:55px}
.so-breaking-takeover__flag{display:inline-flex;align-items:center;gap:8px;background:var(--so-red);color:#fff;padding:7px 10px;font-size:.58rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.so-breaking-takeover__flag i{display:block;width:7px;height:7px;border-radius:50%;background:#fff;animation:goLivePulse 1.5s infinite}
.so-breaking-takeover h1{margin:14px 0 12px;font-size:clamp(4.2rem,7.8vw,8.6rem);line-height:.8;letter-spacing:-.055em;color:#fff;text-transform:none}
.so-breaking-takeover p{margin:0 0 18px;max-width:600px;color:#d9d9dc;font-size:1rem}

@media (max-width:960px){
  .so-mega-menu{display:none!important}
  .so-section-landing__lead{grid-template-columns:1fr}.so-section-landing__rail{grid-template-columns:repeat(4,minmax(0,1fr))}.so-section-rail-card a{grid-template-rows:100px auto}.so-section-rail-card img,.so-section-rail-card .so-zero-image{height:100px}
  .so-package-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.so-package-archive-lead{grid-template-columns:1fr}
}
@media (max-width:720px){
  body{padding-bottom:66px}
  .so-mobile-nav{position:fixed;z-index:190;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(8,8,9,.97);border-top:1px solid #2d2d31;padding:6px max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));backdrop-filter:blur(16px)}
  .so-mobile-nav a,.so-mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:44px;background:none;border:0;color:#eee;padding:0;font-size:1.05rem}
  .so-mobile-nav small{font-size:.48rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800}
  .so-section-landing__head{grid-template-columns:1fr;gap:10px}.so-section-landing__head h1,.so-package-archive-head h1{font-size:clamp(3rem,16vw,5.2rem)}
  .so-section-lead{min-height:430px}.so-section-lead__copy{left:19px;right:19px;bottom:20px}.so-section-landing__rail{grid-template-columns:1fr 1fr}
  .so-story-package__grid{grid-template-columns:1fr}.so-package-archive-grid{grid-template-columns:1fr}.so-package-archive-lead{grid-column:auto}
  .so-live-update{grid-template-columns:75px 1fr}
  .so-author-trust{grid-template-columns:38px 1fr auto}.so-author-trust__updated{grid-column:2/-1}.so-author-trust .so-save-story{grid-column:3;grid-row:1/3}
  .so-breaking-takeover{min-height:560px;margin-inline:-20px;border-left:0;border-right:0}.so-breaking-takeover__copy{min-height:560px;width:100%;padding:28px 20px;justify-content:flex-end}.so-breaking-takeover h1{font-size:clamp(3.8rem,16vw,6.6rem)}.so-breaking-takeover:after{background:linear-gradient(0deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.78) 53%,rgba(0,0,0,.18) 100%)}
}
@media (max-width:480px){
  .so-section-landing__rail{grid-template-columns:1fr}.so-section-rail-card a{grid-template-columns:120px 1fr;grid-template-rows:auto}.so-section-rail-card img,.so-section-rail-card .so-zero-image{height:95px}
  .so-story-package{padding:14px}.so-story-package__head{align-items:flex-start;flex-direction:column}.so-story-package__item{flex-direction:column;gap:3px}
}
@media (prefers-reduced-motion:reduce){.so-story-badge--status-live,.so-live-pulse,.so-breaking-takeover__flag i,.so-live-search-results.is-loading:before,.so-live-search-results.is-loading:after,.so-continuous-sentinel.is-loading:before{animation:none!important}.so-saved-panel{transition:none}}
.so-saved-toggle{width:38px;height:38px;border:1px solid var(--so-line);background:transparent;color:var(--so-text);font-size:1.05rem;border-radius:4px}
.so-saved-toggle:hover{border-color:var(--so-red);color:var(--so-red-text)}
#commentform.is-loading{position:relative}
#commentform.is-loading:after{content:"";display:block;height:5px;margin-top:10px;background:linear-gradient(90deg,var(--so-surface-2) 25%,rgba(255,255,255,.14) 40%,var(--so-surface-2) 55%);background-size:300% 100%;animation:goSkeleton 1.1s ease-in-out infinite;border-radius:3px}
@media (max-width:720px){.so-saved-toggle{display:none}}
.so-mega-menu{top:100%}
.so-hero>.so-zero-image--hero{position:absolute;inset:0;width:100%;height:100%;min-height:100%;padding:36px}.so-hero>.so-zero-image--hero strong{font-size:clamp(3rem,7vw,6rem)}.so-hero>.so-zero-image--hero em{max-width:50%;font-size:.82rem}

/* v2.1.0 Native operations: Contact / Inbox */
.so-page-shell--contact{max-width:1040px;margin-inline:auto}
.so-contact-form-wrap{margin:48px 0 24px;padding:clamp(24px,4vw,44px);background:var(--so-surface);border:1px solid var(--so-line);border-top:4px solid var(--so-red);border-radius:5px;box-shadow:var(--so-shadow)}
.so-contact-form__intro{max-width:760px;margin-bottom:26px}.so-contact-form__intro h2{font-size:clamp(28px,4vw,44px);line-height:1;margin:5px 0 12px}.so-contact-form__intro p{color:var(--so-muted);margin:0}.so-contact-form{position:relative}.so-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.so-contact-form p{margin:0 0 18px}.so-contact-form label{display:block;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;margin-bottom:7px}.so-contact-form input,.so-contact-form select,.so-contact-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--so-line);background:var(--so-bg);color:var(--so-text);border-radius:4px;padding:13px 14px;font:inherit}.so-contact-form textarea{resize:vertical;min-height:180px}.so-contact-form input:focus,.so-contact-form select:focus,.so-contact-form textarea:focus{outline:2px solid var(--so-red);outline-offset:2px}.so-contact-form__privacy{font-size:13px;color:var(--so-muted);max-width:760px}.so-contact-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.so-form-notice{padding:13px 15px;margin:0 0 20px;border-left:4px solid var(--so-red);background:color-mix(in srgb,var(--so-red) 11%,var(--so-surface));font-weight:700}.so-form-notice--success{border-left-color:#2f9e44;background:color-mix(in srgb,#2f9e44 10%,var(--so-surface))}
@media(max-width:700px){.so-form-grid{grid-template-columns:1fr}.so-contact-form-wrap{margin-top:30px;padding:22px 18px}}

/* v2.4.0 newsletter segmentation */
.so-native-newsletter-form input[type=email]{flex:1 1 220px;width:auto}
.so-newsletter-topics{width:100%;color:var(--so-muted);font-size:.69rem}
.so-newsletter-topics summary{cursor:pointer;color:var(--so-text);font-weight:800}
.so-newsletter-topics label{color:var(--so-muted)}
html[data-so-theme="light"] .so-newsletter-topics summary{color:#161414}

/* --------------------------------------------------------------------------
   v2.5.0 — entity knowledge pages
   -------------------------------------------------------------------------- */
.so-entity-hero{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(28px,5vw,64px) 0;border-bottom:1px solid var(--so-border,#2b2b2b);margin-bottom:34px}.so-entity-hero__media img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:5px}.so-entity-hero__body h1{font-size:clamp(44px,7vw,92px);line-height:.92;margin:8px 0 18px;letter-spacing:-.04em}.so-entity-hero__body p{font-size:clamp(17px,2vw,22px);line-height:1.55;max-width:760px;color:var(--so-muted,#a7a7a7)}
@media(max-width:720px){.so-entity-hero{grid-template-columns:1fr}.so-entity-hero__media{max-width:220px}.so-entity-hero__body h1{font-size:clamp(40px,14vw,64px)}}

.so-entity-related{display:flex;flex-wrap:wrap;gap:8px}.so-entity-related a{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid var(--so-border);border-radius:4px;background:var(--so-surface);color:var(--so-text);font-size:.78rem;font-weight:800;text-decoration:none}.so-entity-related a:hover,.so-entity-related a:focus-visible{border-color:var(--so-red);color:var(--so-red)}

/* v2.7 final operations */
.so-retired-story{max-width:880px;margin:60px auto;padding:72px 30px;text-align:center;border:1px solid var(--so-line,#2a2a2f);background:radial-gradient(circle at 50% 0,rgba(225,29,46,.16),transparent 48%),var(--so-surface,#0b0b0d)}
.so-retired-story h1{font-size:clamp(3rem,7vw,6rem);line-height:.9;text-transform:uppercase;margin:12px 0 18px}.so-retired-story p{max-width:650px;margin:0 auto 24px;color:var(--so-muted,#aaaab0);font-size:1.05rem;line-height:1.65}

/* --------------------------------------------------------------------------
   v2.8.2 — Soccer Observer Originals: navigation + article-sidebar editions
   -------------------------------------------------------------------------- */
.so-menu-original>a{color:#fff}
.so-menu-original>a::before{content:"";display:inline-block;width:5px;height:5px;margin-right:7px;vertical-align:.12em;background:var(--so-red);border-radius:50%}
.so-original-sidebar{position:relative;overflow:hidden;border:1px solid var(--so-line);border-radius:5px;background:var(--so-surface);box-shadow:0 14px 34px rgba(0,0,0,.12)}
.so-original-sidebar::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--so-red)}
.so-original-sidebar__head{padding:20px 20px 15px 23px;border-bottom:1px solid var(--so-line);background:linear-gradient(115deg,rgba(225,29,46,.10),transparent 55%)}
.so-original-sidebar__head>span{display:block;margin-bottom:6px;color:var(--so-red-text,var(--so-red));font-size:9px;font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.15em}
.so-original-sidebar__head h2{margin:0;font-family:Impact,"Arial Narrow",ui-sans-serif,system-ui,sans-serif;font-size:24px;line-height:.98;letter-spacing:-.02em;text-transform:uppercase}
.so-original-sidebar__head p{margin:8px 0 0;color:var(--so-muted);font-size:12px;line-height:1.5}
.so-original-sidebar__story{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;align-items:center;padding:14px 15px 14px 19px;border-bottom:1px solid var(--so-line)}
.so-original-sidebar__thumb{display:block;overflow:hidden;aspect-ratio:4/3;border-radius:3px;background:#111}
.so-original-sidebar__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.so-original-sidebar__story:hover .so-original-sidebar__thumb img{transform:scale(1.035)}
.so-original-sidebar__story-copy{min-width:0}
.so-original-sidebar__story-copy small{display:block;margin-bottom:4px;color:var(--so-red-text,var(--so-red));font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.so-original-sidebar__story-copy strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:13px;line-height:1.28}
.so-original-sidebar__archive{display:block;padding:12px 19px;color:var(--so-text);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.so-original-sidebar__archive:hover{color:var(--so-red-text,var(--so-red))}
.so-original-sidebar__empty{padding:16px 19px;border-bottom:1px solid var(--so-line);color:var(--so-muted);font-size:12px;font-weight:700}
.so-original-sidebar--winlose{border-top:4px solid var(--so-red)}
.so-original-sidebar--winlose::before{display:none}
.so-original-sidebar--winlose .so-original-sidebar__head{padding-top:17px;background:linear-gradient(115deg,rgba(225,29,46,.07),transparent 55%)}
html[data-so-theme="light"] .so-original-sidebar{background:#fff;border-color:#dedbd5;box-shadow:0 14px 30px rgba(37,30,25,.07)}
html[data-so-theme="light"] .so-original-sidebar__head,html[data-so-theme="light"] .so-original-sidebar__story,html[data-so-theme="light"] .so-original-sidebar__empty{border-color:#dedbd5}
@media(max-width:1180px){.so-nav a{font-size:.76rem}.so-nav ul{gap:15px}}
@media(max-width:860px){.so-original-sidebar__head h2{font-size:22px}}


/* =========================================================
   v2.8.4 — Real-content polish
   ========================================================= */
/* Top Story: retain impact without allowing short headlines to dominate the hero. */
.so-hero__title{
  font-size:clamp(2.8rem,4.3vw,5.1rem);
  line-height:.90;
  letter-spacing:-.038em;
  max-width:14ch;
}
.so-density-dense .so-hero__title{
  font-size:clamp(2.65rem,4vw,4.75rem);
}

/* Related stories: editorial cards with image above and headline below. */
.so-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.so-related .so-post-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
}
.so-related .so-post-card__media{
  display:block;
  width:100%;
  min-height:0;
  aspect-ratio:16/9;
  border-radius:var(--so-radius) var(--so-radius) 0 0;
  overflow:hidden;
}
.so-related .so-post-card__media img,
.so-related .so-post-card__media .so-image-fallback{
  width:100%;
  height:100%;
  object-fit:cover;
}
.so-related .so-post-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:flex-start;
  padding:12px 3px 5px;
}
.so-related .so-card-labels{
  margin-bottom:5px;
}
.so-related .so-card__title,
.so-related .so-post-card .so-card__title{
  font-size:clamp(1.05rem,1.45vw,1.28rem);
  line-height:1.08;
  margin:0 0 6px;
  -webkit-line-clamp:3;
}
.so-related .so-card__meta{font-size:.68rem;margin-top:auto}

@media (max-width:820px){
  .so-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
}

@media (max-width:560px){
  .so-related-grid{grid-template-columns:1fr;gap:18px}
  .so-related .so-post-card__body{padding:10px 2px 3px}
  .so-related .so-card__title,
  .so-related .so-post-card .so-card__title{font-size:1.08rem;line-height:1.08}
  .so-related .so-card__meta{font-size:.66rem}
}

/* =========================================================
   v2.8.5 — Mockup-matched Top Story typography
   ========================================================= */
/* The original Soccer Observer mockup uses a tall, tightly condensed news-display face.
   Keep this treatment exclusive to the homepage lead so supporting typography remains calmer. */
.so-hero__title{
  font-family:Impact,Haettenschweiler,"Arial Narrow Bold","Arial Narrow",sans-serif;
  font-weight:400;
  font-stretch:condensed;
  text-transform:uppercase;
  letter-spacing:.002em;
  line-height:.88;
}
.so-hero__title a{font:inherit;letter-spacing:inherit}



/* =========================================================
   v2.8.6 — Mockup headline typography sitewide
   ========================================================= */
/* Use the same condensed display stack as the original mockup across editorial
   headlines, while keeping body copy, navigation, metadata and controls unchanged. */
:root{
  --so-headline-font:Impact,Haettenschweiler,"Arial Narrow Bold","Arial Narrow",sans-serif;
}
h1,h2,h3,h4,h5,h6,
.so-display,
.so-card__title,
.so-trending__title,
.so-list-card h2,
.so-continuous-article__title,
.so-read-next__title,
.so-discovery-card h3,
.so-discovery-ranked a,
.so-mega-headlines span,
.so-zero-image strong,
.so-post-nav a{
  font-family:var(--so-headline-font)!important;
  font-stretch:condensed;
}
.so-hero__title,
.so-hero__title a{
  font-family:var(--so-headline-font)!important;
}


/* =========================================================
   v2.8.7 — Tall + lean sitewide editorial typography
   ========================================================= */
/* Replace the heavy Impact treatment with a narrower DIN-style system stack.
   Bahnschrift Condensed is native on modern Windows; the remaining faces provide
   graceful condensed fallbacks without adding an external webfont request. */
:root{
  --so-headline-font:"Bahnschrift Condensed","Arial Narrow","Aptos Narrow","Helvetica Neue Condensed","Roboto Condensed","Liberation Sans Narrow",Arial,sans-serif;
}

h1,h2,h3,h4,h5,h6,
.wp-block-heading,
.so-display,
.so-card__title,
.so-trending__title,
.so-list-card h2,
.so-continuous-article__title,
.so-read-next__title,
.so-discovery-card h3,
.so-discovery-ranked a,
.so-mega-headlines span,
.so-zero-image strong,
.so-post-nav a,
.so-section-title,
.so-widget-title,
.widget-title,
.so-query-widget__title,
.so-hot-strip__title,
.so-footer__title,
.so-comments-title,
.comment-reply-title,
.so-sources__head,
.so-what-we-know__head,
.so-live-story__head,
.so-story-package__head,
.so-most-read__head,
.so-trending__head,
.so-discovery-module__head,
.so-author-stories-head,
.so-original-sidebar__head h2{
  font-family:var(--so-headline-font)!important;
  font-weight:650!important;
  font-stretch:75%;
  font-variation-settings:"wdth" 75,"wght" 650;
  letter-spacing:-.012em;
}

.so-hero__title,
.so-hero__title a,
.so-article__title,
.so-topic-hub__identity h1,
.so-section-landing__head h1,
.so-package-archive-head h1,
.so-archive-head h1{
  font-family:var(--so-headline-font)!important;
  font-weight:650!important;
  font-stretch:75%;
  font-variation-settings:"wdth" 75,"wght" 650;
  letter-spacing:-.018em;
}

/* Preserve the tall mockup rhythm while avoiding the bulky poster-like feel. */
.so-hero__title{line-height:.91}
.so-article__title{line-height:.94}
h1,h2,h3,h4,h5,h6{line-height:1.01}

@supports not (font-variation-settings:"wdth" 75){
  h1,h2,h3,h4,h5,h6,
  .so-display,.so-card__title,.so-trending__title,.so-list-card h2,
  .so-continuous-article__title,.so-read-next__title,.so-discovery-card h3,
  .so-discovery-ranked a,.so-mega-headlines span,.so-zero-image strong,
  .so-post-nav a,.so-section-title,.so-widget-title,.widget-title,
  .so-query-widget__title,.so-hot-strip__title,.so-footer__title,
  .so-comments-title,.comment-reply-title,.so-sources__head,
  .so-what-we-know__head,.so-live-story__head,.so-story-package__head,
  .so-most-read__head,.so-trending__head,.so-discovery-module__head,
  .so-author-stories-head,.so-original-sidebar__head h2{
    font-stretch:condensed;
  }
}

/* =========================================================
   v2.9.0 — Light/Clear template image-card contrast fix
   ========================================================= */
/* Image-overlay cards always need white editorial copy, even when the reader
   switches to the light/clear presentation. A broader light-mode card rule was
   previously turning these overlay headlines dark against photography. */
html[data-so-theme="light"] .so-image-card .so-card__title,
html[data-so-theme="light"] .so-image-card .so-card__title a,
html[data-so-theme="light"] .so-secondary-stack .so-card__title,
html[data-so-theme="light"] .so-secondary-stack .so-card__title a,
html[data-so-theme="light"] .so-story-row .so-card__title,
html[data-so-theme="light"] .so-story-row .so-card__title a{
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.72);
}

/* Keep the image overlay strong enough for short and long headlines alike. */
html[data-so-theme="light"] .so-image-card:after{
  background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.42) 48%,rgba(0,0,0,.05) 80%);
}

/* =========================================================
   v2.9.0 — Restore hover interaction in Light/Clear template
   ========================================================= */
/* v2.8.8 intentionally forced image-overlay headlines white for contrast.
   Restore the editorial red hover/focus state after that override so secondary
   lead cards remain visibly interactive in the clear template. */
html[data-so-theme="light"] .so-image-card .so-card__title a:hover,
html[data-so-theme="light"] .so-image-card .so-card__title a:focus-visible,
html[data-so-theme="light"] .so-secondary-stack .so-card__title a:hover,
html[data-so-theme="light"] .so-secondary-stack .so-card__title a:focus-visible,
html[data-so-theme="light"] .so-story-row .so-card__title a:hover,
html[data-so-theme="light"] .so-story-row .so-card__title a:focus-visible{
  color:var(--so-red-text,var(--so-red))!important;
  text-shadow:0 2px 12px rgba(0,0,0,.78);
}

/* Keep the visual image hover active in both dark and clear presentations. */
html[data-so-theme="light"] .so-image-card:hover img,
html[data-so-theme="light"] .so-image-card:focus-within img{
  transform:scale(1.035);
}


/* =========================================================
   v2.9.0 — Real-content resilience + Clear theme contrast
   ========================================================= */
/* Top Story titles longer than five words automatically step down in size.
   The extra very-long tier protects unusually long breaking-news headlines. */
.so-hero__title--long{
  font-size:clamp(2.35rem,3.55vw,4.15rem);
  line-height:.94;
  max-width:16ch;
}
.so-density-dense .so-hero__title--long{
  font-size:clamp(2.25rem,3.35vw,3.95rem);
}
.so-hero__title--very-long{
  font-size:clamp(2.05rem,3.05vw,3.55rem);
  line-height:.96;
  max-width:18ch;
}
.so-density-dense .so-hero__title--very-long{
  font-size:clamp(1.95rem,2.9vw,3.35rem);
}

/* Do not truncate long lead headlines on phones. Give the card enough vertical
   room instead so every word remains readable. */
@media (max-width:700px){
  .so-hero__title--long,
  .so-hero__title--very-long{
    display:block;
    overflow:visible;
    -webkit-box-orient:initial;
    -webkit-line-clamp:unset;
    line-clamp:unset;
    max-width:none;
  }
  .so-hero__title--long{font-size:clamp(2.15rem,9.2vw,3.45rem);line-height:.96}
  .so-hero__title--very-long{font-size:clamp(1.95rem,8.4vw,3.05rem);line-height:.98}
  .so-hero--long-title{min-height:520px}
  .so-hero--very-long-title{min-height:560px}
}

/* Sources box: explicit high-contrast palette for the Clear/Light presentation.
   Dark-theme values were too pale once the surface changed to white. */
html[data-so-theme="light"] .so-sources{
  background:#fff;
  border-color:#d7d4cf;
  color:#17171b;
}
html[data-so-theme="light"] .so-sources__head{
  border-bottom-color:#dedbd6;
}
html[data-so-theme="light"] .so-sources__head span{
  color:#151519!important;
}
html[data-so-theme="light"] .so-sources__head small{
  color:#5f5f67!important;
}
html[data-so-theme="light"] .so-sources li{
  background:#f7f5f2;
  border-color:#d4d1cc;
  color:#34343a!important;
}
html[data-so-theme="light"] .so-sources a{
  color:#202027!important;
  text-decoration-color:#9b9ba2;
}
html[data-so-theme="light"] .so-sources a:hover,
html[data-so-theme="light"] .so-sources a:focus-visible{
  color:var(--so-red-text,var(--so-red))!important;
  text-decoration:underline;
}

/* Previous/Next article boxes: the Clear theme used dark text inherited from the
   light palette on the original near-black card background. Convert the entire
   navigation card to a true light surface and set every state explicitly. */
html[data-so-theme="light"] .so-post-nav>div{
  background:#fff;
  border-color:#d8d5d0;
  color:#17171b;
}
html[data-so-theme="light"] .so-post-nav span{
  color:#686870!important;
}
html[data-so-theme="light"] .so-post-nav a{
  color:#17171b!important;
}
html[data-so-theme="light"] .so-post-nav a:hover,
html[data-so-theme="light"] .so-post-nav a:focus-visible{
  color:var(--so-red-text,var(--so-red))!important;
}


/* =========================================================
   v2.9.1 — Long Top Story containment + fixed kicker position
   ========================================================= */
/* The Top Story label now lives independently at the top-left of the hero.
   Headline height can no longer push it outside the card. */
.so-hero > .so-hero__kickers{
  position:absolute;
  z-index:4;
  top:28px;
  left:38px;
  right:28px;
  margin:0;
  pointer-events:none;
}
.so-hero > .so-hero__kickers .so-kicker{margin-bottom:0}

/* Keep longer headlines in the dark editorial side of the hero instead of
   allowing them to spread over the subject/photo. */
.so-hero--long-title .so-hero__content,
.so-hero--very-long-title .so-hero__content,
.so-hero--extreme-title .so-hero__content{
  width:min(54%,560px);
  bottom:30px;
}
.so-hero__title--long{
  font-size:clamp(2.1rem,3.15vw,3.35rem)!important;
  line-height:.94!important;
  max-width:100%;
  margin-bottom:12px;
}
.so-hero__title--very-long{
  font-size:clamp(1.85rem,2.75vw,2.9rem)!important;
  line-height:.96!important;
  max-width:100%;
  margin-bottom:10px;
}
.so-hero__title--extreme{
  font-size:clamp(1.65rem,2.45vw,2.55rem)!important;
  line-height:.98!important;
  max-width:100%;
  margin-bottom:10px;
}
.so-hero--long-title .so-hero__excerpt{
  font-size:.9rem;
  line-height:1.42;
  margin-bottom:14px;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
/* On very long lead headlines, the headline itself gets priority over a deck.
   The Read More control remains, so the card still has a clear action. */
.so-hero--very-long-title .so-hero__excerpt,
.so-hero--extreme-title .so-hero__excerpt{display:none}
.so-hero--very-long-title .so-button,
.so-hero--extreme-title .so-button{padding:9px 15px}

@media (max-width:1100px){
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{width:min(60%,520px)}
  .so-hero > .so-hero__kickers{top:22px;left:28px}
}

@media (max-width:700px){
  .so-hero > .so-hero__kickers{top:18px;left:20px;right:20px}
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:20px;
    right:20px;
    width:auto;
    bottom:22px;
  }
  .so-hero__title--long{font-size:clamp(1.95rem,8vw,2.8rem)!important;line-height:.97!important}
  .so-hero__title--very-long{font-size:clamp(1.75rem,7.2vw,2.45rem)!important;line-height:.99!important}
  .so-hero__title--extreme{font-size:clamp(1.55rem,6.5vw,2.15rem)!important;line-height:1!important}
  .so-hero--long-title,
  .so-hero--very-long-title,
  .so-hero--extreme-title{min-height:500px}
}


/* =========================================================
   v2.9.2 — Mockup-faithful Top Story layout
   ========================================================= */
/* The mockup uses one bottom-left editorial stack: badge, headline, deck,
   then action. Nothing is independently pinned over another element. */
.so-hero{
  min-height:560px;
}
.so-hero:before{
  background:linear-gradient(90deg,
    rgba(0,0,0,.96) 0%,
    rgba(0,0,0,.90) 27%,
    rgba(0,0,0,.72) 44%,
    rgba(0,0,0,.36) 61%,
    rgba(0,0,0,.08) 82%,
    rgba(0,0,0,.04) 100%);
}
.so-hero__content,
.so-hero--long-title .so-hero__content,
.so-hero--very-long-title .so-hero__content,
.so-hero--extreme-title .so-hero__content{
  left:38px;
  right:auto;
  bottom:36px;
  width:min(56%,610px);
  max-height:calc(100% - 64px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
}
.so-hero__content .so-hero__kickers{
  position:static;
  inset:auto;
  margin:0 0 15px;
  pointer-events:auto;
  flex:0 0 auto;
}
.so-hero__content .so-kicker{
  margin:0;
}
.so-hero__title,
.so-hero__title--long,
.so-hero__title--very-long,
.so-hero__title--extreme{
  width:100%;
  max-width:none;
  overflow:visible;
  text-wrap:balance;
  margin:0 0 15px;
}
/* Five words or fewer: the large two-line mockup treatment. */
.so-hero__title{
  font-size:clamp(3.25rem,5.15vw,5.75rem)!important;
  line-height:.90!important;
}
/* 6–8 words: still dominant, but compact enough to preserve the image. */
.so-hero__title--long{
  font-size:clamp(2.65rem,4.25vw,4.55rem)!important;
  line-height:.92!important;
}
/* 9–12 words: newsroom-sized rather than poster-sized. */
.so-hero__title--very-long{
  font-size:clamp(2.20rem,3.45vw,3.65rem)!important;
  line-height:.94!important;
}
/* 13+ words: guaranteed containment without clipping or covering the subject. */
.so-hero__title--extreme{
  font-size:clamp(1.88rem,2.90vw,3.05rem)!important;
  line-height:.96!important;
}
.so-hero--long-title .so-hero__excerpt,
.so-hero--very-long-title .so-hero__excerpt,
.so-hero--extreme-title .so-hero__excerpt{
  font-size:.92rem;
  line-height:1.42;
  margin:0 0 17px;
  max-width:480px;
}
/* Keep the mockup's supporting line for normal/medium headlines. Only the
   truly longest headlines surrender the deck so the full title always wins. */
.so-hero--very-long-title .so-hero__excerpt{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:1;
  overflow:hidden;
}
.so-hero--extreme-title .so-hero__excerpt{display:none}
.so-hero--long-title .so-button,
.so-hero--very-long-title .so-button,
.so-hero--extreme-title .so-button{padding:10px 17px}

@media (max-width:1100px){
  .so-hero__content,
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:28px;
    bottom:28px;
    width:min(58%,540px);
    max-height:calc(100% - 50px);
  }
  .so-hero__title{font-size:clamp(3rem,5vw,4.8rem)!important}
  .so-hero__title--long{font-size:clamp(2.45rem,4vw,3.9rem)!important}
  .so-hero__title--very-long{font-size:clamp(2.05rem,3.35vw,3.25rem)!important}
  .so-hero__title--extreme{font-size:clamp(1.8rem,2.85vw,2.75rem)!important}
}

@media (max-width:700px){
  .so-hero,
  .so-hero--long-title,
  .so-hero--very-long-title,
  .so-hero--extreme-title{min-height:500px}
  .so-hero:before{
    background:linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.80) 36%,rgba(0,0,0,.28) 68%,rgba(0,0,0,.05) 100%);
  }
  .so-hero__content,
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:20px;
    right:20px;
    bottom:22px;
    width:auto;
    max-height:calc(100% - 40px);
  }
  .so-hero__content .so-hero__kickers{margin-bottom:12px}
  .so-hero__title{font-size:clamp(2.6rem,11vw,4rem)!important;line-height:.92!important}
  .so-hero__title--long{font-size:clamp(2.15rem,9.2vw,3.25rem)!important;line-height:.94!important}
  .so-hero__title--very-long{font-size:clamp(1.88rem,8vw,2.8rem)!important;line-height:.96!important}
  .so-hero__title--extreme{font-size:clamp(1.62rem,6.9vw,2.35rem)!important;line-height:.98!important}
  .so-hero--very-long-title .so-hero__excerpt,
  .so-hero--extreme-title .so-hero__excerpt{display:none}
}

/* =========================================================
   v2.9.3 — Mockup lead-grid geometry + hard demarcation
   =========================================================
   Keep the Top Story and the two secondary stories in one shared visual row,
   exactly like the original mockup. The hero may never extend below the
   secondary stack on desktop/tablet. */
.so-lead-grid{
  align-items:stretch;
  isolation:isolate;
  overflow:hidden;
}
/* The real Top Story badge lives inside the hero. Remove the old decorative
   duplicate label that sat on the outer lead-grid shell. */
.so-lead-grid:before{display:none!important}

.so-hero,
.so-hero--long-title,
.so-hero--very-long-title,
.so-hero--extreme-title{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:0;
  height:auto;
  aspect-ratio:16/9;
  contain:paint;
  z-index:1;
}
.so-hero>img{max-width:100%;overflow:hidden}

/* The secondary column stretches to precisely the same grid-row height as
   the hero; each of its two cards owns half of that height. */
.so-secondary-stack{
  position:relative;
  z-index:2;
  min-width:0;
  min-height:0;
  height:100%;
  align-self:stretch;
  grid-template-rows:repeat(2,minmax(0,1fr));
}
.so-secondary-stack .so-image-card{
  width:100%;
  min-width:0;
  min-height:0;
  height:100%;
  aspect-ratio:auto;
}

/* Strong but restrained divider through the center of the normal grid gap. */
.so-secondary-stack:before{
  content:"";
  position:absolute;
  z-index:5;
  left:-8px;
  top:0;
  bottom:0;
  width:1px;
  background:rgba(255,255,255,.26);
  box-shadow:0 0 0 1px rgba(0,0,0,.28);
  pointer-events:none;
}
html[data-so-theme="light"] .so-secondary-stack:before{
  background:rgba(24,22,22,.32);
  box-shadow:none;
}

/* At narrower desktop widths the geometry remains shared; only typography
   is responsible for fitting the headline, not extra hero height. */
@media (max-width:1100px) and (min-width:721px){
  .so-hero,
  .so-hero--long-title,
  .so-hero--very-long-title,
  .so-hero--extreme-title{
    min-height:0;
    aspect-ratio:16/9;
  }
}

/* Once the layout stacks, the demarcation becomes horizontal and cards go
   back to their own 16:9 ratio. Mobile keeps enough hero height for titles. */
@media (max-width:720px){
  .so-hero,
  .so-hero--long-title,
  .so-hero--very-long-title,
  .so-hero--extreme-title{
    aspect-ratio:auto;
    min-height:500px;
    height:auto;
  }
  .so-secondary-stack{
    height:auto;
    margin-top:8px;
    padding-top:8px;
  }
  .so-secondary-stack:before{
    left:0;
    right:0;
    top:0;
    bottom:auto;
    width:auto;
    height:1px;
  }
  .so-secondary-stack .so-image-card{
    height:auto;
    aspect-ratio:16/9;
  }
}


/* =========================================================
   v2.9.4 — Mockup-faithful Top Story media split
   =========================================================
   The original mockup gives the editorial stack its own dark left zone and
   lets the photograph live primarily on the right. This preserves the Top
   Story badge, full headline, deck and Read More control without asking the
   text to fight the subject in the image. */
.so-hero,
.so-hero--long-title,
.so-hero--very-long-title,
.so-hero--extreme-title{
  background:#050506;
}

/* Move/crop the actual featured image toward the right, creating a genuine
   text-safe area rather than relying only on a dark overlay. */
.so-hero>img{
  left:auto;
  right:0;
  width:72%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center center;
}

/* Blend the right-hand photograph into the dedicated copy zone. */
.so-hero:before{
  z-index:1;
  background:
    linear-gradient(90deg,
      #050506 0%,
      rgba(5,5,6,.99) 27%,
      rgba(5,5,6,.94) 38%,
      rgba(5,5,6,.76) 49%,
      rgba(5,5,6,.42) 61%,
      rgba(5,5,6,.12) 76%,
      rgba(5,5,6,.02) 100%),
    linear-gradient(0deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.04) 45%);
}

/* Keep the complete mockup stack visible at all title lengths. */
.so-hero__content,
.so-hero--long-title .so-hero__content,
.so-hero--very-long-title .so-hero__content,
.so-hero--extreme-title .so-hero__content{
  left:30px;
  bottom:28px;
  width:min(59%,650px);
  max-height:none;
  overflow:visible;
  padding-right:10px;
}
.so-hero__content .so-hero__kickers{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:static!important;
  margin:0 0 12px!important;
  flex:0 0 auto;
}
.so-hero__content .so-kicker{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
}
.so-hero__excerpt,
.so-hero--long-title .so-hero__excerpt,
.so-hero--very-long-title .so-hero__excerpt,
.so-hero--extreme-title .so-hero__excerpt{
  display:-webkit-box!important;
  visibility:visible!important;
  opacity:1!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  max-width:470px;
  margin:0 0 15px;
  color:#dedee2;
  font-size:.9rem;
  line-height:1.4;
}
.so-hero--very-long-title .so-hero__excerpt,
.so-hero--extreme-title .so-hero__excerpt{
  -webkit-line-clamp:1;
}

/* With the photograph shifted right, long headlines can use a little more
   horizontal room while remaining completely inside the dark text zone. */
.so-hero__title--long{
  font-size:clamp(2.45rem,3.75vw,4.05rem)!important;
  line-height:.92!important;
}
.so-hero__title--very-long{
  font-size:clamp(2.02rem,3.12vw,3.32rem)!important;
  line-height:.94!important;
}
.so-hero__title--extreme{
  font-size:clamp(1.72rem,2.62vw,2.75rem)!important;
  line-height:.96!important;
}

@media (max-width:1100px) and (min-width:721px){
  .so-hero>img{width:74%;object-position:center center}
  .so-hero__content,
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:24px;
    bottom:24px;
    width:min(61%,560px);
  }
  .so-hero__excerpt,
  .so-hero--long-title .so-hero__excerpt,
  .so-hero--very-long-title .so-hero__excerpt,
  .so-hero--extreme-title .so-hero__excerpt{font-size:.84rem;margin-bottom:12px}
}

/* On a stacked phone layout, use the full image again and the mockup-style
   bottom gradient. The badge and deck stay present; nothing is discarded. */
@media (max-width:720px){
  .so-hero>img{
    left:0;
    right:0;
    width:100%;
    object-position:center center;
  }
  .so-hero:before{
    background:linear-gradient(0deg,
      rgba(0,0,0,.98) 0%,
      rgba(0,0,0,.88) 38%,
      rgba(0,0,0,.42) 70%,
      rgba(0,0,0,.06) 100%);
  }
  .so-hero__content,
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:18px;
    right:18px;
    bottom:20px;
    width:auto;
    padding-right:0;
  }
  .so-hero__excerpt,
  .so-hero--long-title .so-hero__excerpt,
  .so-hero--very-long-title .so-hero__excerpt,
  .so-hero--extreme-title .so-hero__excerpt{
    display:-webkit-box!important;
    -webkit-line-clamp:2;
    max-width:100%;
    font-size:.86rem;
    margin-bottom:13px;
  }
}


/* =========================================================
   v2.9.5 — Top Story auto-fit + badge/deck protection
   =========================================================
   Every word of the hero headline must remain visible. The complete mockup
   stack (Top Story badge, headline, deck, button) is protected as one unit.
   JavaScript only reduces the headline further when the rendered card needs it. */
.so-hero__title,
.so-hero__title--long,
.so-hero__title--very-long,
.so-hero__title--extreme,
.so-hero__title a,
.so-hero__title--long a,
.so-hero__title--very-long a,
.so-hero__title--extreme a{
  display:block!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  -webkit-box-orient:initial!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
}

/* Shift the image farther right and widen the safe editorial copy area.
   The left third is now genuinely image-free before the gradient blend begins. */
.so-hero>img{
  left:auto!important;
  right:0!important;
  width:68%!important;
  height:100%!important;
  object-fit:cover!important;
}
.so-hero:before{
  background:
    linear-gradient(90deg,
      #050506 0%,
      rgba(5,5,6,1) 30%,
      rgba(5,5,6,.97) 39%,
      rgba(5,5,6,.84) 50%,
      rgba(5,5,6,.50) 63%,
      rgba(5,5,6,.16) 79%,
      rgba(5,5,6,.02) 100%),
    linear-gradient(0deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.04) 46%)!important;
}

.so-hero__content,
.so-hero--long-title .so-hero__content,
.so-hero--very-long-title .so-hero__content,
.so-hero--extreme-title .so-hero__content{
  left:28px!important;
  bottom:24px!important;
  width:min(62%,680px)!important;
  max-height:none!important;
  overflow:visible!important;
}

/* A slightly smaller baseline than v2.9.4. The auto-fit routine can trim it
   further only when the actual rendered headline needs more vertical room. */
.so-hero__title{font-size:clamp(2.70rem,4.35vw,4.75rem)!important;line-height:.92!important}
.so-hero__title--long{font-size:clamp(2.18rem,3.45vw,3.62rem)!important;line-height:.94!important}
.so-hero__title--very-long{font-size:clamp(1.80rem,2.88vw,3.02rem)!important;line-height:.96!important}
.so-hero__title--extreme{font-size:clamp(1.55rem,2.42vw,2.55rem)!important;line-height:.98!important}

/* The badge and deck may compact, but never disappear. */
.so-hero__content .so-hero__kickers,
.so-hero--long-title .so-hero__kickers,
.so-hero--very-long-title .so-hero__kickers,
.so-hero--extreme-title .so-hero__kickers{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:static!important;
  margin:0 0 9px!important;
}
.so-hero__content .so-kicker{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
}
.so-hero__excerpt,
.so-hero--long-title .so-hero__excerpt,
.so-hero--very-long-title .so-hero__excerpt,
.so-hero--extreme-title .so-hero__excerpt{
  display:-webkit-box!important;
  visibility:visible!important;
  opacity:1!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  line-clamp:2!important;
  overflow:hidden!important;
  max-width:500px!important;
  margin:0 0 11px!important;
  font-size:.84rem!important;
  line-height:1.34!important;
}
.so-hero--very-long-title .so-hero__excerpt,
.so-hero--extreme-title .so-hero__excerpt{
  -webkit-line-clamp:1!important;
  line-clamp:1!important;
}
.so-hero .so-button{padding:8px 14px!important}

@media (max-width:1100px) and (min-width:721px){
  .so-hero>img{width:67%!important}
  .so-hero__content,
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:22px!important;
    bottom:20px!important;
    width:min(64%,590px)!important;
  }
  .so-hero__title{font-size:clamp(2.50rem,4vw,4rem)!important}
  .so-hero__title--long{font-size:clamp(2rem,3.25vw,3.25rem)!important}
  .so-hero__title--very-long{font-size:clamp(1.68rem,2.7vw,2.72rem)!important}
  .so-hero__title--extreme{font-size:clamp(1.46rem,2.28vw,2.28rem)!important}
}

@media (max-width:720px){
  .so-hero>img{left:0!important;right:0!important;width:100%!important}
  .so-hero:before{
    background:linear-gradient(0deg,
      rgba(0,0,0,.98) 0%,
      rgba(0,0,0,.89) 40%,
      rgba(0,0,0,.42) 72%,
      rgba(0,0,0,.05) 100%)!important;
  }
  .so-hero__content,
  .so-hero--long-title .so-hero__content,
  .so-hero--very-long-title .so-hero__content,
  .so-hero--extreme-title .so-hero__content{
    left:17px!important;
    right:17px!important;
    bottom:18px!important;
    width:auto!important;
  }
  .so-hero__title{font-size:clamp(2.35rem,9.8vw,3.55rem)!important}
  .so-hero__title--long{font-size:clamp(1.95rem,8.1vw,2.85rem)!important}
  .so-hero__title--very-long{font-size:clamp(1.68rem,7vw,2.42rem)!important}
  .so-hero__title--extreme{font-size:clamp(1.48rem,6.1vw,2.08rem)!important}
  .so-hero__excerpt,
  .so-hero--long-title .so-hero__excerpt,
  .so-hero--very-long-title .so-hero__excerpt,
  .so-hero--extreme-title .so-hero__excerpt{
    max-width:100%!important;
    font-size:.82rem!important;
  }
}

/* ================================================================
   v2.9.6 — Continuous homepage main-column flow
   The primary editorial lane now continues beneath the Top 8 while the
   sidebar grows independently. This removes the large dead zone that could
   appear when Trending/Most Read/newsletter widgets made the sidebar taller.
   ================================================================ */
.so-front-grid--continuous{align-items:start}
.so-home-main-flow{min-width:0;display:block}
.so-home-main-flow>.so-hot-strip{margin:24px 0 0}
.so-home-flow-ad:empty{display:none}
.so-home-flow-ad .so-ad-slot--leaderboard{margin:24px 0 0}
.so-home-main-flow>.so-home-discovery{margin:28px 0 0}
.so-home-main-flow>.so-home-latest{margin-top:32px}
.so-home-main-flow .so-post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 18px}

/* Discovery modules are part of the editorial column now, so keep their
   internal two-up rhythm on roomy screens without forcing the sidebar height. */
.so-home-main-flow .so-home-discovery>.so-query-widget,
.so-home-main-flow .so-home-discovery>.so-discovery-module{min-width:0}

@media (max-width:900px){
  .so-home-main-flow .so-home-discovery{grid-template-columns:1fr}
}
@media (max-width:720px){
  .so-home-main-flow .so-post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .so-home-main-flow>.so-home-latest{margin-top:26px}
}
@media (max-width:480px){
  .so-home-main-flow .so-post-grid{grid-template-columns:1fr}
  .so-home-main-flow>.so-home-discovery{margin-top:22px}
}


/* =========================================================
   v2.9.7 — Latest story card title visibility + vertical cards
   ========================================================= */
/* The continuous-homepage layout must never reduce Latest to image-only cards.
   Keep the editorial hierarchy explicit: image, category, headline, date. */
.so-home-latest .so-post-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0;
  height:100%;
  overflow:hidden;
}
.so-home-latest .so-post-card__media{
  display:block!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  min-height:0!important;
  border-radius:var(--so-radius) var(--so-radius) 0 0!important;
  overflow:hidden!important;
}
.so-home-latest .so-post-card__body{
  display:block!important;
  position:relative!important;
  flex:1 1 auto;
  padding:14px 14px 16px!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:visible!important;
  background:var(--so-surface)!important;
  color:var(--so-text)!important;
}
.so-home-latest .so-card-labels{
  display:flex!important;
  flex-wrap:wrap;
  gap:5px;
  margin:0 0 7px!important;
  opacity:1!important;
  visibility:visible!important;
}
.so-home-latest .so-card__title,
.so-home-latest .so-post-card .so-card__title{
  display:block!important;
  position:relative!important;
  margin:0 0 9px!important;
  font-size:clamp(1.2rem,1.55vw,1.48rem)!important;
  line-height:1.03!important;
  color:var(--so-text)!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
}
.so-home-latest .so-card__title a{
  display:block!important;
  color:var(--so-text)!important;
  opacity:1!important;
  visibility:visible!important;
}
.so-home-latest .so-card__title a:hover,
.so-home-latest .so-card__title a:focus-visible{
  color:var(--so-red-text,var(--so-red))!important;
}
.so-home-latest .so-card__meta{
  display:block!important;
  color:var(--so-muted)!important;
  opacity:1!important;
  visibility:visible!important;
}
html[data-so-theme="light"] .so-home-latest .so-post-card__body{
  background:#fffdfa!important;
  color:#1c1b1d!important;
}
html[data-so-theme="light"] .so-home-latest .so-card__title,
html[data-so-theme="light"] .so-home-latest .so-card__title a{
  color:#1c1b1d!important;
}
html[data-so-theme="light"] .so-home-latest .so-card__title a:hover,
html[data-so-theme="light"] .so-home-latest .so-card__title a:focus-visible{
  color:var(--so-red-dark,var(--so-red))!important;
}
html[data-so-theme="light"] .so-home-latest .so-card__meta{
  color:#706a64!important;
}
/* Keep Latest vertical even though generic mobile cards use a side-by-side pattern. */
@media (max-width:720px){
  .so-home-latest .so-post-card{display:flex!important;grid-template-columns:none!important}
  .so-home-latest .so-post-card__media{aspect-ratio:16/9!important;border-radius:var(--so-radius) var(--so-radius) 0 0!important}
  .so-home-latest .so-card__title,
  .so-home-latest .so-post-card .so-card__title{font-size:1.25rem!important;line-height:1.04!important}
}


/* v2.9.8 — larger social profile controls in the header and footer */
.so-social-mini{
  gap:7px;
  font-size:1rem;
  align-items:center;
}
.so-social-mini a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:31px;
  height:31px;
  flex:0 0 31px;
  padding:0;
  border:1px solid #303036;
  border-radius:50%;
  background:#111114;
  color:#e7e7ea;
  font-size:1rem;
  font-weight:900;
  line-height:1;
  transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease;
}
.so-social-mini a:hover,
.so-social-mini a:focus-visible{
  color:#fff;
  background:var(--so-red);
  border-color:var(--so-red-text,var(--so-red));
  transform:translateY(-2px);
}
.so-social-mini a span,
.so-footer-social a span{
  display:block;
  line-height:1;
}

.so-footer-social{
  gap:10px;
}
.so-footer-social a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  flex:0 0 46px;
  padding:0;
  font-size:1.02rem;
  line-height:1;
}

/* Match native WordPress Social Icons blocks used in Footer 4. */
.so-footer-widget .wp-block-social-links{
  gap:10px;
}
.so-footer-widget .wp-block-social-links .wp-social-link{
  width:46px;
  height:46px;
}
.so-footer-widget .wp-block-social-links .wp-social-link a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  padding:10px;
}
.so-footer-widget .wp-block-social-links svg{
  width:22px;
  height:22px;
}

html[data-so-theme="light"] .so-social-mini a{
  background:#fff;
  color:#17171a;
  border-color:#cfcfd4;
}
html[data-so-theme="light"] .so-social-mini a:hover,
html[data-so-theme="light"] .so-social-mini a:focus-visible{
  background:var(--so-red);
  color:#fff;
  border-color:var(--so-red-text,var(--so-red));
}

@media(max-width:1180px) and (min-width:901px){
  .so-social-mini{gap:5px}
  .so-social-mini a{width:29px;height:29px;flex-basis:29px;font-size:.92rem}
}


/* v2.9.9 — balanced six-profile footer social grid */
.so-footer-column--follow .so-footer-social{
  display:grid;
  grid-template-columns:repeat(3,46px);
  gap:10px 12px;
  justify-content:start;
  align-items:center;
  width:max-content;
  max-width:100%;
}
.so-footer-column--follow .so-footer-social a{
  margin:0;
}

/* Keep a native WordPress Social Icons block balanced too: 3 + 3 instead of 5 + 1. */
.so-footer-column--follow .wp-block-social-links{
  display:grid!important;
  grid-template-columns:repeat(3,46px);
  gap:10px 12px!important;
  justify-content:start!important;
  width:max-content;
  max-width:100%;
}
.so-footer-column--follow .wp-block-social-links .wp-social-link{
  margin:0!important;
}

@media(max-width:520px){
  .so-footer-column--follow .so-footer-social,
  .so-footer-column--follow .wp-block-social-links{
    grid-template-columns:repeat(3,44px);
    gap:9px 11px!important;
  }
  .so-footer-column--follow .so-footer-social a,
  .so-footer-column--follow .wp-block-social-links .wp-social-link,
  .so-footer-column--follow .wp-block-social-links .wp-social-link a{
    width:44px;
    height:44px;
  }
}


/* v2.9.10 — local contributor photos only; no Gravatar fallback */
.so-author-box--no-avatar{grid-template-columns:minmax(0,1fr)}
.so-author-hero--no-avatar{grid-template-columns:minmax(0,1fr)}
.so-author-trust--no-avatar{grid-template-columns:minmax(0,1fr) auto auto}
@media (max-width:720px){
  .so-author-trust--no-avatar{grid-template-columns:minmax(0,1fr) auto}
  .so-author-trust--no-avatar .so-author-trust__updated{grid-column:1/-1}
  .so-author-trust--no-avatar .so-save-story{grid-column:2;grid-row:1}
}

/* =========================================================
   v2.9.11 — smaller five-story row headlines
   Keep the five cards below the lead package image-led instead of text-heavy.
   Longer titles step down again automatically without changing other cards.
   ========================================================= */
.so-story-row .so-card__title--row{
  font-size:1rem!important;
  line-height:1.02!important;
  letter-spacing:-.012em;
  -webkit-line-clamp:3;
}
.so-story-row .so-card__title--row-medium{
  font-size:.92rem!important;
  line-height:1.04!important;
}
.so-story-row .so-card__title--row-long{
  font-size:.84rem!important;
  line-height:1.05!important;
}
.so-story-row .so-image-card__body{
  left:14px;
  right:14px;
  bottom:13px;
}
@media (max-width:1100px){
  .so-story-row .so-card__title--row{font-size:1.02rem!important}
  .so-story-row .so-card__title--row-medium{font-size:.96rem!important}
  .so-story-row .so-card__title--row-long{font-size:.9rem!important}
}
@media (max-width:760px){
  .so-story-row .so-card__title--row{font-size:1.12rem!important}
  .so-story-row .so-card__title--row-medium{font-size:1.04rem!important}
  .so-story-row .so-card__title--row-long{font-size:.98rem!important}
}

/* ==========================================================================\n   Soccer Observer 1.0 — Matchday Command Center identity\n   ========================================================================== */
:root{
  --so-bg:#071014;
  --so-surface:#0a1519;
  --so-surface-2:#0f1c20;
  --so-line:#203037;
  --so-text:#f7f9f8;
  --so-muted:#9eaaad;
  --so-max:1500px;
  --so-radius:2px;
  --so-shadow:0 22px 60px rgba(0,0,0,.28);
}
body{
  background:
    radial-gradient(circle at 68% -10%,rgba(56,245,107,.055),transparent 32rem),
    linear-gradient(180deg,#071014 0,#081114 100%);
}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:56px 56px}
.so-display,.so-card__title,.so-hero__title,h1,h2,h3{font-family:var(--wp--preset--font-family--soccer-observer-headline,"Arial Narrow",Impact,Haettenschweiler,Arial,sans-serif)}
a:hover{color:var(--so-green)}
.so-kicker,.so-card__cat,.so-support-story__cat{background:var(--so-green);color:#04110a;border-radius:2px;font-weight:950}
.so-button{border-radius:999px;border-color:#627076;background:rgba(5,14,17,.74);padding:11px 19px}
.so-button:hover{background:var(--so-green);border-color:var(--so-green);color:#04110a}

/* Header: deliberately architectural and unmistakably football. */
.so-site-header{background:rgba(4,12,16,.97);border-bottom:0;box-shadow:0 14px 45px rgba(0,0,0,.2)}
.so-masthead{min-height:106px;grid-template-columns:minmax(170px,1fr) minmax(420px,auto) minmax(330px,1fr);border-bottom:1px solid var(--so-line);gap:26px}
.so-masthead__motto,.so-masthead__promise{text-transform:uppercase;letter-spacing:.16em;line-height:1.45;font-size:.63rem;color:#aab5b7;display:flex;flex-direction:column}
.so-masthead__motto strong,.so-masthead__promise strong{color:#f5f8f7;font-weight:900}
.so-masthead__promise{text-align:right;margin-right:8px}
.so-brand-wrap{text-align:center;min-width:0}
.so-brand--wordmark{display:inline-flex;align-items:center;gap:.18em;white-space:nowrap;font-size:clamp(2.2rem,3.45vw,4rem);letter-spacing:-.055em;line-height:.9;font-weight:950;color:#fff;text-shadow:0 2px 0 rgba(255,255,255,.12)}
.so-brand--wordmark:hover{color:#fff}
.so-brand__accent{color:var(--so-green);position:relative}
.so-brand__accent:before{content:"";position:absolute;top:-.12em;left:48%;width:.12em;height:.18em;background:var(--so-green);border-radius:999px;transform:translateX(-50%)}
.so-brand-subline{margin-top:8px;text-transform:uppercase;font-size:.59rem;letter-spacing:.18em;color:#829095;white-space:nowrap}
.so-brand-subline strong{color:var(--so-green);font-weight:900}
.so-masthead__right{gap:8px}
.so-header-signin{font-size:.72rem;font-weight:800;padding:10px 8px;color:#e8edec;white-space:nowrap}
.so-header-join{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:10px 16px;background:var(--so-green);border:1px solid var(--so-green);color:#04110a;font-size:.72rem;font-weight:950;border-radius:2px}
.so-header-join:hover{background:#74ff98;color:#04110a}
.so-search-toggle,.so-theme-toggle,.so-menu-toggle{color:#ecf0ef}
.so-menu-toggle{display:none}
.so-navbar{background:#071116;border-bottom:1px solid var(--so-line)}
.so-nav-inner{display:flex;justify-content:space-between;gap:20px;min-height:48px}
.so-nav{min-width:0;overflow:hidden}
.so-nav ul{justify-content:flex-start;gap:clamp(13px,1.45vw,27px)}
.so-nav a{font-size:.72rem;padding:15px 0;color:#dde3e2;letter-spacing:.035em}
.so-nav a:after{bottom:8px;background:var(--so-green)}
.so-edition{margin-left:auto;color:#bbc6c8;font-size:.7rem;font-weight:800;white-space:nowrap;padding-left:18px;border-left:1px solid var(--so-line)}
.so-breaking{min-height:38px;background:#061a12;border-bottom:1px solid #153d27}
.so-breaking__label{background:var(--so-green);color:#06100a;padding:0 22px;font-weight:950}
.so-breaking__ticker{color:#dce7e1;font-size:.73rem}
.so-breaking__track a:after{content:"•";color:#688078;margin-left:24px}

/* Command Center */
.so-main{padding:16px 0 64px}
.so-command-grid{display:grid;grid-template-columns:minmax(0,3.25fr) minmax(310px,1.12fr);gap:12px;align-items:stretch}
.so-command-editorial{display:grid;grid-template-columns:minmax(0,2.45fr) minmax(245px,.9fr);gap:10px;min-width:0}
.so-hero--soccer,.so-hero--empty{min-height:560px;border:1px solid #33444a;box-shadow:var(--so-shadow)}
.so-hero--soccer:before,.so-hero--empty:before{background:linear-gradient(90deg,rgba(2,10,13,.95) 0%,rgba(3,12,15,.78) 36%,rgba(3,11,14,.18) 72%,rgba(3,11,14,.06) 100%)}
.so-hero--soccer:after,.so-hero--empty:after{content:"";position:absolute;inset:auto 0 0 0;height:6px;background:linear-gradient(90deg,var(--so-green),transparent 42%);z-index:3}
.so-hero__content{left:32px;bottom:34px;width:min(75%,680px)}
.so-hero__kickers{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.so-hero__kickers .so-kicker{margin:0}
.so-hero__title{font-size:clamp(3rem,5.5vw,6rem);line-height:.86;margin-bottom:13px;max-width:12ch;text-transform:uppercase;text-wrap:balance}
.so-hero__title a:hover{color:#fff;text-shadow:0 0 22px rgba(56,245,107,.15)}
.so-hero__excerpt{font-size:.94rem;line-height:1.45;max-width:510px;color:#dae2e0}
.so-support-stack{display:grid;grid-template-rows:repeat(4,1fr);gap:8px;min-height:560px}
.so-support-story{display:grid;grid-template-columns:96px 1fr;gap:10px;min-height:0;padding:0;background:#0c171b;border:1px solid #27383e;overflow:hidden}
.so-support-story__media{min-height:0;height:100%}
.so-support-story__media img{width:100%;height:100%;object-fit:cover}
.so-support-story__body{padding:10px 9px 9px 0;min-width:0;align-self:center}
.so-support-story__cat{display:inline-flex;padding:3px 6px;font-size:.52rem;text-transform:uppercase;letter-spacing:.07em}
.so-support-story h2{font-size:clamp(.93rem,1.2vw,1.18rem);line-height:1.03;margin:7px 0 6px;letter-spacing:-.02em}
.so-support-story h2 a:hover{color:var(--so-green)}
.so-support-story__time{font-size:.62rem;color:#79898e}

/* Real WordPress match data, styled like a broadcast panel. */
.so-score-rail{display:grid;grid-template-rows:auto 1fr;gap:10px;min-width:0}
.so-score-panel{background:#091519;border:1px solid #2b3b40;min-width:0;overflow:hidden}
.so-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-bottom:1px solid #24343a}
.so-panel-head h2{display:flex;align-items:center;gap:8px;font-family:inherit;font-size:.76rem;letter-spacing:.055em;text-transform:uppercase;margin:0;font-weight:950}
.so-panel-head a{font-size:.62rem;color:#aab8bb;font-weight:800}
.so-panel-head a:hover{color:var(--so-green)}
.so-live-dot{width:8px;height:8px;border-radius:50%;background:var(--so-green);box-shadow:0 0 0 4px rgba(56,245,107,.09),0 0 14px rgba(56,245,107,.6);animation:so-live-pulse 1.8s infinite}
@keyframes so-live-pulse{50%{opacity:.48}}
.so-score-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #24343a;color:#859297;font-size:.64rem;text-align:center}
.so-score-tabs span{padding:9px 5px;border-bottom:2px solid transparent}
.so-score-tabs .is-active{color:#fff;border-color:var(--so-green);font-weight:900}
.so-match-list{padding:5px 10px 9px}
.so-match-row{display:grid;grid-template-columns:minmax(0,1fr) 34px 38px;gap:6px;align-items:center;padding:9px 2px;border-bottom:1px solid #1b2b30;font-size:.68rem}
.so-match-row:last-child{border-bottom:0}
.so-match-row:hover{color:#fff;background:rgba(56,245,107,.035)}
.so-match-teams,.so-match-score{display:grid;gap:5px;min-width:0}
.so-match-teams span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.so-match-score{text-align:center;font-variant-numeric:tabular-nums}
.so-match-score strong{font-size:.76rem}
.so-match-state{justify-self:end;display:inline-flex;align-items:center;justify-content:center;min-width:31px;padding:3px 4px;border-radius:2px;background:#27343a;color:#d9e0df;font-size:.55rem;font-weight:950}
.so-match-row--live .so-match-state,.so-match-row--halftime .so-match-state{background:var(--so-green);color:#04110a}
.so-match-empty{padding:20px 14px;color:#7f9095;font-size:.72rem;line-height:1.45}
.so-standings-wrap{overflow:auto}
.so-standings{width:100%;border-collapse:collapse;font-size:.66rem;font-variant-numeric:tabular-nums}
.so-standings th{padding:9px 8px;background:#0d1a1e;color:#77878c;text-align:right;text-transform:uppercase;font-size:.52rem;letter-spacing:.06em}
.so-standings th:nth-child(2){text-align:left}
.so-standings td{padding:9px 8px;border-top:1px solid #1c2b30;text-align:right}
.so-standings td:nth-child(1){color:#738287;width:26px}
.so-standings td:nth-child(2){text-align:left;min-width:105px}
.so-standings td:last-child{color:#fff}

/* Editorial strip */
.so-feature-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(260px,1.15fr);gap:10px;margin-top:12px;align-items:stretch}
.so-feature-tile{background:#0b161a;border:1px solid #25363b;min-width:0;overflow:hidden}
.so-feature-tile__media{display:block;aspect-ratio:16/9;overflow:hidden}
.so-feature-tile__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.so-feature-tile:hover .so-feature-tile__media img{transform:scale(1.025)}
.so-feature-tile__body{padding:12px}
.so-feature-tile__body .so-card__cat{display:inline-flex;padding:3px 6px;font-size:.5rem}
.so-feature-tile__body h2{font-size:1.2rem;line-height:1.02;margin:8px 0 7px}
.so-feature-tile__body p{font-size:.72rem;line-height:1.45;color:#a3b0b3;margin:0 0 9px}
.so-feature-tile__meta{font-size:.59rem;color:#75858a}
.so-home-newsletter{position:relative;overflow:hidden;padding:22px;background:linear-gradient(145deg,#0b3d21,#0b2518);border:1px solid #246e3a;display:flex;flex-direction:column;justify-content:center;isolation:isolate}
.so-home-newsletter:before{content:"";position:absolute;width:240px;height:360px;right:-92px;top:-90px;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(20deg);z-index:-1}
.so-home-newsletter:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.6%,rgba(255,255,255,.055) 50%,transparent 50.4%);z-index:-1}
.so-home-newsletter__brand{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#c8ffd6}
.so-home-newsletter h2{font-size:clamp(2rem,2.3vw,2.9rem);line-height:.89;text-transform:uppercase;margin:13px 0 11px;max-width:10ch}
.so-home-newsletter p{font-size:.76rem;color:#c7d9cc;line-height:1.45}
.so-home-newsletter form{margin-top:8px}
.so-home-newsletter input[type=email]{background:#f4f7f5;color:#07100b;border:0;border-radius:3px;padding:12px;width:100%;margin-bottom:7px}
.so-home-newsletter button,.so-home-newsletter input[type=submit]{width:100%;border:0;background:var(--so-green);color:#04110a;border-radius:3px;padding:12px;font-weight:950}

.so-global-banner{margin:12px 0 30px;min-height:120px;padding:23px 26px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);gap:30px;align-items:center;background:linear-gradient(90deg,#0b2518 0,#0a1819 58%,#071014 100%);border:1px solid #28413a;position:relative;overflow:hidden}
.so-global-banner:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 55px,rgba(56,245,107,.025) 56px 57px);pointer-events:none}
.so-global-banner>div{position:relative;z-index:1}
.so-global-banner>div:first-child>span{font-size:.67rem;color:var(--so-green);font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.so-global-banner h2{font-size:clamp(2.15rem,3.6vw,4.15rem);text-transform:uppercase;line-height:.86;margin:6px 0 0}
.so-global-banner__copy p{color:#c2ceca;font-size:.77rem;line-height:1.5}
.so-home-latest{margin-top:0}

/* Match archive/single + contributors. */
.so-match-centre-page{max-width:980px;margin:0 auto;padding:24px 0}.so-match-centre-page .so-match-list{border:1px solid #26383d;background:#091519;padding:8px 16px}.so-match-centre-page .so-match-row{font-size:.85rem;padding:13px 4px;grid-template-columns:minmax(0,1fr) 50px 58px}.so-match-centre-page .so-match-score strong{font-size:.95rem}.so-match-centre-page .so-match-state{font-size:.63rem;min-width:46px}
.so-contributor-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.so-contributor-card{background:#0d191d;border:1px solid #293b40;padding:24px}.so-contributor-card h2{font-size:2rem;margin:7px 0 9px}.so-contributor-card p{color:#aeb9bb}.so-contributor-card .so-kicker{display:inline-flex;padding:4px 7px;font-size:.55rem;margin:0;color:#04110a}.so-contributor-card__media{margin:-6px 0 18px}.so-contributor-card__photo{display:block;width:112px;height:112px;object-fit:cover;border-radius:50%;border:2px solid var(--so-green)}

/* Footer */
.so-site-footer{background:#040b0e;border-top:1px solid #23343a}
.so-footer-newsletter-zone{background:linear-gradient(120deg,#0a2517,#071417);border:1px solid #254636}
.so-footer-newsletter-kicker,.so-footer-brand span{color:var(--so-green)}
.so-footer-topics a:hover,.so-footer-links a:hover,.so-footer-social a:hover{color:var(--so-green)}
.so-footer-bottom{border-top:1px solid #1f3035;background:#03090b}
.so-footer-bottom__tagline{color:var(--so-green)}

/* Light mode retains authority without becoming generic. */
html[data-so-theme="light"] body{background:#f2f5f3;color:#111b18}
html[data-so-theme="light"] body:before{opacity:.28;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.025) 1px,transparent 1px)}
html[data-so-theme="light"] .so-site-header{background:#fff;color:#0d1714}
html[data-so-theme="light"] .so-masthead,html[data-so-theme="light"] .so-navbar{border-color:#d9e0dc}
html[data-so-theme="light"] .so-navbar{background:#f8faf9}
html[data-so-theme="light"] .so-nav a,html[data-so-theme="light"] .so-header-signin{color:#15201c}
html[data-so-theme="light"] .so-brand--wordmark{color:#0b1511;text-shadow:none}
html[data-so-theme="light"] .so-brand--wordmark:hover{color:#0b1511}
html[data-so-theme="light"] .so-masthead__motto,html[data-so-theme="light"] .so-masthead__promise{color:#65736e}
html[data-so-theme="light"] .so-masthead__motto strong,html[data-so-theme="light"] .so-masthead__promise strong{color:#121b18}
html[data-so-theme="light"] .so-edition{color:#53615d;border-color:#d9e0dc}
html[data-so-theme="light"] .so-command-grid .so-support-story,html[data-so-theme="light"] .so-score-panel,html[data-so-theme="light"] .so-feature-tile,html[data-so-theme="light"] .so-contributor-card{background:#fff;color:#111b18;border-color:#d5dfda}
html[data-so-theme="light"] .so-support-story__time,html[data-so-theme="light"] .so-feature-tile__body p,html[data-so-theme="light"] .so-feature-tile__meta{color:#66736f}
html[data-so-theme="light"] .so-score-tabs,html[data-so-theme="light"] .so-panel-head,html[data-so-theme="light"] .so-match-row,html[data-so-theme="light"] .so-standings td{border-color:#dfe6e2}
html[data-so-theme="light"] .so-standings th{background:#edf2ef;color:#5c6864}
html[data-so-theme="light"] .so-match-row:hover{background:#effbf2;color:#111b18}
html[data-so-theme="light"] .so-match-state{background:#dce4e0;color:#1b2823}
html[data-so-theme="light"] .so-global-banner{color:#fff}
html[data-so-theme="light"] .so-site-footer{color:#f5f8f7}

@media(max-width:1180px){
  .so-masthead{grid-template-columns:1fr auto;min-height:86px}.so-masthead__motto{display:none}.so-brand-wrap{text-align:left}.so-masthead__promise{display:none}.so-command-grid{grid-template-columns:minmax(0,1fr) 310px}.so-command-editorial{grid-template-columns:minmax(0,1fr) 230px}.so-feature-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.so-home-newsletter{min-height:280px}.so-menu-toggle{display:grid}.so-nav ul{gap:15px}.so-nav li:nth-child(n+7){display:none}
}
@media(max-width:900px){
  .so-command-grid{grid-template-columns:1fr}.so-score-rail{grid-template-columns:1fr 1fr;grid-template-rows:auto}.so-command-editorial{grid-template-columns:minmax(0,1.6fr) minmax(220px,.75fr)}.so-hero--soccer,.so-hero--empty,.so-support-stack{min-height:500px}.so-global-banner{grid-template-columns:1fr}.so-feature-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.so-home-newsletter{grid-column:span 2}.so-edition{display:none}
}
@media(max-width:720px){
  .so-container{width:min(calc(100% - 24px),var(--so-max))}.so-masthead{grid-template-columns:1fr auto;min-height:68px;gap:8px}.so-brand--wordmark{font-size:clamp(1.55rem,7.7vw,2.3rem)}.so-brand-subline{display:none}.so-header-signin,.so-header-join,.so-theme-toggle{display:none}.so-navbar{display:none}.so-breaking{min-height:34px}.so-breaking__label{padding:0 13px;font-size:.57rem}.so-breaking__ticker{font-size:.65rem;padding-left:12px}.so-command-editorial{grid-template-columns:1fr}.so-hero--soccer,.so-hero--empty{min-height:480px}.so-hero__content{left:22px;bottom:25px;width:82%}.so-hero__title{font-size:clamp(2.65rem,13vw,4.6rem)}.so-support-stack{grid-template-rows:repeat(4,110px);min-height:auto}.so-support-story{grid-template-columns:120px 1fr}.so-score-rail{grid-template-columns:1fr}.so-feature-strip{grid-template-columns:1fr}.so-home-newsletter{grid-column:auto}.so-global-banner{padding:22px 18px}.so-global-banner h2{font-size:2.35rem}.so-contributor-directory{grid-template-columns:1fr}
}

/* Match identity refinements */
.so-match-team{display:grid!important;grid-template-columns:18px minmax(0,1fr);gap:6px;align-items:center;min-width:0}
.so-match-team img{width:16px;height:16px;object-fit:contain}
.so-match-team__fallback{display:grid!important;place-items:center;width:16px;height:16px;border:1px solid #405157;border-radius:50%;font-size:.48rem!important;font-weight:900;color:#9fb0b4;overflow:visible!important}
.so-match-team>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.so-table-team{display:flex;align-items:center;gap:7px}.so-table-team img{width:17px;height:17px;object-fit:contain;flex:0 0 auto}
.so-score-tabs a{padding:9px 5px;border-bottom:2px solid transparent;color:#859297}.so-score-tabs a:hover{color:#fff}.so-score-tabs a.is-active{color:#fff;border-color:var(--so-green);font-weight:900}
.so-match-filter-nav{display:flex;gap:7px;flex-wrap:wrap;margin:-5px 0 14px}.so-match-filter-nav a{padding:8px 13px;border:1px solid #2b3c41;background:#0a161a;border-radius:999px;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.so-match-filter-nav a:hover{border-color:var(--so-green);color:var(--so-green)}

.so-match-page{max-width:1120px;margin:0 auto 55px}.so-match-page__head{text-align:center;padding:18px 0 26px}.so-match-page__context{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;color:#7f9196;font-size:.67rem;text-transform:uppercase;letter-spacing:.06em}.so-match-page__context .so-kicker{margin:0;padding:5px 8px}.so-match-page__head h1{font-size:clamp(2.8rem,6vw,6.5rem);line-height:.88;text-transform:uppercase;margin:16px auto 12px}.so-match-page__dek{max-width:760px;margin:0 auto;color:#aebabc;font-size:1rem}
.so-match-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.6fr) minmax(0,1fr);align-items:center;gap:25px;padding:34px;background:radial-gradient(circle at 50% 50%,rgba(56,245,107,.08),transparent 35%),linear-gradient(135deg,#0a191d,#071115);border:1px solid #2e4543;box-shadow:var(--so-shadow);position:relative;overflow:hidden}.so-match-scoreboard:before{content:"";position:absolute;inset:15px;border:1px solid rgba(255,255,255,.025);pointer-events:none}.so-match-scoreboard--live{border-color:#2f7d47}.so-match-scoreboard__team{text-align:center;display:grid;justify-items:center;gap:8px;position:relative;z-index:1}.so-match-scoreboard__team img,.so-match-scoreboard__crest-fallback{width:82px;height:82px;object-fit:contain}.so-match-scoreboard__crest-fallback{display:grid;place-items:center;border:2px solid #3a5156;border-radius:50%;font-size:2rem;font-weight:950;color:#99aaad}.so-match-scoreboard__team strong{font-family:var(--wp--preset--font-family--soccer-observer-headline,"Arial Narrow",Impact,sans-serif);font-size:clamp(1.6rem,3vw,2.7rem);line-height:.95;text-transform:uppercase}.so-match-scoreboard__team>span:last-child{color:#6f8185;font-size:.6rem;text-transform:uppercase;letter-spacing:.09em}
.so-match-scoreboard__center{text-align:center;position:relative;z-index:1}.so-match-scoreboard__state{display:inline-flex;padding:5px 9px;background:#26363b;border-radius:2px;font-size:.62rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.so-match-scoreboard--live .so-match-scoreboard__state,.so-match-scoreboard--halftime .so-match-scoreboard__state{background:var(--so-green);color:#04110a;box-shadow:0 0 18px rgba(56,245,107,.22)}.so-match-scoreboard__score{display:flex;justify-content:center;align-items:center;gap:13px;margin:11px 0 6px;font-size:clamp(3rem,6vw,6rem);line-height:.8;font-family:var(--wp--preset--font-family--soccer-observer-headline,"Arial Narrow",Impact,sans-serif);font-variant-numeric:tabular-nums}.so-match-scoreboard__score span{color:#526267;font-size:.6em}.so-match-scoreboard__kickoff{font-size:clamp(2.3rem,5vw,4.6rem);font-weight:950;margin:12px 0 7px;font-family:var(--wp--preset--font-family--soccer-observer-headline,"Arial Narrow",Impact,sans-serif)}.so-match-scoreboard__center time{color:#85969a;font-size:.68rem}
.so-match-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #26383d;border-top:0;background:#0b171b}.so-match-facts>div{padding:14px 16px;border-right:1px solid #26383d}.so-match-facts>div:last-child{border-right:0}.so-match-facts span{display:block;color:#708186;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.so-match-facts strong{font-size:.8rem}.so-match-page__content{max-width:780px;margin:34px auto}.so-match-page__links{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:28px}
.so-competition-hero,.so-team-hero{padding:30px 0;border-bottom:1px solid #26383d;margin-bottom:18px}.so-competition-hero h1,.so-team-hero h1{font-size:clamp(3.2rem,6vw,6.2rem);line-height:.88;text-transform:uppercase;margin:10px 0}.so-competition-hero p,.so-team-hero p{max-width:780px;color:#9eabad}.so-competition-dashboard{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:30px}.so-team-hero{display:flex;align-items:center;gap:24px}.so-team-hero>img{width:110px;height:110px;object-fit:contain;flex:0 0 auto}

html[data-so-theme="light"] .so-match-filter-nav a{background:#fff;border-color:#d5dfda;color:#27322f}html[data-so-theme="light"] .so-match-scoreboard{background:radial-gradient(circle at 50% 50%,rgba(21,151,58,.07),transparent 35%),#fff;color:#111b18;border-color:#cddbd3}html[data-so-theme="light"] .so-match-facts{background:#fff;border-color:#d5dfda}html[data-so-theme="light"] .so-match-facts>div{border-color:#d5dfda}html[data-so-theme="light"] .so-match-team__fallback{color:#43534e;border-color:#a6b4af}
@media(max-width:900px){.so-competition-dashboard{grid-template-columns:1fr}.so-match-facts{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.so-match-scoreboard{grid-template-columns:1fr 100px 1fr;gap:8px;padding:25px 12px}.so-match-scoreboard__team img,.so-match-scoreboard__crest-fallback{width:54px;height:54px}.so-match-scoreboard__team strong{font-size:1.35rem}.so-match-scoreboard__score{font-size:3.1rem;gap:7px}.so-match-scoreboard__center time{font-size:.55rem}.so-match-facts{grid-template-columns:1fr}.so-match-facts>div{border-right:0;border-bottom:1px solid #26383d}.so-match-facts>div:last-child{border-bottom:0}.so-team-hero{align-items:flex-start}.so-team-hero>img{width:78px;height:78px}}


/* Soccer Observer 1.0 functional layout modes and optional widget/ad zones. */
body.so-home-editorial .so-command-grid{grid-template-columns:1fr}
body.so-home-editorial .so-score-rail{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;margin-top:2px}
.so-ad-slot--header{width:min(calc(100% - 40px),var(--so-max));margin:10px auto}
.so-ad-slot--home-grid{grid-column:1/-1;margin:4px 0}
.so-home-widget-zone{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 30px}
.so-home-widget-zone>.so-widget{margin:0}
@media(max-width:900px){body.so-home-editorial .so-score-rail{grid-template-columns:1fr}.so-home-widget-zone{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.so-ad-slot--header{width:min(calc(100% - 24px),var(--so-max))}.so-home-widget-zone{grid-template-columns:1fr}}

/* ========================================================================== */
/* Soccer Observer 2.0 — football platform                                   */
/* ========================================================================== */
.so-brand--svg{display:inline-flex;align-items:center;justify-content:center}.so-brand--svg img{width:min(420px,42vw);height:auto;max-height:74px;object-fit:contain}
.so-tournament-bar{background:linear-gradient(90deg,#103c22,#07190f);border-bottom:1px solid #2b7440;color:#eaffef}.so-tournament-bar .so-container{min-height:39px;display:flex;align-items:center;gap:18px;font-size:.68rem;text-transform:uppercase;letter-spacing:.055em}.so-tournament-bar strong{background:var(--so-green);color:#041008;padding:5px 8px}.so-tournament-bar a{color:#d8e8dc}.so-tournament-bar a:hover{color:var(--so-green)}
.so-ticker-state{display:inline-flex;margin-right:7px;padding:2px 5px;border:1px solid #4b5a5e;color:#d6dedb;font-size:.53rem;line-height:1.2;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.so-ticker-state--breaking,.so-ticker-state--live,.so-ticker-state--just-in,.so-ticker-state--done-deal{border-color:var(--so-green);color:var(--so-green)}.so-ticker-state--full-time{border-color:#718087;color:#b9c4c0}

/* Matchday pulse. */
.so-today-strip{margin:18px 0 12px;border:1px solid #293d38;background:linear-gradient(90deg,#071417,#0a1917);box-shadow:var(--so-shadow)}.so-today-strip__head{min-height:42px;display:grid;grid-template-columns:auto auto 1fr;gap:12px;align-items:center;padding:0 14px;border-bottom:1px solid #253a35;font-size:.68rem}.so-today-strip__head .so-kicker{background:var(--so-green);color:#04110a;padding:4px 7px}.so-today-strip__head strong{color:#9eafaa;text-transform:uppercase}.so-today-strip__head>a{justify-self:end;color:#aab8b3;font-weight:800}.so-today-strip__head>a:hover{color:var(--so-green)}.so-today-strip__rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);overflow-x:auto;scroll-snap-type:x proximity}.so-today-match{position:relative;min-width:150px;padding:11px 13px;border-right:1px solid #233832;scroll-snap-align:start}.so-today-match:last-child{border-right:0}.so-today-match small{display:block;color:#6f827d;font-size:.54rem;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}.so-today-match>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;font-size:.72rem;line-height:1.45}.so-today-match>span b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-today-match>span em{font-style:normal;font-weight:950}.so-today-match>strong{display:block;margin-top:5px;color:#8d9d98;font-size:.57rem;text-transform:uppercase}.so-today-match--live,.so-today-match--halftime{background:rgba(56,245,107,.055)}.so-today-match--live>strong,.so-today-match--halftime>strong{color:var(--so-green)}

/* Scorers and homepage intelligence. */
.so-score-panel--scorers{overflow:hidden}.so-scorer-list{display:grid}.so-scorer-row{display:grid;grid-template-columns:24px minmax(0,1fr) 28px;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid #223239}.so-scorer-row:hover{background:#0d1f18}.so-scorer-row__rank{display:grid;place-items:center;width:20px;height:20px;border:1px solid #33464a;border-radius:50%;font-size:.58rem;color:#8fa09d}.so-scorer-row strong{display:block;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-scorer-row small{display:block;color:#72847f;font-size:.56rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-scorer-row>b{text-align:right;color:var(--so-green);font-size:.9rem}.so-home-intelligence-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;margin:12px 0 28px}.so-home-intelligence-card{min-height:230px;padding:24px;border:1px solid #293c3d;background:#0a1519}.so-home-intelligence-card--transfers{background:linear-gradient(135deg,#0b191b,#0b2215)}.so-home-intelligence-card--briefing{background:radial-gradient(circle at 90% 10%,rgba(56,245,107,.1),transparent 30%),#0c1518}.so-home-intelligence-card h2{font-size:clamp(2rem,3vw,3.3rem);line-height:.92;text-transform:uppercase;margin:8px 0 14px}.so-home-intelligence-card h3{font-size:1.55rem;margin:12px 0 7px}.so-home-intelligence-card>p{color:#a7b5b1}.so-transfer-mini-list{display:grid}.so-transfer-mini-list>a{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #263936}.so-transfer-mini-list>a strong{font-size:.82rem}.so-transfer-mini-list>a:hover strong{color:var(--so-green)}

/* Editorial and transfer states. */
.so-state{display:inline-flex;align-items:center;width:max-content;padding:4px 7px;border:1px solid #415158;color:#bfc9c6;font-size:.56rem;font-weight:950;text-transform:uppercase;letter-spacing:.065em;line-height:1}.so-state--done,.so-state--done-deal,.so-state--live{background:var(--so-green);border-color:var(--so-green);color:#041008}.so-state--advanced,.so-state--just-in{border-color:var(--so-green);color:var(--so-green)}.so-state--rumor{border-color:#806f44;color:#e1c579}.so-state--loan,.so-state--free{border-color:#47708b;color:#93c9eb}.so-state--full-time{border-color:#56656b;color:#aeb9b6}.so-state--out,.so-state--suspended{border-color:#8a383e;color:#ef9b9f}.so-state--doubtful{border-color:#8a7141;color:#e5c77d}.so-state--returning,.so-state--available{border-color:#2c7842;color:#73dc92}.so-story-badge--status-just-in,.so-story-badge--status-done-deal,.so-story-badge--status-live,.so-story-badge--status-breaking{background:var(--so-green)!important;color:#041008!important;border-color:var(--so-green)!important}.so-story-badge--status-full-time{background:#293337!important;color:#d9e1de!important}

/* Hub navigation + form. */
.so-hub-nav{position:sticky;top:0;z-index:20;display:flex;gap:4px;overflow-x:auto;margin:0 0 26px;padding:7px;background:rgba(7,15,17,.94);border:1px solid #293b40;backdrop-filter:blur(10px)}.admin-bar .so-hub-nav{top:32px}.so-hub-nav a{flex:0 0 auto;padding:8px 12px;color:#aab7b3;border:1px solid transparent;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.so-hub-nav a:hover{border-color:#355044;color:var(--so-green)}.so-form-guide{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.so-form-guide>span{color:#74847f;font-size:.65rem}.so-form-chip{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:.61rem;font-weight:950}.so-form-chip--w{background:#1c9c47;color:#fff}.so-form-chip--d{background:#606b70;color:#fff}.so-form-chip--l{background:#7f3034;color:#fff}.so-versus-form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.so-versus-form>div{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px;border:1px solid #26383d;background:#0a1519}

/* Profile system. */
.so-profile-page{max-width:1220px;margin:0 auto 60px}.so-profile-hero{min-height:265px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;align-items:center;padding:28px;background:radial-gradient(circle at 18% 50%,rgba(56,245,107,.1),transparent 30%),linear-gradient(120deg,#0c1a1e,#071114);border:1px solid #2a3d40}.so-profile-hero__image{width:190px;height:220px;background:#111f22;border:1px solid #32484a;display:grid;place-items:center;overflow:hidden;font-family:Impact,sans-serif;font-size:5rem;color:#466059}.so-profile-hero__image img{width:100%;height:100%;object-fit:cover}.so-profile-hero h1{font-size:clamp(3.2rem,7vw,7rem);line-height:.82;text-transform:uppercase;margin:10px 0}.so-profile-hero p{color:#9dadaa;margin:0}.so-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:32px;margin-top:28px}.so-profile-sidebar{display:grid;align-content:start;gap:12px}.so-sidebar-card{padding:18px;border:1px solid #293a3f;background:#0b171a}.so-sidebar-card h2{font-size:1.25rem;text-transform:uppercase;margin:0 0 12px}.so-sidebar-card h3{font-size:1.35rem;margin:8px 0}.so-sidebar-card p{color:#9babaa;font-size:.76rem}.so-profile-team-crest{width:76px;height:76px;object-fit:contain;margin:5px 0 12px}.so-mini-record{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.so-mini-record>div{padding:9px;border:1px solid #2a3b40;text-align:center}.so-mini-record strong{display:block;font-size:1.35rem;color:var(--so-green)}.so-mini-record span{font-size:.54rem;color:#768783;text-transform:uppercase}
.so-entity-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0 44px}.so-entity-card{min-width:0;background:#0c181b;border:1px solid #293b3f;overflow:hidden}.so-entity-card>a{display:block;height:100%}.so-entity-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#152125}.so-entity-card>div,.so-entity-card>a>div{padding:15px}.so-entity-card h2,.so-entity-card h3{font-size:1.55rem;line-height:1;margin:7px 0}.so-entity-card p{color:#859590;font-size:.72rem;margin:5px 0}.so-player-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.so-player-mini-grid>a{min-width:0;display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;padding:8px;border:1px solid #283a3e;background:#0a1518}.so-player-mini-grid img{width:48px;height:48px;object-fit:cover;background:#172225}.so-player-mini-grid strong,.so-player-mini-grid small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.so-player-mini-grid strong{font-size:.72rem}.so-player-mini-grid small{color:#71827e;font-size:.58rem}

/* Match dossier. */
.so-match-intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0 12px}.so-match-module{margin:12px 0;padding:20px;border:1px solid #293c3f;background:#0a1519}.so-match-module .so-section-head{margin-bottom:15px}.so-match-module p{color:#a5b3af}.so-lineups{display:grid;grid-template-columns:1fr 1fr;gap:16px}.so-lineups>div{padding:18px;background:#071114;border:1px solid #26383c}.so-lineups h3{font-size:1.45rem;margin:0 0 12px}.so-lineups h3 small{font-family:inherit;color:var(--so-green);font-size:.7rem}.so-lineups ol{margin:0;padding-left:22px}.so-lineups li{padding:5px 0;border-bottom:1px solid #1f3033;font-size:.78rem}.so-match-events{position:relative;list-style:none;padding:0 0 0 24px;margin:0}.so-match-events:before{content:"";position:absolute;left:6px;top:5px;bottom:5px;width:2px;background:#284037}.so-match-events li{position:relative;padding:9px 12px;margin-bottom:6px;background:#081215;border:1px solid #25363b;font-size:.78rem}.so-match-events li:before{content:"";position:absolute;left:-22px;top:15px;width:9px;height:9px;border-radius:50%;background:var(--so-green);box-shadow:0 0 0 3px #0a1519}.so-match-stats{display:grid;gap:6px}.so-match-stat{display:grid;grid-template-columns:1fr minmax(110px,1.5fr) 1fr;align-items:center;gap:12px;padding:9px 12px;border-bottom:1px solid #24363a}.so-match-stat strong:first-child{text-align:right}.so-match-stat span{text-align:center;color:#81928d;font-size:.65rem;text-transform:uppercase}.so-match-stat strong:last-child{text-align:left}.so-fan-rating,.so-fan-poll{margin:24px 0;padding:22px;border:1px solid #315044;background:linear-gradient(135deg,#0c1a1c,#0b2015)}.so-fan-rating h2,.so-fan-poll h3{font-size:2rem;margin:7px 0 15px;text-transform:uppercase}.so-fan-rating__buttons{display:grid;grid-template-columns:repeat(10,1fr);gap:5px}.so-fan-rating__buttons button,.so-fan-poll__options button{border:1px solid #395148;background:#071113;color:#eaf1ee;padding:9px;font-weight:900}.so-fan-rating__buttons button:hover,.so-fan-rating__buttons button.is-selected,.so-fan-poll__options button:hover{border-color:var(--so-green);background:var(--so-green);color:#041008}.so-fan-rating>p{color:#8ea09b}.so-fan-rating>p strong{font-size:1.6rem;color:var(--so-green)}.so-fan-poll__options{display:grid;gap:6px}.so-fan-poll__options button{display:flex;justify-content:space-between;gap:12px}.so-fan-poll__total{color:#84958f;font-size:.68rem;text-transform:uppercase}

/* Transfer Centre. */
.so-transfer-tabs{display:flex;gap:6px;overflow-x:auto;margin:0 0 14px;padding-bottom:5px}.so-transfer-tabs a{flex:0 0 auto;padding:8px 12px;border:1px solid #33454a;background:#0a1518;font-size:.64rem;font-weight:900;text-transform:uppercase}.so-transfer-tabs a:hover{border-color:var(--so-green);color:var(--so-green)}.so-transfer-board{border:1px solid #2a3d40;background:#091417}.so-transfer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:16px 18px;border-bottom:1px solid #26383c}.so-transfer-row:last-child{border-bottom:0}.so-transfer-row h3{font-size:1.35rem;margin:6px 0 3px}.so-transfer-row p{margin:0;color:#81918d;font-size:.72rem}.so-transfer-row__meta{text-align:right}.so-transfer-row__meta strong,.so-transfer-row__meta span{display:block}.so-transfer-row__meta strong{font-size:.8rem}.so-transfer-row__meta span{color:#788985;font-size:.62rem;text-transform:uppercase}.so-transfer-single{max-width:980px;margin:0 auto 60px}.so-transfer-single>header{padding:30px 0 18px}.so-transfer-single h1{font-size:clamp(3rem,7vw,6.2rem);line-height:.85;text-transform:uppercase;margin:10px 0}.so-transfer-route{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;padding:28px;border:1px solid #2d443d;background:radial-gradient(circle at 50% 50%,rgba(56,245,107,.1),transparent 26%),#0a1719;text-align:center}.so-transfer-route>span{font-size:2rem;color:var(--so-green)}.so-transfer-route small{display:block;color:#74857f;font-size:.57rem;letter-spacing:.08em}.so-transfer-route strong{display:block;font-size:clamp(1.6rem,3vw,2.7rem);font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase}.so-source-link{padding:12px 0;border-top:1px solid #2a3a3e;font-size:.72rem}.so-source-link a{color:var(--so-green)}

/* Availability, TV, scorer table, tournament bracket, newsletters. */
.so-availability-table,.so-tv-guide{border:1px solid #293b40;background:#091417}.so-availability-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.8fr);gap:16px;align-items:center;padding:13px 16px;border-bottom:1px solid #26383c}.so-availability-row:last-child{border-bottom:0}.so-availability-row strong{font-size:.78rem}.so-availability-row span,.so-availability-row small{color:#849590;font-size:.67rem}.so-tv-row{display:grid;grid-template-columns:150px minmax(0,1fr) 180px;gap:18px;align-items:center;padding:13px 16px;border-bottom:1px solid #26383c}.so-tv-row:last-child{border-bottom:0}.so-tv-row time{color:var(--so-green);font-size:.67rem;font-weight:900;text-transform:uppercase}.so-tv-row div strong,.so-tv-row div span{display:block}.so-tv-row div strong{font-size:.78rem}.so-tv-row div span{color:#7c8d88;font-size:.62rem}.so-tv-row>b{text-align:right;font-size:.7rem}.so-top-scorers{overflow-x:auto;border:1px solid #293b40}.so-top-scorers table{width:100%;border-collapse:collapse}.so-top-scorers th,.so-top-scorers td{padding:10px 12px;border-bottom:1px solid #27383d;text-align:left;font-size:.7rem}.so-top-scorers th{background:#0d1a1d;color:#748681;text-transform:uppercase;font-size:.57rem;letter-spacing:.06em}.so-top-scorers td strong{color:var(--so-green)}.so-bracket{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px}.so-bracket__round{flex:0 0 min(300px,78vw);padding:14px;border:1px solid #293c3e;background:#091417}.so-bracket__round h3{font-size:1.25rem;text-transform:uppercase;margin:0 0 12px}.so-bracket__game{display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:4px 10px;padding:9px;border:1px solid #24373a;background:#071114;margin-bottom:7px;font-size:.68rem}.so-bracket__game strong{text-align:right;color:var(--so-green)}.so-newsletter-edition{max-width:900px;margin:0 auto 60px}.so-newsletter-edition>header{padding:34px 0 20px;border-bottom:1px solid #2a3b40}.so-newsletter-edition h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.85;text-transform:uppercase;margin:10px 0}.so-newsletter-editions .so-card{padding:18px}

/* Tournament takeover. */
body.so-tournament-mode:before{opacity:.65}.so-tournament-mode .so-site-header{box-shadow:0 8px 28px rgba(21,151,58,.09)}.so-tournament-mode .so-global-banner{border-color:#2e6542}

/* Light presentation for new platform modules. */
html[data-so-theme="light"] .so-today-strip,html[data-so-theme="light"] .so-home-intelligence-card,html[data-so-theme="light"] .so-profile-hero,html[data-so-theme="light"] .so-sidebar-card,html[data-so-theme="light"] .so-match-module,html[data-so-theme="light"] .so-lineups>div,html[data-so-theme="light"] .so-transfer-board,html[data-so-theme="light"] .so-transfer-row,html[data-so-theme="light"] .so-transfer-route,html[data-so-theme="light"] .so-availability-table,html[data-so-theme="light"] .so-tv-guide,html[data-so-theme="light"] .so-top-scorers,html[data-so-theme="light"] .so-bracket__round,html[data-so-theme="light"] .so-entity-card{background:#fff;color:#111b18;border-color:#d5dfda}html[data-so-theme="light"] .so-hub-nav{background:rgba(250,252,251,.94);border-color:#d5dfda}html[data-so-theme="light"] .so-player-mini-grid>a,html[data-so-theme="light"] .so-versus-form>div,html[data-so-theme="light"] .so-match-events li,html[data-so-theme="light"] .so-bracket__game{background:#f8faf9;color:#111b18;border-color:#dce5e0}html[data-so-theme="light"] .so-scorer-row,html[data-so-theme="light"] .so-transfer-row,html[data-so-theme="light"] .so-tv-row,html[data-so-theme="light"] .so-availability-row,html[data-so-theme="light"] .so-top-scorers td{border-color:#dce5e0}

@media(max-width:1100px){.so-entity-directory{grid-template-columns:repeat(3,minmax(0,1fr))}.so-profile-grid{grid-template-columns:minmax(0,1fr) 270px}.so-home-intelligence-grid{grid-template-columns:1fr}.so-player-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.so-profile-hero{grid-template-columns:130px minmax(0,1fr)}.so-profile-hero__image{width:130px;height:160px}.so-profile-grid{grid-template-columns:1fr}.so-match-intel-grid,.so-lineups{grid-template-columns:1fr}.so-entity-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.so-availability-row{grid-template-columns:1fr 1fr}.so-tv-row{grid-template-columns:120px minmax(0,1fr)}.so-tv-row>b{grid-column:2;text-align:left}.so-fan-rating__buttons{grid-template-columns:repeat(5,1fr)}.so-versus-form{grid-template-columns:1fr}.so-brand--svg img{width:min(330px,50vw)}}
@media(max-width:720px){.so-tournament-bar .so-container{width:100%;padding:0 12px;overflow-x:auto}.so-today-strip__head{grid-template-columns:auto 1fr;padding:7px 10px}.so-today-strip__head>a{grid-column:1/-1;justify-self:start}.so-profile-hero{grid-template-columns:90px minmax(0,1fr);gap:15px;padding:18px}.so-profile-hero__image{width:90px;height:110px}.so-profile-hero h1{font-size:2.7rem}.so-entity-directory{grid-template-columns:1fr}.so-player-mini-grid{grid-template-columns:1fr}.so-transfer-row{grid-template-columns:1fr;gap:10px}.so-transfer-row__meta{text-align:left}.so-transfer-route{grid-template-columns:1fr;gap:8px}.so-transfer-route>span{transform:rotate(90deg)}.so-availability-row{grid-template-columns:1fr;gap:5px}.so-tv-row{grid-template-columns:1fr;gap:5px}.so-tv-row>b{grid-column:auto}.so-match-stat{grid-template-columns:1fr auto 1fr;gap:7px}.so-match-facts{grid-template-columns:1fr}.so-fan-rating__buttons{grid-template-columns:repeat(5,1fr)}.so-brand--svg img{width:min(260px,58vw)}.admin-bar .so-hub-nav{top:46px}}
