/* Leikurinn.is 1.3 — modern editorial system */
:root {
    --lk3-bg: #f5f6f2;
    --lk3-paper: #ffffff;
    --lk3-ink: #101310;
    --lk3-soft-ink: #303731;
    --lk3-muted: #707871;
    --lk3-line: #dfe3dd;
    --lk3-green: #29db74;
    --lk3-green-dark: #08783d;
    --lk3-green-wash: #e8f9ef;
    --lk3-red: #ed3849;
    --lk3-radius: 18px;
    --lk3-shadow: 0 18px 45px rgba(18, 28, 21, .08);
}

html { background: var(--lk3-bg); }
body { background: var(--lk3-bg); color: var(--lk3-ink); font-family: "Inter", ui-sans-serif, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
.page-shell { width: min(calc(100% - 40px), 1240px); }
main { min-height: 60vh; }
a { transition: color .2s ease, border-color .2s ease, background-color .2s ease, opacity .2s ease, transform .2s ease; }
.image-fallback, .hero-image-fallback { background: linear-gradient(145deg, #153c2a, #0f1712); color: rgba(255,255,255,.3); }

/* Header */
.site-header { position: relative; z-index: 50; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--lk3-line); }
.site-header-main { height: 70px; }
.site-header-row { display: flex; align-items: center; height: 70px; gap: 32px; }
.site-brand { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; color: var(--lk3-ink); }
.site-brand img { width: 34px; height: 34px; }
.site-brand > span { font-size: 1.38rem; font-weight: 850; letter-spacing: -.055em; line-height: 1; }
.site-brand em { color: var(--lk3-green-dark); font-style: normal; }
.desktop-nav { display: flex; align-items: stretch; justify-content: center; flex: 1; height: 100%; gap: 2px; }
.desktop-nav a { display: inline-flex; align-items: center; position: relative; padding: 0 12px; color: #414941; font-size: .78rem; font-weight: 690; white-space: nowrap; }
.desktop-nav a::after { content: ""; position: absolute; inset: auto 12px -1px; height: 3px; background: var(--lk3-green); transform: scaleX(0); transform-origin: left; transition: transform .2s; }
.desktop-nav a:hover, .desktop-nav a.active { color: var(--lk3-ink); }
.desktop-nav a:hover::after, .desktop-nav a.active::after { transform: scaleX(1); }
.site-header-actions { display: flex; align-items: center; gap: 8px; }
.header-search, .mobile-menu-button { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 50%; background: #f0f2ee; color: var(--lk3-ink); cursor: pointer; }
.header-search:hover, .mobile-menu-button:hover { background: #e5e9e3; }
.header-scores { display: inline-flex; align-items: center; gap: 9px; min-height: 40px; border-radius: 999px; background: var(--lk3-ink); padding: 0 16px; color: #fff; font-size: .75rem; font-weight: 750; }
.header-scores:hover { background: #213127; color: #fff; transform: translateY(-1px); }
.header-scores .live-pulse { width: 7px; height: 7px; background: var(--lk3-green); }
.mobile-menu-button { display: none; }
.site-subnav { border-top: 1px solid #f0f1ed; background: #fff; }
.site-subnav > div { display: flex; align-items: center; justify-content: space-between; min-height: 38px; }
.site-date { color: #8b928c; font-size: .65rem; font-weight: 650; }
.site-subnav nav { display: flex; align-items: center; gap: 24px; }
.site-subnav a { color: #707771; font-size: .65rem; font-weight: 670; }
.site-subnav a:hover { color: var(--lk3-green-dark); }
.modern-search { position: absolute; left: 0; right: 0; top: 70px; border: 0; background: #fff; box-shadow: 0 20px 35px rgba(16,19,16,.12); }
.modern-search form { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 14px; min-height: 84px; }
.modern-search form > i { color: var(--lk3-muted); }
.modern-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--lk3-ink); font-size: 1.1rem; }
.modern-search button { border: 0; border-radius: 999px; background: var(--lk3-ink); padding: 10px 17px; color: #fff; font-size: .72rem; font-weight: 750; cursor: pointer; }
.modern-search button:last-child { display: grid; place-items: center; width: 38px; height: 38px; padding: 0; background: #eef0ec; color: var(--lk3-ink); }

/* Breaking and edition line */
.modern-breaking { background: var(--lk3-red); }
.modern-breaking > .page-shell { min-height: 42px; }
.modern-breaking strong { letter-spacing: 0; text-transform: none; }
.modern-breaking strong span { width: 7px; height: 7px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 5px rgba(255,255,255,.18); }
.modern-home { padding-top: 30px; padding-bottom: 20px; }
.home-edition { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 18px; }
.home-edition > div { display: flex; align-items: baseline; gap: 12px; }
.home-edition span { color: var(--lk3-green-dark); font-size: .72rem; font-weight: 800; }
.home-edition strong { color: #919791; font-size: .68rem; font-weight: 600; }
.home-edition p { max-width: 540px; margin: 0; color: var(--lk3-muted); font-size: .78rem; line-height: 1.5; text-align: right; }
.topic-scroll { display: flex; align-items: center; gap: 8px; overflow-x: auto; margin-bottom: 24px; padding-bottom: 3px; scrollbar-width: none; }
.topic-scroll::-webkit-scrollbar { display: none; }
.topic-scroll > span { flex: 0 0 auto; margin-right: 4px; color: var(--lk3-ink); font-size: .68rem; font-weight: 800; }
.topic-scroll a { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; border: 1px solid var(--lk3-line); border-radius: 999px; background: rgba(255,255,255,.65); padding: 7px 11px; color: #4c554e; font-size: .66rem; font-weight: 650; }
.topic-scroll a:hover { border-color: #94d8af; background: #fff; color: var(--lk3-green-dark); }
.topic-scroll img { width: 19px; height: 19px; object-fit: contain; }

/* Homepage hero */
.editorial-hero { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(340px, .78fr); gap: clamp(30px, 4vw, 58px); align-items: center; border-top: 1px solid var(--lk3-ink); padding-top: 14px; }
.editorial-hero-image { position: relative; display: block; overflow: hidden; aspect-ratio: 1.42; border-radius: var(--lk3-radius); background: #dfe5df; }
.editorial-hero-image > img, .editorial-hero-image > .image-fallback { width: 100%; height: 100%; object-fit: cover; transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.editorial-hero-image:hover > img { transform: scale(1.025); }
.hero-breaking { position: absolute; left: 16px; top: 16px; border-radius: 999px; background: var(--lk3-red); padding: 8px 11px; color: #fff; font-size: .65rem; font-weight: 800; }
.story-kicker { color: var(--lk3-green-dark); font-size: .68rem; font-weight: 800; }
.editorial-hero-copy h1 { margin: 12px 0 16px; font-size: clamp(2.55rem, 4.7vw, 5rem); line-height: .96; letter-spacing: -.065em; font-weight: 790; }
.editorial-hero-copy h1 a { color: var(--lk3-ink); }
.editorial-hero-copy h1 a:hover { color: #31513d; }
.editorial-hero-copy > p { margin: 0; color: var(--lk3-muted); font-size: .95rem; line-height: 1.7; }
.story-byline { display: flex; gap: 13px; margin-top: 20px; color: #8b928c; font-size: .65rem; }
.story-byline span { color: var(--lk3-soft-ink); font-weight: 700; }
.read-story { display: inline-flex; align-items: center; gap: 20px; margin-top: 28px; border-bottom: 1px solid var(--lk3-ink); padding-bottom: 5px; color: var(--lk3-ink); font-size: .69rem; font-weight: 780; }
.read-story i { font-size: .62rem; }
.read-story:hover { gap: 25px; color: var(--lk3-green-dark); border-color: var(--lk3-green-dark); }
.top-stories { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 32px; padding-top: 18px; border-top: 1px solid var(--lk3-line); }
.top-stories article { display: grid; grid-template-columns: 120px 1fr; gap: 14px; min-width: 0; }
.top-story-image { display: block; overflow: hidden; aspect-ratio: 1.18; border-radius: 11px; background: #dfe5df; }
.top-story-image img, .top-story-image .image-fallback { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.top-stories article:hover img { transform: scale(1.04); }
.top-stories article > div { min-width: 0; }
.top-stories article span { color: var(--lk3-green-dark); font-size: .58rem; font-weight: 780; }
.top-stories h2 { margin: 5px 0 7px; font-size: .86rem; line-height: 1.28; letter-spacing: -.02em; font-weight: 750; }
.top-stories h2 a { color: var(--lk3-ink); }
.top-stories h2 a:hover { color: var(--lk3-green-dark); }
.top-stories time { color: #969c97; font-size: .57rem; }
.modern-empty { display: flex; align-items: center; justify-content: center; gap: 24px; min-height: 420px; border: 1px solid var(--lk3-line); border-radius: var(--lk3-radius); background: #fff; }
.modern-empty img { width: 64px; }
.modern-empty span { color: var(--lk3-green-dark); font-size: .68rem; font-weight: 800; }
.modern-empty h1 { margin: 6px 0; font-size: clamp(2rem,4vw,3.5rem); letter-spacing: -.05em; }
.modern-empty p { margin: 0; color: var(--lk3-muted); }

/* Scores and ads */
.modern-score-zone { margin: 42px 0 34px; }
.modern-score-zone .score-strip { border: 1px solid var(--lk3-line); border-radius: var(--lk3-radius); background: #fff; box-shadow: none; }
.modern-score-zone .score-strip-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 13px; padding: 16px 18px 8px; }
.modern-score-zone .score-strip-heading-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--lk3-green-wash); color: var(--lk3-green-dark); }
.modern-score-zone .eyebrow { color: #8b928c; font-size: .56rem; letter-spacing: 0; text-transform: none; }
.modern-score-zone h2 { margin: 1px 0 0; font-size: 1rem; letter-spacing: -.025em; }
.modern-score-zone .score-strip-head-actions { display: flex; align-items: center; gap: 18px; color: #8d948e; font-size: .59rem; }
.modern-score-zone .score-strip-head-actions a { color: var(--lk3-ink); font-weight: 740; }
.modern-score-zone .score-scroll { padding: 10px 16px 16px; }
.modern-score-zone .mini-match { border: 1px solid #e5e8e3; border-radius: 13px; background: #f8f9f6; }
.modern-score-zone .mini-match:hover { border-color: #abd9bc; background: #fff; transform: translateY(-2px); }
.modern-score-zone .mini-match.is-live { border-color: #f2a8af; background: #fff7f7; }
.leaderboard-ad, .sidebar-ad, .pressbox-sidebar-ad { display: flex; justify-content: center; }
.leaderboard-ad { margin: 0 auto 52px; }
.leaderboard-ad .ad-frame, .leaderboard-ad .ad-placeholder { max-width: 1018px; }
.sidebar-ad .ad-frame, .sidebar-ad .ad-placeholder, .pressbox-sidebar-ad .ad-frame, .pressbox-sidebar-ad .ad-placeholder { max-width: 310px; }
.midpage-ad { margin-block: 64px; }
.ad-frame, .ad-placeholder { border-radius: 14px; }
.ad-placeholder { border: 1px dashed #cbd2cb; background: #f0f2ee; color: #979e98; }

/* News stream */
.news-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(38px, 5vw, 68px); align-items: start; }
.modern-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 23px; border-top: 1px solid var(--lk3-ink); padding-top: 13px; }
.modern-section-head span { color: var(--lk3-green-dark); font-size: .63rem; font-weight: 750; }
.modern-section-head h2 { margin: 4px 0 0; font-size: clamp(2rem, 3.5vw, 3.25rem); line-height: 1; letter-spacing: -.055em; font-weight: 760; }
.modern-section-head > a { flex: 0 0 auto; color: var(--lk3-ink); font-size: .66rem; font-weight: 720; }
.modern-section-head > a i { margin-left: 8px; font-size: .58rem; }
.modern-section-head > a:hover { color: var(--lk3-green-dark); }
.news-stream { display: grid; }
.news-stream .lk-news-card { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 22px; align-items: center; border: 0; border-bottom: 1px solid var(--lk3-line); border-radius: 0; background: transparent; padding: 17px 0; box-shadow: none; }
.news-stream .lk-news-card:first-child { padding-top: 0; }
.news-stream .lk-news-card-image { aspect-ratio: 1.45; border-radius: 12px; }
.news-stream .lk-news-card-body { padding: 0; }
.news-stream .lk-card-meta { justify-content: flex-start; gap: 12px; color: #969c97; font-size: .59rem; }
.news-stream .lk-card-meta a { color: var(--lk3-green-dark); font-weight: 760; letter-spacing: 0; text-transform: none; }
.news-stream .lk-news-card h2 { margin: 7px 0 7px; font-family: inherit; font-size: clamp(1.03rem, 1.8vw, 1.32rem); line-height: 1.2; letter-spacing: -.032em; font-weight: 750; }
.news-stream .lk-news-card h2 a { color: var(--lk3-ink); }
.news-stream .lk-news-card h2 a:hover { color: var(--lk3-green-dark); }
.news-stream .lk-news-card p { margin: 0; color: var(--lk3-muted); font-size: .75rem; line-height: 1.55; -webkit-line-clamp: 2; }
.news-stream .lk-card-link { display: none; }
.news-stream .lk-card-breaking { left: 9px; top: 9px; border-radius: 999px; padding: 5px 8px; font-size: .5rem; text-transform: none; }
.modern-sidebar { display: grid; gap: 22px; }
.most-read-modern { border-top: 1px solid var(--lk3-ink); }
.most-read-modern header { display: flex; align-items: baseline; justify-content: space-between; padding: 14px 0 9px; }
.most-read-modern header span { color: var(--lk3-green-dark); font-size: .61rem; font-weight: 750; }
.most-read-modern header h2 { margin: 0; font-size: 1.45rem; letter-spacing: -.045em; }
.most-read-modern ol { list-style: none; margin: 0; padding: 0; }
.most-read-modern li { display: grid; grid-template-columns: 34px 1fr; gap: 12px; padding: 14px 0; border-top: 1px solid var(--lk3-line); }
.most-read-modern li > b { color: var(--lk3-green-dark); font-size: .75rem; font-weight: 800; }
.most-read-modern li a { display: block; color: var(--lk3-ink); font-size: .79rem; line-height: 1.35; font-weight: 720; }
.most-read-modern li a:hover { color: var(--lk3-green-dark); }
.most-read-modern li small { display: block; margin-top: 5px; color: #959c96; font-size: .56rem; }
.modern-sidebar .football-table-card, .modern-sidebar .fixture-card { border: 1px solid var(--lk3-line); border-radius: 15px; background: #fff; box-shadow: none; }
.modern-sidebar .sidebar-title { padding: 16px 17px 12px; }
.modern-sidebar .sidebar-title h2 { font-family: inherit; font-size: 1.16rem; letter-spacing: -.035em; text-transform: none; }

/* League and category modules */
.league-directory, .editorial-section { margin-top: 72px; }
.league-directory > div { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.league-directory > div > a { display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 12px; min-height: 70px; border: 1px solid var(--lk3-line); border-radius: 14px; background: rgba(255,255,255,.7); padding: 11px 13px; color: var(--lk3-ink); }
.league-directory > div > a:hover { border-color: #a8d6b8; background: #fff; transform: translateY(-2px); }
.league-directory > div > a > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: #f1f3ef; padding: 6px; }
.league-directory img { width: 100%; height: 100%; object-fit: contain; }
.league-directory strong { font-size: .72rem; line-height: 1.2; }
.league-directory > div > a > i { color: #a4aaa5; font-size: .58rem; }
.editorial-section-grid { display: grid; grid-template-columns: 1.55fr repeat(2, 1fr); gap: 22px; }
.editorial-section-grid article { min-width: 0; }
.editorial-section-grid article:nth-child(4) { display: none; }
.section-story-image { display: block; overflow: hidden; aspect-ratio: 1.42; border-radius: 13px; background: #dfe5df; }
.section-story-image img, .section-story-image .image-fallback { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.editorial-section-grid article:hover img { transform: scale(1.03); }
.editorial-section-grid article > div > span { display: block; margin-top: 12px; color: var(--lk3-green-dark); font-size: .58rem; font-weight: 750; }
.editorial-section-grid h3 { margin: 6px 0 7px; font-size: 1.05rem; line-height: 1.22; letter-spacing: -.03em; }
.editorial-section-grid h3 a { color: var(--lk3-ink); }
.editorial-section-grid h3 a:hover { color: var(--lk3-green-dark); }
.editorial-section-grid p { margin: 8px 0; color: var(--lk3-muted); font-size: .76rem; line-height: 1.55; }
.editorial-section-grid time { color: #969c97; font-size: .56rem; }
.editorial-section-grid .featured h3 { max-width: 650px; font-size: clamp(1.5rem, 2.5vw, 2.35rem); line-height: 1.08; letter-spacing: -.045em; }

/* Inner pages */
.pressbox-page { padding-bottom: 72px; }
.category-header, .pressbox-category-header, .entity-header, .competition-hero, .scores-header, .team-hero { border-radius: var(--lk3-radius); box-shadow: none; }
.category-header, .pressbox-category-header, .entity-header, .competition-hero, .scores-header { border: 1px solid var(--lk3-line); background: #fff; color: var(--lk3-ink); }
.pressbox-category-header { max-width: none; padding: clamp(30px, 5vw, 58px); border-left: 1px solid var(--lk3-line); }
.pressbox-category-kicker .eyebrow, .entity-header .eyebrow, .scores-header .eyebrow, .competition-hero .eyebrow { color: var(--lk3-green-dark); letter-spacing: 0; text-transform: none; }
.pressbox-category-kicker > span:last-child { color: #909791; text-transform: none; }
.pressbox-category-header h1, .category-header h1, .entity-header h1, .scores-header h1, .competition-hero h1, .team-hero h1 { color: var(--lk3-ink); font-family: inherit; font-size: clamp(2.6rem, 6vw, 5.8rem); line-height: .94; letter-spacing: -.065em; text-transform: none; }
.pressbox-category-header p, .category-header p, .entity-header p, .scores-header p, .competition-hero p { color: var(--lk3-muted); }
.pressbox-category-actions a, .entity-actions a { border: 1px solid var(--lk3-line); border-radius: 999px; background: var(--lk3-bg); color: var(--lk3-soft-ink); }
.pressbox-category-actions a:hover, .entity-actions a:hover { border-color: #a5d6b7; color: var(--lk3-green-dark); }
.pressbox-category-layout, .pressbox-article-grid { grid-template-columns: minmax(0,1fr) 320px; gap: 48px; }
.pressbox-section-heading, .content-grid .section-heading, .archive-layout .section-heading { border-bottom: 1px solid var(--lk3-ink); padding-bottom: 11px; }
.pressbox-section-heading h2, .section-heading h2, .content-grid .section-heading h2 { font-family: inherit; letter-spacing: -.045em; text-transform: none; }
.pressbox-category-news .lk-news-card { border: 0; border-radius: 14px; background: #fff; box-shadow: none; }
.pressbox-category-sidebar, .pressbox-article-sidebar { top: 24px; }
.pressbox-most-read, .pressbox-article-sidebar .sidebar-panel, .content-grid > aside .sidebar-panel:not(.football-table-card):not(.fixture-card) { border: 1px solid var(--lk3-line); border-radius: 15px; background: #fff; color: var(--lk3-ink); }
.pressbox-most-read .sidebar-title h2, .pressbox-article-sidebar .sidebar-title h2, .content-grid > aside .sidebar-panel:not(.football-table-card):not(.fixture-card) .sidebar-title h2 { color: var(--lk3-ink); font-family: inherit; font-size: 1.35rem; text-transform: none; }
.pressbox-most-read .sidebar-title span, .pressbox-article-sidebar .sidebar-title span { color: var(--lk3-green-dark); }
.pressbox-most-read .most-read-list li, .pressbox-article-sidebar .most-read-list li { border-color: var(--lk3-line); }
.pressbox-most-read .most-read-list > li > span, .pressbox-article-sidebar .most-read-list > li > span { color: var(--lk3-green-dark); font-family: inherit; font-size: .75rem; }
.pressbox-most-read .most-read-list a, .pressbox-article-sidebar .most-read-list a { color: var(--lk3-ink); }
.pressbox-most-read .most-read-list small, .pressbox-article-sidebar .most-read-list small { color: #969c97; }
.archive-hero { border: 0; background: #fff; color: var(--lk3-ink); }
.archive-shell { padding-block: 55px; }
.archive-shell > span { color: var(--lk3-green-dark); letter-spacing: 0; text-transform: none; }
.archive-shell h1 { color: var(--lk3-ink); font-family: inherit; font-size: clamp(2.8rem,7vw,6rem); letter-spacing: -.065em; text-transform: none; }
.archive-shell p { color: var(--lk3-muted); }
.archive-post-grid { gap: 20px; }
.archive-post-grid .lk-news-card { border: 0; border-radius: 14px; box-shadow: none; }

/* Article */
.pressbox-article-header { border: 0; background: #fff; }
.pressbox-article-heading { padding-top: clamp(40px,7vw,85px) !important; padding-bottom: 40px !important; }
.pressbox-article-header .breadcrumb { color: #9aa09b; }
.pressbox-article-header .breadcrumb a { color: #687169; }
.pressbox-article-header .category-pill { border-radius: 999px; background: var(--lk3-green-wash); color: var(--lk3-green-dark); letter-spacing: 0; text-transform: none; }
.pressbox-article-header h1 { max-width: 1050px; color: var(--lk3-ink); font-family: inherit; font-size: clamp(2.8rem, 7vw, 6.7rem); line-height: .96; letter-spacing: -.07em; text-transform: none; }
.pressbox-article-header .article-intro { max-width: 830px; color: #606961; font-size: clamp(1.05rem,1.7vw,1.25rem); }
.pressbox-article-header .article-meta { color: #8e968f; }
.pressbox-article-header .article-meta a { color: var(--lk3-ink); }
.pressbox-article-image { margin-top: 0; overflow: hidden; border: 0; border-radius: var(--lk3-radius); box-shadow: none; }
.pressbox-article-grid > div:first-child { border: 0; background: transparent; padding: 0; }
.pressbox-share-bar { padding-bottom: 20px; border-bottom: 1px solid var(--lk3-line); }
.pressbox-share-bar a, .pressbox-share-bar button { border-radius: 999px; background: #fff; }
.pressbox-article-body { color: #252a26; font-family: "Source Serif 4", Georgia, serif; font-size: clamp(1.08rem,1.65vw,1.22rem); line-height: 1.85; }
.pressbox-article-body h2, .pressbox-article-body h3 { font-family: "Inter", sans-serif; letter-spacing: -.04em; text-transform: none; }
.pressbox-article-body blockquote { border-radius: 0 14px 14px 0; border-left-color: var(--lk3-green); background: var(--lk3-green-wash); }
.pressbox-related { border-top: 1px solid var(--lk3-line); background: #eef0ec; }

/* Football pages */
.scores-header, .competition-hero, .entity-header { border-left: 1px solid var(--lk3-line); padding: clamp(30px,5vw,54px); }
.score-updated, .date-switcher a, .matches-toolbar button, .pagination a, .pagination span { border-radius: 999px; }
.date-switcher a.current, .date-switcher a.active, .pagination .active { border-color: var(--lk3-ink); background: var(--lk3-ink); color: #fff; }
.matches-board, .entity-panel, .match-panel, .standings-full, .fixture-row, .match-card { border-radius: 14px; box-shadow: none; }
.league-heading { border-left-color: var(--lk3-green); }
.competition-logo, .entity-header .entity-logo { border: 1px solid var(--lk3-line); border-radius: 16px; box-shadow: none; }
.team-hero { background-color: var(--lk3-ink); }
.team-hero-overlay { background: linear-gradient(90deg,rgba(10,15,11,.94),rgba(10,15,11,.68) 60%,rgba(10,15,11,.25)); }
.team-hero h1 { color: #fff; }
.team-hero .eyebrow { color: var(--lk3-green); }
.team-hero p { color: #c6cec8; }
.team-identity > img, .team-identity > span { border-radius: 18px; }
.match-hero { border: 0; border-radius: var(--lk3-radius); background: var(--lk3-ink); }
.score-team img, .score-team > span { border-radius: 16px; }

/* Footer */
.site-footer { margin-top: 84px; border-top: 1px solid var(--lk3-line); background: #fff; }
.footer-top { display: grid; grid-template-columns: 1.8fr repeat(3, .65fr); gap: 50px; padding-block: 52px; }
.footer-identity p { max-width: 330px; margin: 17px 0 0; color: var(--lk3-muted); font-size: .72rem; line-height: 1.65; }
.footer-links { display: grid; align-content: start; gap: 10px; }
.footer-links strong { margin-bottom: 4px; color: var(--lk3-ink); font-size: .68rem; }
.footer-links a { color: #727a73; font-size: .69rem; }
.footer-links a:hover { color: var(--lk3-green-dark); }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; min-height: 55px; border-top: 1px solid var(--lk3-line); color: #929993; font-size: .61rem; }

@media (max-width: 1050px) {
    .desktop-nav { display: none; }
    .site-header-row { justify-content: space-between; }
    .mobile-menu-button { display: grid; }
    .site-subnav nav { overflow-x: auto; }
    .editorial-hero { grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); gap: 30px; }
    .editorial-hero-copy h1 { font-size: clamp(2.4rem,5vw,4rem); }
    .top-stories article { grid-template-columns: 96px 1fr; }
    .news-layout { grid-template-columns: minmax(0,1fr) 290px; gap: 36px; }
    .league-directory > div { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 800px) {
    .page-shell { width: min(calc(100% - 28px), 1240px); }
    .site-subnav { display: none; }
    .mobile-navigation { border-top: 1px solid var(--lk3-line); background: #fff; }
    .mobile-menu-top { display: flex; align-items: center; justify-content: space-between; padding: 16px 0 10px; }
    .mobile-menu-top strong { font-size: .75rem; }
    .mobile-menu-top button { display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #eef0ec; }
    .mobile-navigation nav { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; padding-bottom: 18px; }
    .mobile-navigation nav a { display: flex; align-items: center; gap: 8px; border-radius: 10px; background: #f1f3ef; padding: 12px; color: var(--lk3-ink); font-size: .7rem; font-weight: 700; }
    .mobile-live { background: var(--lk3-ink) !important; color: #fff !important; }
    .modern-search { top: 70px; }
    .home-edition p { display: none; }
    .editorial-hero { grid-template-columns: 1fr; gap: 24px; }
    .editorial-hero-image { aspect-ratio: 16/10; }
    .editorial-hero-copy h1 { margin-top: 9px; font-size: clamp(2.35rem,9vw,4.2rem); }
    .top-stories { grid-template-columns: 1fr; }
    .top-stories article { grid-template-columns: 116px 1fr; }
    .news-layout { grid-template-columns: 1fr; }
    .modern-sidebar { grid-template-columns: repeat(2,1fr); }
    .most-read-modern { grid-column: 1 / -1; }
    .sidebar-ad { align-items: start; }
    .editorial-section-grid { grid-template-columns: 1.4fr 1fr; }
    .editorial-section-grid article:nth-child(3) { display: none; }
    .footer-top { grid-template-columns: 1.4fr repeat(2,1fr); }
    .footer-links:last-child { display: none; }
    .pressbox-category-layout, .pressbox-article-grid { grid-template-columns: 1fr; }
    .pressbox-category-sidebar, .pressbox-article-sidebar { position: static; }
}

@media (max-width: 560px) {
    .site-header-main, .site-header-row { height: 64px; }
    .site-brand > span { font-size: 1.25rem; }
    .header-scores { min-height: 38px; padding-inline: 13px; }
    .header-scores span:last-child { display: none; }
    .modern-search { top: 64px; }
    .modern-search form { grid-template-columns: auto 1fr auto; gap: 10px; }
    .modern-search form button[type="submit"] { display: none; }
    .modern-home { padding-top: 20px; }
    .home-edition { margin-bottom: 13px; }
    .topic-scroll { margin-bottom: 18px; }
    .editorial-hero { padding-top: 10px; }
    .editorial-hero-image { border-radius: 13px; }
    .editorial-hero-copy > p { font-size: .86rem; }
    .read-story { margin-top: 20px; }
    .modern-score-zone { margin-block: 32px 28px; }
    .modern-score-zone .score-strip-head { grid-template-columns: auto 1fr; }
    .modern-score-zone .score-strip-head-actions { display: none; }
    .leaderboard-ad { margin-bottom: 40px; }
    .modern-section-head { align-items: center; }
    .modern-section-head h2 { font-size: 2rem; }
    .modern-section-head span { font-size: .57rem; }
    .modern-section-head > a { font-size: .6rem; }
    .news-stream .lk-news-card { grid-template-columns: 118px 1fr; gap: 13px; padding: 13px 0; }
    .news-stream .lk-news-card-image { aspect-ratio: 1.18; }
    .news-stream .lk-news-card h2 { margin-bottom: 0; font-size: .9rem; }
    .news-stream .lk-news-card p { display: none; }
    .news-stream .lk-card-meta time { display: none; }
    .modern-sidebar { grid-template-columns: 1fr; }
    .most-read-modern { grid-column: auto; }
    .league-directory, .editorial-section { margin-top: 54px; }
    .league-directory > div { grid-template-columns: 1fr; }
    .editorial-section-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
    .editorial-section-grid article:first-child { grid-column: 1 / -1; }
    .editorial-section-grid article:nth-child(3) { display: block; }
    .editorial-section-grid .featured h3 { font-size: 1.55rem; }
    .editorial-section-grid article:not(.featured) h3 { font-size: .85rem; }
    .editorial-section-grid p { display: none; }
    .footer-top { grid-template-columns: 1fr 1fr; gap: 34px 20px; }
    .footer-identity { grid-column: 1 / -1; }
    .footer-bottom span:last-child { display: none; }
    .pressbox-article-header h1 { font-size: clamp(2.5rem,12vw,4.3rem); }
    .pressbox-article-heading { padding-top: 35px !important; }
    .pressbox-category-header, .entity-header, .scores-header, .competition-hero { padding: 25px; }
}
