:root{
  --pitch:#edf0e7;
  --paper:#faf7ec;
  --night:#181a3d;
  --night-2:#2e3157;
  --field:#6f8e79;
  --field-soft:#a7b9a4;
  --coral:#ed745b;
  --sand:#dfcfad;
  --line:rgba(24,26,61,.15);
  --green:#276b50;
  --green-dark:#1d523d;
  --muted:#67697b;
  --shadow:0 20px 50px rgba(24,26,61,.11);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pitch);color:var(--night);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.kickoff-skip{position:absolute;left:-9999px}
.kickoff-skip:focus{left:14px;top:14px;z-index:100;background:#fff;border:2px solid var(--night);padding:10px 14px;border-radius:8px}
.score-hero{width:min(1200px,calc(100% - 36px));margin:30px auto 54px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(430px,1.05fr);gap:44px;align-items:center}
.hero-copy h1{font-size:clamp(43px,6vw,76px);line-height:.99;letter-spacing:-.055em;margin:0 0 24px}
.hero-copy p{font-size:17.5px;color:#4d5066;margin:0 0 16px}
.hero-copy strong{color:var(--night)}
.hero-poster{border-radius:28px;overflow:hidden;border:1px solid var(--line);background:var(--night);box-shadow:var(--shadow);position:relative}
.hero-poster:after{content:"SPORTS • COTES • LIVE";position:absolute;left:18px;bottom:16px;background:rgba(24,26,61,.88);color:#fff;padding:7px 10px;border-radius:7px;font-size:10px;font-weight:850;letter-spacing:.12em}
.hero-poster img{width:100%;aspect-ratio:16/9;object-fit:cover}
.odds-board{width:min(1200px,calc(100% - 36px));margin:0 auto 74px;background:var(--night);color:#fff;border-radius:22px;padding:24px;box-shadow:0 20px 45px rgba(24,26,61,.18)}
.board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}
.board-head h2{font-size:clamp(27px,3vw,39px);line-height:1.08;letter-spacing:-.035em;margin:0}
.board-head p{font-size:12px;color:#cdd0df;margin:0}
.market-stack{display:grid;gap:10px}
.market-row{display:grid;grid-template-columns:42px 70px minmax(145px,.8fr) minmax(220px,1.35fr) 150px;gap:13px;align-items:center;background:#f8f5eb;color:var(--night);border-radius:13px;padding:12px 13px;border:1px solid rgba(255,255,255,.08)}
.market-row:first-child{box-shadow:inset 4px 0 0 var(--coral)}
.slot-no{width:31px;height:31px;border-radius:7px;background:var(--night);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:850}
.team-logo{width:66px;height:66px;border-radius:12px;display:grid;place-items:center;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(24,26,61,.1)}
.team-logo img{width:82%;height:82%;object-fit:contain}
.operator-name{font-size:16px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.form-line{display:flex;align-items:center;gap:7px;margin-top:5px}
.star-pitch{position:relative;color:#d7d1c6;letter-spacing:1px;line-height:1}
.star-pitch b{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#d6a64c;font-weight:inherit}
.form-score{font-size:12px;color:#686b79;font-weight:800}
.offer-cell small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--field);font-weight:900;margin-bottom:3px}
.offer-cell strong{font-size:15px;line-height:1.35}
.bet-link{display:block;text-align:center;text-decoration:none;background:var(--green);color:#fff;padding:13px 10px;border-radius:9px;font-weight:850}
.bet-link:hover{background:var(--green-dark)}
.board-skeleton{height:94px;border-radius:13px;background:linear-gradient(100deg,#2a2d51 38%,#383b63 50%,#2a2d51 62%);background-size:220% 100%;animation:shift 1.2s linear infinite}
@keyframes shift{to{background-position:-220% 0}}
.playbook{width:min(1110px,calc(100% - 36px));margin:0 auto 82px;display:grid;grid-template-columns:220px minmax(0,790px);gap:60px;justify-content:center;align-items:start}
.fixture-nav{position:sticky;top:20px;border-left:3px solid var(--coral);padding-left:15px}
.fixture-nav strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.fixture-nav a{display:block;text-decoration:none;color:#666a78;font-size:13px;line-height:1.35;padding:5px 0}
.fixture-nav a:hover{color:var(--night)}
.article h2,.faq-board h2{font-size:clamp(30px,4vw,44px);line-height:1.08;letter-spacing:-.04em;margin:62px 0 18px}
.article .match-section:first-child h2{margin-top:0}
.article h3{font-size:23px;line-height:1.2;letter-spacing:-.025em;margin:36px 0 13px}
.article p{margin:0 0 18px}
.article ul,.article ol{padding-left:23px;margin:0 0 24px}
.article li{margin:7px 0;padding-left:4px}
.article blockquote{margin:28px 0;padding:17px 20px;border-left:4px solid var(--coral);background:#f3e6dc;border-radius:0 12px 12px 0}
.article blockquote p{margin:0}
.article table{width:100%;border-collapse:collapse;margin:24px 0 30px;background:var(--paper);font-size:14px;border:1px solid var(--line)}
.article th,.article td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid var(--line)}
.article th{background:#dfe6dc;font-weight:850}
.match-visual{margin:34px 0 42px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--paper);box-shadow:0 10px 28px rgba(24,26,61,.05)}
.match-visual img{width:100%;aspect-ratio:16/9;object-fit:cover}
.match-visual figcaption{padding:11px 14px;font-size:12px;color:var(--muted)}
.faq-board{margin-top:68px}
.faq-ticket{border-top:1px solid var(--line)}
.faq-ticket:last-child{border-bottom:1px solid var(--line)}
.faq-ticket summary{list-style:none;cursor:pointer;position:relative;padding:19px 44px 19px 0;font-size:18px;font-weight:820}
.faq-ticket summary::-webkit-details-marker{display:none}
.faq-ticket summary span:before,.faq-ticket summary span:after{content:"";position:absolute;right:7px;top:50%;width:16px;height:2px;background:var(--night);transition:transform .15s ease}
.faq-ticket summary span:after{transform:rotate(90deg)}
.faq-ticket[open] summary span:after{transform:none}
.faq-text{padding:0 0 18px;color:#515468}
.final-whistle{border-top:1px solid var(--line);padding:28px 18px 38px;text-align:center;font-size:13px;color:#676a77}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 18px;margin-top:11px}
.footer-links a{text-decoration:none}
.footer-links a:hover{text-decoration:underline}
.info-page{width:min(850px,calc(100% - 34px));margin:54px auto 80px}
.info-page h1{font-size:clamp(38px,6vw,64px);line-height:1.02;letter-spacing:-.05em;margin:0 0 26px}
.info-page h2{font-size:27px;line-height:1.2;margin:36px 0 12px}
.info-page p,.info-page li{font-size:17px}
.back-route{display:inline-block;margin-bottom:24px;text-decoration:none;font-weight:820}
.back-route:before{content:"← "}
@media(max-width:900px){
.score-hero{grid-template-columns:1fr;gap:26px}.hero-poster{order:-1}
.playbook{grid-template-columns:1fr;max-width:820px}
.fixture-nav{position:relative;top:auto;border-left:0;border-bottom:1px solid var(--line);padding:0 0 15px;display:flex;gap:8px;overflow:auto}
.fixture-nav strong{display:none}.fixture-nav a{white-space:nowrap;border:1px solid var(--line);background:var(--paper);padding:8px 10px;border-radius:999px}
.market-row{grid-template-columns:34px 64px 1fr 138px;grid-template-areas:"rank logo brand cta" "offer offer offer offer"}
.slot-no{grid-area:rank}.team-logo{grid-area:logo;width:60px;height:60px}.team-meta{grid-area:brand}.offer-cell{grid-area:offer;background:#e9eee7;border-radius:9px;padding:10px;text-align:center}.bet-link{grid-area:cta}
}
@media(max-width:620px){
.score-hero,.odds-board,.playbook{width:calc(100% - 22px)}
.hero-copy h1{font-size:42px}.hero-copy p{font-size:16px}.odds-board{padding:15px}
.board-head{display:block}.board-head p{margin-top:7px}
.market-row{grid-template-columns:54px 1fr;grid-template-areas:"logo brand" "offer offer" "cta cta";position:relative}
.slot-no{position:absolute;right:9px;top:9px;width:25px;height:25px;font-size:11px}.team-logo{width:54px;height:54px}
.article table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
