/* Kisure Sports Frontend v854 — foundation bundle
 * FE854 cascade-preserving canonical consolidation.
 * Original source order is retained exactly; no selector/rule removal.
 */

/* ===== SOURCE: /th/css/bootstrap.min.css ===== */
/*!
 * Bootstrap v5.0.0 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */:root{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-primary: #1B7DFF;--bs-secondary: #747d88;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #F4F6F8;--bs-dark: #111111;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: rgba(255, 255, 255, 0.15)}*,*::before,*::after{box-sizing:border-box}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:"Open Sans",sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#747d88;background-color:#fff;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-family:"Raleway",sans-serif;font-weight:600;line-height:1.2;color:#111}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media(min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + 0.6vw)}@media(min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + 0.3vw)}@media(min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-bs-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:#1b7dff;text-decoration:none}a:hover{color:#1664cc}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr /* rtl:ignore */;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:0.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:0.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:0.875em;color:#fff;background-color:#212529;border-radius:10px}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + 0.3vw);line-height:inherit}@media(min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:800;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:800;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:800;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:800;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:800;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:800;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:10px;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:0.875em;color:#6c757d}.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{width:100%;padding-right:var(--bs-gutter-x, 0.75rem);padding-left:var(--bs-gutter-x, 0.75rem);margin-right:auto;margin-left:auto}@media(min-width: 576px){.container-sm,.container{max-width:540px}}@media(min-width: 768px){.container-md,.container-sm,.container{max-width:720px}}@media(min-width: 992px){.container-lg,.container-md,.container-sm,.container{max-width:960px}}@media(min-width: 1200px){.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1140px}}@media(min-width: 1400px){.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1320px}}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(var(--bs-gutter-y)*-1);margin-right:calc(var(--bs-gutter-x)/-2);margin-left:calc(var(--bs-gutter-x)/-2)}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)/2);padding-left:calc(var(--bs-gutter-x)/2);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.3333333333%}.col-2{flex:0 0 auto;width:16.6666666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.3333333333%}.col-5{flex:0 0 auto;width:41.6666666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.3333333333%}.col-8{flex:0 0 auto;width:66.6666666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.3333333333%}.col-11{flex:0 0 auto;width:91.6666666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.3333333333%}.offset-2{margin-left:16.6666666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.3333333333%}.offset-5{margin-left:41.6666666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.3333333333%}.offset-8{margin-left:66.6666666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.3333333333%}.offset-11{margin-left:91.6666666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: 0.25rem}.g-1,.gy-1{--bs-gutter-y: 0.25rem}.g-2,.gx-2{--bs-gutter-x: 0.5rem}.g-2,.gy-2{--bs-gutter-y: 0.5rem}.g-3,.gx-3{--bs-gutter-x: 1rem}.g-3,.gy-3{--bs-gutter-y: 1rem}.g-4,.gx-4{--bs-gutter-x: 1.5rem}.g-4,.gy-4{--bs-gutter-y: 1.5rem}.g-5,.gx-5{--bs-gutter-x: 3rem}.g-5,.gy-5{--bs-gutter-y: 3rem}@media(min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.3333333333%}.col-sm-2{flex:0 0 auto;width:16.6666666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.3333333333%}.col-sm-5{flex:0 0 auto;width:41.6666666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.3333333333%}.col-sm-8{flex:0 0 auto;width:66.6666666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.3333333333%}.col-sm-11{flex:0 0 auto;width:91.6666666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.3333333333%}.offset-sm-2{margin-left:16.6666666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.3333333333%}.offset-sm-5{margin-left:41.6666666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.3333333333%}.offset-sm-8{margin-left:66.6666666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.3333333333%}.offset-sm-11{margin-left:91.6666666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: 0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: 0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: 0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: 0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 3rem}}@media(min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.3333333333%}.col-md-2{flex:0 0 auto;width:16.6666666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.3333333333%}.col-md-5{flex:0 0 auto;width:41.6666666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.3333333333%}.col-md-8{flex:0 0 auto;width:66.6666666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.3333333333%}.col-md-11{flex:0 0 auto;width:91.6666666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.3333333333%}.offset-md-2{margin-left:16.6666666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.3333333333%}.offset-md-5{margin-left:41.6666666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.3333333333%}.offset-md-8{margin-left:66.6666666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.3333333333%}.offset-md-11{margin-left:91.6666666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: 0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y: 0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x: 0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y: 0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x: 1rem}.g-md-3,.gy-md-3{--bs-gutter-y: 1rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x: 3rem}.g-md-5,.gy-md-5{--bs-gutter-y: 3rem}}@media(min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.3333333333%}.col-lg-2{flex:0 0 auto;width:16.6666666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.3333333333%}.col-lg-5{flex:0 0 auto;width:41.6666666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.3333333333%}.col-lg-8{flex:0 0 auto;width:66.6666666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.3333333333%}.col-lg-11{flex:0 0 auto;width:91.6666666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.3333333333%}.offset-lg-2{margin-left:16.6666666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.3333333333%}.offset-lg-5{margin-left:41.6666666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.3333333333%}.offset-lg-8{margin-left:66.6666666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.3333333333%}.offset-lg-11{margin-left:91.6666666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: 0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: 0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: 0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: 0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 3rem}}@media(min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.3333333333%}.col-xl-2{flex:0 0 auto;width:16.6666666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.3333333333%}.col-xl-5{flex:0 0 auto;width:41.6666666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.3333333333%}.col-xl-8{flex:0 0 auto;width:66.6666666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.3333333333%}.col-xl-11{flex:0 0 auto;width:91.6666666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.3333333333%}.offset-xl-2{margin-left:16.6666666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.3333333333%}.offset-xl-5{margin-left:41.6666666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.3333333333%}.offset-xl-8{margin-left:66.6666666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.3333333333%}.offset-xl-11{margin-left:91.6666666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: 0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: 0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: 0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: 0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 3rem}}@media(min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.3333333333%}.col-xxl-2{flex:0 0 auto;width:16.6666666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.3333333333%}.col-xxl-5{flex:0 0 auto;width:41.6666666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.3333333333%}.col-xxl-8{flex:0 0 auto;width:66.6666666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.3333333333%}.col-xxl-11{flex:0 0 auto;width:91.6666666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.3333333333%}.offset-xxl-2{margin-left:16.6666666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.3333333333%}.offset-xxl-5{margin-left:41.6666666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.3333333333%}.offset-xxl-8{margin-left:66.6666666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.3333333333%}.offset-xxl-11{margin-left:91.6666666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: 0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: 0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: 0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: 0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 3rem}}.table{--bs-table-bg: transparent;--bs-table-striped-color: #747d88;--bs-table-striped-bg: rgba(0, 0, 0, 0.05);--bs-table-active-color: #747d88;--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: #747d88;--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;color:#747d88;vertical-align:top;border-color:#dee2e6}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:last-child)>:last-child>*{border-bottom-color:currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-striped>tbody>tr:nth-of-type(odd){--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg: var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover{--bs-table-accent-bg: var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-bg: #d1e5ff;--bs-table-striped-bg: #c7daf2;--bs-table-striped-color: #000;--bs-table-active-bg: #bccee6;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d4ec;--bs-table-hover-color: #000;color:#000;border-color:#bccee6}.table-secondary{--bs-table-bg: #e3e5e7;--bs-table-striped-bg: #d8dadb;--bs-table-striped-color: #000;--bs-table-active-bg: #ccced0;--bs-table-active-color: #000;--bs-table-hover-bg: #d2d4d6;--bs-table-hover-color: #000;color:#000;border-color:#ccced0}.table-success{--bs-table-bg: #d1e7dd;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:#000;border-color:#bcd0c7}.table-info{--bs-table-bg: #cff4fc;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:#000;border-color:#badce3}.table-warning{--bs-table-bg: #fff3cd;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:#000;border-color:#e6dbb9}.table-danger{--bs-table-bg: #f8d7da;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:#000;border-color:#dfc2c4}.table-light{--bs-table-bg: #F4F6F8;--bs-table-striped-bg: #e8eaec;--bs-table-striped-color: #000;--bs-table-active-bg: #dcdddf;--bs-table-active-color: #000;--bs-table-hover-bg: #e2e4e5;--bs-table-hover-color: #000;color:#000;border-color:#dcdddf}.table-dark{--bs-table-bg: #111111;--bs-table-striped-bg: #1d1d1d;--bs-table-striped-color: #fff;--bs-table-active-bg: #292929;--bs-table-active-color: #fff;--bs-table-hover-bg: #232323;--bs-table-hover-color: #fff;color:#fff;border-color:#292929}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(0.375rem + 1px);padding-bottom:calc(0.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + 1px);padding-bottom:calc(0.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.25rem + 1px);padding-bottom:calc(0.25rem + 1px);font-size:0.875rem}.form-text{margin-top:.25rem;font-size:0.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#747d88;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:10px;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not(:-moz-read-only){cursor:pointer}.form-control[type=file]:not(:disabled):not(:read-only){cursor:pointer}.form-control:focus{color:#747d88;background-color:#fff;border-color:#8dbeff;outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:-moz-read-only{background-color:#e9ecef;opacity:1}.form-control:disabled,.form-control:read-only{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#747d88;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not(:-moz-read-only)::file-selector-button{background-color:#dde0e3}.form-control:hover:not(:disabled):not(:read-only)::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#747d88;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not(:read-only)::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#747d88;background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:1px 0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + 0.5rem + 2px);padding:.25rem .5rem;font-size:0.875rem;border-radius:10px}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:10px}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + 0.75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + 0.5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{max-width:3rem;height:auto;padding:.375rem}.form-control-color:not(:disabled):not(:-moz-read-only){cursor:pointer}.form-control-color:not(:disabled):not(:read-only){cursor:pointer}.form-control-color::-moz-color-swatch{height:1.5em;border-radius:10px}.form-control-color::-webkit-color-swatch{height:1.5em;border-radius:10px}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#747d88;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:10px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-select:focus{border-color:#8dbeff;outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 #747d88}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#8dbeff;outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25)}.form-check-input:checked{background-color:#1b7dff;border-color:#1b7dff}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#1b7dff;border-color:#1b7dff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%238dbeff'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:rgba(0,0,0,0);-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(27,125,255,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(27,125,255,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-0.25rem;background-color:#1b7dff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#bbd8ff}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#1b7dff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#bbd8ff}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-select{height:calc(3.5rem + 2px);padding:1rem .75rem}.form-floating>label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control::-moz-placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus{z-index:3}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:3}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#747d88;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:10px}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:10px}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:10px}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(25,135,84,.9);border-radius:10px}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:#198754;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:#198754}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:#198754}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:#198754}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group .form-control:valid,.input-group .form-control.is-valid,.was-validated .input-group .form-select:valid,.input-group .form-select.is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(220,53,69,.9);border-radius:10px}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#dc3545;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:#dc3545}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:#dc3545}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:#dc3545}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group .form-control:invalid,.input-group .form-control.is-invalid,.was-validated .input-group .form-select:invalid,.input-group .form-select.is-invalid{z-index:3}.btn{display:inline-block;font-weight:400;line-height:1.5;color:#747d88;text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);padding:.375rem .75rem;font-size:1rem;border-radius:10px;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:#747d88}.btn-check:focus+.btn,.btn:focus{outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{pointer-events:none;opacity:.65}.btn-primary{color:#000;background-color:#1b7dff;border-color:#1b7dff}.btn-primary:hover{color:#000;background-color:#3d91ff;border-color:#328aff}.btn-check:focus+.btn-primary,.btn-primary:focus{color:#000;background-color:#3d91ff;border-color:#328aff;box-shadow:0 0 0 .25rem rgba(23,106,217,.5)}.btn-check:checked+.btn-primary,.btn-check:active+.btn-primary,.btn-primary:active,.btn-primary.active,.show>.btn-primary.dropdown-toggle{color:#000;background-color:#4997ff;border-color:#328aff}.btn-check:checked+.btn-primary:focus,.btn-check:active+.btn-primary:focus,.btn-primary:active:focus,.btn-primary.active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(23,106,217,.5)}.btn-primary:disabled,.btn-primary.disabled{color:#000;background-color:#1b7dff;border-color:#1b7dff}.btn-secondary{color:#000;background-color:#747d88;border-color:#747d88}.btn-secondary:hover{color:#000;background-color:#89919a;border-color:#828a94}.btn-check:focus+.btn-secondary,.btn-secondary:focus{color:#000;background-color:#89919a;border-color:#828a94;box-shadow:0 0 0 .25rem rgba(99,106,116,.5)}.btn-check:checked+.btn-secondary,.btn-check:active+.btn-secondary,.btn-secondary:active,.btn-secondary.active,.show>.btn-secondary.dropdown-toggle{color:#000;background-color:#9097a0;border-color:#828a94}.btn-check:checked+.btn-secondary:focus,.btn-check:active+.btn-secondary:focus,.btn-secondary:active:focus,.btn-secondary.active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(99,106,116,.5)}.btn-secondary:disabled,.btn-secondary.disabled{color:#000;background-color:#747d88;border-color:#747d88}.btn-success{color:#fff;background-color:#198754;border-color:#198754}.btn-success:hover{color:#fff;background-color:#157347;border-color:#146c43}.btn-check:focus+.btn-success,.btn-success:focus{color:#fff;background-color:#157347;border-color:#146c43;box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:checked+.btn-success,.btn-check:active+.btn-success,.btn-success:active,.btn-success.active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#146c43;border-color:#13653f}.btn-check:checked+.btn-success:focus,.btn-check:active+.btn-success:focus,.btn-success:active:focus,.btn-success.active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success:disabled,.btn-success.disabled{color:#fff;background-color:#198754;border-color:#198754}.btn-info{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-info:hover{color:#000;background-color:#31d2f2;border-color:#25cff2}.btn-check:focus+.btn-info,.btn-info:focus{color:#000;background-color:#31d2f2;border-color:#25cff2;box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:checked+.btn-info,.btn-check:active+.btn-info,.btn-info:active,.btn-info.active,.show>.btn-info.dropdown-toggle{color:#000;background-color:#3dd5f3;border-color:#25cff2}.btn-check:checked+.btn-info:focus,.btn-check:active+.btn-info:focus,.btn-info:active:focus,.btn-info.active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info:disabled,.btn-info.disabled{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-warning{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#000;background-color:#ffca2c;border-color:#ffc720}.btn-check:focus+.btn-warning,.btn-warning:focus{color:#000;background-color:#ffca2c;border-color:#ffc720;box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:checked+.btn-warning,.btn-check:active+.btn-warning,.btn-warning:active,.btn-warning.active,.show>.btn-warning.dropdown-toggle{color:#000;background-color:#ffcd39;border-color:#ffc720}.btn-check:checked+.btn-warning:focus,.btn-check:active+.btn-warning:focus,.btn-warning:active:focus,.btn-warning.active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning:disabled,.btn-warning.disabled{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#bb2d3b;border-color:#b02a37}.btn-check:focus+.btn-danger,.btn-danger:focus{color:#fff;background-color:#bb2d3b;border-color:#b02a37;box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:checked+.btn-danger,.btn-check:active+.btn-danger,.btn-danger:active,.btn-danger.active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#b02a37;border-color:#a52834}.btn-check:checked+.btn-danger:focus,.btn-check:active+.btn-danger:focus,.btn-danger:active:focus,.btn-danger.active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger:disabled,.btn-danger.disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-light{color:#000;background-color:#f4f6f8;border-color:#f4f6f8}.btn-light:hover{color:#000;background-color:#f6f7f9;border-color:#f5f7f9}.btn-check:focus+.btn-light,.btn-light:focus{color:#000;background-color:#f6f7f9;border-color:#f5f7f9;box-shadow:0 0 0 .25rem rgba(207,209,211,.5)}.btn-check:checked+.btn-light,.btn-check:active+.btn-light,.btn-light:active,.btn-light.active,.show>.btn-light.dropdown-toggle{color:#000;background-color:#f6f8f9;border-color:#f5f7f9}.btn-check:checked+.btn-light:focus,.btn-check:active+.btn-light:focus,.btn-light:active:focus,.btn-light.active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(207,209,211,.5)}.btn-light:disabled,.btn-light.disabled{color:#000;background-color:#f4f6f8;border-color:#f4f6f8}.btn-dark{color:#fff;background-color:#111;border-color:#111}.btn-dark:hover{color:#fff;background-color:#0e0e0e;border-color:#0e0e0e}.btn-check:focus+.btn-dark,.btn-dark:focus{color:#fff;background-color:#0e0e0e;border-color:#0e0e0e;box-shadow:0 0 0 .25rem rgba(53,53,53,.5)}.btn-check:checked+.btn-dark,.btn-check:active+.btn-dark,.btn-dark:active,.btn-dark.active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#0e0e0e;border-color:#0d0d0d}.btn-check:checked+.btn-dark:focus,.btn-check:active+.btn-dark:focus,.btn-dark:active:focus,.btn-dark.active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(53,53,53,.5)}.btn-dark:disabled,.btn-dark.disabled{color:#fff;background-color:#111;border-color:#111}.btn-outline-primary{color:#1b7dff;border-color:#1b7dff}.btn-outline-primary:hover{color:#000;background-color:#1b7dff;border-color:#1b7dff}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(27,125,255,.5)}.btn-check:checked+.btn-outline-primary,.btn-check:active+.btn-outline-primary,.btn-outline-primary:active,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show{color:#000;background-color:#1b7dff;border-color:#1b7dff}.btn-check:checked+.btn-outline-primary:focus,.btn-check:active+.btn-outline-primary:focus,.btn-outline-primary:active:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(27,125,255,.5)}.btn-outline-primary:disabled,.btn-outline-primary.disabled{color:#1b7dff;background-color:rgba(0,0,0,0)}.btn-outline-secondary{color:#747d88;border-color:#747d88}.btn-outline-secondary:hover{color:#000;background-color:#747d88;border-color:#747d88}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem rgba(116,125,136,.5)}.btn-check:checked+.btn-outline-secondary,.btn-check:active+.btn-outline-secondary,.btn-outline-secondary:active,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show{color:#000;background-color:#747d88;border-color:#747d88}.btn-check:checked+.btn-outline-secondary:focus,.btn-check:active+.btn-outline-secondary:focus,.btn-outline-secondary:active:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(116,125,136,.5)}.btn-outline-secondary:disabled,.btn-outline-secondary.disabled{color:#747d88;background-color:rgba(0,0,0,0)}.btn-outline-success{color:#198754;border-color:#198754}.btn-outline-success:hover{color:#fff;background-color:#198754;border-color:#198754}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:checked+.btn-outline-success,.btn-check:active+.btn-outline-success,.btn-outline-success:active,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show{color:#fff;background-color:#198754;border-color:#198754}.btn-check:checked+.btn-outline-success:focus,.btn-check:active+.btn-outline-success:focus,.btn-outline-success:active:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success:disabled,.btn-outline-success.disabled{color:#198754;background-color:rgba(0,0,0,0)}.btn-outline-info{color:#0dcaf0;border-color:#0dcaf0}.btn-outline-info:hover{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:checked+.btn-outline-info,.btn-check:active+.btn-outline-info,.btn-outline-info:active,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:checked+.btn-outline-info:focus,.btn-check:active+.btn-outline-info:focus,.btn-outline-info:active:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info:disabled,.btn-outline-info.disabled{color:#0dcaf0;background-color:rgba(0,0,0,0)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:checked+.btn-outline-warning,.btn-check:active+.btn-outline-warning,.btn-outline-warning:active,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:checked+.btn-outline-warning:focus,.btn-check:active+.btn-outline-warning:focus,.btn-outline-warning:active:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning:disabled,.btn-outline-warning.disabled{color:#ffc107;background-color:rgba(0,0,0,0)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:checked+.btn-outline-danger,.btn-check:active+.btn-outline-danger,.btn-outline-danger:active,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:checked+.btn-outline-danger:focus,.btn-check:active+.btn-outline-danger:focus,.btn-outline-danger:active:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger:disabled,.btn-outline-danger.disabled{color:#dc3545;background-color:rgba(0,0,0,0)}.btn-outline-light{color:#f4f6f8;border-color:#f4f6f8}.btn-outline-light:hover{color:#000;background-color:#f4f6f8;border-color:#f4f6f8}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(244,246,248,.5)}.btn-check:checked+.btn-outline-light,.btn-check:active+.btn-outline-light,.btn-outline-light:active,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show{color:#000;background-color:#f4f6f8;border-color:#f4f6f8}.btn-check:checked+.btn-outline-light:focus,.btn-check:active+.btn-outline-light:focus,.btn-outline-light:active:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(244,246,248,.5)}.btn-outline-light:disabled,.btn-outline-light.disabled{color:#f4f6f8;background-color:rgba(0,0,0,0)}.btn-outline-dark{color:#111;border-color:#111}.btn-outline-dark:hover{color:#fff;background-color:#111;border-color:#111}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(17,17,17,.5)}.btn-check:checked+.btn-outline-dark,.btn-check:active+.btn-outline-dark,.btn-outline-dark:active,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show{color:#fff;background-color:#111;border-color:#111}.btn-check:checked+.btn-outline-dark:focus,.btn-check:active+.btn-outline-dark:focus,.btn-outline-dark:active:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(17,17,17,.5)}.btn-outline-dark:disabled,.btn-outline-dark.disabled{color:#111;background-color:rgba(0,0,0,0)}.btn-link{font-weight:400;color:#1b7dff;text-decoration:none}.btn-link:hover{color:#1664cc}.btn-link:disabled,.btn-link.disabled{color:#6c757d}.btn-lg,.btn-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:10px}.btn-sm,.btn-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:10px}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.dropup,.dropend,.dropdown,.dropstart{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.5rem 0;margin:0;font-size:1rem;color:#747d88;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:10px}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:.125rem}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto /* rtl:ignore */;left:0 /* rtl:ignore */}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0 /* rtl:ignore */;left:auto /* rtl:ignore */}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto /* rtl:ignore */;left:0 /* rtl:ignore */}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0 /* rtl:ignore */;left:auto /* rtl:ignore */}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto /* rtl:ignore */;left:0 /* rtl:ignore */}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0 /* rtl:ignore */;left:auto /* rtl:ignore */}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto /* rtl:ignore */;left:0 /* rtl:ignore */}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0 /* rtl:ignore */;left:auto /* rtl:ignore */}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto /* rtl:ignore */;left:0 /* rtl:ignore */}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0 /* rtl:ignore */;left:auto /* rtl:ignore */}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto /* rtl:ignore */;left:0 /* rtl:ignore */}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0 /* rtl:ignore */;left:auto /* rtl:ignore */}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.15)}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:rgba(0,0,0,0);border:0}.dropdown-item:hover,.dropdown-item:focus{color:#1e2125;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#1b7dff}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:0.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#212529}.dropdown-menu-dark{color:#dee2e6;background-color:#343a40;border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:hover,.dropdown-menu-dark .dropdown-item:focus{color:#fff;background-color:rgba(255,255,255,.15)}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{color:#fff;background-color:#1b7dff}.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}.dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item-text{color:#dee2e6}.dropdown-menu-dark .dropdown-header{color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem;color:#1b7dff;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:#1664cc}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background:none;border:1px solid rgba(0,0,0,0);border-top-left-radius:10px;border-top-right-radius:10px}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{background:none;border:0;border-radius:10px}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#1b7dff}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-top:.5rem;padding-bottom:.5rem}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;white-space:nowrap}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);border-radius:10px;transition:box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 .25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.55)}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .nav-link.active{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.55);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.55)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.55)}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .nav-link.active{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.55)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:10px}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:9px;border-top-right-radius:9px}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:9px;border-bottom-left-radius:9px}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:1rem 1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-0.25rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1rem}.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:9px 9px 0 0}.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 9px 9px}.card-header-tabs{margin-right:-0.5rem;margin-bottom:-0.5rem;margin-left:-0.5rem;border-bottom:0}.card-header-pills{margin-right:-0.5rem;margin-left:-0.5rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:9px}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:9px;border-top-right-radius:9px}.card-img,.card-img-bottom{border-bottom-right-radius:9px;border-bottom-left-radius:9px}.card-group>.card{margin-bottom:.75rem}@media(min-width: 576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#747d88;text-align:left;background-color:#fff;border:0;border-radius:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:#1871e6;background-color:#e8f2ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125)}.accordion-button:not(.collapsed)::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231871e6'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");transform:rotate(-180deg)}.accordion-button::after{flex-shrink:0;width:1.25rem;height:1.25rem;margin-left:auto;content:"";background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23747d88'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-size:1.25rem;transition:transform .2s ease-in-out}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:#8dbeff;outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25)}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:10px;border-top-right-radius:10px}.accordion-item:first-of-type .accordion-button{border-top-left-radius:9px;border-top-right-radius:9px}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:9px;border-bottom-left-radius:9px}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:flex;flex-wrap:wrap;padding:0 0;margin-bottom:1rem;list-style:none}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;color:#1b7dff;background-color:#fff;border:1px solid #dee2e6;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:#1664cc;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;color:#1664cc;background-color:#e9ecef;outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{z-index:3;color:#fff;background-color:#1b7dff;border-color:#1b7dff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;background-color:#fff;border-color:#dee2e6}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-top-left-radius:10px;border-bottom-left-radius:10px}.page-item:last-child .page-link{border-top-right-radius:10px;border-bottom-right-radius:10px}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:10px;border-bottom-left-radius:10px}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:10px;border-bottom-right-radius:10px}.pagination-sm .page-link{padding:.25rem .5rem;font-size:0.875rem}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:10px;border-bottom-left-radius:10px}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:10px;border-bottom-right-radius:10px}.badge{display:inline-block;padding:.35em .65em;font-size:0.75em;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid rgba(0,0,0,0);border-radius:10px}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{color:#104b99;background-color:#d1e5ff;border-color:#bbd8ff}.alert-primary .alert-link{color:#0d3c7a}.alert-secondary{color:#464b52;background-color:#e3e5e7;border-color:#d5d8db}.alert-secondary .alert-link{color:#383c42}.alert-success{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{color:#055160;background-color:#cff4fc;border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{color:#664d03;background-color:#fff3cd;border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{color:#842029;background-color:#f8d7da;border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{color:#626263;background-color:#fdfdfe;border-color:#fcfcfd}.alert-light .alert-link{color:#4e4e4f}.alert-dark{color:#0a0a0a;background-color:#cfcfcf;border-color:#b8b8b8}.alert-dark .alert-link{color:#080808}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:flex;height:1rem;overflow:hidden;font-size:0.75rem;background-color:#e9ecef;border-radius:10px}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#1b7dff;transition:width .6s ease}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image: none; background-color: rgba(255, 255, 255, 0.15);background-size:1rem 1rem}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:10px}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>li::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#747d88;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.5rem 1rem;color:#212529;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#1b7dff;border-color:#1b7dff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:10px;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:10px;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:10px;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:10px;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:10px;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:10px;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:10px;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:10px;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:10px;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:10px;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:10px;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-top-right-radius:10px;border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#104b99;background-color:#d1e5ff}.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus{color:#104b99;background-color:#bccee6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#104b99;border-color:#104b99}.list-group-item-secondary{color:#464b52;background-color:#e3e5e7}.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus{color:#464b52;background-color:#ccced0}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#464b52;border-color:#464b52}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#626263;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#626263;background-color:#e4e4e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#626263;border-color:#626263}.list-group-item-dark{color:#0a0a0a;background-color:#cfcfcf}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#0a0a0a;background-color:#bababa}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#0a0a0a;border-color:#0a0a0a}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:rgba(0,0,0,0) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;border:0;border-radius:10px;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem rgba(27,125,255,.25);opacity:1}.btn-close:disabled,.btn-close.disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{width:350px;max-width:100%;font-size:0.875rem;pointer-events:auto;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.15);border-radius:10px}.toast:not(.showing):not(.show){opacity:0}.toast.hide{display:none}.toast-container{width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{display:flex;align-items:center;padding:.5rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:9px;border-top-right-radius:9px}.toast-header .btn-close{margin-right:-0.375rem;margin-left:.75rem}.toast-body{padding:.75rem;word-wrap:break-word}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1060;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:10px;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:9px;border-top-right-radius:9px}.modal-header .btn-close{padding:.5rem .5rem;margin:-0.5rem -0.5rem -0.5rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:9px;border-bottom-left-radius:9px}.modal-footer>*{margin:.25rem}@media(min-width: 576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-sm{max-width:300px}}@media(min-width: 992px){.modal-lg,.modal-xl{max-width:800px}}@media(min-width: 1200px){.modal-xl{max-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{position:absolute;z-index:1080;display:block;margin:0;font-family:"Open Sans",sans-serif;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[data-popper-placement^=top]{padding:.4rem 0}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:0}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before{top:-1px;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-end,.bs-tooltip-auto[data-popper-placement^=right]{padding:0 .4rem}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[data-popper-placement^=bottom]{padding:.4rem 0}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:0}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before{bottom:-1px;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-start,.bs-tooltip-auto[data-popper-placement^=left]{padding:0 .4rem}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:10px}.popover{position:absolute;top:0;left:0 /* rtl:ignore */;z-index:1070;display:block;max-width:276px;font-family:"Open Sans",sans-serif;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:10px}.popover .popover-arrow{position:absolute;display:block;width:1rem;height:.5rem}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-0.5rem - 1px)}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-0.5rem - 1px);width:.5rem;height:1rem}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-0.5rem - 1px)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-0.5rem;content:"";border-bottom:1px solid #f0f0f0}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-0.5rem - 1px);width:.5rem;height:1rem}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem 1rem;margin-bottom:0;font-size:1rem;color:#111;background-color:#f0f0f0;border-bottom:1px solid #d8d8d8;border-top-left-radius:9px;border-top-right-radius:9px}.popover-header:empty{display:none}.popover-body{padding:1rem 1rem;color:#747d88}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media(prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity .15s ease}@media(prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);opacity:.5;transition:opacity .6s ease}@media(prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-0.125em;border:.25em solid currentColor;border-right-color:rgba(0,0,0,0);border-radius:50%;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-0.125em;background-color:currentColor;border-radius:50%;opacity:0;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{animation-duration:1.5s}}.offcanvas{position:fixed;bottom:0;z-index:1050;display:flex;flex-direction:column;max-width:100%;visibility:hidden;background-color:#fff;background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem}.offcanvas-header .btn-close{padding:.5rem .5rem;margin:-0.5rem -0.5rem -0.5rem auto}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:1rem 1rem;overflow-y:auto}.offcanvas-start{top:0;left:0;width:400px;border-right:1px solid rgba(0,0,0,.2);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;width:400px;border-left:1px solid rgba(0,0,0,.2);transform:translateX(100%)}.offcanvas-top{top:0;right:0;left:0;height:30vh;max-height:100%;border-bottom:1px solid rgba(0,0,0,.2);transform:translateY(-100%)}.offcanvas-bottom{right:0;left:0;height:30vh;max-height:100%;border-top:1px solid rgba(0,0,0,.2);transform:translateY(100%)}.offcanvas.show{transform:none}.clearfix::after{display:block;clear:both;content:""}.link-primary{color:#1b7dff}.link-primary:hover,.link-primary:focus{color:#4997ff}.link-secondary{color:#747d88}.link-secondary:hover,.link-secondary:focus{color:#9097a0}.link-success{color:#198754}.link-success:hover,.link-success:focus{color:#146c43}.link-info{color:#0dcaf0}.link-info:hover,.link-info:focus{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:hover,.link-warning:focus{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:hover,.link-danger:focus{color:#b02a37}.link-light{color:#f4f6f8}.link-light:hover,.link-light:focus{color:#f6f8f9}.link-dark{color:#111}.link-dark:hover,.link-dark:focus{color:#0e0e0e}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175) !important}.shadow-none{box-shadow:none !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:1px solid #dee2e6 !important}.border-0{border:0 !important}.border-top{border-top:1px solid #dee2e6 !important}.border-top-0{border-top:0 !important}.border-end{border-right:1px solid #dee2e6 !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:1px solid #dee2e6 !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:1px solid #dee2e6 !important}.border-start-0{border-left:0 !important}.border-primary{border-color:#1b7dff !important}.border-secondary{border-color:#747d88 !important}.border-success{border-color:#198754 !important}.border-info{border-color:#0dcaf0 !important}.border-warning{border-color:#ffc107 !important}.border-danger{border-color:#dc3545 !important}.border-light{border-color:#f4f6f8 !important}.border-dark{border-color:#111 !important}.border-white{border-color:#fff !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.m-n1{margin:-0.25rem !important}.m-n2{margin:-0.5rem !important}.m-n3{margin:-1rem !important}.m-n4{margin:-1.5rem !important}.m-n5{margin:-3rem !important}.mx-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-n1{margin-top:-0.25rem !important}.mt-n2{margin-top:-0.5rem !important}.mt-n3{margin-top:-1rem !important}.mt-n4{margin-top:-1.5rem !important}.mt-n5{margin-top:-3rem !important}.me-n1{margin-right:-0.25rem !important}.me-n2{margin-right:-0.5rem !important}.me-n3{margin-right:-1rem !important}.me-n4{margin-right:-1.5rem !important}.me-n5{margin-right:-3rem !important}.mb-n1{margin-bottom:-0.25rem !important}.mb-n2{margin-bottom:-0.5rem !important}.mb-n3{margin-bottom:-1rem !important}.mb-n4{margin-bottom:-1.5rem !important}.mb-n5{margin-bottom:-3rem !important}.ms-n1{margin-left:-0.25rem !important}.ms-n2{margin-left:-0.5rem !important}.ms-n3{margin-left:-1rem !important}.ms-n4{margin-left:-1.5rem !important}.ms-n5{margin-left:-3rem !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.375rem + 1.5vw) !important}.fs-2{font-size:calc(1.325rem + 0.9vw) !important}.fs-3{font-size:calc(1.3rem + 0.6vw) !important}.fs-4{font-size:calc(1.275rem + 0.3vw) !important}.fs-5{font-size:1.25rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-light{font-weight:300 !important}.fw-lighter{font-weight:lighter !important}.fw-normal{font-weight:400 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-primary{color:#1b7dff !important}.text-secondary{color:#747d88 !important}.text-success{color:#198754 !important}.text-info{color:#0dcaf0 !important}.text-warning{color:#ffc107 !important}.text-danger{color:#dc3545 !important}.text-light{color:#f4f6f8 !important}.text-dark{color:#111 !important}.text-white{color:#fff !important}.text-body{color:#747d88 !important}.text-muted{color:#6c757d !important}.text-black-50{color:rgba(0,0,0,.5) !important}.text-white-50{color:rgba(255,255,255,.5) !important}.text-reset{color:inherit !important}.bg-primary{background-color:#1b7dff !important}.bg-secondary{background-color:#747d88 !important}.bg-success{background-color:#198754 !important}.bg-info{background-color:#0dcaf0 !important}.bg-warning{background-color:#ffc107 !important}.bg-danger{background-color:#dc3545 !important}.bg-light{background-color:#f4f6f8 !important}.bg-dark{background-color:#111 !important}.bg-body{background-color:#fff !important}.bg-white{background-color:#fff !important}.bg-transparent{background-color:rgba(0,0,0,0) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{-webkit-user-select:all !important;-moz-user-select:all !important;user-select:all !important}.user-select-auto{-webkit-user-select:auto !important;-moz-user-select:auto !important;user-select:auto !important}.user-select-none{-webkit-user-select:none !important;-moz-user-select:none !important;user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:10px !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:10px !important}.rounded-2{border-radius:10px !important}.rounded-3{border-radius:10px !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:50rem !important}.rounded-top{border-top-left-radius:10px !important;border-top-right-radius:10px !important}.rounded-end{border-top-right-radius:10px !important;border-bottom-right-radius:10px !important}.rounded-bottom{border-bottom-right-radius:10px !important;border-bottom-left-radius:10px !important}.rounded-start{border-bottom-left-radius:10px !important;border-top-left-radius:10px !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media(min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.m-sm-n1{margin:-0.25rem !important}.m-sm-n2{margin:-0.5rem !important}.m-sm-n3{margin:-1rem !important}.m-sm-n4{margin:-1.5rem !important}.m-sm-n5{margin:-3rem !important}.mx-sm-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-sm-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-sm-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-sm-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-sm-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-sm-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-sm-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-sm-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-sm-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-sm-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-sm-n1{margin-top:-0.25rem !important}.mt-sm-n2{margin-top:-0.5rem !important}.mt-sm-n3{margin-top:-1rem !important}.mt-sm-n4{margin-top:-1.5rem !important}.mt-sm-n5{margin-top:-3rem !important}.me-sm-n1{margin-right:-0.25rem !important}.me-sm-n2{margin-right:-0.5rem !important}.me-sm-n3{margin-right:-1rem !important}.me-sm-n4{margin-right:-1.5rem !important}.me-sm-n5{margin-right:-3rem !important}.mb-sm-n1{margin-bottom:-0.25rem !important}.mb-sm-n2{margin-bottom:-0.5rem !important}.mb-sm-n3{margin-bottom:-1rem !important}.mb-sm-n4{margin-bottom:-1.5rem !important}.mb-sm-n5{margin-bottom:-3rem !important}.ms-sm-n1{margin-left:-0.25rem !important}.ms-sm-n2{margin-left:-0.5rem !important}.ms-sm-n3{margin-left:-1rem !important}.ms-sm-n4{margin-left:-1.5rem !important}.ms-sm-n5{margin-left:-3rem !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media(min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.m-md-n1{margin:-0.25rem !important}.m-md-n2{margin:-0.5rem !important}.m-md-n3{margin:-1rem !important}.m-md-n4{margin:-1.5rem !important}.m-md-n5{margin:-3rem !important}.mx-md-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-md-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-md-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-md-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-md-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-md-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-md-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-md-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-md-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-md-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-md-n1{margin-top:-0.25rem !important}.mt-md-n2{margin-top:-0.5rem !important}.mt-md-n3{margin-top:-1rem !important}.mt-md-n4{margin-top:-1.5rem !important}.mt-md-n5{margin-top:-3rem !important}.me-md-n1{margin-right:-0.25rem !important}.me-md-n2{margin-right:-0.5rem !important}.me-md-n3{margin-right:-1rem !important}.me-md-n4{margin-right:-1.5rem !important}.me-md-n5{margin-right:-3rem !important}.mb-md-n1{margin-bottom:-0.25rem !important}.mb-md-n2{margin-bottom:-0.5rem !important}.mb-md-n3{margin-bottom:-1rem !important}.mb-md-n4{margin-bottom:-1.5rem !important}.mb-md-n5{margin-bottom:-3rem !important}.ms-md-n1{margin-left:-0.25rem !important}.ms-md-n2{margin-left:-0.5rem !important}.ms-md-n3{margin-left:-1rem !important}.ms-md-n4{margin-left:-1.5rem !important}.ms-md-n5{margin-left:-3rem !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media(min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.m-lg-n1{margin:-0.25rem !important}.m-lg-n2{margin:-0.5rem !important}.m-lg-n3{margin:-1rem !important}.m-lg-n4{margin:-1.5rem !important}.m-lg-n5{margin:-3rem !important}.mx-lg-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-lg-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-lg-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-lg-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-lg-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-lg-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-lg-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-lg-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-lg-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-lg-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-lg-n1{margin-top:-0.25rem !important}.mt-lg-n2{margin-top:-0.5rem !important}.mt-lg-n3{margin-top:-1rem !important}.mt-lg-n4{margin-top:-1.5rem !important}.mt-lg-n5{margin-top:-3rem !important}.me-lg-n1{margin-right:-0.25rem !important}.me-lg-n2{margin-right:-0.5rem !important}.me-lg-n3{margin-right:-1rem !important}.me-lg-n4{margin-right:-1.5rem !important}.me-lg-n5{margin-right:-3rem !important}.mb-lg-n1{margin-bottom:-0.25rem !important}.mb-lg-n2{margin-bottom:-0.5rem !important}.mb-lg-n3{margin-bottom:-1rem !important}.mb-lg-n4{margin-bottom:-1.5rem !important}.mb-lg-n5{margin-bottom:-3rem !important}.ms-lg-n1{margin-left:-0.25rem !important}.ms-lg-n2{margin-left:-0.5rem !important}.ms-lg-n3{margin-left:-1rem !important}.ms-lg-n4{margin-left:-1.5rem !important}.ms-lg-n5{margin-left:-3rem !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media(min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.m-xl-n1{margin:-0.25rem !important}.m-xl-n2{margin:-0.5rem !important}.m-xl-n3{margin:-1rem !important}.m-xl-n4{margin:-1.5rem !important}.m-xl-n5{margin:-3rem !important}.mx-xl-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-xl-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-xl-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-xl-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-xl-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-xl-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-xl-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-xl-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-xl-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-xl-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-xl-n1{margin-top:-0.25rem !important}.mt-xl-n2{margin-top:-0.5rem !important}.mt-xl-n3{margin-top:-1rem !important}.mt-xl-n4{margin-top:-1.5rem !important}.mt-xl-n5{margin-top:-3rem !important}.me-xl-n1{margin-right:-0.25rem !important}.me-xl-n2{margin-right:-0.5rem !important}.me-xl-n3{margin-right:-1rem !important}.me-xl-n4{margin-right:-1.5rem !important}.me-xl-n5{margin-right:-3rem !important}.mb-xl-n1{margin-bottom:-0.25rem !important}.mb-xl-n2{margin-bottom:-0.5rem !important}.mb-xl-n3{margin-bottom:-1rem !important}.mb-xl-n4{margin-bottom:-1.5rem !important}.mb-xl-n5{margin-bottom:-3rem !important}.ms-xl-n1{margin-left:-0.25rem !important}.ms-xl-n2{margin-left:-0.5rem !important}.ms-xl-n3{margin-left:-1rem !important}.ms-xl-n4{margin-left:-1.5rem !important}.ms-xl-n5{margin-left:-3rem !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media(min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.m-xxl-n1{margin:-0.25rem !important}.m-xxl-n2{margin:-0.5rem !important}.m-xxl-n3{margin:-1rem !important}.m-xxl-n4{margin:-1.5rem !important}.m-xxl-n5{margin:-3rem !important}.mx-xxl-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-xxl-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-xxl-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-xxl-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-xxl-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-xxl-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-xxl-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-xxl-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-xxl-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-xxl-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-xxl-n1{margin-top:-0.25rem !important}.mt-xxl-n2{margin-top:-0.5rem !important}.mt-xxl-n3{margin-top:-1rem !important}.mt-xxl-n4{margin-top:-1.5rem !important}.mt-xxl-n5{margin-top:-3rem !important}.me-xxl-n1{margin-right:-0.25rem !important}.me-xxl-n2{margin-right:-0.5rem !important}.me-xxl-n3{margin-right:-1rem !important}.me-xxl-n4{margin-right:-1.5rem !important}.me-xxl-n5{margin-right:-3rem !important}.mb-xxl-n1{margin-bottom:-0.25rem !important}.mb-xxl-n2{margin-bottom:-0.5rem !important}.mb-xxl-n3{margin-bottom:-1rem !important}.mb-xxl-n4{margin-bottom:-1.5rem !important}.mb-xxl-n5{margin-bottom:-3rem !important}.ms-xxl-n1{margin-left:-0.25rem !important}.ms-xxl-n2{margin-left:-0.5rem !important}.ms-xxl-n3{margin-left:-1rem !important}.ms-xxl-n4{margin-left:-1.5rem !important}.ms-xxl-n5{margin-left:-3rem !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}@media(min-width: 1200px){.fs-1{font-size:2.5rem !important}.fs-2{font-size:2rem !important}.fs-3{font-size:1.75rem !important}.fs-4{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}

/* ===== SOURCE: /th/css/style.css ===== */

/*** Spinner Start ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease-out, visibility 0s linear .5s;
    z-index: 99999;
 }

 #spinner.show {
     transition: opacity .8s ease-out, visibility 0s linear .0s;
     visibility: visible;
     opacity: 1;
 }
/*** Spinner End ***/

.back-to-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    transition: 0.5s;
    z-index: 99;
}

.fw-thin {
    font-weight: 100;
}

.text-uppercase {
    font-size: 14px;
}

/*** Button Start ***/
.btn {
    font-weight: 600;
    transition: .5s;
}

.btn-square {
    width: 32px;
    height: 32px;
}

.btn-sm-square {
    width: 34px;
    height: 34px;
}

.btn-md-square {
    width: 44px;
    height: 44px;
}

.btn-lg-square {
    width: 56px;
    height: 56px;
}

.btn-square,
.btn-sm-square,
.btn-md-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}

.link-hover {
    transition: 0.5s;
}

.link-hover:hover {
    color: var(--bs-primary) !important;
}


.img-zoomin {
    transition: 0.5s;
}

.img-zoomin:hover {
    transform: scale(1.1);
}

/*** Topbar Start ***/
.sticky-top {
    transition: 0.5s;
    background: var(--bs-white);
}

.topbar {
    padding: 10px 0;
}

.topbar .top-info {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
}

.topbar .top-link {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
}

@media (max-width: 1400px) {
    .sticky-top .top-link {
        display: none;
    }
    
}

.topbar .top-link a {
    font-size: medium;
    font-weight: 400;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
}

.topbar .top-link a small:hover {
    color: var(--bs-secondary) !important;
    transition: 0.5s;
}

.topbar .top-link a small:hover i {
    color: var(--bs-primary) !important;
}

#note {
    position: relative;
    animation: noteAnimate 10s infinite;
    animation-timing-function: ease-in-out;
    display: flex;
    align-items: center;
}

@keyframes noteAnimate {
    from {left: -735px;}
    to {left: 735px;}
}

/*** Topbar End ***/

/*** Navbar Start ***/
.navbar .navbar-nav .nav-link {
    padding: 10px 15px;
    font-weight: 400;
    font-family: 'Fredoka', sans-serif;
    font-size: 16px;
    transition: .5s;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active,
.sticky-top.bg-white .navbar .navbar-nav .nav-link:hover,
.sticky-top.bg-white .navbar .navbar-nav .nav-link.active {
    color: var(--bs-primary);
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    vertical-align: middle;
    margin-left: 8px;
}

@media (min-width: 1200px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        visibility: hidden;
        top: 100%;
        font-weight: 400;
        font-family: 'Fredoka', sans-serif;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
        border: 0;
        transition: .5s;
        opacity: 0;
    }
}

.dropdown .dropdown-menu a:hover {
    background: var(--bs-secondary);
    color: var(--bs-primary);
}

.navbar .nav-item:hover .dropdown-menu {
    transform: rotateX(0deg);
    visibility: visible;
    background: var(--bs-light) !important;
    border-radius: 10px !important;
    transition: .5s;
    opacity: 1;
}

@media (min-width: 1200px) {
    .navbar .navbar-collapse .border-top {
        border-top: none !important;
    }
}

#searchModal .modal-content {
    background: rgba(255, 255, 255, .8);
}
/*** Navbar End ***/


/*** Features Start ***/
.features {
    width: 100%;
    background: url(/th/img/features-background.jpg) rgba(26, 125, 255, 0.5);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-blend-mode: multiply;
}
/*** Features End ***/


/*** Top News Start ***/
.news-2 h3 {
    position: relative;
}

.news-2 h3::after {
    content: "";
    line-height: 1.3rem;
    background: var(--bs-secondary);
    position: absolute;
    width: 68%;
    top: 50%;
    transform: translateY(-50%);
    height: 1px;
    right: 0;
    opacity: 0.2;
}
/*** Top News End ***/


/*** Latest News Start ***/
.latest-news .latest-news-carousel.owl-carousel{
    position: relative;
}

.latest-news .latest-news-carousel.owl-carousel .owl-nav .owl-prev {
    position: absolute;
    top: -65px;
    right: 70px;
    font-size: 20px;
    padding: 2px 20px;
    transition: 0.5s;
    margin-right: 10px;
    border: 1px solid var(--bs-primary);
    color: var(--bs-dark);
    border-radius: 20px;
}

.latest-news .latest-news-carousel.owl-carousel .owl-nav .owl-next {
    position: absolute;
    top: -65px;
    right: 0;
    font-size: 20px;
    margin-left: 10px;
    padding: 2px 20px;
    transition: 0.5s;
    border: 1px solid var(--bs-primary);
    color: var(--bs-dark);
    border-radius: 20px;
}

.latest-news .latest-news-carousel.owl-carousel .owl-nav .owl-prev:hover,
.latest-news .latest-news-carousel.owl-carousel .owl-nav .owl-next:hover {
    background: var(--bs-primary);
    color: var(--bs-white);
    border-radius: 10px;
}
/*** Latest News End ***/


/*** Whats New Start ***/
.populer-news .whats-carousel.owl-carousel {
    position: relative;
}

.populer-news .whats-carousel.owl-carousel .owl-nav .owl-prev {
    position: absolute;
    top: -80px;
    right: 70px;
    font-size: 20px;
    padding: 2px 20px;
    transition: 0.5s;
    margin-right: 10px;
    border: 1px solid var(--bs-primary);
    color: var(--bs-dark);
    border-radius: 20px;
}

.populer-news .whats-carousel.owl-carousel .owl-nav .owl-next {
    position: absolute;
    top: -80px;
    right: 0;
    font-size: 20px;
    margin-left: 10px;
    padding: 2px 20px;
    transition: 0.5s;
    border: 1px solid var(--bs-primary);
    color: var(--bs-dark);
    border-radius: 20px;
}

.populer-news .whats-carousel.owl-carousel .owl-nav .owl-prev:hover,
.populer-news .whats-carousel.owl-carousel .owl-nav .owl-next:hover {
    background: var(--bs-primary);
    color: var(--bs-white);
    border-radius: 10px;
}

.populer-news .tab-class .nav-item a.active {
    background: var(--bs-primary) !important;
}

.lifestyle .lifestyle-item {
    position: relative;
    overflow: hidden;
}

.lifestyle .lifestyle-item img {
    transition: 0.5s;
}

.lifestyle .lifestyle-item:hover img {
    transform: scale(1.2);
}

.lifestyle .lifestyle-item .lifestyle-content {
    position: absolute;
    width: 100%; 
    height: 100%; 
    top: 0; 
    left: 0; 
    padding: 20px; 
    display: flex; 
    flex-direction: column; 
    background: rgba(0, 0, 0, 0.3);
    border-radius: 10px;
}
/*** Whats New End ***/


/*** Banner Section start ***/
.banner-2 {
    position: relative;
}

.banner-content-2 {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.7);
    z-index: 2;
}
/*** Banner Section End ***/


/*** Footer Start ***/
.footer button:hover {
    background: var(--bs-white) !important;
    color: var(--bs-primary) !important;
}

.footer .footer-item-1 .line-h {
    line-height: 38px;
}

.footer .footer-item-1 a i {
    transition: 0.5s;
}

.footer .footer-item-1 a:hover i {
    color: var(--bs-primary) !important;
}

.footer .footer-item-3 a {
    line-height: 38px;
}

.footer .footer-item-2 a {
    transition: 0.5s;
}

.footer .footer-item-2 a:hover {
    color: var(--bs-primary) !important;
}

.footer .footer-item-3 a {
    transition: 0.5s;
}

.footer .footer-item-3 a:hover {
    color: var(--bs-primary) !important;
}

.copyright {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}
/*** Footer End ***/

/* ===== SOURCE: /css/kisure-v393-base-bundle.css ===== */
/* Kisure Sports v393 kisure-v393-base-bundle.css. Generated in source order to reduce render-blocking requests. */

/* ===== scroll.css ===== */

.scroll-container {
    position: relative;
    overflow: hidden;
}

.scroll-content {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding-bottom: 0.5rem;
    scrollbar-width: none;
}

.scroll-content::-webkit-scrollbar {
    display: none;
}

.scroll-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #f4f6f8;
    border: none;
    cursor: pointer;
    z-index: 1;
    padding: 0.5rem;
    
}

.scroll-button.left {
    left: 0;
}

.scroll-button.right {
    right: 0;
}

@media (max-width: 576px) {
    .scroll-content {
        max-width: 100vw;
        font-size: 0.75rem;
        justify-content: center;
    }

    .navbar-nav {
        display: inline-flex;
        flex-wrap: nowrap;
    }

    .scroll-button {
        display: block;
        margin-left: 25px;
        margin-right: 25px;
    }
}


/* ===== kisure-redesign.css ===== */
:root {
    --font-display: "Space Grotesk", "Segoe UI", sans-serif;
    --font-body: "Manrope", "Segoe UI", sans-serif;
    --bg: #f5f7fb;
    --bg-elevated: rgba(255, 255, 255, 0.9);
    --bg-soft: rgba(255, 255, 255, 0.72);
    --bg-contrast: #0f172a;
    --surface: #ffffff;
    --surface-strong: #f8fafc;
    --surface-dark: #111827;
    --text: #122033;
    --text-soft: #5b6b82;
    --text-faint: #8a98ad;
    --border: rgba(15, 23, 42, 0.1);
    --border-strong: rgba(15, 23, 42, 0.18);
    --primary: #0ea5a4;
    --primary-strong: #0b7285;
    --accent: #f97316;
    --accent-soft: rgba(249, 115, 22, 0.12);
    --success: #10b981;
    --danger: #ef4444;
    --shadow-sm: 0 18px 40px rgba(15, 23, 42, 0.08);
    --shadow-md: 0 24px 60px rgba(15, 23, 42, 0.14);
    --shadow-lg: 0 35px 90px rgba(15, 23, 42, 0.18);
    --radius-sm: 16px;
    --radius-md: 24px;
    --radius-lg: 34px;
    --hero-gradient: rgba(245, 247, 251, 0.88);
}

html[data-theme="dark"] {
    --bg:#1c1c1c;
    --bg-elevated:#1c1c1c;
    --bg-soft:#1c1c1c;
    --bg-contrast: #eff6ff;
    --surface:#1c1c1c;
    --surface-strong:#242424;
    --surface-dark:#1c1c1c;
    --text: #e5edf8;
    --text-soft: #b3c1d7;
    --text-faint: #7f8da3;
    --border: rgba(148, 163, 184, 0.16);
    --border-strong: rgba(148, 163, 184, 0.26);
    --primary: #4fd1c5;
    --primary-strong: #14b8a6;
    --accent: #fb923c;
    --accent-soft: rgba(251, 146, 60, 0.14);
    --success: #34d399;
    --danger: #f87171;
    --shadow-sm:none;
    --shadow-md:none;
    --shadow-lg:none;
    --hero-gradient: rgba(7, 17, 31, 0.8);
}

html {
    scroll-behavior: smooth;
}

body {
    background: var(--bg);
    color: var(--text);
    font-family: var(--font-body);
    line-height: 1.65;
    min-height: 100vh;
    transition: background-color 0.25s ease, color 0.25s ease;
}

body.site-body {
    background: var(--bg);
    background-image: none;
}

html[data-theme="dark"] body.site-body {
    background: var(--bg);
    background-image: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
.display-font {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-weight: 700;
    letter-spacing: -0.03em;
}

a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

a:hover {
    color: var(--primary);
}

img {
    max-width: 100%;
}

.site-main {
    padding: 2rem 0 4rem;
}

.site-shell {
    width: min(1400px, calc(100% - 2rem));
    margin: 0 auto;
}

.site-shell--wide {
    width: min(1540px, calc(100% - 1.5rem));
}

.site-section {
    margin-bottom: 2rem;
}

.surface-card,
.site-panel {
    background: var(--bg-elevated);
    backdrop-filter: blur(16px);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
}

.site-panel {
    padding: 1.5rem;
}

.site-panel--tight {
    padding: 1.15rem;
}

.site-panel--hero {
    background: var(--hero-gradient);
    border-color: var(--border-strong);
    box-shadow: var(--shadow-md);
}

.site-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: var(--primary-strong);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.26em;
    text-transform: uppercase;
}

.site-kicker::before {
    content: "";
    width: 2.7rem;
    height: 1px;
    background: var(--primary-strong, #087f7c);
}

.section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.3rem;
}

.section-heading h2,
.section-heading h3,
.section-heading h4 {
    margin: 0;
}

.section-heading p {
    color: var(--text-soft);
    margin: 0.35rem 0 0;
}

.section-link {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    color: var(--primary-strong);
    font-size: 0.95rem;
    font-weight: 700;
}

.section-link:hover {
    transform: translateX(3px);
}

.theme-switcher {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

html[data-theme="dark"] .theme-switcher {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.16);
    box-shadow:none;
}

.theme-switcher__button {
    appearance: none;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--text-soft);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.84rem;
    font-weight: 700;
    min-height: 2.2rem;
    padding: 0 0.85rem;
}

.theme-switcher__button.is-active {
    background: var(--surface);
    color: var(--bg-contrast);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
}

html[data-theme="dark"] .theme-switcher__button.is-active {
    background: rgba(255, 255, 255, 0.08);
    box-shadow:none;
}

.theme-menu {
    position: relative;
}

.theme-menu__trigger {
    background: rgba(255, 255, 255, 0.82);
    border-color: rgba(15, 23, 42, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
    justify-content: space-between;
    min-width: 10rem;
}

.theme-menu__trigger span {
    font-size: 0.86rem;
    font-weight: 800;
}

.theme-menu__trigger > .fa-circle-half-stroke {
    color: var(--primary-strong);
}

.theme-menu__trigger .small {
    font-size: 0.7rem;
    opacity: 0.7;
}

html[data-theme="dark"] .theme-menu__trigger {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.18);
    box-shadow:none;
}

.theme-menu__dropdown {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow-md);
    display: grid;
    gap: 0.25rem;
    min-width: 13rem;
    opacity: 0;
    overflow: hidden;
    padding: 0.45rem;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: calc(100% + 0.5rem);
    transform: translateY(0.35rem);
    transition: opacity 0.2s ease, transform 0.2s ease;
    z-index: 40;
}

.theme-menu.is-open .theme-menu__dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.theme-menu__dropdown .theme-switcher__button {
    border-radius: 14px;
    justify-content: flex-start;
    min-height: 2.65rem;
    padding-inline: 0.95rem;
    width: 100%;
}

.theme-menu__dropdown .theme-switcher__button i {
    text-align: center;
    width: 1rem;
}

.site-button,
.btn-site {
    appearance: none;
    align-items: center;
    background: #087f7c;
    border: 1px solid transparent;
    border-radius: 999px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-weight: 800;
    gap: 0.55rem;
    justify-content: center;
    min-height: 3rem;
    padding: 0 1.35rem;
    text-align: center;
    text-decoration: none;
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

.site-button:hover,
.btn-site:hover {
    box-shadow: 0 18px 32px rgba(14, 165, 164, 0.22);
    color: #fff;
    transform: translateY(-1px);
}

.site-button--ghost {
    background: transparent;
    border-color: var(--border-strong);
    color: var(--bg-contrast);
}

.site-button--ghost:hover {
    background: rgba(14, 165, 164, 0.08);
    color: var(--bg-contrast);
}

.site-header {
    padding: 1rem 0 0;
    position: sticky;
    top: 0;
    z-index: 1040;
}

.site-header__inner {
    display: grid;
    gap: 1rem;
}

.site-header__bar {
    align-items: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 1rem 1.25rem;
}

.site-header__group {
    align-items: center;
    display: flex;
    gap: 0.85rem;
}

.site-header__brand {
    align-items: center;
    display: inline-flex;
    flex-shrink: 0;
    gap: 0.85rem;
    min-width: 0;
}

.site-header__brand img {
    background: transparent !important;
    border-radius: 0;
    display: block;
    filter: none !important;
    height: auto;
    max-height: 3.25rem;
    max-width: min(13rem, 34vw);
    mix-blend-mode: normal !important;
    object-fit: contain;
    width: auto;
}

.footer-panel__brand .site-header__brand img {
    max-height: 3.5rem;
    max-width: min(100%, 15rem);
}

html[data-theme="dark"] .site-header__brand img[src$=".svg"],
html[data-theme="dark"] .footer-panel__brand .site-header__brand img[src$=".svg"] {
    filter: brightness(0) invert(1) !important;
}

.brand-mark {
    align-items: center;
    background: #087f7c;
    border-radius: 18px;
    color: #fff;
    display: inline-flex;
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 800;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

.site-header__title {
    display: block;
    line-height: 1.1;
}

.site-header__title strong {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 1.1rem;
}

.site-header__title span {
    color: var(--text-soft);
    font-size: 0.8rem;
}

.site-header__nav {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 0.3rem;
    justify-content: center;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.site-header__nav::-webkit-scrollbar {
    display: none;
}

.site-header__nav a,
.site-header__nav button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: var(--text-soft);
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 700;
    gap: 0.5rem;
    min-height: 2.75rem;
    padding: 0 0.95rem;
    white-space: nowrap;
}

.site-header__nav a:hover,
.site-header__nav button:hover,
.site-header__nav .is-active {
    background: rgba(14, 165, 164, 0.1);
    color: var(--bg-contrast);
}

.header-menu-item {
    position: relative;
    padding-block: 0.25rem 0.45rem;
}

.header-menu-item::after {
    content: "";
    height: 1.25rem;
    left: 0;
    position: absolute;
    right: 0;
    top: calc(100% - 0.35rem);
}

.header-menu-item__dropdown {
    backdrop-filter: blur(18px);
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 20px;
    box-shadow: var(--shadow-md);
    display: grid;
    gap: 0.25rem;
    min-width: 16rem;
    opacity: 0;
    padding: 0.6rem;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: calc(100% - 0.15rem);
    transform: translateY(0.35rem);
    transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
    visibility: hidden;
    z-index: 35;
}

.header-menu-item:hover .header-menu-item__dropdown,
.header-menu-item:focus-within .header-menu-item__dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
}

.header-menu-item__dropdown a {
    border-radius: 14px;
    min-height: 2.5rem;
    width: 100%;
}

.site-icon-button {
    align-items: center;
    background: transparent;
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--bg-contrast);
    cursor: pointer;
    display: inline-flex;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

.site-icon-button--label {
    gap: 0.55rem;
    min-width: 10rem;
    padding: 0 1rem;
    width: auto;
}

.site-icon-button:hover {
    background: rgba(14, 165, 164, 0.09);
    color: var(--primary-strong);
}

.site-header__utility {
    align-items: center;
    display: flex;
    gap: 0.6rem;
    justify-content: flex-end;
}

.header-spotlight {
    align-items: center;
    background: rgba(14, 165, 164, 0.05);
    border: 1px solid var(--border);
    border-radius: 22px;
    display: flex;
    gap: 0.75rem;
    padding: 0.7rem 0.95rem;
}

.header-spotlight__value {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 700;
}

.header-spotlight__label {
    color: var(--text-soft);
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.site-mobile-menu {
    display: none;
    grid-column: 1 / -1;
}

.site-mobile-menu.is-open {
    display: grid;
}

.site-mobile-menu__panel {
    display: grid;
    gap: 0.85rem;
    padding: 0.15rem 1rem 1.1rem;
}

.site-mobile-menu__row {
    align-items: center;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: minmax(0, 1fr) auto;
}

.site-mobile-menu__link,
.site-mobile-menu__child {
    align-items: center;
    border-radius: 18px;
    color: var(--bg-contrast);
    display: flex;
    font-weight: 700;
    justify-content: space-between;
    min-height: 3rem;
    padding: 0.85rem 1rem;
    text-decoration: none;
    transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.site-mobile-menu__link {
    background: rgba(14, 165, 164, 0.08);
    border: 1px solid rgba(14, 165, 164, 0.12);
}

.site-mobile-menu__link--single {
    width: 100%;
}

.site-mobile-menu__group {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid var(--border);
    border-radius: 20px;
    box-shadow: var(--shadow-sm);
    padding: 0.45rem;
}

html[data-theme="dark"] .site-mobile-menu__group {
    background:#1c1c1c;
}

.site-mobile-menu__toggle {
    align-items: center;
    background: rgba(14, 165, 164, 0.12);
    border: 0;
    border-radius: 16px;
    color: var(--primary-strong);
    cursor: pointer;
    display: inline-flex;
    height: 3rem;
    justify-content: center;
    transition: background 0.18s ease, color 0.18s ease, transform 0.18s ease;
    width: 3rem;
}

.site-mobile-menu__toggle i {
    transition: transform 0.2s ease;
}

.site-mobile-menu__group.is-open .site-mobile-menu__toggle i {
    transform: rotate(180deg);
}

.site-mobile-menu__children {
    display: grid;
    gap: 0.35rem;
    padding: 0.6rem 0.05rem 0.1rem;
}

.site-mobile-menu__children[hidden] {
    display: none !important;
}

.site-mobile-menu__child {
    background: rgba(255, 255, 255, 0.74);
    border: 1px solid rgba(148, 163, 184, 0.12);
    color: var(--text-soft);
    padding-block: 0.75rem;
    padding-left: 1.1rem;
}

html[data-theme="dark"] .site-mobile-menu__child {
    background:#1c1c1c;
}

.site-mobile-menu__link:hover,
.site-mobile-menu__child:hover,
.site-mobile-menu__toggle:hover {
    color: var(--bg-contrast);
    transform: translateY(-1px);
}

.site-mobile-menu__child:hover {
    background: rgba(14, 165, 164, 0.12);
}

.search-modal {
    background: rgba(7, 17, 31, 0.45);
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    transition: opacity 0.22s ease;
    z-index: 1100;
}

.search-modal.is-open {
    opacity: 1;
    pointer-events: auto;
}

.search-modal__card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 28px;
    box-shadow: var(--shadow-lg);
    margin: 6.5rem auto 0;
    max-width: 52rem;
    padding: 1rem;
    width: min(92vw, 52rem);
}

.search-modal__top {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.75rem;
}

.search-modal__label {
    color: var(--text-soft);
    font-size: 0.9rem;
    font-weight: 700;
}

.search-modal__form {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: 1fr auto;
}

.search-modal__form input,
.newsletter-form input,
.auth-form__control,
.site-form-control {
    background: rgba(14, 165, 164, 0.04);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 18px;
    color: var(--bg-contrast);
    min-height: 3.25rem;
    outline: none;
    padding: 0.95rem 1rem;
    width: 100%;
}

.search-modal__form input::placeholder,
.newsletter-form input::placeholder,
.auth-form__control::placeholder,
.site-form-control::placeholder {
    color: var(--text-faint);
}

.search-modal__form input:focus,
.newsletter-form input:focus,
.auth-form__control:focus,
.site-form-control:focus {
    border-color: rgba(14, 165, 164, 0.36);
    box-shadow: 0 0 0 0.28rem rgba(14, 165, 164, 0.12);
}

.live-strip {
    overflow: hidden;
    padding: 0.3rem 0 1.15rem;
}

.live-strip__rail {
    align-items: stretch;
    display: flex;
    gap: 0.9rem;
    overflow-x: auto;
    padding-bottom: 0.3rem;
    scrollbar-width: none;
}

.live-strip__rail::-webkit-scrollbar {
    display: none;
}

.live-card {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: var(--shadow-sm);
    display: grid;
    flex: 0 0 20rem;
    gap: 0.8rem;
    min-height: 8.8rem;
    padding: 1rem;
}

.live-card__top {
    align-items: center;
    display: flex;
    gap: 0.6rem;
    justify-content: space-between;
}

.live-card__league {
    color: var(--bg-contrast);
    font-size: 0.92rem;
    font-weight: 800;
    line-height: 1.3;
}

.live-card__status {
    align-items: center;
    background: rgba(14, 165, 164, 0.12);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 0.75rem;
    font-weight: 800;
    gap: 0.4rem;
    padding: 0.35rem 0.7rem;
}

.live-card__status::before {
    background: currentColor;
    border-radius: 999px;
    content: "";
    height: 0.42rem;
    width: 0.42rem;
}

.live-card__match {
    display: grid;
    gap: 0.5rem;
}

.live-card__row {
    align-items: center;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: auto 1fr auto;
}

.live-card__logo {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    height: 2rem;
    object-fit: contain;
    padding: 0.25rem;
    width: 2rem;
}

.live-card__team {
    color: var(--bg-contrast);
    font-weight: 700;
}

.live-card__score {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 1.12rem;
    font-weight: 800;
}

.hero-grid {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
}

.hero-story {
    display: grid;
    gap: 0;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    min-height: 33rem;
    overflow: hidden;
}

.hero-story__media,
.news-card__media,
.story-tile__media,
.article-hero__media {
    background: rgba(249, 115, 22, 0.08);
    overflow: hidden;
    position: relative;
}

.hero-story__media {
    aspect-ratio: 16 / 10;
    border-radius: 26px;
}

.news-card__media,
.story-tile__media {
    aspect-ratio: 4 / 3;
}

.article-hero__media {
    aspect-ratio: 16 / 9;
}

.hero-story__media picture,
.news-card__media picture,
.story-tile__media picture,
.article-hero__media picture {
    display: block;
    height: 100%;
    width: 100%;
}

.hero-story__media img,
.news-card__media img,
.story-tile__media img,
.article-hero__media img {
    display: block;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
    width: 100%;
}

.hero-story:hover .hero-story__media img,
.news-card:hover .news-card__media img,
.story-tile:hover .story-tile__media img,
.article-hero:hover .article-hero__media img {
    transform: scale(1.04);
}

.hero-story__content {
    align-content: start;
    display: grid;
    gap: 0.85rem;
    padding: 1.6rem;
}

.story-badge {
    align-items: center;
    background: var(--accent-soft);
    border-radius: 999px;
    color: var(--accent);
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 800;
    gap: 0.45rem;
    letter-spacing: 0.08em;
    padding: 0.45rem 0.8rem;
    text-transform: uppercase;
}

.story-badge--primary {
    background: rgba(14, 165, 164, 0.12);
    color: var(--primary-strong);
}

.story-meta {
    align-items: center;
    color: var(--text-soft);
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    font-size: 0.88rem;
}

.story-meta .dot {
    background: var(--border-strong);
    border-radius: 999px;
    height: 0.3rem;
    width: 0.3rem;
}

.story-title {
    color: var(--bg-contrast);
    font-size: clamp(2rem, 3.3vw, 3.25rem);
    line-height: 1.02;
    margin: 0;
}

.story-title--sm {
    font-size: 1.15rem;
    line-height: 1.25;
}

.story-summary {
    color: var(--text-soft);
    font-size: 1rem;
    margin: 0;
}

.story-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin-top: auto;
}

.story-tiles {
    align-content: start;
    display: grid;
    gap: 1rem;
}

.story-tile {
    align-items: center;
    display: grid;
    gap: 0.8rem;
    grid-template-columns: 7rem minmax(0, 1fr);
    padding: 1rem;
}

.story-tile__media {
    border-radius: 20px;
    min-height: 0;
}

.story-tile__content {
    align-content: start;
    display: grid;
    gap: 0.45rem;
}

.content-grid {
    align-items: start;
    display: grid;
    gap: 1.35rem;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 20rem);
}

.content-grid > section,
.content-grid > aside {
    min-width: 0;
}

.content-grid > aside {
    align-self: start;
    width: 100%;
}

.stack-grid {
    display: grid;
    gap: 1rem;
}

.news-card {
    cursor: pointer;
    overflow: hidden;
    position: relative;
}

.news-card__media {
    border-bottom: 1px solid var(--border);
    min-height: 0;
}

.news-card__body {
    display: grid;
    gap: 0.75rem;
    padding: 1.2rem 1.25rem 1.25rem;
}

.news-card__title {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 1.3rem;
    line-height: 1.18;
    margin: 0;
}

.news-card__excerpt {
    color: var(--text-soft);
    font-size: 0.96rem;
    margin: 0;
}

.news-card__footer {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}

.sidebar-stack {
    display: grid;
    gap: 1rem;
}

.sidebar-list {
    display: grid;
    gap: 0.8rem;
}

.sidebar-item {
    align-items: start;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: auto minmax(0, 1fr);
}

.headline-index {
    align-items: center;
    background: var(--primary-strong, #087f7c);
    border-radius: 16px;
    color: #fff;
    display: inline-flex;
    font-family: var(--font-display);
    font-size: 0.92rem;
    font-weight: 800;
    height: 2.2rem;
    justify-content: center;
    width: 2.2rem;
}

.headline-title {
    color: var(--bg-contrast);
    font-size: 0.98rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 0.3rem;
}

.sidebar-muted {
    color: var(--text-soft);
    font-size: 0.82rem;
}

.tag-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.chip-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.5rem;
    overflow-x: auto;
    padding-bottom: 0.15rem;
    scrollbar-width: none;
}

.chip-row::-webkit-scrollbar {
    display: none;
}

.chip,
.tag-chip {
    align-items: center;
    background: rgba(14, 165, 164, 0.08);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 0.84rem;
    font-weight: 700;
    min-height: 2rem;
    padding: 0 0.85rem;
}

.chip:hover,
.tag-chip:hover {
    background: rgba(14, 165, 164, 0.14);
    color: var(--primary-strong);
}

.newsletter-card {
    display: grid;
    gap: 1rem;
    padding: 1.5rem;
}

.newsletter-card--compact {
    gap: 0.85rem;
    padding: 1.15rem;
}

.newsletter-card--compact .newsletter-card__copy h3,
.newsletter-card--compact .newsletter-card__copy h4 {
    font-size: 1.18rem;
}

.newsletter-card--compact .newsletter-card__copy p {
    max-width: 24rem;
}

.newsletter-card__copy h3,
.newsletter-card__copy h4 {
    margin: 0 0 0.45rem;
}

.newsletter-card__copy p {
    color: var(--text-soft);
    margin: 0;
}

.newsletter-form {
    display: grid;
    gap: 0.8rem;
}

.newsletter-form__row {
    display: grid;
    gap: 0.8rem;
}

.newsletter-feedback {
    border-radius: 18px;
    display: none;
    font-size: 0.92rem;
    font-weight: 600;
    padding: 0.9rem 1rem;
}

.newsletter-feedback.is-success {
    background: rgba(16, 185, 129, 0.12);
    color: #065f46;
    display: block;
}

.newsletter-feedback.is-error {
    background: rgba(239, 68, 68, 0.12);
    color: #991b1b;
    display: block;
}

html[data-theme="dark"] .newsletter-feedback.is-success {
    color: #b7f7df;
}

html[data-theme="dark"] .newsletter-feedback.is-error {
    color: #fecaca;
}

.league-stack {
    display: grid;
    gap: 0.75rem;
}

.league-card {
    background: rgba(15, 23, 42, 0.03);
    border: 1px solid var(--border);
    border-radius: 22px;
    display: grid;
    gap: 0.75rem;
    padding: 1rem;
}

.league-card__header {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}

.league-card__title {
    align-items: center;
    color: var(--bg-contrast);
    display: flex;
    font-size: 0.95rem;
    font-weight: 800;
    gap: 0.7rem;
    min-width: 0;
}

.league-card__title img {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    height: 2rem;
    object-fit: contain;
    padding: 0.25rem;
    width: 2rem;
}

.league-card__actions {
    display: flex;
    gap: 0.5rem;
}

.league-card__action {
    align-items: center;
    background: rgba(14, 165, 164, 0.09);
    border-radius: 14px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 0.8rem;
    font-weight: 800;
    gap: 0.4rem;
    min-height: 2.2rem;
    padding: 0 0.8rem;
}

.league-card__action:hover {
    background: rgba(14, 165, 164, 0.16);
    color: var(--primary-strong);
}

.league-list {
    display: grid;
    gap: 0.55rem;
}

.league-list a {
    align-items: center;
    background: rgba(14, 165, 164, 0.05);
    border-radius: 16px;
    color: var(--bg-contrast);
    display: flex;
    font-weight: 700;
    gap: 0.75rem;
    padding: 0.8rem 0.95rem;
}

.league-list img {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    height: 1.8rem;
    object-fit: contain;
    padding: 0.2rem;
    width: 1.8rem;
}

.news-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.news-grid--cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pagination-wrap {
    display: flex;
    justify-content: center;
    margin-top: 1.75rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
}

.pagination {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 0.45rem;
    justify-content: center;
    width: max-content;
}

.page-link,
.page-item span {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    color: var(--bg-contrast);
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 700;
    height: 2.85rem;
    justify-content: center;
    min-width: 2.85rem;
    padding: 0 0.95rem;
}

.page-item.active .page-link,
.page-link:hover {
    background: var(--primary-strong, #087f7c);
    border-color: transparent;
    color: #fff;
}

.page-item.disabled .page-link,
.page-item.disabled span {
    color: var(--text-faint);
    opacity: 0.75;
}

.page-hero {
    display: grid;
    gap: 1rem;
    padding: 2rem;
}

.page-hero__title {
    font-size: clamp(2rem, 4vw, 3.15rem);
    margin: 0;
}

.page-hero__summary {
    color: var(--text-soft);
    font-size: 1rem;
    margin: 0;
    max-width: 46rem;
}

.contact-layout {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
}

.contact-card {
    display: grid;
    gap: 1rem;
    padding: 1.4rem;
}

.contact-card__list {
    display: grid;
    gap: 0.9rem;
}

.contact-card__list span {
    color: var(--text-soft);
    display: block;
    font-size: 0.82rem;
    margin-bottom: 0.18rem;
    text-transform: uppercase;
}

.contact-card__list strong {
    color: var(--bg-contrast);
    font-size: 0.98rem;
}

.contact-form {
    display: grid;
    gap: 0.85rem;
}

.contact-form__grid {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-form input,
.contact-form textarea {
    background: rgba(14, 165, 164, 0.04);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 18px;
    color: var(--bg-contrast);
    outline: none;
    padding: 0.95rem 1rem;
    width: 100%;
}

.contact-form textarea {
    min-height: 11rem;
    resize: vertical;
}

.contact-form input:focus,
.contact-form textarea:focus {
    border-color: rgba(14, 165, 164, 0.36);
    box-shadow: 0 0 0 0.28rem rgba(14, 165, 164, 0.12);
}

.contact-feedback {
    border-radius: 16px;
    font-size: 0.92rem;
    font-weight: 600;
    padding: 0.9rem 1rem;
}

.contact-feedback--success {
    background: rgba(16, 185, 129, 0.12);
    color: #047857;
}

.contact-feedback--error {
    background: rgba(239, 68, 68, 0.1);
    color: #b91c1c;
}

.search-summary {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: space-between;
}

.result-count {
    align-items: center;
    background: rgba(14, 165, 164, 0.08);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 0.88rem;
    font-weight: 800;
    gap: 0.45rem;
    min-height: 2.4rem;
    padding: 0 0.9rem;
}

.empty-state {
    display: grid;
    gap: 0.7rem;
    justify-items: start;
    padding: 2rem;
}

.empty-state__icon {
    align-items: center;
    background: rgba(14, 165, 164, 0.1);
    border-radius: 22px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 1.4rem;
    height: 3.6rem;
    justify-content: center;
    width: 3.6rem;
}

.article-shell {
    display: grid;
    gap: 1.35rem;
    grid-template-columns: minmax(0, 1.45fr) 20rem;
}

.article-hero {
    display: grid;
    gap: 1.25rem;
    padding: 1.25rem;
}

.article-hero__media {
    border-radius: 28px;
    min-height: 0;
}

.article-hero__content {
    display: grid;
    gap: 0.85rem;
}

.article-hero__title {
    font-size: clamp(2rem, 4vw, 3.4rem);
    line-height: 1.02;
    margin: 0;
}

.article-hero__dek {
    color: var(--text-soft);
    font-size: 1.08rem;
    margin: 0;
}

.article-rail {
    display: grid;
    gap: 1rem;
    height: fit-content;
}

.share-stack {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.share-chip {
    align-items: center;
    background: rgba(14, 165, 164, 0.08);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 0.86rem;
    font-weight: 800;
    gap: 0.45rem;
    height: 2.5rem;
    justify-content: center;
    min-height: 2.5rem;
    padding: 0;
    width: 2.5rem;
}

.share-chip:hover {
    background: rgba(14, 165, 164, 0.16);
    color: var(--primary-strong);
}

.share-chip i {
    line-height: 1;
}

.social-icon-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.social-icon-link {
    align-items: center;
    background: rgba(14, 165, 164, 0.08);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 1rem;
    height: 2.55rem;
    justify-content: center;
    width: 2.55rem;
}

.social-icon-link:hover {
    background: rgba(14, 165, 164, 0.16);
    color: var(--primary-strong);
}

.article-content-card {
    padding: 0 1.25rem 1.25rem;
}

.article-prose {
    color: var(--text);
    font-size: 1.04rem;
    line-height: 1.88;
}

.article-prose > * + * {
    margin-top: 1.25rem;
}

.article-prose h2,
.article-prose h3,
.article-prose h4 {
    margin-top: 2rem;
}

.article-prose a {
    color: var(--primary-strong);
    font-weight: 700;
}

.article-prose blockquote {
    background: rgba(14, 165, 164, 0.06);
    border-left: 4px solid var(--primary);
    border-radius: 0 22px 22px 0;
    margin-inline: 0;
    padding: 1.3rem 1.4rem;
}

.article-prose img,
.article-prose iframe,
.article-prose video,
.article-prose table {
    border-radius: 24px;
    max-width: 100%;
}

.article-prose iframe,
.article-prose video {
    min-height: 18rem;
    width: 100%;
}

.article-prose table {
    background: var(--surface);
    border-collapse: collapse;
    display: block;
    overflow-x: auto;
    width: 100%;
}

.article-prose table th,
.article-prose table td {
    border: 1px solid var(--border);
    padding: 0.75rem;
}

.article-prose .video-embed-wrap,
.article-prose .social-embed-wrap {
    overflow: hidden;
}

.article-prose .video-embed-wrap {
    aspect-ratio: 16 / 9;
}

.article-prose .video-embed-wrap iframe {
    border: 0;
    height: 100%;
    min-height: 100%;
    width: 100%;
}

.article-author {
    align-items: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 1.3rem;
}

.article-author__avatar {
    align-items: center;
    background: var(--primary-strong, #087f7c);
    border-radius: 22px;
    color: #fff;
    display: inline-flex;
    font-family: var(--font-display);
    font-size: 1.35rem;
    font-weight: 800;
    height: 4rem;
    justify-content: center;
    width: 4rem;
}

.article-nav-grid,
.related-grid,
.more-grid {
    display: grid;
    gap: 1rem;
}

.article-nav-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.article-nav-card {
    align-items: center;
    display: grid;
    gap: 0.8rem;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 1rem 1.1rem;
}

.article-nav-card--reverse {
    grid-template-columns: minmax(0, 1fr) auto;
    text-align: right;
}

.article-nav-card__icon {
    align-items: center;
    background: rgba(14, 165, 164, 0.09);
    border-radius: 18px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: 1rem;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

.legal-article {
    padding: 1.6rem 1.65rem;
}

.legal-article .article-prose {
    font-size: 1rem;
}

.footer-shell {
    padding: 0 0 2rem;
}

.site-promo-shell {
    margin-bottom: 1.6rem;
}

.site-promo {
    align-items: center;
    background: rgba(255, 255, 255, 0.92);
    border-color: var(--border-strong);
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 1.5rem 1.75rem;
}

.site-promo__copy {
    display: grid;
    gap: 0.45rem;
}

.site-promo__copy h2 {
    font-size: clamp(1.3rem, 2.1vw, 1.8rem);
    margin: 0;
}

.site-promo__copy p {
    color: var(--text-soft);
    margin: 0;
    max-width: 36rem;
}

.site-button--youtube {
    background: #dc2626;
    min-width: 10.5rem;
}

.site-button--youtube:hover {
    box-shadow: 0 18px 32px rgba(239, 68, 68, 0.22);
}

html[data-theme="dark"] .site-promo {
    background:#1c1c1c;
}

.footer-panel {
    display: grid;
    gap: 1.2rem;
    grid-template-columns: 1.25fr 0.9fr 0.9fr;
    padding: 1.8rem;
}

.footer-panel__brand {
    display: grid;
    gap: 1rem;
}

.footer-panel__brand p,
.footer-panel__group p {
    color: var(--text-soft);
    margin: 0;
}

.footer-links {
    display: grid;
    gap: 0.55rem;
}

.footer-links a {
    color: var(--text-soft);
    font-weight: 700;
}

.footer-status {
    align-items: center;
    background: rgba(14, 165, 164, 0.08);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 999px;
    display: inline-flex;
    gap: 0.65rem;
    justify-content: space-between;
    padding: 0.7rem 0.95rem;
}

.footer-status span {
    color: var(--text-soft);
    font-size: 0.85rem;
}

.footer-bottom {
    align-items: center;
    color: var(--text-soft);
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    justify-content: space-between;
    margin-top: 0.95rem;
    padding: 0 0.2rem;
}

.footer-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.footer-socials a,
.back-top {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--bg-contrast);
    display: inline-flex;
    height: 2.85rem;
    justify-content: center;
    width: 2.85rem;
}

.footer-socials a:hover,
.back-top:hover {
    background: rgba(14, 165, 164, 0.1);
    color: var(--primary-strong);
}

.auth-body {
    background: var(--bg) rgba(249, 115, 22, 0.12);
    min-height: 100vh;
}

.auth-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(24rem, 32rem);
    gap: 1.25rem;
    min-height: 100vh;
    padding: 1rem;
}

.auth-showcase {
    align-items: end;
    background: rgba(14, 165, 164, 0.72);
    border-radius: 34px;
    color: #fff;
    display: grid;
    overflow: hidden;
    padding: 2rem;
    position: relative;
}

.auth-showcase::before {
    background: rgba(255, 255, 255, 0.12);
    content: "";
    inset: 0;
    position: absolute;
}

.auth-showcase__content {
    display: grid;
    gap: 1rem;
    position: relative;
    z-index: 1;
}

.auth-showcase__eyebrow {
    letter-spacing: 0.18em;
    opacity: 0.82;
    text-transform: uppercase;
}

.auth-showcase__title {
    color: #fff;
    font-size: clamp(2.3rem, 5vw, 4rem);
    line-height: 0.96;
    margin: 0;
}

.auth-showcase__stats {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.auth-stat {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 22px;
    padding: 0.95rem;
}

.auth-stat strong {
    color: #fff;
    display: block;
    font-family: var(--font-display);
    font-size: 1.4rem;
}

.auth-card {
    align-items: center;
    display: grid;
    justify-items: stretch;
    padding: 1rem 0;
}

.auth-card__panel {
    display: grid;
    gap: 1.2rem;
    padding: 1.8rem;
    width: min(100%, 32rem);
}

.auth-card__head {
    display: grid;
    gap: 0.5rem;
}

.auth-card__logo {
    align-items: center;
    background: rgba(14, 165, 164, 0.08);
    border: 1px solid rgba(14, 165, 164, 0.14);
    border-radius: 14px;
    display: inline-flex;
    height: 3.2rem;
    justify-content: center;
    margin-bottom: 0.35rem;
    padding: 0.55rem 0.75rem;
    width: fit-content;
}

.auth-card__logo img {
    display: block;
    height: auto;
    max-height: 1.9rem;
    max-width: 8.5rem;
    object-fit: contain;
}

.auth-card__eyebrow {
    color: var(--primary-strong);
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.auth-card__title {
    font-size: clamp(1.9rem, 3.2vw, 2.5rem);
    margin: 0;
}

.auth-card__text {
    color: var(--text-soft);
    margin: 0;
}

.auth-form {
    display: grid;
    gap: 0.9rem;
}

.auth-form__group {
    display: grid;
    gap: 0.45rem;
}

.auth-form__label {
    color: var(--bg-contrast);
    font-size: 0.88rem;
    font-weight: 800;
}

.auth-form__inline {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: space-between;
}

.auth-form__checkbox {
    align-items: center;
    display: inline-flex;
    gap: 0.55rem;
}

.auth-form__alert {
    border-radius: 18px;
    font-size: 0.92rem;
    font-weight: 700;
    padding: 0.95rem 1rem;
}

.auth-form__alert--success {
    background: rgba(16, 185, 129, 0.12);
    color: #065f46;
}

.auth-form__alert--error {
    background: rgba(239, 68, 68, 0.12);
    color: #991b1b;
}

html[data-theme="dark"] .auth-form__alert--success {
    color: #b7f7df;
}

html[data-theme="dark"] .auth-form__alert--error {
    color: #fecaca;
}

.toggle-password {
    background: transparent;
    border: 0;
    color: var(--text-soft);
    cursor: pointer;
    position: absolute;
    right: 0.9rem;
    top: 50%;
    transform: translateY(-50%);
}

.field-with-icon {
    position: relative;
}

.ad-slot {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
    position: relative;
}

.ad-slot::before,
.ad-slot::after {
    color: var(--text-faint);
    content: attr(data-ad-code);
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    opacity: 0.72;
    pointer-events: none;
    position: absolute;
    text-transform: uppercase;
    top: 3.4rem;
    writing-mode: vertical-rl;
    z-index: 1;
}

.ad-slot::before {
    left: 0.28rem;
    transform: rotate(180deg);
}

.ad-slot::after {
    right: 0.28rem;
}

.ad-slot-header {
    align-items: center;
    background: rgba(14, 165, 164, 0.06);
    border-bottom: 1px solid var(--border);
    display: flex;
    justify-content: center;
    min-height: 2.8rem;
}

.ad-slot-label {
    color: var(--text-soft);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ad-slot-content {
    min-height: 6.5rem;
    padding: 1rem 1.7rem;
}

.copy-toast {
    background: rgba(16, 185, 129, 0.95);
    border-radius: 999px;
    bottom: 1rem;
    color: #fff;
    font-size: 0.88rem;
    font-weight: 800;
    left: 50%;
    opacity: 0;
    padding: 0.8rem 1rem;
    pointer-events: none;
    position: fixed;
    transform: translateX(-50%) translateY(1rem);
    transition: opacity 0.22s ease, transform 0.22s ease;
    z-index: 1200;
}

.copy-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

@media (max-width: 1499.98px) {
    .news-grid,
    .news-grid--cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1199.98px) {
    .content-grid {
        grid-template-columns: minmax(0, 1fr) 18rem;
    }

    .article-rail {
        position: static;
    }

    .article-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .footer-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-layout {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 991.98px) {
    .site-shell,
    .site-shell--wide {
        width: min(100%, calc(100% - 1rem));
    }

    .content-grid {
        grid-template-columns: minmax(0, 1fr);
    }


    .site-header__bar {
        display: grid;
        gap: 0.9rem;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .site-header__nav {
        display: none;
    }

    .header-spotlight {
        display: none;
    }

    .hero-grid,
    .hero-story,
    .auth-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .hero-story {
        min-height: auto;
    }

    .story-tiles {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-main {
        padding-top: 1.4rem;
    }

    .auth-showcase {
        min-height: 22rem;
    }

    .site-promo {
        grid-template-columns: minmax(0, 1fr);
    }

    .news-grid,
    .news-grid--cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .site-header {
        padding-top: 0.6rem;
    }

    .site-header__bar,
    .site-panel,
    .footer-panel,
    .auth-card__panel,
    .auth-showcase {
        padding: 1rem;
    }

    .theme-switcher {
        width: 100%;
    }

    .theme-switcher__button {
        flex: 1 1 0;
        justify-content: center;
        padding-inline: 0.35rem;
    }

    .site-header__utility {
        flex-wrap: nowrap;
        width: auto;
    }

    .site-button {
        width: 100%;
    }

    .search-modal__card {
        margin-top: 5rem;
        padding: 0.8rem;
    }

    .search-modal__form {
        grid-template-columns: 1fr;
    }

    .live-card {
        flex-basis: 16.5rem;
    }

    .story-tiles,
    .news-grid--cards,
    .article-nav-grid,
    .footer-panel,
    .auth-showcase__stats {
        grid-template-columns: minmax(0, 1fr);
    }

    .news-grid,
    .news-grid--cards {
        grid-template-columns: minmax(0, 1fr);
    }

    .story-tile {
        grid-template-columns: minmax(0, 1fr);
    }

    .story-tile__media {
        min-height: 0;
    }

    .contact-form__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .ad-slot::before,
    .ad-slot::after {
        display: none;
    }

    .article-hero__media {
        min-height: 0;
    }

    .page-link,
    .page-item span {
        min-width: 2.45rem;
        padding-inline: 0.7rem;
    }
}

@media (max-width: 575.98px) {
    .news-grid,
    .news-grid--cards {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Final requested polish: desktop dropdowns, single-line chips, captions, embeds, ads and clickable hero */
.site-header,
.site-header__bar,
.site-header__nav,
.header-menu-item {
    overflow: visible !important;
}

.site-header__nav {
    position: relative;
    z-index: 1050;
}

.header-menu-item {
    z-index: 1060;
}

.header-menu-item__dropdown {
    background: var(--surface) !important;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.22) !important;
    color: var(--bg-contrast);
    left: 0;
    max-height: min(70vh, 28rem);
    overflow-y: auto;
    right: auto;
    top: calc(100% + 0.25rem);
    z-index: 5000 !important;
}

.header-menu-item__dropdown a {
    color: var(--bg-contrast) !important;
    justify-content: flex-start;
    white-space: nowrap;
}

html[data-theme="dark"] .header-menu-item__dropdown {
    background:#1c1c1c!important;
    border-color: rgba(148, 163, 184, 0.28) !important;
}

.chip-row {
    -webkit-overflow-scrolling: touch;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden;
}

.chip-row .chip,
.chip,
.tag-chip {
    flex: 0 0 auto;
    max-width: none;
    white-space: nowrap !important;
}

.hero-story--feature {
    cursor: pointer;
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: auto;
}

.hero-story--feature .hero-story__media {
    border-radius: 26px 26px 0 0;
}

.hero-story--feature .hero-story__content {
    padding: 1.25rem 1.35rem 1.5rem;
}

.hero-story--feature .story-title {
    font-size: clamp(1.85rem, 3vw, 3rem);
}

.image-caption-toggle {
    background: rgba(14, 165, 164, 0.07);
    border: 1px solid rgba(14, 165, 164, 0.16);
    border-radius: 18px;
    color: var(--text-soft);
    margin-top: 0.85rem;
    padding: 0.75rem 0.9rem;
}

.image-caption-toggle summary {
    align-items: center;
    color: var(--bg-contrast);
    cursor: pointer;
    display: flex;
    font-size: 0.82rem;
    font-weight: 900;
    justify-content: space-between;
    letter-spacing: 0.08em;
    list-style: none;
    text-transform: uppercase;
}

.image-caption-toggle summary::-webkit-details-marker {
    display: none;
}

.image-caption-toggle[open] summary i {
    transform: rotate(45deg);
}

.image-caption-toggle p {
    margin: 0.65rem 0 0;
}

.image-caption-toggle--article {
    margin: 0.85rem 1.25rem 0;
}

.image-caption-toggle--form {
    margin-top: 1rem;
}

.video-embed-wrap,
.social-embed-wrap {
    aspect-ratio: 16 / 9;
    background: #020617;
    border-radius: 22px;
    overflow: hidden;
    width: 100%;
}

.video-embed-wrap iframe,
.social-embed-wrap iframe {
    border: 0;
    display: block;
    height: 100%;
    width: 100%;
}

.video-embed-wrap--hero,
.social-embed-wrap--hero {
    border-radius: inherit;
    height: 100%;
}

.article-prose .video-embed-wrap,
.article-prose .social-embed-wrap,
.article-prose .twitter-tweet,
.article-prose .instagram-media,
.article-prose .tiktok-embed {
    margin: 1.5rem auto;
    max-width: 100%;
    overflow-x: auto;
}

.submission-form {
    display: grid;
    gap: 1rem;
}

.submission-form label {
    color: var(--bg-contrast);
    display: grid;
    font-weight: 800;
    gap: 0.45rem;
}

.submission-form input,
.submission-form textarea {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    color: var(--bg-contrast);
    padding: 0.85rem 1rem;
    width: 100%;
}

.ad-slot,
.ad-slot-content,
.ad-slot-content ins,
.ad-slot-content iframe {
    max-width: 100%;
}

.ad-slot-content {
    align-items: center;
    display: flex;
    justify-content: center;
    overflow: hidden;
}

@media (max-width: 767.98px) {
    .ad-slot-content {
        min-height: 4.8rem;
        padding: 0.75rem;
    }

    .hero-story--feature .hero-story__content {
        padding: 1rem;
    }

    .story-actions .site-button {
        width: 100%;
    }
}

/* May 2026 final polish: clean hero, in-image captions, floating video, submissions, tag/404 pages */
.hero-story--feature .hero-story__content .story-title {
    margin: 0;
}

.hero-story--feature .hero-story__content {
    display: block;
}

.article-hero__media {
    position: relative;
    overflow: hidden;
}

.image-caption-toggle--inside-media {
    position: absolute;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
    margin: 0 !important;
    max-height: 55%;
    overflow: auto;
    background: rgba(2, 8, 23, 0.72);
    border-color: rgba(255, 255, 255, 0.16);
    color: rgba(255, 255, 255, 0.88);
    backdrop-filter: blur(14px);
    z-index: 8;
}

.image-caption-toggle--inside-media summary {
    color: #ffffff;
}

.image-caption-toggle--inside-media p {
    color: rgba(255, 255, 255, 0.9);
}

.floating-video-card {
    position: fixed;
    right: 1.2rem;
    bottom: 1.2rem;
    width: min(430px, calc(100vw - 1.5rem));
    background: #000;
    border: 1px solid rgba(255,255,255,.18);
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
    z-index: 7000;
    opacity: 0;
    pointer-events: none;
    transform: translateY(18px) scale(.98);
    transition: opacity .22s ease, transform .22s ease;
}

.floating-video-card.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.floating-video-card__media {
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.floating-video-card__media .video-embed-wrap,
.floating-video-card__media .social-embed-wrap,
.floating-video-card__media iframe {
    border-radius: 0 !important;
    height: 100% !important;
    width: 100% !important;
}

.floating-video-card__close {
    position: absolute;
    right: .55rem;
    top: .55rem;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    border: 1px solid #111;
    background: #fff;
    color: #111;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
}

.floating-video-card__actions {
    position: absolute;
    right: .55rem;
    top: 50%;
    transform: translateY(-50%);
    display: grid;
    gap: .45rem;
    z-index: 3;
}

.floating-video-card__next,
.floating-video-card__stay {
    border: 2px solid rgba(255,255,255,.75);
    border-radius: 10px;
    background: rgba(0,0,0,.72);
    color: #fff !important;
    font-weight: 900;
    padding: .42rem 1rem;
    min-width: 5.4rem;
    text-align: center;
    box-shadow: 0 0 12px rgba(255,255,255,.35);
}

.floating-video-card__next {
    background: #ff275f;
}

.submit-article-hero {
    background: var(--surface-strong);
}

.submission-form small {
    color: var(--text-soft);
    font-weight: 600;
}

.kisure-empty-state,
.kisure-error-page,
.kisure-tag-hero {
    text-align: center;
}

.kisure-error-code {
    font-size: clamp(5rem, 18vw, 12rem);
    font-weight: 900;
    line-height: .8;
    letter-spacing: -.08em;
    color: transparent;
    -webkit-text-stroke: 2px var(--primary);
    text-shadow: 0 24px 70px rgba(14,165,164,.24);
}

.kisure-tag-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.kisure-tag-stat {
    padding: 1rem;
    border-radius: 20px;
    background: var(--surface-strong);
    border: 1px solid var(--border);
}

@media (max-width: 767.98px) {
    .floating-video-card {
        right: .75rem;
        bottom: .75rem;
        width: min(360px, calc(100vw - 1.5rem));
    }
    .floating-video-card__actions {
        right: .45rem;
    }
    .floating-video-card__next,
    .floating-video-card__stay {
        min-width: 4.8rem;
        padding: .32rem .7rem;
    }
    .image-caption-toggle--inside-media {
        left: .65rem;
        right: .65rem;
        bottom: .65rem;
        padding: .6rem .7rem;
    }
    .kisure-tag-stat-grid {
        grid-template-columns: 1fr;
    }
}


/* May 2026 follow-up refinement: single submit page, balanced homepage hero, stronger floating player */
.hero-grid {
    align-items: stretch;
    grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.95fr);
}

.hero-story--feature {
    align-content: start;
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
}

.hero-story--feature .hero-story__media {
    aspect-ratio: 16 / 9;
    border-radius: 26px 26px 0 0;
}

.hero-story--feature .hero-story__content {
    display: grid;
    gap: 0.75rem;
    padding: 1.2rem 0.2rem 0;
}

.hero-story--feature .story-title {
    font-size: clamp(1.9rem, 3vw, 3rem);
    line-height: 1.05;
}

.story-tiles {
    grid-auto-rows: minmax(0, 1fr);
}

.story-tile {
    align-items: stretch;
    min-height: 9rem;
}

.floating-video-card {
    border-radius: 18px;
    inset: auto 1rem 1rem auto;
    left: auto !important;
    margin: 0 !important;
    max-height: calc(100vh - 2rem);
    overflow: hidden;
    top: auto !important;
    width: min(420px, calc(100vw - 2rem));
}

.floating-video-card__media {
    background: #000;
}

.floating-video-card__media .video-embed-wrap,
.floating-video-card__media .social-embed-wrap {
    margin: 0 !important;
}

.submission-form {
    display: grid;
    gap: 1rem;
}

.submission-form label {
    display: grid;
    gap: 0.45rem;
    font-weight: 700;
}

.submission-form input,
.submission-form textarea,
.submission-form select {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    color: var(--bg-contrast);
    min-height: 3rem;
    padding: 0.85rem 1rem;
    width: 100%;
}

.submission-form textarea {
    min-height: 8rem;
    resize: vertical;
}

.submission-form input[type="file"] {
    padding: 0.9rem;
}

@media (max-width: 991.98px) {
    .hero-grid {
        grid-template-columns: 1fr;
    }

    .hero-story--feature .hero-story__content {
        padding-top: 1rem;
    }
}

@media (max-width: 640px) {
    .floating-video-card {
        inset: auto .65rem .65rem .65rem;
        max-height: calc(100vh - 1.3rem);
        width: auto;
    }

    .floating-video-card__actions {
        right: .45rem;
        top: auto;
        bottom: .55rem;
        transform: none;
    }

    .floating-video-card__next,
    .floating-video-card__stay {
        backdrop-filter: blur(6px);
        min-width: 4.45rem;
        padding: .34rem .65rem;
    }
}

/* May 2026 final user-request polish: football.london style drop-down, balanced hero, contact + author pages */
.hero-grid {
    align-items: stretch;
    grid-template-columns: minmax(0, 1.38fr) minmax(20rem, 0.9fr);
}

.hero-story--feature {
    min-height: 0 !important;
    overflow: visible;
}

.hero-story--feature .hero-story__media {
    aspect-ratio: 16 / 9;
    border-radius: 28px 28px 0 0;
}

.hero-story--feature .hero-story__content {
    background: var(--surface-strong);
    border-radius: 0 0 28px 28px;
    padding: clamp(1rem, 2vw, 1.55rem);
}

.hero-story--feature .story-title {
    font-size: clamp(2rem, 3.3vw, 3.35rem);
    line-height: 1.02;
    max-width: 18ch;
    overflow-wrap: anywhere;
}

.story-tiles {
    align-content: stretch;
    display: grid;
    gap: 1rem;
    grid-auto-rows: minmax(9.5rem, auto);
}

.story-tile {
    align-items: center;
    grid-template-columns: minmax(8.5rem, 36%) minmax(0, 1fr);
    min-height: 9.5rem;
    overflow: visible;
    padding: 1rem;
}

.story-tile__content {
    min-width: 0;
    overflow: visible;
}

.story-title--sm {
    display: block;
    font-size: clamp(0.98rem, 1.05vw, 1.12rem);
    line-height: 1.22;
    margin: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

.floating-video-card {
    background: #050505;
    border-radius: 20px;
    box-shadow: 0 22px 70px rgba(0, 0, 0, .34), 0 0 0 1px rgba(255,255,255,.14);
    isolation: isolate;
    overflow: visible;
    right: 1.1rem !important;
    bottom: 1.1rem !important;
    top: auto !important;
    left: auto !important;
    transform: translateY(28px) scale(.96);
    width: min(430px, calc(100vw - 2rem));
}

.floating-video-card::before {
    content: "Featured";
    position: absolute;
    left: 1rem;
    top: -2.45rem;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(15, 23, 42, .12);
    border-radius: 999px;
    color: #0f172a;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .08em;
    padding: .45rem .85rem;
    text-transform: uppercase;
    box-shadow: 0 10px 28px rgba(0,0,0,.16);
}

.floating-video-card.is-visible {
    transform: translateY(0) scale(1);
}

.floating-video-card__media {
    border-radius: 20px;
    overflow: hidden;
}

.floating-video-card__actions {
    right: .7rem;
}

.floating-video-card__next,
.floating-video-card__stay {
    border-radius: 12px;
    min-width: 5.25rem;
}

.contact-layout {
    align-items: start;
}

.contact-card__list > div {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 18px;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .9rem 1rem;
}

.contact-card__list span {
    color: var(--text-soft);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .76rem;
}

.contact-card__list strong {
    color: var(--bg-contrast);
    text-align: right;
    overflow-wrap: anywhere;
}

.author-page .author-hero {
    align-items: center;
    display: grid;
    gap: clamp(1.2rem, 3vw, 2rem);
    grid-template-columns: auto minmax(0, 1fr);
}

.author-hero__avatar-wrap {
    background: var(--accent);
    border-radius: 32px;
    padding: .4rem;
    box-shadow: var(--shadow-sm);
}

.author-hero__avatar {
    border: 5px solid var(--surface);
    border-radius: 28px;
    display: block;
    height: clamp(8.5rem, 16vw, 13rem);
    object-fit: cover;
    width: clamp(8.5rem, 16vw, 13rem);
}

.author-hero__content {
    display: grid;
    gap: .95rem;
}

.author-meta-grid {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.author-meta-grid > div {
    background: rgba(14, 165, 164, .07);
    border: 1px solid rgba(14, 165, 164, .12);
    border-radius: 18px;
    padding: .9rem 1rem;
}

.author-meta-grid span {
    color: var(--text-soft);
    display: block;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.author-meta-grid strong {
    color: var(--bg-contrast);
    display: block;
    margin-top: .25rem;
}

.author-socials {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
}

.author-socials a {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    height: 2.75rem;
    justify-content: center;
    width: 2.75rem;
}

.author-socials a:hover {
    background: var(--primary-strong, #087f7c);
    color: #fff;
    transform: translateY(-2px);
}

.author-content-grid .news-grid--cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1199.98px) {
    .hero-grid {
        grid-template-columns: 1fr;
    }
    .story-tiles {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .story-tile {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .hero-story--feature .story-title {
        max-width: none;
    }
    .story-tiles,
    .author-content-grid .news-grid--cards {
        grid-template-columns: 1fr;
    }
    .floating-video-card {
        border-radius: 16px;
        bottom: .7rem !important;
        left: .7rem !important;
        right: .7rem !important;
        width: auto;
    }
    .floating-video-card::before {
        left: .8rem;
        top: -2.2rem;
    }
    .floating-video-card__actions {
        bottom: .6rem;
        right: .55rem;
        top: auto;
        transform: none;
    }
    .author-page .author-hero {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .author-hero__avatar-wrap {
        justify-self: center;
    }
    .author-meta-grid {
        grid-template-columns: 1fr;
        text-align: left;
    }
    .author-socials {
        justify-content: center;
    }
    .contact-card__list > div {
        align-items: flex-start;
        flex-direction: column;
    }
    .contact-card__list strong {
        text-align: left;
    }
}


/* May 2026 V4: real fixed bottom-right mini player + smaller article hero */
@media (min-width: 992px) {
    .article-shell {
        grid-template-columns: minmax(0, 1fr) minmax(19rem, 21rem);
        gap: 1.25rem;
    }

    .article-hero {
        align-items: center;
        display: grid;
        gap: clamp(1rem, 2vw, 1.5rem);
        grid-template-columns: minmax(20rem, 0.92fr) minmax(0, 1.08fr);
        padding: clamp(1rem, 1.8vw, 1.35rem);
    }

    .article-hero__media {
        aspect-ratio: 16 / 9;
        border-radius: 24px;
        max-height: 390px;
    }

    .article-hero__content {
        gap: 0.65rem;
        min-width: 0;
    }

    .article-hero__title {
        font-size: clamp(2rem, 3.15vw, 3.15rem) !important;
        line-height: 1.04 !important;
        overflow-wrap: anywhere;
    }

    .article-hero__dek {
        font-size: clamp(1rem, 1.2vw, 1.12rem);
        line-height: 1.65;
    }
}

@media (min-width: 1200px) {
    .article-hero__media {
        max-height: 360px;
    }
}

/* Homepage hero: cleaner cards, no clipping */
.hero-grid {
    grid-template-columns: minmax(0, 1.42fr) minmax(19rem, .88fr) !important;
}

.hero-story--feature .story-title {
    max-width: 100% !important;
    font-size: clamp(1.75rem, 2.55vw, 2.85rem) !important;
    line-height: 1.08 !important;
}

.hero-story--feature .hero-story__media {
    aspect-ratio: 16 / 8.4 !important;
}

.story-tiles {
    grid-auto-rows: minmax(8rem, 1fr) !important;
}

.story-tile {
    border-radius: 24px !important;
    grid-template-columns: minmax(7.8rem, 35%) minmax(0, 1fr) !important;
    min-height: 8rem !important;
    padding: .85rem !important;
}

.story-tile__media {
    border-radius: 18px !important;
}

.story-title--sm {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    display: -webkit-box !important;
    overflow: hidden !important;
    text-overflow: ellipsis;
}

/* Force the featured mini-player to be viewport-fixed at the bottom-right. */
body > .floating-video-card {
    bottom: 22px !important;
    left: auto !important;
    position: fixed !important;
    right: 22px !important;
    top: auto !important;
    width: min(340px, calc(100vw - 44px)) !important;
    z-index: 2147483000 !important;
    border-radius: 12px !important;
    overflow: visible !important;
    background: #000 !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow: 0 12px 38px rgba(0,0,0,.35) !important;
    opacity: 0;
    pointer-events: none;
    transform: translateY(18px) scale(.98) !important;
    transition: opacity .2s ease, transform .2s ease !important;
}

body > .floating-video-card.is-visible {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) scale(1) !important;
}

body > .floating-video-card::before {
    display: none !important;
}

body > .floating-video-card .floating-video-card__media {
    aspect-ratio: 16 / 9 !important;
    border-radius: 12px !important;
    height: auto !important;
    overflow: hidden !important;
    width: 100% !important;
}

body > .floating-video-card .floating-video-card__media > *,
body > .floating-video-card .floating-video-card__media .video-embed-wrap,
body > .floating-video-card .floating-video-card__media .social-embed-wrap,
body > .floating-video-card .floating-video-card__media iframe {
    aspect-ratio: auto !important;
    border-radius: 0 !important;
    display: block !important;
    height: 100% !important;
    margin: 0 !important;
    min-height: 0 !important;
    width: 100% !important;
}

body > .floating-video-card .floating-video-card__close {
    background: #fff !important;
    border: 1px solid rgba(15,23,42,.28) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.26) !important;
    color: #111827 !important;
    right: -10px !important;
    top: -12px !important;
}

body > .floating-video-card .floating-video-card__actions {
    bottom: auto !important;
    display: grid !important;
    gap: .45rem !important;
    position: absolute !important;
    right: .55rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;
}

body > .floating-video-card .floating-video-card__next,
body > .floating-video-card .floating-video-card__stay {
    border: 2px solid rgba(255,255,255,.78) !important;
    border-radius: 9px !important;
    box-shadow: 0 0 12px rgba(255,255,255,.28) !important;
    color: #fff !important;
    font-size: .88rem !important;
    font-weight: 900 !important;
    min-width: 4.85rem !important;
    padding: .36rem .7rem !important;
}

body > .floating-video-card .floating-video-card__next {
    background: #ef174d !important;
}

body > .floating-video-card .floating-video-card__stay {
    background: rgba(0,0,0,.72) !important;
}

@media (max-width: 991.98px) {
    .hero-grid {
        grid-template-columns: 1fr !important;
    }

    .article-hero {
        padding: 1rem !important;
    }

    .article-hero__media {
        aspect-ratio: 16 / 9 !important;
        max-height: none !important;
    }

    .article-hero__title {
        font-size: clamp(1.85rem, 8vw, 2.65rem) !important;
    }
}

@media (max-width: 560px) {
    body > .floating-video-card {
        bottom: 12px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
    }

    body > .floating-video-card .floating-video-card__actions {
        right: .45rem !important;
    }

    body > .floating-video-card .floating-video-card__next,
    body > .floating-video-card .floating-video-card__stay {
        min-width: 4.25rem !important;
        padding: .3rem .55rem !important;
    }
}


/* v6 final: restore article hero full-width layout while keeping the fixed bottom-right mini-player. */
.article-shell .article-hero {
    align-items: initial !important;
    display: grid !important;
    gap: 1.25rem !important;
    grid-template-columns: 1fr !important;
    padding: 1.25rem !important;
}

.article-shell .article-hero__media {
    aspect-ratio: 16 / 9 !important;
    border-radius: 28px !important;
    max-height: none !important;
    min-height: 0 !important;
}

.article-shell .article-hero__content {
    display: grid !important;
    gap: 0.85rem !important;
    min-width: 0 !important;
}

.article-shell .article-hero__title {
    font-size: clamp(2rem, 4vw, 3.4rem) !important;
    line-height: 1.02 !important;
    margin: 0 !important;
    overflow-wrap: normal !important;
}

.article-shell .article-hero__dek {
    color: var(--text-soft) !important;
    font-size: 1.08rem !important;
    line-height: inherit !important;
    margin: 0 !important;
}

body > .floating-video-card .floating-video-card__media:empty {
    display: none !important;
}


/* v8 final floating video fix: remove Next/Stay controls and force the same original video outside the article container. */
.floating-video-card__actions,
.floating-video-card__next,
.floating-video-card__stay {
    display: none !important;
}

body > .floating-video-card {
    background: #000 !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: 14px !important;
    bottom: 22px !important;
    box-shadow: 0 16px 42px rgba(0,0,0,.38) !important;
    left: auto !important;
    opacity: 0 !important;
    overflow: visible !important;
    pointer-events: none !important;
    position: fixed !important;
    right: 22px !important;
    top: auto !important;
    transform: translate3d(0, 18px, 0) scale(.98) !important;
    transition: opacity .2s ease, transform .2s ease !important;
    width: min(360px, calc(100vw - 44px)) !important;
    z-index: 2147483647 !important;
}

body > .floating-video-card.is-visible {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) scale(1) !important;
}

body > .floating-video-card .floating-video-card__media {
    aspect-ratio: 16 / 9 !important;
    border-radius: 14px !important;
    height: auto !important;
    overflow: hidden !important;
    width: 100% !important;
}

body > .floating-video-card .article-hero__media.is-floating-video-source {
    aspect-ratio: 16 / 9 !important;
    border-radius: 14px !important;
    box-shadow: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    width: 100% !important;
}

body > .floating-video-card .article-hero__media.is-floating-video-source::before,
body > .floating-video-card .article-hero__media.is-floating-video-source::after {
    display: none !important;
}

body > .floating-video-card .article-hero__media.is-floating-video-source > *,
body > .floating-video-card .article-hero__media.is-floating-video-source .video-embed-wrap,
body > .floating-video-card .article-hero__media.is-floating-video-source .social-embed-wrap,
body > .floating-video-card .article-hero__media.is-floating-video-source iframe {
    border-radius: 0 !important;
    display: block !important;
    height: 100% !important;
    margin: 0 !important;
    min-height: 0 !important;
    width: 100% !important;
}

body > .floating-video-card .floating-video-card__close {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid rgba(15,23,42,.24) !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
    color: #111827 !important;
    display: inline-flex !important;
    height: 34px !important;
    justify-content: center !important;
    position: absolute !important;
    right: -10px !important;
    top: -12px !important;
    width: 34px !important;
    z-index: 5 !important;
}

.featured-video-placeholder {
    border-radius: 28px !important;
    width: 100% !important;
}

@media (max-width: 560px) {
    body > .floating-video-card {
        bottom: 12px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
    }
}

/* v10 playback-safe floating video: the iframe is mounted once and only repositioned. */
body > .floating-video-card.is-inline {
    background: transparent !important;
    border: 0 !important;
    border-radius: 28px !important;
    bottom: auto !important;
    box-shadow: none !important;
    left: var(--floating-video-inline-left, 0) !important;
    opacity: 1 !important;
    overflow: hidden !important;
    pointer-events: auto !important;
    position: fixed !important;
    right: auto !important;
    top: var(--floating-video-inline-top, 0) !important;
    transform: none !important;
    transition: none !important;
    width: var(--floating-video-inline-width, 100%) !important;
    z-index: 30 !important;
}

body > .floating-video-card.is-inline .floating-video-card__close {
    display: none !important;
}

body > .floating-video-card.is-inline .floating-video-card__media,
body > .floating-video-card.is-inline .article-hero__media.is-floating-video-source {
    aspect-ratio: 16 / 9 !important;
    border-radius: 28px !important;
    height: auto !important;
    overflow: hidden !important;
    width: 100% !important;
}

body > .floating-video-card.is-inline .article-hero__media.is-floating-video-source > *,
body > .floating-video-card.is-inline .article-hero__media.is-floating-video-source .video-embed-wrap,
body > .floating-video-card.is-inline .article-hero__media.is-floating-video-source .social-embed-wrap,
body > .floating-video-card.is-inline .article-hero__media.is-floating-video-source iframe,
body > .floating-video-card.is-visible .article-hero__media.is-floating-video-source > *,
body > .floating-video-card.is-visible .article-hero__media.is-floating-video-source .video-embed-wrap,
body > .floating-video-card.is-visible .article-hero__media.is-floating-video-source .social-embed-wrap,
body > .floating-video-card.is-visible .article-hero__media.is-floating-video-source iframe {
    display: block !important;
    height: 100% !important;
    margin: 0 !important;
    min-height: 0 !important;
    width: 100% !important;
}

body > .floating-video-card.is-visible {
    bottom: 22px !important;
    left: auto !important;
    position: fixed !important;
    right: 22px !important;
    top: auto !important;
    z-index: 2147483647 !important;
}

@media (max-width: 560px) {
    body > .floating-video-card.is-visible {
        bottom: 12px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
    }
}

/* v12 mobile/tablet floating video support. */
@media (max-width: 991.98px) {
    .featured-video-placeholder {
        aspect-ratio: 16 / 9 !important;
        min-height: 180px !important;
    }

    body > .floating-video-card.is-inline {
        border-radius: 24px !important;
        width: min(var(--floating-video-inline-width, calc(100vw - 24px)), calc(100vw - 24px)) !important;
        z-index: 60 !important;
    }

    body > .floating-video-card.is-inline .floating-video-card__media,
    body > .floating-video-card.is-inline .article-hero__media.is-floating-video-source {
        border-radius: 24px !important;
        min-height: 180px !important;
    }

    body > .floating-video-card.is-visible {
        bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        left: auto !important;
        right: 12px !important;
        top: auto !important;
        width: min(340px, calc(100vw - 24px)) !important;
        z-index: 2147483647 !important;
    }

    body > .floating-video-card.is-visible .floating-video-card__media,
    body > .floating-video-card.is-visible .article-hero__media.is-floating-video-source {
        min-height: 0 !important;
    }
}

@media (max-width: 575.98px) {
    .featured-video-placeholder {
        min-height: 170px !important;
    }

    body > .floating-video-card.is-inline {
        left: 12px !important;
        right: 12px !important;
        width: calc(100vw - 24px) !important;
    }

    body > .floating-video-card.is-visible {
        bottom: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
        left: 10px !important;
        right: 10px !important;
        width: auto !important;
    }
}

/* v17 article readability fixes */
.article-content-card { padding: 1.35rem 1.45rem !important; }
.article-prose { max-width: 860px; margin-inline: auto; white-space: normal; overflow-wrap: anywhere; }
.article-prose p { margin: 0 0 1.15rem; }
.news-card__media img,
.article-hero__media img { object-fit: cover; width: 100%; height: 100%; }
@media (max-width: 767.98px) { .article-content-card { padding: 1rem !important; } }

/* v20 newsroom media formats + notification prompt */
.story-badge-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.story-badge--media {
    background: rgba(2, 8, 23, .08);
    color: var(--bg-contrast);
}

.media-type-chip {
    align-items: center;
    background: rgba(2, 8, 23, .82);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 900;
    gap: .4rem;
    left: .85rem;
    letter-spacing: .01em;
    padding: .45rem .7rem;
    position: absolute;
    top: .85rem;
    z-index: 4;
}

.media-type-chip--sm {
    font-size: .72rem;
    padding: .34rem .55rem;
}

.video-embed-wrap video {
    background: #000;
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.article-gallery {
    padding: 1.25rem;
}

.article-gallery__grid {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.article-gallery__item {
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 16px;
    margin: 0;
    overflow: hidden;
}

.article-gallery__item a {
    aspect-ratio: 4 / 3;
    display: block;
}

.article-gallery__item picture,
.article-gallery__item img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.article-gallery__item figcaption {
    color: var(--text-soft);
    font-size: .84rem;
    line-height: 1.45;
    padding: .75rem .85rem;
}

.media-section {
    border-top: 1px solid var(--border);
    margin-top: .5rem;
    padding-top: 1.25rem;
}

.news-grid--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.notification-subscribe-modal {
    align-items: center;
    background: rgba(2, 8, 23, .42);
    display: flex;
    inset: 0;
    justify-content: center;
    opacity: 0;
    padding: 1rem;
    pointer-events: none;
    position: fixed;
    transition: opacity .18s ease;
    z-index: 9000;
}

.notification-subscribe-modal.is-open {
    opacity: 1;
    pointer-events: auto;
}

.notification-subscribe-modal__card {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 24px 70px rgba(2, 8, 23, .24);
    color: #0f2238;
    max-width: 720px;
    padding: 2rem;
    transform: translateY(10px);
    transition: transform .18s ease;
    width: min(100%, 720px);
}

.notification-subscribe-modal.is-open .notification-subscribe-modal__card {
    transform: translateY(0);
}

.notification-subscribe-modal__header {
    align-items: center;
    display: grid;
    gap: 1.5rem;
    grid-template-columns: 120px minmax(0, 1fr);
}

.notification-subscribe-modal__logo {
    max-height: 82px;
    max-width: 120px;
    object-fit: contain;
}

.notification-subscribe-modal__header h2 {
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    font-weight: 500;
    line-height: 1.45;
    margin: 0;
}

.notification-subscribe-modal__grid {
    display: grid;
    gap: 1.35rem 2.5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 3rem 0 2.4rem;
}

.notification-topic {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 1rem;
    margin: 0;
}

.notification-topic input {
    position: absolute;
    opacity: 0;
}

.notification-topic span {
    align-items: center;
    background: #0b7fd3;
    border-radius: 5px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 36px;
    font-size: 1.35rem;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.notification-topic input:not(:checked) + span {
    background: #e7eef5;
    color: transparent;
}

.notification-topic strong {
    font-size: clamp(1rem, 2vw, 1.35rem);
    font-weight: 500;
}

.notification-subscribe-modal__actions {
    align-items: center;
    display: flex;
    gap: 1.25rem;
    justify-content: flex-end;
}

.notification-link-button {
    background: transparent;
    border: 0;
    color: #0877c7;
    font-size: 1.05rem;
    font-weight: 700;
    padding: .8rem 1rem;
}

@media (max-width: 767.98px) {
    .article-gallery__grid,
    .news-grid--compact,
    .notification-subscribe-modal__grid,
    .notification-subscribe-modal__header {
        grid-template-columns: 1fr;
    }

    .notification-subscribe-modal__card {
        padding: 1.25rem;
    }

    .notification-subscribe-modal__grid {
        margin: 1.6rem 0;
    }
}

/* v23 contact page polish + article mid advert */
.contact-showcase {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    align-items: start;
}
.contact-intro-card,
.contact-form-card {
    padding: clamp(1.2rem, 2vw, 1.7rem);
}
.contact-intro-card {
    background: var(--surface) rgba(14,165,164,.16);
}
.contact-intro-card h2 {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: clamp(1.45rem, 2.3vw, 2rem);
    margin: .35rem 0 1rem;
}
.contact-intro-copy {
    margin-bottom: 1.2rem;
}
.contact-quick-grid {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.contact-quick-card {
    background: rgba(14,165,164,.06);
    border: 1px solid rgba(14,165,164,.16);
    border-radius: 20px;
    color: inherit;
    display: grid;
    gap: .28rem;
    min-height: 7.4rem;
    padding: 1rem;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.contact-quick-card:hover {
    background: rgba(14,165,164,.1);
    border-color: rgba(14,165,164,.32);
    color: inherit;
    transform: translateY(-2px);
}
.contact-quick-card i {
    color: var(--primary-strong);
    font-size: 1.15rem;
}
.contact-quick-card span {
    color: var(--text-soft);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.contact-quick-card strong {
    color: var(--bg-contrast);
    font-size: .92rem;
    overflow-wrap: anywhere;
}
.contact-form-card h3 {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    margin: .35rem 0 .45rem;
}
.contact-form-card__lead {
    color: var(--text-soft);
    margin-bottom: 1.15rem;
}
.contact-form label {
    display: grid;
    gap: .38rem;
}
.contact-form label span {
    color: var(--bg-contrast);
    font-size: .82rem;
    font-weight: 800;
}
.contact-form__message {
    margin-top: .85rem;
}
.ad-slot--article-mid {
    margin-block: .1rem;
}
@media (max-width: 991.98px) {
    .contact-showcase {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 767.98px) {
    .contact-quick-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* Continue-reading page shown once after article back navigation */
.continue-reading-intro {
    align-items: center;
    display: flex;
    gap: 1.25rem;
    justify-content: space-between;
    padding: clamp(1.2rem, 2vw, 1.7rem);
}
.continue-reading-intro h1 {
    color: var(--bg-contrast);
    font-size: clamp(1.45rem, 3vw, 2.25rem);
    margin: .2rem 0 .35rem;
}
.continue-reading-intro p {
    color: var(--text-soft);
    margin: 0;
}
.continue-reading-intro__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    justify-content: flex-end;
}
.continue-reading-feature-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1.65fr) minmax(18rem, .8fr);
}
.continue-reading-trending {
    min-width: 0;
}
@media (max-width: 991.98px) {
    .continue-reading-intro {
        align-items: flex-start;
        flex-direction: column;
    }
    .continue-reading-intro__actions {
        justify-content: flex-start;
    }
    .continue-reading-feature-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* Homepage submission card */
.submit-story-card {
    padding: clamp(1.35rem, 2vw, 2rem);
    border-radius: 28px;
}
.submit-story-card .site-kicker {
    display: flex;
    align-items: center;
    gap: .8rem;
    margin-bottom: .55rem;
}
.submit-story-card .site-kicker::before {
    content: "";
    width: 54px;
    height: 1px;
    background: var(--accent, #0e7d79);
}
.submit-story-card h3 {
    font-size: clamp(1.45rem, 2vw, 2rem);
    margin-bottom: .75rem;
}
.submit-story-card p {
    color: var(--text-soft);
    margin-bottom: 1rem;
}
.submit-story-card a {
    color: var(--accent, #0e7d79);
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    gap: .6rem;
}

/* Archive inline adverts */
.archive-inline-ad {
    grid-column: 1 / -1;
    margin-block: .3rem;
}

/* Rebuilt homepage video showcase */
.video-showcase__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr);
    gap: 1rem;
}
.video-feature {
    overflow: hidden;
}
.video-feature__media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}
.video-feature__media img {
    object-fit: cover;
}
.video-play-badge {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    width: 54px;
    height: 54px;
    border-radius: 999px;
    background: rgba(14, 125, 121, .95);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 18px 34px rgba(0, 0, 0, .25);
}
.video-feature__body {
    padding: 1.15rem;
}
.video-feature__body h3 {
    font-size: clamp(1.15rem, 2vw, 1.55rem);
    margin: .7rem 0 .45rem;
}
.video-rail {
    display: grid;
    gap: .8rem;
}
.video-rail__item {
    padding: .7rem;
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: .8rem;
    align-items: center;
}
.video-rail__media {
    aspect-ratio: 16 / 9;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
}
.video-rail__media img {
    object-fit: cover;
}
.video-rail__media span {
    position: absolute;
    inset: auto auto .5rem .5rem;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: rgba(14, 125, 121, .95);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .7rem;
}
.video-rail__item strong {
    display: block;
    line-height: 1.35;
}
.video-rail__item small {
    display: block;
    color: var(--text-soft);
    margin-top: .35rem;
}

/* Live articles */
.live-story-pill {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    border-radius: 999px;
    padding: .38rem .72rem;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
}
.live-story-pill.is-live {
    background: rgba(220, 38, 38, .12);
    color: #dc2626;
}
.live-story-pill.is-live i {
    animation: kisure-live-pulse 1.25s infinite;
}
.live-story-pill.is-ended {
    background: rgba(100, 116, 139, .15);
    color: #475569;
}
@keyframes kisure-live-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .25; }
}
.live-blog-shell {
    padding: clamp(1rem, 2vw, 1.5rem);
}
.live-blog-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.15rem;
}
.live-blog-header h2 {
    margin: .2rem 0 0;
}
.live-updates-feed {
    display: grid;
    gap: 1rem;
}
.live-update {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: .85rem;
}
.live-update__rail {
    position: relative;
}
.live-update__rail::before {
    content: "";
    position: absolute;
    left: 11px;
    top: 0;
    bottom: -1rem;
    width: 2px;
    background: rgba(220, 38, 38, .18);
}
.live-update__rail span {
    position: relative;
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    background: #dc2626;
    border: 5px solid #fff;
    box-shadow: 0 0 0 1px rgba(220, 38, 38, .15);
}
.live-update__card {
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 24px;
    padding: 1rem;
    background: rgba(255, 255, 255, .72);
}
.live-update__meta {
    display: flex;
    gap: .7rem;
    color: var(--text-soft);
    font-size: .82rem;
    margin-bottom: .55rem;
}
.live-update__meta time {
    color: #dc2626;
    font-weight: 800;
}
.live-update__card h3 {
    font-size: 1.12rem;
    margin-bottom: .65rem;
}
.live-update__content > :last-child {
    margin-bottom: 0;
}
.live-update-ad {
    margin-left: 39px;
}
.live-empty-state {
    border-radius: 20px;
    padding: 1rem;
    background: rgba(15, 23, 42, .04);
    color: var(--text-soft);
}
.live-admin-updates {
    display: grid;
    gap: .8rem;
}
.live-admin-update {
    border: 1px solid rgba(15, 23, 42, .12);
    border-radius: 16px;
    padding: .85rem;
}
.live-admin-update summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
}

/* Dark support */
body[data-theme="dark"] .live-update__card,
.dark .live-update__card {
    background:#1c1c1c;
    border-color: rgba(255, 255, 255, .12);
}
body[data-theme="dark"] .live-update__rail span,
.dark .live-update__rail span {
    border-color:#303030;
}

@media (max-width: 767px) {
    .video-showcase__grid {
        grid-template-columns: 1fr;
    }
    .live-update-ad {
        margin-left: 0;
    }
}

.media-type-chip--live,
.story-badge--live {
    background: rgba(220, 38, 38, .92) !important;
    color: #fff !important;
}
.media-type-chip--live i,
.story-badge--live i {
    font-size: .52rem;
    animation: kisure-live-pulse 1.25s infinite;
}


/* Latest live article non-reloading popup */
.latest-live-toast {
    align-items: center;
    background: rgba(15, 23, 42, .94);
    border: 1px solid rgba(248, 113, 113, .32);
    border-radius: 999px;
    box-shadow: 0 22px 60px rgba(2, 8, 23, .32);
    color: #fff;
    display: flex;
    gap: .8rem;
    left: 50%;
    max-width: min(720px, calc(100vw - 2rem));
    min-width: min(420px, calc(100vw - 2rem));
    padding: .72rem .78rem .72rem .72rem;
    position: fixed;
    top: 1rem;
    transform: translate(-50%, -18px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
    z-index: 2200;
}
.latest-live-toast.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}
.latest-live-toast__pulse {
    align-items: center;
    background: rgba(239, 68, 68, .16);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 2.35rem;
    height: 2.35rem;
    justify-content: center;
    width: 2.35rem;
}
.latest-live-toast__pulse span {
    background: #ef4444;
    border-radius: 999px;
    height: .72rem;
    width: .72rem;
    animation: kisure-live-pulse 1.25s infinite;
}
.latest-live-toast__copy {
    display: grid;
    line-height: 1.25;
    min-width: 0;
}
.latest-live-toast__copy strong {
    color: #fca5a5;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.latest-live-toast__copy a {
    color: #fff;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.latest-live-toast button {
    align-items: center;
    background: rgba(255, 255, 255, .1);
    border: 0;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 2rem;
    height: 2rem;
    justify-content: center;
    margin-left: auto;
    width: 2rem;
}
.latest-live-toast button:hover {
    background: rgba(255, 255, 255, .18);
}
@media (max-width: 575.98px) {
    .latest-live-toast {
        border-radius: 22px;
        min-width: 0;
        width: calc(100vw - 1rem);
    }
}


/* New live updates appear automatically without reloading the article page */
.live-update.is-fresh .live-update__card {
    animation: live-update-arrived 1.2s ease;
}
@keyframes live-update-arrived {
    0% {
        border-color: rgba(239, 68, 68, .75);
        box-shadow: 0 0 0 0 rgba(239, 68, 68, .3);
        transform: translateY(-4px);
    }
    100% {
        border-color: rgba(15, 23, 42, .08);
        box-shadow: 0 0 0 16px rgba(239, 68, 68, 0);
        transform: translateY(0);
    }
}
html[data-theme="dark"] .live-update.is-fresh .live-update__card {
    animation-name: live-update-arrived-dark;
}
@keyframes live-update-arrived-dark {
    0% {
        border-color: rgba(248, 113, 113, .78);
        box-shadow: 0 0 0 0 rgba(248, 113, 113, .25);
        transform: translateY(-4px);
    }
    100% {
        border-color: rgba(255, 255, 255, .12);
        box-shadow: 0 0 0 16px rgba(248, 113, 113, 0);
        transform: translateY(0);
    }
}


/* v42 homepage video balance */
.video-showcase__grid {
    align-items: stretch;
}
.video-feature {
    display: grid;
    grid-template-rows: auto 1fr;
}
.video-rail {
    grid-template-rows: repeat(3, minmax(0, 1fr));
    height: 100%;
}
.video-rail__item {
    grid-template-columns: minmax(148px, 38%) minmax(0, 1fr);
    gap: 1rem;
    height: 100%;
    min-height: 0;
    padding: .8rem;
}
.video-rail__media {
    aspect-ratio: auto;
    height: 100%;
    min-height: 104px;
}
.video-rail__item strong {
    font-size: clamp(.98rem, 1.15vw, 1.12rem);
}
@media (max-width: 991.98px) {
    .video-rail {
        grid-template-rows: none;
    }
    .video-rail__item {
        min-height: 126px;
    }
}
@media (max-width: 575.98px) {
    .video-rail__item {
        grid-template-columns: 132px minmax(0, 1fr);
        min-height: 110px;
    }
}


/* v46 live article reactions and live-update images */
.live-blog-header__actions {
    display: flex;
    align-items: center;
    gap: .65rem;
    flex-wrap: wrap;
}
.live-reaction-button {
    align-items: center;
    background: rgba(220, 38, 38, .08);
    border: 1px solid rgba(220, 38, 38, .18);
    border-radius: 999px;
    color: #991b1b;
    display: inline-flex;
    font-weight: 800;
    gap: .45rem;
    min-height: 2.35rem;
    padding: .42rem .78rem;
}
.live-reaction-button i {
    color: #dc2626;
}
.live-reaction-button strong {
    background: rgba(220, 38, 38, .13);
    border-radius: 999px;
    min-width: 1.45rem;
    padding: .12rem .42rem;
}
.live-reaction-button.is-reacted {
    background: #dc2626;
    border-color: #dc2626;
    color: #fff;
}
.live-reaction-button.is-reacted i,
.live-reaction-button.is-reacted strong {
    color: #fff;
}
.live-reaction-button.is-reacted strong {
    background: rgba(255,255,255,.2);
}
.live-update__image {
    border-radius: 20px;
    margin: .2rem 0 .85rem;
    overflow: hidden;
}
.live-update__image img {
    display: block;
    max-height: 520px;
    object-fit: cover;
    width: 100%;
}
@media (max-width: 575.98px) {
    .live-blog-header {
        align-items: flex-start;
        flex-direction: column;
    }
}






/* v49 compact live-update reactions with more-reaction popout */
.live-update-reaction-shell {
    margin-top: 1.15rem;
}

.live-update-reaction-counts {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    position: relative;
}

.live-update-reaction-counts > button {
    align-items: center;
    background: #f4f5f7;
    border: 0;
    border-radius: 999px;
    color: #475569;
    display: inline-flex;
    font-weight: 800;
    gap: .46rem;
    min-height: 2.55rem;
    padding: .42rem .85rem;
    transition: background .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}

.live-update-reaction-counts > button span {
    font-size: 1.36rem;
    line-height: 1;
}

.live-update-reaction-counts > button strong {
    font-size: .98rem;
    font-weight: 800;
}

.live-update-reaction-counts > button:hover,
.live-update-reaction-counts > button.is-selected {
    background: rgba(14, 125, 121, .12);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
    color: #0f172a;
    transform: translateY(-1px);
}

.live-update-more-reactions {
    display: inline-flex;
    position: relative;
}

.live-update-more-trigger {
    align-items: center;
    background: #f4f5f7;
    border: 0;
    border-radius: 999px;
    color: #475569;
    display: inline-flex;
    height: 2.55rem;
    justify-content: center;
    padding: 0;
    transition: background .16s ease, transform .16s ease, box-shadow .16s ease;
    width: 2.55rem;
}

.live-update-more-trigger:hover,
.live-update-more-trigger.is-selected,
.live-update-more-trigger[aria-expanded="true"] {
    background: rgba(14, 125, 121, .12);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
    transform: translateY(-1px);
}

.live-update-more-icon {
    display: inline-flex;
    height: 1.2rem;
    position: relative;
    width: 1.34rem;
}

.live-update-more-icon i {
    font-size: 1.18rem;
    line-height: 1;
}

.live-update-more-icon b {
    background: #f4f5f7;
    border-radius: 999px;
    bottom: -.18rem;
    font-size: .72rem;
    font-weight: 900;
    line-height: 1;
    padding: .02rem;
    position: absolute;
    right: -.18rem;
}

.live-update-more-menu {
    align-items: center;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 999px;
    bottom: calc(100% + .65rem);
    box-shadow: 0 18px 42px rgba(15, 23, 42, .16);
    display: flex;
    flex-wrap: wrap;
    gap: .28rem;
    left: 50%;
    padding: .38rem;
    position: absolute;
    transform: translateX(-50%);
    z-index: 8;
}

.live-update-more-menu[hidden] {
    display: none;
}

.live-update-more-menu button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    height: 2.52rem;
    justify-content: center;
    padding: 0;
    transition: background .16s ease, transform .16s ease;
    width: 2.52rem;
}

.live-update-more-menu button span {
    font-size: 1.62rem;
    line-height: 1;
}

.live-update-more-menu button:hover,
.live-update-more-menu button.is-selected {
    background: rgba(14, 125, 121, .12);
    transform: translateY(-2px) scale(1.08);
}

html[data-theme="dark"] .live-update-reaction-counts > button,
html[data-theme="dark"] .live-update-more-trigger {
    background: rgba(255, 255, 255, .07);
    color: #dbe7f7;
}

html[data-theme="dark"] .live-update-reaction-counts > button:hover,
html[data-theme="dark"] .live-update-reaction-counts > button.is-selected,
html[data-theme="dark"] .live-update-more-trigger:hover,
html[data-theme="dark"] .live-update-more-trigger.is-selected,
html[data-theme="dark"] .live-update-more-trigger[aria-expanded="true"] {
    background: rgba(45, 212, 191, .15);
    color: #f8fbff;
}

html[data-theme="dark"] .live-update-more-icon b {
    background:#242424;
}

html[data-theme="dark"] .live-update-more-menu {
    background:#242424;
    border-color: rgba(255, 255, 255, .12);
}

html[data-theme="dark"] .live-update-more-menu button:hover,
html[data-theme="dark"] .live-update-more-menu button.is-selected {
    background: rgba(45, 212, 191, .15);
}

@media (max-width: 575.98px) {
    .live-update-reaction-counts > button {
        min-height: 2.34rem;
        padding: .35rem .68rem;
    }

    .live-update-reaction-counts > button span {
        font-size: 1.2rem;
    }

    .live-update-more-trigger {
        height: 2.34rem;
        width: 2.34rem;
    }

    .live-update-more-menu {
        border-radius: 22px;
        max-width: min(280px, calc(100vw - 2.25rem));
    }
}


/* v50 full-page skeleton loader */
.site-skeleton-loader {
    background: #f7f8fb;
    inset: 0;
    opacity: 1;
    overflow: hidden;
    pointer-events: all;
    position: fixed;
    transition: opacity .35s ease, visibility .35s ease;
    visibility: visible;
    z-index: 99999;
}

html[data-theme="dark"] .site-skeleton-loader {
    background: #07111f;
}

html:not(.kisure-page-loading) .site-skeleton-loader,
.site-skeleton-loader.is-hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}

.site-skeleton-loader__top {
    background: #040404;
    height: 4.8rem;
    width: 100%;
}

html[data-theme="dark"] .site-skeleton-loader__top {
    background: #020817;
}

.site-skeleton-loader__shell {
    margin: 0 auto;
    padding: 2rem 1rem 5rem;
    width: min(1180px, calc(100% - 1rem));
}

.shimmer-block {
    background: #eff1f4;
    background-size: 220% 100%;
    animation: kisure-skeleton-shimmer 1.25s ease-in-out infinite;
}

html[data-theme="dark"] .shimmer-block {
    background: rgba(148, 163, 184, .12);
    background-size: 220% 100%;
}

.site-skeleton-loader__logo {
    border-radius: 12px;
    height: 3.05rem;
    margin-bottom: 2rem;
    width: min(420px, 70vw);
}

.site-skeleton-loader__search {
    border-radius: 999px;
    height: 4.25rem;
    margin: 0 0 2.2rem;
    position: relative;
    width: 100%;
}

.site-skeleton-loader__search::before {
    background: rgba(255, 255, 255, .42);
    border-radius: 50%;
    content: "";
    height: 2.05rem;
    left: 1.6rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.05rem;
}

html[data-theme="dark"] .site-skeleton-loader__search::before {
    background: rgba(255, 255, 255, .08);
}

.site-skeleton-loader__tabs {
    display: grid;
    gap: 1.6rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 2rem;
}

.site-skeleton-loader__tabs span {
    border-radius: 18px;
    height: 4rem;
}

.site-skeleton-loader__grid {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-skeleton-loader__card {
    background: rgba(255, 255, 255, .74);
    border: 1px solid rgba(15, 23, 42, .04);
    border-radius: 28px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, .05);
    padding: 1.35rem;
}

html[data-theme="dark"] .site-skeleton-loader__card {
    background: rgba(15, 23, 42, .72);
    border-color: rgba(148, 163, 184, .14);
    box-shadow:none;
}

.site-skeleton-loader__media {
    aspect-ratio: 1.15 / 1;
    border-radius: 22px;
    margin-bottom: 1.35rem;
}

.site-skeleton-loader__line {
    border-radius: 12px;
    height: 2rem;
    margin-bottom: 1.25rem;
    width: 82%;
}

.site-skeleton-loader__meta {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.35rem;
}

.site-skeleton-loader__meta span:first-child {
    border-radius: 10px;
    height: 2.2rem;
    width: 3.8rem;
}

.site-skeleton-loader__meta span:last-child {
    border-radius: 10px;
    height: 2.2rem;
    width: 52%;
}

.site-skeleton-loader__footer {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.site-skeleton-loader__footer span {
    border-radius: 10px;
    height: 2rem;
    width: 38%;
}

@keyframes kisure-skeleton-shimmer {
    0% {
        background-position: 120% 0;
    }
    100% {
        background-position: -120% 0;
    }
}

@media (max-width: 767.98px) {
    .site-skeleton-loader__top {
        height: 4.4rem;
    }

    .site-skeleton-loader__shell {
        padding: 1.35rem 1rem 6rem;
    }

    .site-skeleton-loader__logo {
        height: 2.75rem;
        margin-bottom: 1.6rem;
        width: min(360px, 76vw);
    }

    .site-skeleton-loader__search {
        height: 4.6rem;
        margin-bottom: 1.65rem;
    }

    .site-skeleton-loader__tabs {
        gap: 1rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-skeleton-loader__tabs span {
        height: 3.35rem;
    }

    .site-skeleton-loader__grid {
        gap: 1.35rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-skeleton-loader__card {
        border-radius: 22px;
        padding: .85rem;
    }

    .site-skeleton-loader__media {
        border-radius: 18px;
        margin-bottom: 1rem;
    }

    .site-skeleton-loader__line {
        height: 1.55rem;
        width: 86%;
    }

    .site-skeleton-loader__meta,
    .site-skeleton-loader__footer {
        gap: .7rem;
    }
}

@media (max-width: 480px) {
    .site-skeleton-loader__grid {
        grid-template-columns: 1fr;
    }

    .site-skeleton-loader__tabs {
        grid-template-columns: 1fr 1fr;
    }

    .site-skeleton-loader__card:nth-child(n/**/+3) {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .shimmer-block {
        animation: none;
    }

    .site-skeleton-loader {
        transition: none;
    }
}


/* v52 route-aware Kisure skeleton loader and full-card grid repair */
.site-skeleton-loader {
    background: #edf2f7;
    inset: 0;
    opacity: 1;
    overflow: auto;
    pointer-events: all;
    position: fixed;
    transition: opacity .28s ease, visibility .28s ease;
    visibility: visible;
    z-index: 99999;
}

html[data-theme="dark"] .site-skeleton-loader {
    background: #0b1424;
}

html:not(.kisure-page-loading) .site-skeleton-loader,
.site-skeleton-loader.is-hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}

.kisure-skeleton-shell {
    margin: 0 auto;
    padding: .85rem 1rem 3rem;
    width: min(760px, calc(100% - 1rem));
}

.site-skeleton-loader--article .kisure-skeleton-shell {
    width: min(980px, calc(100% - 1rem));
}

.kisure-skeleton-header {
    align-items: center;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 999px;
    display: grid;
    gap: .8rem;
    grid-template-columns: 150px 1fr 92px;
    margin-bottom: .75rem;
    padding: .55rem .75rem;
}

html[data-theme="dark"] .kisure-skeleton-header,
html[data-theme="dark"] .kisure-skeleton-home-hero,
html[data-theme="dark"] .kisure-skeleton-page-hero,
html[data-theme="dark"] .kisure-skeleton-news-card,
html[data-theme="dark"] .kisure-skeleton-feature-card,
html[data-theme="dark"] .kisure-skeleton-article,
html[data-theme="dark"] .kisure-skeleton-rail-item {
    background: rgba(15,23,42,.86);
    border-color: rgba(148,163,184,.18);
}

.kisure-skeleton-logo,
.kisure-skeleton-actions,
.kisure-skeleton-ad,
.kisure-skeleton-media,
.kisure-skeleton-title,
.kisure-skeleton-section-title,
.kisure-skeleton-card-title,
.kisure-skeleton-card-text,
.kisure-skeleton-chip,
.kisure-skeleton-panel,
.kisure-skeleton-kicker,
.kisure-skeleton-page-title,
.kisure-skeleton-page-summary,
.kisure-skeleton-article-title,
.kisure-skeleton-article-meta,
.kisure-skeleton-paragraph,
.kisure-skeleton-chip-row span,
.kisure-skeleton-nav span,
.kisure-skeleton-card-footer span,
.kisure-skeleton-rail-item span,
.kisure-skeleton-rail-item b,
.kisure-skeleton-rail-item small {
    border-radius: 14px;
}

.kisure-skeleton-logo { height: 2.05rem; }
.kisure-skeleton-actions { height: 2rem; }
.kisure-skeleton-nav {
    align-items: center;
    display: flex;
    gap: .55rem;
    justify-content: center;
}
.kisure-skeleton-nav span {
    height: .78rem;
    width: 4.4rem;
}
.kisure-skeleton-ad {
    height: 4.5rem;
    margin-bottom: .75rem;
}

.kisure-skeleton-home-hero,
.kisure-skeleton-page-hero,
.kisure-skeleton-news-card,
.kisure-skeleton-feature-card,
.kisure-skeleton-article,
.kisure-skeleton-rail-item {
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(15,23,42,.08);
    box-shadow: 0 14px 34px rgba(15,23,42,.05);
}

.kisure-skeleton-home-hero {
    border-radius: 22px;
    display: grid;
    gap: .85rem;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, .95fr);
    margin-bottom: 1.1rem;
    padding: .75rem;
}

.kisure-skeleton-home-main,
.kisure-skeleton-news-card,
.kisure-skeleton-feature-card {
    border-radius: 18px;
    overflow: hidden;
    padding: .65rem;
}

.kisure-skeleton-home-rail {
    display: grid;
    gap: .7rem;
}

.kisure-skeleton-rail-item {
    align-items: center;
    border-radius: 16px;
    display: grid;
    gap: .65rem;
    grid-template-columns: 92px 1fr;
    padding: .65rem;
}

.kisure-skeleton-rail-item > span {
    aspect-ratio: 16 / 10;
}
.kisure-skeleton-rail-item b,
.kisure-skeleton-rail-item small {
    display: block;
    height: .95rem;
    margin-bottom: .55rem;
}
.kisure-skeleton-rail-item b { width: 100%; }
.kisure-skeleton-rail-item small { width: 58%; }

.kisure-skeleton-media { aspect-ratio: 4 / 3; }
.kisure-skeleton-media--hero { aspect-ratio: 16 / 10; margin-bottom: .65rem; }
.kisure-skeleton-media--feature { aspect-ratio: 16 / 9; margin-bottom: .75rem; }
.kisure-skeleton-media--article { aspect-ratio: 16 / 9; margin: 1.2rem 0; }

.kisure-skeleton-title {
    height: 2rem;
    width: 88%;
}
.kisure-skeleton-section-title {
    height: 1.5rem;
    margin: 0 0 .85rem;
    width: 260px;
}
.kisure-skeleton-layout {
    display: grid;
    gap: 1rem;
}
.kisure-skeleton-layout--with-sidebar {
    grid-template-columns: minmax(0, 1fr) 220px;
}
.kisure-skeleton-card-grid {
    display: grid;
    gap: .95rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.kisure-skeleton-card-grid--archive {
    margin-top: .9rem;
}

.kisure-skeleton-news-card {
    min-height: 21rem;
}
.kisure-skeleton-news-card .kisure-skeleton-media {
    margin-bottom: .65rem;
}
.kisure-skeleton-chip {
    height: 1.15rem;
    margin-bottom: .55rem;
    width: 5.5rem;
}
.kisure-skeleton-card-title {
    height: 2.2rem;
    margin-bottom: .55rem;
    width: 94%;
}
.kisure-skeleton-card-text {
    height: 2.6rem;
    margin-bottom: .65rem;
    width: 100%;
}
.kisure-skeleton-card-footer {
    display: flex;
    justify-content: space-between;
    gap: .6rem;
}
.kisure-skeleton-card-footer span {
    height: 1.2rem;
    width: 44%;
}

.kisure-skeleton-sidebar {
    display: grid;
    gap: .9rem;
}
.kisure-skeleton-panel { height: 8.5rem; }
.kisure-skeleton-panel--small { height: 5.8rem; }

.kisure-skeleton-page-hero,
.kisure-skeleton-article {
    border-radius: 28px;
    margin-bottom: 1.1rem;
    padding: 1.25rem;
}
.kisure-skeleton-kicker {
    height: 1rem;
    margin-bottom: .85rem;
    width: 7.5rem;
}
.kisure-skeleton-page-title {
    height: 3rem;
    margin-bottom: .85rem;
    width: 56%;
}
.kisure-skeleton-page-summary {
    height: 1.55rem;
    margin-bottom: 1rem;
    width: 76%;
}
.kisure-skeleton-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}
.kisure-skeleton-chip-row span {
    height: 2rem;
    width: 6rem;
}
.kisure-skeleton-feature-card {
    margin-bottom: 1rem;
}
.kisure-skeleton-article-title {
    height: 4rem;
    margin-bottom: 1rem;
    width: 86%;
}
.kisure-skeleton-article-meta {
    height: 1.4rem;
    width: 42%;
}
.kisure-skeleton-paragraph {
    height: 4.8rem;
    margin-bottom: .85rem;
    width: 100%;
}
.kisure-skeleton-paragraph--short { width: 70%; }

.shimmer-block {
    background: #eff1f4;
    background-size: 220% 100%;
    animation: kisure-skeleton-shimmer 1.15s ease-in-out infinite;
}
html[data-theme="dark"] .shimmer-block {
    background: rgba(148,163,184,.12);
    background-size: 220% 100%;
}
@keyframes kisure-skeleton-shimmer {
    0% { background-position: 120% 0; }
    100% { background-position: -120% 0; }
}

/* v53 card grid repair: show more articles, do not squeeze existing cards */
.news-grid,
.news-grid--cards {
    align-items: stretch;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.content-grid .news-grid,
.content-grid .news-grid--cards,
.stack-grid .news-grid,
.stack-grid .news-grid--cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.news-grid--compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.news-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    width: 100%;
}

.news-card > a {
    display: block;
    flex: 0 0 auto;
}

.news-card__media,
.story-tile__media,
.hero-story__media {
    background: rgba(249,115,22,.15);
}

.news-card__media img,
.story-tile__media img,
.hero-story__media img {
    background-color: var(--surface-strong);
}

.news-card__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.news-card__excerpt {
    flex: 1 1 auto;
}

.news-card__footer {
    margin-top: auto;
}

.news-card img.kisure-image-fallback,
.story-tile img.kisure-image-fallback,
.hero-story img.kisure-image-fallback {
    object-fit: cover;
}

/* A full-width ad should come after complete rows. The views now insert it after 6 articles. */
.archive-inline-ad {
    grid-column: 1 / -1;
}

@media (max-width: 991.98px) {
    .news-grid,
    .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .news-grid--compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .news-grid,
    .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .news-grid--compact {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 991.98px) {
    .kisure-skeleton-layout--with-sidebar {
        grid-template-columns: 1fr;
    }
    .kisure-skeleton-sidebar {
        display: none;
    }
    .kisure-skeleton-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .site-skeleton-loader--article .kisure-skeleton-shell,
    .kisure-skeleton-shell {
        width: min(720px, calc(100% - 1rem));
    }
}

@media (max-width: 767.98px) {
    .kisure-skeleton-header {
        grid-template-columns: 120px 1fr 54px;
    }
    .kisure-skeleton-nav span:nth-child(n/**/+3) {
        display: none;
    }
    .kisure-skeleton-home-hero {
        grid-template-columns: 1fr;
    }
    .kisure-skeleton-page-title,
    .kisure-skeleton-article-title {
        width: 92%;
    }
}

@media (max-width: 520px) {
    .kisure-skeleton-card-grid {
        grid-template-columns: 1fr;
    }
    .kisure-skeleton-news-card:nth-child(n/**/+4) {
        display: none;
    }
    .kisure-skeleton-rail-item {
        grid-template-columns: 86px 1fr;
    }
}

@supports not selector(:has(*)) {
    .news-grid,
    .news-grid--cards {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
    }
}

@media (prefers-reduced-motion: reduce) {
    .shimmer-block {
        animation: none;
    }
    .site-skeleton-loader {
        transition: none;
    }
}


/* v53 final override: never compress homepage/category/tag cards into skinny four-column cards */
@media (min-width: 992px) {
    .news-grid,
    .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .news-grid--compact {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 992px) and (max-width: 1180px) {
    .content-grid .news-grid,
    .content-grid .news-grid--cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .news-grid,
    .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .news-grid--compact {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 520px) {
    .news-grid,
    .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .news-grid--compact {
        grid-template-columns: 1fr !important;
    }
}


/* v54 final public layout fixes */

/* Page-aware skeleton loader should use the real site width and not look zoomed inside. */
.kisure-skeleton-shell {
    width: min(1540px, calc(100% - 1.5rem)) !important;
    max-width: 1540px !important;
}
.site-skeleton-loader--article .kisure-skeleton-shell {
    width: min(1180px, calc(100% - 1.5rem)) !important;
}
.kisure-skeleton-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.kisure-skeleton-layout--with-sidebar {
    grid-template-columns: minmax(0, 1fr) 320px !important;
}
@media (max-width: 1180px) {
    .kisure-skeleton-layout--with-sidebar {
        grid-template-columns: 1fr !important;
    }
    .kisure-skeleton-sidebar {
        display: none !important;
    }
}
@media (max-width: 767.98px) {
    .kisure-skeleton-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 520px) {
    .kisure-skeleton-card-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Do not compress news cards. Add more stories in PHP and keep balanced row sizes. */
.news-grid,
.news-grid--cards,
.stack-grid .news-grid,
.stack-grid .news-grid--cards {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
}
.content-grid .news-grid,
.content-grid .news-grid--cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.archive-inline-ad {
    grid-column: 1 / -1 !important;
}
.news-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 100% !important;
}
.news-card__body {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}
.news-card__excerpt {
    flex: 1 1 auto !important;
}
.news-card__footer {
    margin-top: auto !important;
}
@media (max-width: 1180px) {
    .content-grid .news-grid,
    .content-grid .news-grid--cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 767.98px) {
    .news-grid,
    .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 520px) {
    .news-grid,
    .news-grid--cards,
    .stack-grid .news-grid,
    .stack-grid .news-grid--cards,
    .content-grid .news-grid,
    .content-grid .news-grid--cards {
        grid-template-columns: 1fr !important;
    }
}

/* Ended live articles should not look like currently live red alerts. */
.media-type-chip--ended,
.story-badge--ended,
.live-story-pill.is-ended {
    background: rgba(15, 23, 42, .08) !important;
    color: #475569 !important;
}
.media-type-chip--ended i,
.story-badge--ended i,
.live-story-pill.is-ended i {
    animation: none !important;
    color: #64748b !important;
}
html[data-theme="dark"] .media-type-chip--ended,
html[data-theme="dark"] .story-badge--ended,
html[data-theme="dark"] .live-story-pill.is-ended {
    background: rgba(148, 163, 184, .16) !important;
    color: #d7e3f4 !important;
}

/* Keep video/gallery indication only on media image, not as a second Watch/Photos badge after category. */
.story-badge-row .story-badge--media {
    display: none !important;
}

/* Homepage video section: better background, balanced image shapes, no prolonged thumbnails. */
.video-showcase {
    background: rgba(239,246,255,.76) !important;
    border: 1px solid rgba(14, 125, 121, .12) !important;
    border-radius: 28px !important;
    padding: clamp(1rem, 2vw, 1.35rem) !important;
    overflow: hidden;
}
html[data-theme="dark"] .video-showcase {
    background: rgba(8, 16, 31, .82) !important;
}
.video-showcase__grid {
    align-items: stretch !important;
    grid-template-columns: minmax(0, 1.32fr) minmax(320px, .82fr) !important;
    gap: 1rem !important;
}
.video-feature {
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 24px !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08) !important;
}
.video-feature__media {
    aspect-ratio: 16 / 9 !important;
    max-height: 430px !important;
}
.video-feature__media img,
.video-rail__media img {
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    width: 100% !important;
}
.video-rail {
    display: grid !important;
    gap: .9rem !important;
    grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
}
.video-rail__item {
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 24px !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06) !important;
    display: grid !important;
    grid-template-columns: minmax(128px, 40%) minmax(0, 1fr) !important;
    gap: 1rem !important;
    min-height: 142px !important;
    padding: .85rem !important;
}
.video-rail__media {
    aspect-ratio: 16 / 10 !important;
    height: 100% !important;
    min-height: 112px !important;
}
.video-rail__item strong {
    font-size: clamp(1rem, 1.15vw, 1.2rem) !important;
    line-height: 1.25 !important;
}
@media (max-width: 991.98px) {
    .video-showcase__grid {
        grid-template-columns: 1fr !important;
    }
    .video-rail {
        grid-template-rows: none !important;
    }
    .video-rail__item {
        min-height: 124px !important;
    }
}
@media (max-width: 575.98px) {
    .video-rail__item {
        grid-template-columns: 122px minmax(0, 1fr) !important;
    }
    .video-rail__media {
        min-height: 92px !important;
    }
}


/* v55: loader must never create its own scroll page */
.site-skeleton-loader,
.site-skeleton-loader--home,
.site-skeleton-loader--category,
.site-skeleton-loader--tag,
.site-skeleton-loader--author,
.site-skeleton-loader--search,
.site-skeleton-loader--archive,
.site-skeleton-loader--article {
    height: 100dvh !important;
    max-height: 100dvh !important;
    min-height: 100dvh !important;
    overflow: hidden !important;
}
.site-skeleton-loader .kisure-skeleton-shell {
    height: 100% !important;
    overflow: hidden !important;
    padding-bottom: 1rem !important;
}
.site-skeleton-loader--article .kisure-skeleton-shell {
    width: min(1180px, calc(100% - 1.5rem)) !important;
}
.kisure-skeleton-layout--with-sidebar {
    max-height: calc(100dvh - 15rem) !important;
    overflow: hidden !important;
}

/* v55: video rail cards after the main hero are visual cards only */
.video-rail__item {
    display: block !important;
    min-height: 0 !important;
    padding: .55rem !important;
}
.video-rail__item > div:not(.video-rail__media) {
    display: none !important;
}
.video-rail__media {
    aspect-ratio: 16 / 10 !important;
    border-radius: 20px !important;
    min-height: 0 !important;
    width: 100% !important;
}
.video-rail__media img {
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    width: 100% !important;
}
.video-rail {
    align-content: stretch !important;
    grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
}

/* v55: ended live status should stay on the image chip, not after category */
.story-badge-row .story-badge--ended {
    display: none !important;
}
.media-type-chip--ended {
    background: rgba(15, 23, 42, .70) !important;
    color: #fff !important;
}
.media-type-chip--ended i {
    color: #cbd5e1 !important;
}

/* Article auto-load */
.article-autoload-trigger {
    display: flex;
    justify-content: center;
    margin: 1.2rem 0 .2rem;
    min-height: 2.5rem;
}
.article-autoload-pill {
    align-items: center;
    background: rgba(14, 125, 121, .10);
    border: 1px solid rgba(14, 125, 121, .18);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    font-size: .86rem;
    font-weight: 800;
    gap: .5rem;
    padding: .58rem 1rem;
}
html[data-theme="dark"] .article-autoload-pill {
    background: rgba(45, 212, 191, .12);
    border-color: rgba(45, 212, 191, .22);
    color: #99f6e4;
}


/* v56 video feature excerpt */
.video-feature__excerpt {
    color: var(--text-soft);
    font-size: .98rem;
    line-height: 1.6;
    margin: .35rem 0 .8rem;
}

/* v56 full article auto-load */
.full-article-autoload-section {
    margin-top: 1.25rem;
}
.full-article-autoload-feed {
    display: grid;
    gap: 1.35rem;
}
.full-article-card {
    padding: clamp(1rem, 2vw, 1.45rem);
}
.full-article-card__header h2 {
    color: var(--text-strong);
    font-size: clamp(1.45rem, 2.4vw, 2.35rem);
    line-height: 1.08;
    margin: .45rem 0 .55rem;
}
.full-article-card__media {
    border-radius: 24px;
    display: block;
    margin: 1rem 0;
    overflow: hidden;
    position: relative;
}
.full-article-card__media img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
    width: 100%;
}
.full-article-card__content {
    color: var(--text-soft);
    font-size: 1.02rem;
    line-height: 1.8;
    white-space: pre-line;
}
.full-article-card__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 1rem;
}

/* v56 push subscriber admin cards */
.admin-stat-card {
    background: var(--admin-surface, rgba(255,255,255,.08));
    border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 22px;
    padding: 1.1rem;
}
.admin-stat-card span {
    color: var(--text-soft, #64748b);
    display: block;
    font-weight: 800;
    margin-bottom: .35rem;
}
.admin-stat-card strong {
    font-size: 2rem;
}
.notification-subscribe-modal__header p {
    color: var(--text-soft);
    margin: .35rem 0 0;
}


/* v57 redesigned web push popup */
.notification-subscribe-modal {
    align-items: center !important;
    background: rgba(15, 23, 42, .46) !important;
    display: flex !important;
    inset: 0 !important;
    justify-content: center !important;
    padding: 1rem !important;
    position: fixed !important;
    z-index: 99998 !important;
}
.notification-subscribe-modal[hidden] {
    display: none !important;
}
.notification-subscribe-modal__card {
    background: #fff !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: 30px !important;
    box-shadow: 0 30px 80px rgba(15, 23, 42, .24) !important;
    display: grid !important;
    gap: 1.2rem !important;
    grid-template-columns: minmax(260px, .78fr) minmax(320px, 1fr) !important;
    max-height: min(86vh, 760px) !important;
    max-width: 940px !important;
    overflow: auto !important;
    padding: clamp(1.1rem, 2.4vw, 1.8rem) !important;
    position: relative !important;
    width: min(940px, calc(100vw - 2rem)) !important;
}
.notification-subscribe-modal__close {
    align-items: center;
    background: rgba(15, 23, 42, .06);
    border: 0;
    border-radius: 999px;
    color: #334155;
    display: inline-flex;
    height: 2.2rem;
    justify-content: center;
    position: absolute;
    right: 1rem;
    top: 1rem;
    width: 2.2rem;
}
.notification-subscribe-modal__hero {
    background: #eef6ff;
    border-radius: 24px;
    padding: 1.35rem;
}
.notification-subscribe-modal__brand {
    align-items: center;
    display: flex;
    gap: .75rem;
    margin-bottom: 1.2rem;
}
.notification-subscribe-modal__logo {
    height: 42px !important;
    max-width: 150px !important;
    object-fit: contain !important;
}
.notification-subscribe-modal__brand span {
    background: rgba(14, 125, 121, .12);
    border-radius: 999px;
    color: #0e7d79;
    font-size: .76rem;
    font-weight: 900;
    padding: .35rem .65rem;
    text-transform: uppercase;
}
.notification-subscribe-modal__hero h2 {
    color: #0f172a !important;
    font-size: clamp(1.65rem, 3vw, 2.55rem) !important;
    line-height: 1.04 !important;
    margin: 0 0 .8rem !important;
}
.notification-subscribe-modal__hero p {
    color: #64748b !important;
    font-size: 1rem !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}
.notification-subscribe-modal__content {
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
    min-width: 0;
    padding: 1.2rem .6rem .4rem;
}
.notification-subscribe-modal__grid {
    display: grid !important;
    gap: .7rem !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-height: 360px !important;
    overflow: auto !important;
    padding-right: .3rem !important;
}
.notification-topic {
    align-items: center !important;
    background: #f8fafc !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: 16px !important;
    display: flex !important;
    gap: .7rem !important;
    padding: .7rem !important;
}
.notification-topic span {
    align-items: center !important;
    background: #0e7d79 !important;
    border-radius: 12px !important;
    color: #fff !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    height: 2.1rem !important;
    justify-content: center !important;
    width: 2.1rem !important;
}
.notification-topic strong {
    color: #0f172a !important;
    font-size: .98rem !important;
    line-height: 1.2 !important;
}
.notification-subscribe-modal__actions {
    align-items: center !important;
    display: flex !important;
    gap: 1rem !important;
    justify-content: flex-end !important;
}
@media (max-width: 760px) {
    .notification-subscribe-modal__card {
        grid-template-columns: 1fr !important;
        max-height: 92vh !important;
    }
    .notification-subscribe-modal__grid {
        grid-template-columns: 1fr !important;
    }
}

/* v57 full article autoload: use article-like design and stop at two */
.full-article-autoload-section {
    margin-top: 2rem !important;
}
.full-article-autoload-section .section-heading {
    display: none !important;
}
.full-article-card {
    margin: 0 auto 1.5rem !important;
    max-width: 980px !important;
}
.full-article-card.article-shell {
    padding: clamp(1rem, 2vw, 1.55rem) !important;
}
.full-article-card__header h1 {
    color: var(--text-strong) !important;
    font-size: clamp(1.85rem, 3vw, 3.35rem) !important;
    letter-spacing: -.04em !important;
    line-height: 1.02 !important;
}
.full-article-card__media img {
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    object-fit: cover !important;
    width: 100% !important;
}
.full-article-inline-ad {
    margin: 1.4rem auto !important;
    max-width: 980px !important;
}

/* v57 live-ended should match homepage: image chip only, no body badge */
.story-badge--ended {
    display: none !important;
}
.media-type-chip--ended {
    background: #dc3545 !important;
    color: #fff !important;
}
.media-type-chip--ended i {
    color: rgba(255,255,255,.82) !important;
}


/* v58: web push popup no internal scrollers and buttons work cleanly */
.notification-subscribe-modal {
    overflow: hidden !important;
}
.notification-subscribe-modal__card {
    max-height: none !important;
    overflow: visible !important;
}
.notification-subscribe-modal__grid {
    max-height: none !important;
    overflow: visible !important;
}
@media (max-height: 720px), (max-width: 760px) {
    .notification-subscribe-modal {
        align-items: flex-start !important;
        overflow: auto !important;
        padding: .75rem !important;
    }
    .notification-subscribe-modal__card {
        max-height: none !important;
    }
}

/* v58: live ended must look like media badge only */
.story-badge--ended {
    display: none !important;
}
.media-type-chip--ended {
    background: #dc3545 !important;
    color: #fff !important;
}
.media-type-chip--ended i {
    color: rgba(255,255,255,.82) !important;
}

/* v58: full article auto-load should be invisible until real articles arrive */
.full-article-autoload-section {
    margin-top: 1.5rem !important;
}
.full-article-autoload-section .section-heading {
    display: none !important;
}
.article-autoload-trigger {
    min-height: 0 !important;
}
.article-autoload-trigger .article-autoload-pill {
    opacity: .92;
}
.full-article-autoload-feed:empty + .article-autoload-trigger {
    margin-top: .8rem !important;
}
.full-article-card.article-shell {
    margin: 0 auto 1.5rem !important;
    max-width: 980px !important;
    padding: clamp(1rem, 2vw, 1.55rem) !important;
}
.full-article-card__header h1 {
    color: var(--text-strong) !important;
    font-size: clamp(1.85rem, 3vw, 3.35rem) !important;
    letter-spacing: -.04em !important;
    line-height: 1.02 !important;
}
.full-article-card__media img {
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    object-fit: cover !important;
    width: 100% !important;
}
.full-article-inline-ad {
    margin: 1.4rem auto !important;
    max-width: 980px !important;
}


/* v59: readable live badges in dark mode and one wording everywhere */
html[data-theme="dark"] .media-type-chip--live,
html[data-theme="dark"] .story-badge--live {
    background: #ef4444 !important;
    color: #ffffff !important;
    box-shadow:none!important;
}
html[data-theme="dark"] .media-type-chip--live i,
html[data-theme="dark"] .story-badge--live i {
    color: #ffffff !important;
}
.media-type-chip--ended {
    background: #ef4444 !important;
    color: #ffffff !important;
    box-shadow: 0 14px 30px rgba(239, 68, 68, .18) !important;
}
.media-type-chip--ended i {
    color: #ffffff !important;
}
html[data-theme="dark"] .media-type-chip--ended {
    background: #ef4444 !important;
    color: #ffffff !important;
}

/* Hide ended body badge only; active live in body can still show where intended */
.story-badge--ended {
    display: none !important;
}

/* v59: push popup topic selection works visually */
.notification-subscribe-modal__toolbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: .65rem;
}
.notification-select-all-button {
    align-items: center;
    background: rgba(14, 125, 121, .10);
    border: 1px solid rgba(14, 125, 121, .18);
    border-radius: 999px;
    color: #0e7d79;
    display: inline-flex;
    font-weight: 900;
    gap: .45rem;
    padding: .55rem .85rem;
}
.notification-topic {
    user-select: none;
}
.notification-topic input:not(:checked) + span,
.notification-topic:not(.is-checked) span {
    background: #e2e8f0 !important;
    color: transparent !important;
}
.notification-topic input:checked + span,
.notification-topic.is-checked span {
    background: #0e7d79 !important;
    color: #fff !important;
}
.notification-topic.is-checked {
    border-color: rgba(14, 125, 121, .30) !important;
    background: rgba(14, 125, 121, .06) !important;
}

/* v59: browser support message styling remains graceful even where Web Push APIs differ */
.notification-subscribe-modal__hero p {
    max-width: 34rem;
}

/* v59: article auto-load failure should not stay stuck */
.article-autoload-trigger.is-loading .article-autoload-pill {
    opacity: 1;
}


/* v60: restore section headings; only news/article category chips get the improved category color */
.news-card__body > .story-badge,
.hero-story__content > .story-badge,
.article-header .article-kicker,
.full-article-card__header .article-kicker {
    background: rgba(255, 237, 213, .98) !important;
    border: 1px solid rgba(249, 115, 22, .14) !important;
    color: #ea580c !important;
}

html[data-theme="dark"] .news-card__body > .story-badge,
html[data-theme="dark"] .hero-story__content > .story-badge,
html[data-theme="dark"] .article-header .article-kicker,
html[data-theme="dark"] .full-article-card__header .article-kicker {
    background: rgba(249, 115, 22, .18) !important;
    border-color: rgba(251, 146, 60, .18) !important;
    color: #fb923c !important;
}

/* v60: keep Live ended ONLY on image/media badges, never after category/body */
.news-card__body .story-badge--live,
.news-card__body .story-badge--ended,
.hero-story__content .story-badge--live,
.hero-story__content .story-badge--ended,
.story-badge-row .story-badge--live,
.story-badge-row .story-badge--ended {
    display: none !important;
}

.media-type-chip--ended,
html[data-theme="dark"] .media-type-chip--ended {
    background: #ef4444 !important;
    color: #ffffff !important;
    box-shadow:none!important;
}

.media-type-chip--ended i,
html[data-theme="dark"] .media-type-chip--ended i {
    color: #ffffff !important;
}

/* v60: make live badge readable in dark mode */
html[data-theme="dark"] .media-type-chip--live,
html[data-theme="dark"] .story-badge--live {
    background: #ef4444 !important;
    color: #fff !important;
    box-shadow:none!important;
}

/* v60: push popup topic and Allow All placement */
.notification-subscribe-modal__toolbar {
    display: none !important;
}

.notification-subscribe-modal__actions {
    align-items: center !important;
    display: grid !important;
    gap: .75rem !important;
    grid-template-columns: 1fr auto auto !important;
}

.notification-select-all-button {
    align-items: center;
    background: rgba(14, 125, 121, .10);
    border: 1px solid rgba(14, 125, 121, .18);
    border-radius: 999px;
    color: #0e7d79;
    display: inline-flex;
    font-weight: 900;
    gap: .45rem;
    justify-content: center;
    padding: .74rem 1rem;
}

.notification-topic {
    cursor: pointer !important;
    user-select: none !important;
}

.notification-topic input:not(:checked) + span,
.notification-topic:not(.is-checked) span {
    background: #e2e8f0 !important;
    color: transparent !important;
}

.notification-topic input:checked + span,
.notification-topic.is-checked span {
    background: #0e7d79 !important;
    color: #fff !important;
}

.notification-topic.is-checked {
    background: rgba(14, 125, 121, .06) !important;
    border-color: rgba(14, 125, 121, .30) !important;
}

/* v60: full articles loaded below article; no endless spinner */
.full-article-autoload-section {
    margin-top: 1.25rem !important;
}

.full-article-autoload-feed:empty + .article-autoload-trigger {
    display: none !important;
}

.full-article-card.article-shell {
    margin: 0 auto 1.5rem !important;
    max-width: 980px !important;
    padding: clamp(1rem, 2vw, 1.55rem) !important;
}

.full-article-card__header h1 {
    color: var(--text-strong) !important;
    font-size: clamp(1.85rem, 3vw, 3.35rem) !important;
    letter-spacing: -.04em !important;
    line-height: 1.02 !important;
}

.full-article-card__media img {
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    object-fit: cover !important;
    width: 100% !important;
}

.full-article-inline-ad {
    margin: 1.4rem auto !important;
    max-width: 980px !important;
}

@media (max-width: 760px) {
    .notification-subscribe-modal__actions {
        grid-template-columns: 1fr !important;
    }
}

/* v61: web push popup category expansion and no-wrap buttons */
.notification-subscribe-modal__content {
    min-width: 0 !important;
}
.notification-subscribe-modal__grid {
    max-height: min(58vh, 520px) !important;
    overflow-y: auto !important;
    padding-right: 6px !important;
    scrollbar-width: thin;
}
.notification-topic,
.notification-select-all-button,
.notification-link-button,
.notification-subscribe-modal .site-button {
    white-space: nowrap !important;
}
.notification-topic strong,
.notification-select-all-button span,
.notification-link-button,
.notification-subscribe-modal .site-button span {
    white-space: nowrap !important;
}
.notification-subscribe-modal__actions {
    align-items: center !important;
    gap: 18px !important;
}
.notification-select-all-button,
.notification-subscribe-modal .site-button {
    min-width: max-content !important;
}
.full-article-autoload-section {
    margin-top: 2rem !important;
}
.full-article-autoload-feed {
    display: grid !important;
    gap: 1.25rem !important;
}
.full-article-autoload-feed:empty + .article-autoload-trigger {
    display: flex !important;
}
.article-autoload-trigger {
    min-height: 64px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}
.article-autoload-trigger .article-autoload-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: .6rem !important;
    border-radius: 999px !important;
    padding: .8rem 1.1rem !important;
    background: rgba(14, 125, 121, .10) !important;
    border: 1px solid rgba(14, 125, 121, .22) !important;
    color: #0e7d79 !important;
    font-weight: 900 !important;
}
@media (max-width: 760px) {
    .notification-subscribe-modal__grid {
        max-height: 48vh !important;
    }
    .notification-subscribe-modal__actions {
        grid-template-columns: 1fr !important;
    }
    .notification-select-all-button,
    .notification-link-button,
    .notification-subscribe-modal .site-button {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* v62: auto-load full articles must render like real article pages, not broken summary cards */
.full-article-autoload-section {
    margin-top: clamp(2rem, 5vw, 4rem) !important;
}

.full-article-autoload-feed {
    display: block !important;
}

.auto-loaded-full-article {
    max-width: 1180px !important;
    margin: 0 auto !important;
}

.auto-loaded-full-article + .auto-loaded-full-article,
.auto-loaded-full-article__separator-ad + .auto-loaded-full-article {
    margin-top: clamp(2rem, 5vw, 4rem) !important;
}

.auto-loaded-full-article__permalink {
    display: inline-flex !important;
    align-items: center !important;
    gap: .55rem !important;
    margin: 0 0 1rem !important;
    width: auto !important;
    min-height: 0 !important;
    border-radius: 999px !important;
    padding: .72rem 1rem !important;
    background: rgba(14, 125, 121, .10) !important;
    border: 1px solid rgba(14, 125, 121, .18) !important;
    color: #0e7d79 !important;
    font-size: .86rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.auto-loaded-full-article__permalink:hover {
    background: rgba(14, 125, 121, .16) !important;
    color: #075f5b !important;
}

.auto-loaded-full-article__title-link {
    color: inherit !important;
    text-decoration: none !important;
}

.auto-loaded-full-article__hero,
.auto-loaded-full-article__content-card,
.auto-loaded-full-article__author,
.auto-loaded-full-article__tags {
    width: 100% !important;
    max-width: 100% !important;
}

.auto-loaded-full-article .article-hero__media img,
.auto-loaded-full-article .article-hero__media picture,
.auto-loaded-full-article .article-hero__media video,
.auto-loaded-full-article .video-embed-wrap,
.auto-loaded-full-article .social-embed-wrap {
    max-width: 100% !important;
}

.auto-loaded-full-article .article-prose {
    max-width: none !important;
}

.auto-loaded-full-article__separator-ad {
    max-width: 1180px !important;
    margin: clamp(1.6rem, 4vw, 3rem) auto !important;
}

.auto-loaded-full-article__separator-ad .ad-slot-content {
    min-height: 90px !important;
}

.full-article-autoload-feed .site-button {
    width: auto !important;
    min-height: 0 !important;
    padding: .85rem 1rem !important;
    border-radius: 999px !important;
    writing-mode: horizontal-tb !important;
}

@media (max-width: 760px) {
    .auto-loaded-full-article__permalink {
        display: flex !important;
        justify-content: center !important;
        white-space: normal !important;
        text-align: center !important;
    }
}

/* v72: readable live article cards in the actual html[data-theme] dark mode */
html[data-theme="dark"] .live-blog-shell {
    background:#1c1c1c!important;
    border-color: rgba(148, 163, 184, .18) !important;
}

html[data-theme="dark"] .live-update__card {
    background:#242424!important;
    border-color: rgba(148, 163, 184, .2) !important;
    color: #eaf2f8 !important;
    box-shadow:none;
}

html[data-theme="dark"] .live-update__card h3,
html[data-theme="dark"] .live-update__content,
html[data-theme="dark"] .live-update__content p,
html[data-theme="dark"] .live-update__content li,
html[data-theme="dark"] .article-content.live-update__content {
    color: #f8fbff !important;
}

html[data-theme="dark"] .live-update__meta,
html[data-theme="dark"] .live-update__meta span {
    color: #b9c7d8 !important;
}

html[data-theme="dark"] .live-update__meta time {
    color: #f87171 !important;
}

html[data-theme="dark"] .live-update__rail::before {
    background: rgba(248, 113, 113, .28) !important;
}

html[data-theme="dark"] .live-update__rail span {
    border-color:#303030!important;
    box-shadow:none;
}

html[data-theme="dark"] .live-update-ad.ad-slot {
    background:#1c1c1c!important;
    border-color: rgba(148, 163, 184, .18) !important;
}


/* v75: Allow All hover help explains that every backend category is enabled */
.notification-select-all-button {
    position: relative !important;
}

.notification-select-all-button__tooltip {
    background: #0f172a;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 14px;
    bottom: calc(100% + 12px);
    box-shadow: 0 20px 45px rgba(15, 23, 42, .25);
    color: #ffffff;
    font-size: .78rem;
    font-style: normal;
    font-weight: 800;
    left: 50%;
    line-height: 1.35;
    max-width: min(300px, 82vw);
    opacity: 0;
    padding: .75rem .9rem;
    pointer-events: none;
    position: absolute;
    text-align: center;
    transform: translate(-50%, 6px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
    visibility: hidden;
    white-space: normal !important;
    width: max-content;
    z-index: 20;
}

.notification-select-all-button__tooltip::after {
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 7px solid #0f172a;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
}

.notification-select-all-button:hover .notification-select-all-button__tooltip,
.notification-select-all-button:focus-visible .notification-select-all-button__tooltip {
    opacity: 1;
    transform: translate(-50%, 0);
    visibility: visible;
}

html[data-theme="dark"] .notification-select-all-button__tooltip {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, .28);
}

html[data-theme="dark"] .notification-select-all-button__tooltip::after {
    border-top-color:#303030;
}

@media (max-width: 760px) {
    .notification-select-all-button__tooltip {
        bottom: auto;
        left: 50%;
        max-width: calc(100vw - 44px);
        top: calc(100% + 12px);
        transform: translate(-50%, -6px);
        width: max-content;
    }

    .notification-select-all-button__tooltip::after {
        border-bottom: 7px solid #0f172a;
        border-top: 0;
        top: auto;
        bottom: 100%;
    }

    .notification-select-all-button:hover .notification-select-all-button__tooltip,
    .notification-select-all-button:focus-visible .notification-select-all-button__tooltip {
        transform: translate(-50%, 0);
    }

    html[data-theme="dark"] .notification-select-all-button__tooltip::after {
        border-bottom-color:#303030;
    }
}

/* May 2026: mobile quick-share bar for article pages */
@media (max-width: 767.98px) {
    .article-rail > .site-panel.site-panel--tight:first-child {
        position: fixed;
        left: 0.75rem;
        right: 0.75rem;
        bottom: 0.75rem;
        z-index: 1090;
        padding: 0.62rem 0.7rem;
        border-radius: 999px;
        box-shadow: 0 18px 55px rgba(2, 12, 25, 0.26);
        backdrop-filter: blur(16px);
    }

    .article-rail > .site-panel.site-panel--tight:first-child .section-heading {
        display: none;
    }

    .article-rail > .site-panel.site-panel--tight:first-child .share-stack {
        align-items: center;
        flex-wrap: nowrap;
        gap: 0.38rem;
        justify-content: space-between;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .article-rail > .site-panel.site-panel--tight:first-child .share-stack::-webkit-scrollbar {
        display: none;
    }

    .article-rail > .site-panel.site-panel--tight:first-child .share-chip {
        flex: 0 0 2.4rem;
        height: 2.4rem;
        min-height: 2.4rem;
        width: 2.4rem;
    }

    body:has(.article-rail > .site-panel.site-panel--tight:first-child) {
        padding-bottom: 4.6rem;
    }
}

/* v98: homepage hero/video showcase layout repair after excerpt removal */
.site-panel--hero.hero-grid {
    align-items: stretch !important;
    display: grid !important;
    gap: clamp(.9rem, 1.6vw, 1.25rem) !important;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, .85fr) !important;
    overflow: hidden !important;
}
.hero-story--feature {
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 30px !important;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .08) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    overflow: hidden !important;
}
.hero-story--feature .hero-story__media {
    aspect-ratio: 16 / 8.35 !important;
    border-radius: 30px 30px 0 0 !important;
    min-height: 0 !important;
    width: 100% !important;
}
.hero-story--feature .hero-story__content {
    background: var(--surface) !important;
    border-radius: 0 !important;
    padding: clamp(1rem, 2vw, 1.45rem) !important;
}
.hero-story--feature .story-title {
    font-size: clamp(1.85rem, 3.05vw, 3rem) !important;
    line-height: 1.08 !important;
    max-width: 100% !important;
}
.story-tiles {
    align-content: stretch !important;
    display: grid !important;
    gap: clamp(.75rem, 1.2vw, 1rem) !important;
    grid-auto-rows: minmax(0, 1fr) !important;
}
.story-tile {
    align-items: stretch !important;
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 24px !important;
    display: grid !important;
    gap: .85rem !important;
    grid-template-columns: minmax(8.5rem, 42%) minmax(0, 1fr) !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: .85rem !important;
}
.story-tile__media {
    aspect-ratio: auto !important;
    border-radius: 18px !important;
    height: 100% !important;
    min-height: 118px !important;
    overflow: hidden !important;
    width: 100% !important;
}
.story-tile__media img,
.story-tile__media picture {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}
.story-tile__content {
    align-content: center !important;
    display: grid !important;
    min-width: 0 !important;
}
.story-title--sm {
    -webkit-line-clamp: 4 !important;
    color: var(--text-strong) !important;
    font-size: clamp(.98rem, 1.05vw, 1.15rem) !important;
    line-height: 1.22 !important;
    overflow-wrap: anywhere !important;
}

.video-showcase {
    overflow: hidden !important;
}
.video-showcase__grid {
    align-items: stretch !important;
    display: grid !important;
    gap: clamp(.9rem, 1.5vw, 1.15rem) !important;
    grid-template-columns: minmax(0, 1.52fr) minmax(300px, .88fr) !important;
}
.video-feature {
    border-radius: 28px !important;
    display: grid !important;
    grid-template-rows: auto 1fr !important;
    overflow: hidden !important;
}
.video-feature__media {
    aspect-ratio: 16 / 8.5 !important;
    border-radius: 28px 28px 0 0 !important;
    max-height: none !important;
}
.video-feature__body {
    padding: clamp(1rem, 1.8vw, 1.35rem) !important;
}
.video-feature__body h3 {
    font-size: clamp(1.5rem, 2.4vw, 2.45rem) !important;
    line-height: 1.1 !important;
    margin: .65rem 0 .45rem !important;
}
.video-rail {
    align-content: stretch !important;
    display: grid !important;
    gap: clamp(.75rem, 1.1vw, 1rem) !important;
    grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
}
.video-rail__item {
    align-items: stretch !important;
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 24px !important;
    display: block !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: .65rem !important;
}
.video-rail__media {
    aspect-ratio: auto !important;
    border-radius: 20px !important;
    height: 100% !important;
    min-height: 132px !important;
    overflow: hidden !important;
    width: 100% !important;
}
.video-rail__media picture,
.video-rail__media img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    width: 100% !important;
}
.video-rail__media span {
    bottom: .65rem !important;
    left: .65rem !important;
}
@media (max-width: 1199.98px) {
    .site-panel--hero.hero-grid,
    .video-showcase__grid {
        grid-template-columns: 1fr !important;
    }
    .story-tiles {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    .story-tile {
        grid-template-columns: 1fr !important;
    }
    .story-tile__media {
        aspect-ratio: 16 / 10 !important;
        height: auto !important;
        min-height: 0 !important;
    }
    .video-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-template-rows: none !important;
    }
    .video-rail__media {
        aspect-ratio: 16 / 10 !important;
        height: auto !important;
        min-height: 0 !important;
    }
}
@media (max-width: 767.98px) {
    .site-panel--hero.hero-grid,
    .video-showcase {
        border-radius: 22px !important;
    }
    .hero-story--feature .hero-story__media,
    .video-feature__media {
        aspect-ratio: 16 / 10 !important;
    }
    .hero-story--feature .story-title,
    .video-feature__body h3 {
        font-size: clamp(1.55rem, 7vw, 2.2rem) !important;
    }
    .story-tiles,
    .video-rail {
        display: flex !important;
        gap: .75rem !important;
        overflow-x: auto !important;
        padding-bottom: .25rem !important;
        scroll-snap-type: x mandatory !important;
    }
    .story-tile,
    .video-rail__item {
        flex: 0 0 min(78vw, 320px) !important;
        scroll-snap-align: start !important;
    }
}

/* v99: restore compact rectangular homepage hero cards and rebalance video showcase */
.site-panel--hero.hero-grid {
    align-items: stretch !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(320px, .95fr) !important;
}
.story-tiles {
    align-content: stretch !important;
    grid-auto-rows: minmax(9.5rem, 1fr) !important;
}
.story-tile {
    align-items: center !important;
    border-radius: 24px !important;
    grid-template-columns: minmax(9.5rem, 38%) minmax(0, 1fr) !important;
    min-height: 9.5rem !important;
    padding: clamp(.75rem, 1vw, .95rem) !important;
}
.story-tile__media {
    aspect-ratio: 16 / 10 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 12rem !important;
}
.story-tile__content {
    align-content: center !important;
    min-height: 100% !important;
    padding: .15rem .25rem !important;
}
.story-title--sm {
    -webkit-line-clamp: 3 !important;
    display: -webkit-box !important;
    font-size: clamp(1.05rem, 1.35vw, 1.35rem) !important;
    line-height: 1.18 !important;
}
.video-showcase__grid {
    grid-template-columns: minmax(0, 1.32fr) minmax(280px, .78fr) !important;
}
.video-feature {
    grid-template-rows: auto auto !important;
    min-height: 0 !important;
}
.video-feature__media {
    aspect-ratio: 16 / 8.8 !important;
}
.video-feature__body {
    padding: clamp(.95rem, 1.6vw, 1.25rem) !important;
}
.video-feature__body h3 {
    font-size: clamp(1.35rem, 2vw, 2.05rem) !important;
    line-height: 1.12 !important;
}
.video-feature__excerpt {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    margin: .25rem 0 .55rem !important;
    max-width: 92% !important;
}
.video-rail {
    grid-template-rows: repeat(3, minmax(7rem, 1fr)) !important;
}
.video-rail__item {
    min-height: 7rem !important;
    padding: .55rem !important;
}
.video-rail__media {
    aspect-ratio: 16 / 8.5 !important;
    height: auto !important;
    min-height: 0 !important;
}
@media (max-width: 1199.98px) {
    .story-tiles {
        grid-auto-rows: auto !important;
    }
    .story-tile {
        grid-template-columns: minmax(8.5rem, 38%) minmax(0, 1fr) !important;
        min-height: 8.75rem !important;
    }
    .story-tile__media {
        aspect-ratio: 16 / 10 !important;
    }
    .video-showcase__grid {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 767.98px) {
    .story-tiles {
        display: grid !important;
        gap: .85rem !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
        scroll-snap-type: none !important;
    }
    .story-tile {
        display: grid !important;
        flex: initial !important;
        grid-template-columns: minmax(7.75rem, 42%) minmax(0, 1fr) !important;
        min-height: 8rem !important;
        scroll-snap-align: none !important;
    }
    .story-tile__media {
        aspect-ratio: 16 / 10 !important;
    }
    .story-title--sm {
        font-size: clamp(1rem, 4.4vw, 1.24rem) !important;
        -webkit-line-clamp: 3 !important;
    }
    .video-feature__excerpt {
        max-width: 100% !important;
    }
}

/* v100: stable responsive homepage hero and cleaner mobile menu */
.site-panel--hero.hero-grid {
    align-items: stretch !important;
    display: grid !important;
    gap: clamp(1rem, 1.6vw, 1.35rem) !important;
    grid-template-columns: minmax(0, 1.58fr) minmax(360px, .9fr) !important;
    overflow: hidden !important;
}
.site-panel--hero.hero-grid .hero-story--feature {
    min-width: 0 !important;
}
.site-panel--hero.hero-grid .story-tiles {
    align-content: stretch !important;
    display: grid !important;
    gap: clamp(.85rem, 1.15vw, 1rem) !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(3, minmax(8.75rem, 1fr)) !important;
    min-width: 0 !important;
    overflow: visible !important;
}
.site-panel--hero.hero-grid .story-tile {
    align-items: center !important;
    display: grid !important;
    gap: clamp(.8rem, 1vw, 1rem) !important;
    grid-template-columns: minmax(8.6rem, 38%) minmax(0, 1fr) !important;
    min-height: 8.75rem !important;
    max-height: 12rem !important;
    padding: .8rem !important;
    width: 100% !important;
}
.site-panel--hero.hero-grid .story-tile__media {
    aspect-ratio: 16 / 10 !important;
    height: auto !important;
    max-height: 9.5rem !important;
    min-height: 0 !important;
    width: 100% !important;
}
.site-panel--hero.hero-grid .story-tile__media picture,
.site-panel--hero.hero-grid .story-tile__media img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    width: 100% !important;
}
.site-panel--hero.hero-grid .story-tile__content {
    align-content: center !important;
    display: grid !important;
    min-width: 0 !important;
    padding: .1rem .15rem !important;
}
.site-panel--hero.hero-grid .story-title--sm {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    font-size: clamp(1.02rem, 1.15vw, 1.26rem) !important;
    line-height: 1.18 !important;
    overflow: hidden !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
@media (max-width: 1199.98px) {
    .site-panel--hero.hero-grid {
        grid-template-columns: 1fr !important;
    }
    .site-panel--hero.hero-grid .story-tiles {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-template-rows: none !important;
    }
    .site-panel--hero.hero-grid .story-tile {
        grid-template-columns: 1fr !important;
        max-height: none !important;
        min-height: 0 !important;
    }
    .site-panel--hero.hero-grid .story-tile__media {
        max-height: none !important;
    }
}
@media (max-width: 767.98px) {
    .site-panel--hero.hero-grid {
        gap: .85rem !important;
        padding: .85rem !important;
    }
    .site-panel--hero.hero-grid .hero-story--feature .hero-story__media {
        aspect-ratio: 16 / 10 !important;
    }
    .site-panel--hero.hero-grid .hero-story--feature .story-title {
        font-size: clamp(1.35rem, 6.2vw, 1.9rem) !important;
    }
    .site-panel--hero.hero-grid .story-tiles {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: .75rem !important;
        overflow: visible !important;
        scroll-snap-type: none !important;
    }
    .site-panel--hero.hero-grid .story-tile {
        border-radius: 20px !important;
        grid-template-columns: minmax(6.2rem, 38%) minmax(0, 1fr) !important;
        min-height: 7.35rem !important;
        padding: .6rem !important;
    }
    .site-panel--hero.hero-grid .story-tile__media {
        aspect-ratio: 4 / 3 !important;
        border-radius: 16px !important;
        max-height: 6.8rem !important;
    }
    .site-panel--hero.hero-grid .story-title--sm {
        -webkit-line-clamp: 3 !important;
        font-size: clamp(.92rem, 4.2vw, 1.16rem) !important;
        line-height: 1.16 !important;
    }
}

@media (max-width: 991.98px) {
    .site-mobile-menu {
        background: rgba(7, 17, 31, .38) !important;
        backdrop-filter: blur(18px) !important;
        display: none;
        inset: 0 !important;
        padding: 5.25rem 1rem 1rem !important;
        position: fixed !important;
        z-index: 1190 !important;
    }
    .site-mobile-menu.is-open {
        display: block !important;
    }
    .site-mobile-menu__panel {
        background: rgba(244,250,250,.96) !important;
        border: 1px solid rgba(14,125,121,.18) !important;
        border-radius: 28px !important;
        box-shadow: 0 24px 70px rgba(15,23,42,.24) !important;
        display: grid !important;
        gap: .55rem !important;
        margin: 0 auto !important;
        max-height: calc(100vh - 6.25rem) !important;
        max-width: 440px !important;
        overflow-y: auto !important;
        padding: .85rem !important;
    }
    html[data-theme="dark"] .site-mobile-menu__panel {
        background:#242424!important;
        border-color: rgba(79,209,197,.22) !important;
    }
    .site-mobile-menu__panel .theme-switcher {
        background: rgba(14,125,121,.08) !important;
        border-radius: 20px !important;
        display: grid !important;
        gap: .45rem !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        padding: .45rem !important;
    }
    .site-mobile-menu__panel .theme-switcher__button {
        justify-content: center !important;
        min-height: 2.55rem !important;
        padding: .55rem .35rem !important;
        width: 100% !important;
    }
    .site-mobile-menu__group {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
    }
    .site-mobile-menu__row {
        gap: .45rem !important;
    }
    .site-mobile-menu__link,
    .site-mobile-menu__child {
        background: rgba(255,255,255,.84) !important;
        border: 1px solid rgba(148,163,184,.18) !important;
        border-radius: 18px !important;
        color: var(--bg-contrast) !important;
        min-height: 3.1rem !important;
        padding: .82rem .95rem !important;
    }
    html[data-theme="dark"] .site-mobile-menu__link,
    html[data-theme="dark"] .site-mobile-menu__child {
        background:#1c1c1c!important;
        border-color: rgba(79,209,197,.15) !important;
        color: #e5f7f5 !important;
    }
    .site-mobile-menu__toggle {
        background: rgba(14,125,121,.12) !important;
        border-radius: 18px !important;
        height: 3.1rem !important;
        width: 3.1rem !important;
    }
    .site-mobile-menu__children {
        border-left: 2px solid rgba(14,125,121,.22) !important;
        margin: .45rem 0 .6rem 1rem !important;
        padding: 0 0 0 .65rem !important;
    }
    .site-mobile-menu__child {
        color: var(--text-soft) !important;
        font-size: .94rem !important;
        min-height: 2.65rem !important;
    }
    .site-mobile-menu__panel [data-mobile-close] {
        justify-content: center !important;
        margin-top: .35rem !important;
        width: 100% !important;
    }
}

/* v101: simple inline mobile menu; no dark overlay / floating cartoon popup */
@media (max-width: 991.98px) {
    .site-mobile-menu {
        background: transparent !important;
        backdrop-filter: none !important;
        display: none !important;
        grid-column: 1 / -1 !important;
        inset: auto !important;
        padding: .65rem 0 0 !important;
        position: static !important;
        width: 100% !important;
        z-index: auto !important;
    }
    .site-mobile-menu.is-open {
        display: block !important;
    }
    .site-mobile-menu__panel {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: grid !important;
        gap: .55rem !important;
        margin: 0 !important;
        max-height: none !important;
        max-width: none !important;
        overflow: visible !important;
        padding: 0 !important;
        width: 100% !important;
    }
    html[data-theme="dark"] .site-mobile-menu__panel {
        background: transparent !important;
        border: 0 !important;
    }
    .site-mobile-menu__panel .theme-switcher {
        background: rgba(14,125,121,.07) !important;
        border: 1px solid rgba(14,125,121,.12) !important;
        border-radius: 18px !important;
        display: grid !important;
        gap: .4rem !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        padding: .35rem !important;
    }
    .site-mobile-menu__panel .theme-switcher__button {
        border-radius: 14px !important;
        justify-content: center !important;
        min-height: 2.4rem !important;
        padding: .45rem .25rem !important;
        width: 100% !important;
    }
    .site-mobile-menu__group {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
    }
    .site-mobile-menu__row {
        gap: .45rem !important;
    }
    .site-mobile-menu__link,
    .site-mobile-menu__child {
        background: rgba(255,255,255,.82) !important;
        border: 1px solid rgba(148,163,184,.16) !important;
        border-radius: 16px !important;
        box-shadow: none !important;
        color: var(--bg-contrast) !important;
        min-height: 2.85rem !important;
        padding: .72rem .9rem !important;
    }
    html[data-theme="dark"] .site-mobile-menu__link,
    html[data-theme="dark"] .site-mobile-menu__child {
        background:#1c1c1c!important;
        border-color: rgba(79,209,197,.14) !important;
        color: #e5f7f5 !important;
    }
    .site-mobile-menu__toggle {
        background: rgba(14,125,121,.1) !important;
        border-radius: 16px !important;
        height: 2.85rem !important;
        width: 2.85rem !important;
    }
    .site-mobile-menu__children {
        border-left: 2px solid rgba(14,125,121,.2) !important;
        margin: .45rem 0 .55rem .85rem !important;
        padding: 0 0 0 .6rem !important;
    }
    .site-mobile-menu__child {
        color: var(--text-soft) !important;
        font-size: .94rem !important;
        min-height: 2.45rem !important;
    }
    .site-mobile-menu__panel [data-mobile-close] {
        background: rgba(14,125,121,.08) !important;
        border: 1px solid rgba(14,125,121,.14) !important;
        border-radius: 16px !important;
        justify-content: center !important;
        margin-top: .1rem !important;
        width: 100% !important;
    }
}

/* v107: desktop-only homepage hero side cards spacing cleanup */
@media (min-width: 1200px) {
    .site-panel--hero.hero-grid {
        align-items: center !important;
    }

    .site-panel--hero.hero-grid .story-tiles {
        align-content: center !important;
        grid-template-rows: repeat(3, auto) !important;
        gap: clamp(.9rem, 1.05vw, 1.15rem) !important;
    }

    .site-panel--hero.hero-grid .story-tile {
        align-items: center !important;
        grid-template-columns: minmax(10.75rem, 36%) minmax(0, 1fr) !important;
        min-height: 7.75rem !important;
        max-height: 9.5rem !important;
        padding: .72rem .9rem !important;
    }

    .site-panel--hero.hero-grid .story-tile__media {
        aspect-ratio: 16 / 9 !important;
        height: auto !important;
        max-height: 7.25rem !important;
        min-height: 0 !important;
    }

    .site-panel--hero.hero-grid .story-tile__content {
        align-content: center !important;
        min-height: 0 !important;
        padding: 0 .15rem !important;
    }

    .site-panel--hero.hero-grid .story-title--sm {
        -webkit-line-clamp: 3 !important;
        font-size: clamp(1.02rem, 1.05vw, 1.2rem) !important;
        line-height: 1.16 !important;
    }
}

/* v109: desktop-only hero refinement - keep v107 side-card look, only reduce the main feature and match rail height */
@media (min-width: 1200px) {
    .site-panel--hero.hero-grid {
        align-items: center !important;
        gap: clamp(1.05rem, 1.55vw, 1.45rem) !important;
        grid-template-columns: minmax(0, 1.48fr) minmax(360px, .86fr) !important;
        padding: clamp(1.05rem, 1.45vw, 1.45rem) !important;
    }

    .site-panel--hero.hero-grid .hero-story--feature {
        align-self: center !important;
        display: grid !important;
        grid-template-rows: minmax(0, 1fr) auto !important;
        height: clamp(29rem, 34vw, 35.5rem) !important;
        max-height: 35.5rem !important;
        min-height: 29rem !important;
        width: 100% !important;
    }

    .site-panel--hero.hero-grid .hero-story--feature .hero-story__media {
        aspect-ratio: auto !important;
        height: 100% !important;
        min-height: 0 !important;
    }

    .site-panel--hero.hero-grid .hero-story--feature .hero-story__content {
        min-height: 6.45rem !important;
        padding: clamp(1rem, 1.45vw, 1.35rem) clamp(1.15rem, 1.7vw, 1.65rem) !important;
    }

    .site-panel--hero.hero-grid .hero-story--feature .story-title {
        font-size: clamp(2rem, 2.45vw, 2.95rem) !important;
        line-height: 1.08 !important;
    }

    .site-panel--hero.hero-grid .story-tiles {
        align-content: stretch !important;
        align-self: center !important;
        display: grid !important;
        gap: clamp(.85rem, 1.05vw, 1.15rem) !important;
        grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
        height: clamp(29rem, 34vw, 35.5rem) !important;
        max-height: 35.5rem !important;
        min-height: 29rem !important;
    }

    .site-panel--hero.hero-grid .story-tile {
        align-items: center !important;
        grid-template-columns: minmax(10.75rem, 36%) minmax(0, 1fr) !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: .72rem .9rem !important;
    }

    .site-panel--hero.hero-grid .story-tile__media {
        aspect-ratio: 16 / 9 !important;
        height: auto !important;
        max-height: 7.25rem !important;
        min-height: 0 !important;
    }
}


/* === v110 Hero redesign, gallery story experience, event countdown === */
.hero-grid--showcase {
    display: grid;
    grid-template-columns: minmax(0, 1.75fr) minmax(280px, 0.85fr);
    gap: 24px;
    align-items: stretch;
}
.hero-story--showcase {
    position: relative;
    min-height: 540px;
    overflow: hidden;
    border-radius: 34px;
    background: #08152f;
}
.hero-story--showcase .hero-story__media,
.hero-story--showcase .hero-story__media picture,
.hero-story--showcase .hero-story__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.hero-story--showcase .hero-story__media img {
    object-fit: cover;
}
.hero-story__content--showcase {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: stretch;
    min-height: 540px;
    padding: 0;
    background: rgba(3, 10, 24, 0.06);
}
.hero-story--showcase .hero-story__copy {
    width: min(100%, 48%);
    min-width: 360px;
    padding: 40px 38px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
    color: #fff;
}
.hero-kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.16);
    color: #fff;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}
.hero-format-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(18, 153, 131, 0.16);
    color: #d7fff5;
    border: 1px solid rgba(29, 197, 160, 0.38);
}
.hero-format-pill--live { background: rgba(235, 66, 66, 0.2); color: #fff0f0; border-color: rgba(255, 90, 90, 0.42); }
.hero-format-pill--ended { background: rgba(122, 145, 178, 0.18); color: #eff6ff; border-color: rgba(160, 181, 210, 0.26); }
.hero-story--showcase .story-title {
    font-size: clamp(2.5rem, 4vw, 4.4rem);
    line-height: 0.96;
    letter-spacing: -0.045em;
    color: #fff;
    margin: 0;
    max-width: 11ch;
}
.hero-story__dek {
    margin: 0;
    font-size: 1.08rem;
    line-height: 1.7;
    color: rgba(255,255,255,0.88);
    max-width: 34ch;
}
.hero-story__meta {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    color: rgba(255,255,255,0.76);
    font-size: 0.94rem;
}
.hero-story__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin-top: 4px;
    padding: 12px 18px;
    border-radius: 999px;
    background: #fff;
    color: #08214a;
    font-weight: 800;
}
.story-tiles--showcase {
    display: grid;
    gap: 18px;
    align-content: stretch;
}
.story-tile--showcase {
    display: grid;
    grid-template-columns: 178px minmax(0, 1fr);
    align-items: center;
    min-height: 0;
    padding: 12px;
    border-radius: 28px;
    background: var(--surface-card);
    box-shadow: var(--card-shadow);
}
.story-tile--showcase .story-tile__media {
    width: 178px;
    min-width: 178px;
    aspect-ratio: 16 / 10;
    border-radius: 22px;
    overflow: hidden;
}
.story-tile--showcase .story-tile__content {
    padding: 4px 2px 4px 18px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
}
.story-tile__eyebrow {
    display: inline-flex;
    width: fit-content;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--accent);
}
.story-tile--showcase .story-title--sm {
    margin: 0;
    font-size: 1.05rem;
    line-height: 1.3;
}
.gallery-count-chip {
    position: absolute;
    right: 14px;
    bottom: 14px;
    z-index: 2;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(3,10,24,.78);
    color: #fff;
    font-size: .82rem;
    font-weight: 700;
}
.event-countdown-shell {
    margin-top: 12px;
}
.event-countdown {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) auto auto;
    align-items: center;
    gap: 24px;
    padding: 22px 28px;
    border-radius: 30px;
    background: rgba(8, 24, 56, 0.92);
    color: #fff;
    background-size: cover;
    background-position: center;
    box-shadow: 0 22px 45px rgba(10, 28, 58, 0.16);
    background-color: #071525;
    background-blend-mode: multiply;
}
.event-countdown__kicker {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    margin-bottom: 12px;
}
.event-countdown__headline-row {
    display: flex;
    gap: 16px;
    align-items: center;
}
.event-countdown__logo {
    width: 72px;
    height: 72px;
    object-fit: contain;
    border-radius: 18px;
    background: rgba(255,255,255,.12);
    padding: 10px;
}
.event-countdown h3 { margin: 0 0 6px; font-size: clamp(1.4rem, 2vw, 2rem); color: #fff; }
.event-countdown p { margin: 0; color: rgba(255,255,255,.86); max-width: 58ch; }
.event-countdown__timer {
    display: grid;
    grid-template-columns: repeat(4, minmax(74px, 1fr));
    gap: 12px;
}
.event-countdown__unit {
    min-width: 78px;
    padding: 14px 12px;
    text-align: center;
    border-radius: 22px;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.18);
}
.event-countdown__unit strong { display: block; font-size: 1.5rem; line-height: 1; color: #fff; }
.event-countdown__unit span { display: block; margin-top: 6px; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,.8); }
.event-countdown__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 20px;
    border-radius: 999px;
    background: #fff;
    color: #08214a;
    font-weight: 800;
    text-decoration: none;
}
.gallery-story-shell {
    display: grid;
    gap: 18px;
    padding: 24px;
}
.gallery-story-shell__top {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    flex-wrap: wrap;
}
.gallery-story-shell__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border-radius: 999px;
    background: rgba(14, 125, 121, 0.12);
    color: var(--accent);
    font-weight: 800;
}
.gallery-story-shell__lead {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
    gap: 18px;
}
.gallery-story-shell__lead-image {
    display: block;
    border-radius: 24px;
    overflow: hidden;
    min-height: 400px;
}
.gallery-story-shell__lead-image picture,
.gallery-story-shell__lead-image img { width: 100%; height: 100%; object-fit: cover; }
.gallery-story-shell__thumbs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    align-content: start;
}
.gallery-story-shell__thumb {
    display: block;
    border-radius: 20px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
}
.gallery-story-shell__thumb picture,
.gallery-story-shell__thumb img { width: 100%; height: 100%; object-fit: cover; }
.article-gallery__grid--enhanced {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}
.gallery-upload-preview,
.gallery-existing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
    gap: 12px;
    margin-top: 14px;
}
.gallery-upload-preview__item,
.gallery-existing-grid__item {
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(12, 33, 63, 0.08);
    background: #eef3f8;
    aspect-ratio: 1 / 1;
}
.gallery-upload-preview__item img,
.gallery-existing-grid__item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.news-grid--gallery-showcase .news-card__media { position: relative; }
@media (max-width: 1199px) {
    .hero-grid--showcase { grid-template-columns: 1fr; }
    .hero-story--showcase { min-height: 470px; }
    .hero-story__content--showcase { min-height: 470px; }
    .story-tiles--showcase { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .story-tile--showcase { grid-template-columns: 1fr; }
    .story-tile--showcase .story-tile__media { width: 100%; aspect-ratio: 16/10; }
    .story-tile--showcase .story-tile__content { padding: 14px 4px 4px; }
    .event-countdown { grid-template-columns: 1fr; }
    .gallery-story-shell__lead { grid-template-columns: 1fr; }
}
@media (max-width: 991px) {
    .hero-story__copy { width: 100%; min-width: 0; max-width: none; padding: 28px 24px; justify-content: flex-end; }
    .hero-story__content--showcase { align-items: flex-end; background: rgba(3, 10, 24, 0.96); }
    .hero-story--showcase .story-title { max-width: none; font-size: clamp(2rem, 7vw, 3rem); }
    .hero-story__dek { max-width: none; font-size: 1rem; }
    .story-tiles--showcase { grid-template-columns: 1fr; }
    .event-countdown { padding: 20px; }
    .event-countdown__headline-row { align-items: flex-start; }
    .event-countdown__timer { width: 100%; grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .hero-story--showcase, .hero-story__content--showcase { min-height: 430px; }
    .story-tile--showcase { grid-template-columns: 118px minmax(0, 1fr); }
    .story-tile--showcase .story-tile__media { width: 118px; min-width: 118px; border-radius: 18px; }
    .story-tile--showcase .story-tile__content { padding: 4px 2px 4px 14px; }
    .event-countdown__timer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .event-countdown__action { width: 100%; }
    .gallery-story-shell { padding: 20px; }
    .gallery-story-shell__lead-image { min-height: 260px; }
    .gallery-story-shell__thumbs { grid-template-columns: repeat(4, minmax(100px, 1fr)); overflow-x: auto; padding-bottom: 6px; }
    .gallery-story-shell__thumb { min-width: 120px; }
}
@media (max-width: 575px) {
    .hero-story--showcase, .hero-story__content--showcase { min-height: 390px; border-radius: 24px; }
    .hero-story__copy { padding: 22px 18px; gap: 12px; }
    .hero-kicker, .hero-format-pill { font-size: .72rem; }
    .hero-story__meta { font-size: .82rem; }
    .story-tile--showcase { grid-template-columns: 104px minmax(0, 1fr); padding: 10px; border-radius: 22px; }
    .story-tile--showcase .story-tile__media { width: 104px; min-width: 104px; border-radius: 16px; }
    .story-tile--showcase .story-title--sm { font-size: .98rem; }
    .event-countdown { border-radius: 24px; gap: 18px; }
    .event-countdown__headline-row { flex-direction: column; }
    .event-countdown__logo { width: 62px; height: 62px; }
}

/* v111: requested hero, compact mobile countdown, DailyMail-style gallery teaser and Football London-style lightbox */
.site-panel--hero.hero-grid.hero-grid--showcase {
    background: #050608 !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: 0 28px 70px rgba(7, 17, 31, 0.16) !important;
    display: grid !important;
    gap: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .story-tiles--showcase {
    display: none !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .hero-story--feature {
    align-self: stretch !important;
    background: #050608 !important;
    border-radius: 8px !important;
    display: block !important;
    height: clamp(34rem, 50vw, 45rem) !important;
    max-height: none !important;
    min-height: 34rem !important;
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
}

.hero-story--showcase .hero-story__media,
.hero-story--showcase .hero-story__media picture,
.hero-story--showcase .hero-story__media img {
    display: block !important;
    height: 100% !important;
    inset: 0 !important;
    position: absolute !important;
    width: 100% !important;
}

.hero-story--showcase .hero-story__media img {
    object-fit: cover !important;
    object-position: 72% center !important;
}

.hero-story__content--showcase {
    align-items: stretch !important;
    background: rgba(0, 0, 0, 0.02) !important;
    display: flex !important;
    height: 100% !important;
    min-height: 100% !important;
    position: relative !important;
    z-index: 2 !important;
}

.hero-story--showcase .hero-story__copy {
    color: #fff !important;
    gap: clamp(1rem, 1.5vw, 1.35rem) !important;
    justify-content: center !important;
    min-width: min(100%, 24rem) !important;
    padding: clamp(3rem, 5vw, 5.4rem) clamp(2rem, 4.5vw, 5rem) !important;
    width: min(46rem, 48%) !important;
}

.hero-story--showcase .hero-kicker {
    background: #ff0a62 !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: polygon(8% 0, 100% 0, 92% 100%, 0 100%) !important;
    color: #fff !important;
    font-family: var(--font-display) !important;
    font-size: 0.98rem !important;
    font-style: italic !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    padding: 0.75rem 1.55rem !important;
    text-transform: uppercase !important;
}

.hero-story--showcase .hero-format-pill {
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(255, 255, 255, 0.22) !important;
    color: rgba(255, 255, 255, 0.92) !important;
    letter-spacing: 0 !important;
}

.hero-story--showcase .story-title {
    color: #fff !important;
    font-size: clamp(3.25rem, 5.8vw, 6.5rem) !important;
    letter-spacing: 0 !important;
    line-height: 0.95 !important;
    margin: 0 !important;
    max-width: 12ch !important;
    text-wrap: balance !important;
}

.hero-story--showcase .hero-story__dek {
    color: rgba(255, 255, 255, 0.84) !important;
    font-size: clamp(1.05rem, 1.45vw, 1.45rem) !important;
    line-height: 1.45 !important;
    max-width: 42rem !important;
}

.hero-story--showcase .hero-story__meta {
    color: rgba(255, 255, 255, 0.72) !important;
    letter-spacing: 0 !important;
}

.hero-story--showcase .hero-story__cta {
    background: #fff !important;
    border-radius: 999px !important;
    color: #050608 !important;
    letter-spacing: 0 !important;
}

.daily-gallery-teaser {
    margin: 0;
}

.daily-gallery-card {
    appearance: none;
    background: #050608;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
    display: block;
    min-height: 24rem;
    overflow: hidden;
    padding: 0;
    position: relative;
    text-align: left;
    width: 100%;
}

.daily-gallery-card picture,
.daily-gallery-card img {
    display: block;
    height: 100%;
    inset: 0;
    object-fit: cover;
    position: absolute;
    width: 100%;
}

.daily-gallery-card::after {
    background: rgba(0, 0, 0, 0.58);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.daily-gallery-card__credit {
    background: rgba(0, 0, 0, 0.5);
    bottom: 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.82rem;
    font-weight: 700;
    left: 0;
    line-height: 1.2;
    padding: 0.42rem 0.7rem;
    position: absolute;
    z-index: 2;
}

.daily-gallery-card__badge {
    align-items: center;
    background: #1368d8;
    bottom: 0.8rem;
    color: #fff;
    display: grid;
    gap: 0.08rem;
    justify-items: start;
    padding: 0.62rem 0.78rem;
    position: absolute;
    right: 0.8rem;
    z-index: 3;
}

.daily-gallery-card__badge span {
    align-items: center;
    display: inline-flex;
    gap: 0.4rem;
}

.daily-gallery-card__badge i {
    font-size: 1.3rem;
}

.daily-gallery-card__badge strong {
    font-family: var(--font-display);
    font-size: 1.35rem;
    letter-spacing: 0;
    line-height: 1;
}

.daily-gallery-card__badge em {
    font-style: normal;
    font-weight: 800;
    line-height: 1.05;
}

body.gallery-lightbox-open {
    overflow: hidden;
}

.gallery-lightbox[hidden] {
    display: none !important;
}

.gallery-lightbox {
    inset: 0;
    position: fixed;
    z-index: 2500;
}

.gallery-lightbox__backdrop {
    background: rgba(255, 255, 255, 0.96);
    inset: 0;
    position: absolute;
}

.gallery-lightbox__frame {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(21rem, 28rem);
    height: 100%;
    isolation: isolate;
    position: relative;
    z-index: 1;
}

.gallery-lightbox__stage {
    align-items: center;
    background: #f7f8fa;
    display: flex;
    justify-content: center;
    min-width: 0;
    padding: clamp(1rem, 3vw, 3.2rem);
}

.gallery-lightbox__slide {
    display: none;
    height: 100%;
    margin: 0;
    place-items: center;
    width: 100%;
}

.gallery-lightbox__slide.is-active {
    display: grid;
}

.gallery-lightbox__slide img {
    box-shadow: 0 18px 60px rgba(15, 23, 42, 0.13);
    display: block;
    max-height: min(82vh, 62rem);
    max-width: 100%;
    object-fit: contain;
    width: auto;
}

.gallery-lightbox__meta {
    background: #fff;
    border-left: 1px solid rgba(15, 23, 42, 0.1);
    color: #111827;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    overflow-y: auto;
    padding: clamp(1.5rem, 3vw, 3rem) clamp(1.1rem, 2.2vw, 2.1rem);
}

.gallery-lightbox__counter {
    align-items: center;
    color: #111827;
    display: inline-flex;
    font-size: 1rem;
    gap: 0.55rem;
}

.gallery-lightbox__counter i {
    color: var(--primary-strong);
}

.gallery-lightbox__counter strong {
    font-family: var(--font-display);
}

.gallery-lightbox__meta h2 {
    color: #111827;
    font-size: clamp(1.35rem, 2vw, 2rem);
    letter-spacing: 0;
    line-height: 1.25;
    margin: 0;
}

.gallery-lightbox__meta p {
    color: #4b5563;
    font-size: 1.02rem;
    line-height: 1.55;
    margin: 0;
}

.gallery-lightbox__full {
    align-items: center;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 999px;
    color: #111827;
    display: inline-flex;
    font-weight: 800;
    gap: 0.55rem;
    justify-content: center;
    min-height: 2.8rem;
    padding: 0 1rem;
    width: fit-content;
}

.gallery-lightbox__thumbs {
    border-top: 1px solid rgba(15, 23, 42, 0.1);
    display: grid;
    gap: 0.55rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: auto;
    padding-top: 1rem;
}

.gallery-lightbox__thumbs button {
    appearance: none;
    aspect-ratio: 1 / 1;
    background: #eef2f7;
    border: 2px solid transparent;
    border-radius: 4px;
    cursor: pointer;
    overflow: hidden;
    padding: 0;
}

.gallery-lightbox__thumbs button.is-active {
    border-color: #1368d8;
}

.gallery-lightbox__thumbs img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.gallery-lightbox__close,
.gallery-lightbox__nav {
    align-items: center;
    appearance: none;
    border: 0;
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    position: absolute;
    z-index: 5;
}

.gallery-lightbox__close {
    background: transparent;
    color: #111827;
    font-size: 1.55rem;
    height: 3rem;
    right: 1.05rem;
    top: 1rem;
    width: 3rem;
}

.gallery-lightbox__nav {
    background: #111827;
    color: #fff;
    height: 3.35rem;
    top: 50%;
    transform: translateY(-50%);
    width: 3.35rem;
}

.gallery-lightbox__nav--prev {
    left: 1.1rem;
}

.gallery-lightbox__nav--next {
    right: 29.25rem;
}

.gallery-upload-preview--with-captions,
.gallery-existing-grid--with-captions {
    grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)) !important;
}

.gallery-upload-preview--with-captions .gallery-upload-preview__item,
.gallery-existing-grid--with-captions .gallery-existing-grid__item {
    aspect-ratio: auto !important;
    background: #fff !important;
    border: 1px solid rgba(12, 33, 63, 0.1) !important;
    display: grid !important;
    grid-template-rows: auto 1fr !important;
    overflow: hidden !important;
}

.gallery-upload-preview--with-captions img,
.gallery-existing-grid--with-captions img {
    aspect-ratio: 16 / 10 !important;
    height: auto !important;
    object-fit: cover !important;
    width: 100% !important;
}

.gallery-upload-preview__body,
.gallery-existing-grid__body {
    display: grid;
    gap: 0.35rem;
    padding: 0.75rem;
}

.gallery-upload-preview__body label,
.gallery-existing-grid__body label {
    color: #526176;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    margin: 0;
    text-transform: uppercase;
}

@media (max-width: 991px) {
    .site-panel--hero.hero-grid.hero-grid--showcase .hero-story--feature {
        height: clamp(29rem, 78vw, 39rem) !important;
        min-height: 29rem !important;
    }

    .hero-story__content--showcase {
        background: rgba(0, 0, 0, 0.98) !important;
    }

    .hero-story--showcase .hero-story__copy {
        justify-content: flex-end !important;
        min-width: 0 !important;
        padding: 2rem 1.5rem !important;
        width: 100% !important;
    }

    .hero-story--showcase .story-title {
        font-size: clamp(2.25rem, 8vw, 4.4rem) !important;
        max-width: 13ch !important;
    }

    .gallery-lightbox__frame {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: minmax(0, 1fr) auto;
    }

    .gallery-lightbox__stage {
        padding: 4rem 1rem 1rem;
    }

    .gallery-lightbox__meta {
        border-left: 0;
        border-top: 1px solid rgba(15, 23, 42, 0.1);
        max-height: 38vh;
        padding: 1rem;
    }

    .gallery-lightbox__nav--next {
        right: 1.1rem;
    }
}

@media (max-width: 575px) {
    .event-countdown-shell {
        margin-top: 0.55rem !important;
    }

    .event-countdown-shell .site-shell {
        width: min(calc(100% - 1rem), 1540px) !important;
    }

    .event-countdown {
        align-items: center !important;
        border-radius: 18px !important;
        display: flex !important;
        gap: 0.55rem !important;
        grid-template-columns: none !important;
        min-height: 0 !important;
        padding: 0.58rem 0.65rem !important;
    }

    .event-countdown__intro {
        display: contents !important;
    }

    .event-countdown__kicker,
    .event-countdown__headline-row > div,
    .event-countdown__action {
        display: none !important;
    }

    .event-countdown__headline-row {
        align-items: center !important;
        display: flex !important;
        flex: 0 0 auto !important;
        gap: 0 !important;
    }

    .event-countdown__logo {
        background: rgba(255, 255, 255, 0.14) !important;
        border-radius: 12px !important;
        height: 42px !important;
        padding: 0.4rem !important;
        width: 42px !important;
    }

    .event-countdown__timer {
        display: grid !important;
        flex: 1 1 auto !important;
        gap: 0.34rem !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        min-width: 0 !important;
        width: auto !important;
    }

    .event-countdown__unit {
        border-radius: 12px !important;
        min-width: 0 !important;
        padding: 0.42rem 0.2rem !important;
    }

    .event-countdown__unit strong {
        font-size: 1rem !important;
    }

    .event-countdown__unit span {
        font-size: 0.55rem !important;
        letter-spacing: 0.04em !important;
        margin-top: 0.22rem !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase {
        border-radius: 8px !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .hero-story--feature {
        border-radius: 8px !important;
        height: 31rem !important;
        min-height: 31rem !important;
    }

    .hero-story--showcase .hero-story__copy {
        gap: 0.75rem !important;
        padding: 1.35rem 1rem !important;
    }

    .hero-story--showcase .hero-kicker {
        font-size: 0.78rem !important;
        padding: 0.58rem 1.1rem !important;
    }

    .hero-story--showcase .story-title {
        font-size: 2.45rem !important;
        line-height: 0.98 !important;
        max-width: 12ch !important;
    }

    .hero-story--showcase .hero-story__dek {
        display: -webkit-box !important;
        font-size: 0.95rem !important;
        line-height: 1.35 !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
    }

    .hero-story--showcase .hero-story__meta {
        display: none !important;
    }

    .daily-gallery-card {
        min-height: 18rem;
    }

    .daily-gallery-card__badge {
        bottom: 0.6rem;
        right: 0.6rem;
    }

    .daily-gallery-card__credit {
        max-width: 65%;
    }

    .gallery-lightbox__slide img {
        max-height: 55vh;
    }

    .gallery-lightbox__thumbs {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

/* v112: keep the original homepage hero logic, using the reference only as proportion guidance */
.site-panel--hero.hero-grid.hero-grid--showcase {
    background: var(--hero-gradient) !important;
    border: 1px solid var(--border-strong) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-md) !important;
    display: grid !important;
    gap: clamp(1rem, 1.45vw, 1.35rem) !important;
    grid-template-columns: minmax(0, 1.48fr) minmax(320px, 0.9fr) !important;
    overflow: hidden !important;
    padding: clamp(1rem, 1.4vw, 1.35rem) !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .story-tiles--showcase {
    align-content: stretch !important;
    display: grid !important;
    gap: clamp(0.75rem, 1vw, 1rem) !important;
    grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
    height: clamp(24rem, 30vw, 31rem) !important;
    max-height: 31rem !important;
    min-height: 24rem !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .hero-story--feature,
.hero-story--showcase {
    background: #071525 !important;
    border-radius: 24px !important;
    display: block !important;
    height: clamp(24rem, 30vw, 31rem) !important;
    max-height: 31rem !important;
    min-height: 24rem !important;
    overflow: hidden !important;
    position: relative !important;
}

.hero-story--showcase .hero-story__media img {
    object-fit: cover !important;
    object-position: center !important;
}

.hero-story__content--showcase {
    align-items: flex-end !important;
    background: rgba(7, 21, 37, 0.88) !important;
    display: flex !important;
    height: 100% !important;
    min-height: 100% !important;
    position: relative !important;
    z-index: 2 !important;
}

.hero-story--showcase .hero-story__copy {
    color: #fff !important;
    gap: 0.75rem !important;
    justify-content: flex-end !important;
    min-width: 0 !important;
    padding: clamp(1.15rem, 2.2vw, 1.8rem) !important;
    width: min(100%, 43rem) !important;
}

.hero-story--showcase .hero-kicker {
    background: rgba(14, 165, 164, 0.22) !important;
    border: 1px solid rgba(79, 209, 197, 0.38) !important;
    border-radius: 999px !important;
    clip-path: none !important;
    color: #eafffb !important;
    font-family: var(--font-body) !important;
    font-size: 0.74rem !important;
    font-style: normal !important;
    font-weight: 900 !important;
    letter-spacing: 0.14em !important;
    padding: 0.45rem 0.8rem !important;
}

.hero-story--showcase .story-title {
    color: #fff !important;
    font-size: clamp(1.8rem, 2.7vw, 3.1rem) !important;
    letter-spacing: 0 !important;
    line-height: 1.03 !important;
    margin: 0 !important;
    max-width: 18ch !important;
}

.hero-story--showcase .hero-story__dek {
    color: rgba(255, 255, 255, 0.86) !important;
    display: -webkit-box !important;
    font-size: clamp(0.95rem, 1.05vw, 1.08rem) !important;
    line-height: 1.45 !important;
    max-width: 42rem !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
}

.hero-story--showcase .hero-story__meta {
    color: rgba(255, 255, 255, 0.76) !important;
    font-size: 0.88rem !important;
}

.hero-story--showcase .hero-story__cta {
    background: rgba(255, 255, 255, 0.94) !important;
    color: #071525 !important;
    font-size: 0.9rem !important;
    min-height: 2.4rem !important;
    padding: 0.55rem 0.95rem !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .story-tile--showcase {
    align-items: center !important;
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 20px !important;
    box-shadow: var(--shadow-sm) !important;
    display: grid !important;
    grid-template-columns: minmax(8.2rem, 35%) minmax(0, 1fr) !important;
    height: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    padding: 0.65rem !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .story-tile__media {
    aspect-ratio: 16 / 10 !important;
    border-radius: 16px !important;
    height: auto !important;
    max-height: 6.5rem !important;
    min-height: 0 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    width: 100% !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .story-tile__content {
    gap: 0.4rem !important;
    padding: 0.15rem 0.2rem 0.15rem 0.85rem !important;
}

.site-panel--hero.hero-grid.hero-grid--showcase .story-title--sm {
    font-size: clamp(0.92rem, 1vw, 1.08rem) !important;
    line-height: 1.2 !important;
}

@media (max-width: 1199px) {
    .site-panel--hero.hero-grid.hero-grid--showcase {
        grid-template-columns: 1fr !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .hero-story--feature,
    .hero-story--showcase {
        height: clamp(22rem, 47vw, 29rem) !important;
        min-height: 22rem !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .story-tiles--showcase {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-template-rows: none !important;
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .story-tile--showcase {
        grid-template-columns: 1fr !important;
        height: auto !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .story-tile__content {
        padding: 0.75rem 0.2rem 0.15rem !important;
    }
}

@media (max-width: 767px) {
    .site-panel--hero.hero-grid.hero-grid--showcase {
        border-radius: 22px !important;
        padding: 0.75rem !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .hero-story--feature,
    .hero-story--showcase {
        border-radius: 20px !important;
        height: 23rem !important;
        min-height: 23rem !important;
    }

    .hero-story--showcase .hero-story__copy {
        padding: 1rem !important;
    }

    .hero-story--showcase .story-title {
        font-size: 1.9rem !important;
        max-width: 16ch !important;
    }

    .hero-story--showcase .hero-story__meta,
    .hero-story--showcase .hero-story__cta {
        display: none !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .story-tiles--showcase {
        grid-template-columns: 1fr !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .story-tile--showcase {
        grid-template-columns: 6.8rem minmax(0, 1fr) !important;
    }

    .site-panel--hero.hero-grid.hero-grid--showcase .story-tile__content {
        padding: 0.1rem 0.1rem 0.1rem 0.75rem !important;
    }
}

/* v113: compact expandable countdown, Kisure gallery colors, and reliable shared hero media */
.event-countdown-shell {
    margin-top: 0.8rem !important;
}

.event-countdown.event-countdown--compact {
    background: var(--event-countdown-bg,rgba(8, 24, 56, 0.94)) !important;
    background-position: center !important;
    background-size: cover !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 22px !important;
    box-shadow: 0 16px 34px rgba(10, 28, 58, 0.14) !important;
    color: #fff !important;
    display: block !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.event-countdown--compact summary {
    list-style: none !important;
}

.event-countdown--compact summary::-webkit-details-marker {
    display: none !important;
}

.event-countdown__summary {
    align-items: center !important;
    cursor: pointer !important;
    display: grid !important;
    gap: clamp(0.65rem, 1.5vw, 1.15rem) !important;
    grid-template-columns: minmax(13rem, 0.85fr) minmax(18rem, 1fr) auto !important;
    min-height: 4.5rem !important;
    padding: 0.7rem clamp(0.8rem, 1.7vw, 1.3rem) !important;
}

.event-countdown__compact-brand {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    min-width: 0;
}

.event-countdown__summary .event-countdown__kicker {
    background: transparent !important;
    border: 0 !important;
    display: block !important;
    font-size: 0.66rem !important;
    letter-spacing: 0.12em !important;
    margin: 0 0 0.15rem !important;
    padding: 0 !important;
}

.event-countdown__summary h3 {
    color: #fff !important;
    font-size: clamp(0.98rem, 1.25vw, 1.2rem) !important;
    line-height: 1.12 !important;
    margin: 0 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-countdown--compact .event-countdown__logo {
    background: rgba(255, 255, 255, 0.14) !important;
    border-radius: 12px !important;
    flex: 0 0 auto !important;
    height: 42px !important;
    padding: 0.4rem !important;
    width: 42px !important;
}

.event-countdown--compact .event-countdown__timer {
    display: grid !important;
    gap: 0.45rem !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    width: 100% !important;
}

.event-countdown--compact .event-countdown__unit {
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 14px !important;
    min-width: 0 !important;
    padding: 0.5rem 0.35rem !important;
}

.event-countdown--compact .event-countdown__unit strong {
    color: #fff !important;
    display: block !important;
    font-size: clamp(1rem, 1.45vw, 1.28rem) !important;
    line-height: 1 !important;
}

.event-countdown--compact .event-countdown__unit span {
    color: rgba(255, 255, 255, 0.82) !important;
    display: block !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.07em !important;
    margin-top: 0.25rem !important;
    text-transform: uppercase !important;
}

.event-countdown__toggle {
    align-items: center;
    background: rgba(255, 255, 255, 0.13);
    border-radius: 999px;
    display: inline-flex;
    height: 2.4rem;
    justify-content: center;
    transition: transform 0.2s ease;
    width: 2.4rem;
}

.event-countdown[open] .event-countdown__toggle {
    transform: rotate(180deg);
}

.event-countdown__details {
    align-items: center;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 1rem clamp(0.9rem, 1.7vw, 1.4rem) 1.15rem;
}

.event-countdown__details .event-countdown__headline-row {
    align-items: center !important;
    display: flex !important;
    gap: 0.95rem !important;
}

.event-countdown__details h3 {
    color: #fff !important;
    font-size: clamp(1.25rem, 2vw, 1.75rem) !important;
    margin: 0 0 0.25rem !important;
}

.event-countdown__details p {
    color: rgba(255, 255, 255, 0.84) !important;
    margin: 0 !important;
    max-width: 62ch !important;
}

.event-countdown__logo--large {
    height: 64px !important;
    width: 64px !important;
}

.event-countdown__details .event-countdown__action {
    background: #fff !important;
    color: #071525 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.hero-story--showcase .hero-story__media {
    aspect-ratio: auto !important;
    background: rgba(249, 115, 22, 0.12) !important;
    border-radius: 0 !important;
    inset: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
}

.hero-story--showcase .hero-story__media picture,
.hero-story--showcase .hero-story__media img {
    display: block !important;
    height: 100% !important;
    inset: 0 !important;
    position: absolute !important;
    width: 100% !important;
}

.hero-story--showcase .hero-story__media img {
    object-fit: cover !important;
    object-position: center !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.hero-story__media-badges {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    left: 1rem;
    position: absolute;
    right: 1rem;
    top: 1rem;
    z-index: 6;
}

.hero-story__media-badges .story-badge,
.hero-story__media-badges .media-type-chip {
    backdrop-filter: blur(14px);
    box-shadow: 0 12px 24px rgba(7, 17, 31, 0.15);
}

.hero-story--showcase .hero-story__content--showcase {
    pointer-events: none;
}

.hero-story--showcase .hero-story__copy,
.hero-story--showcase .hero-story__copy a,
.hero-story--showcase .hero-story__copy button {
    pointer-events: auto;
}

.daily-gallery-card {
    background: var(--surface) !important;
    border: 1px solid var(--border) !important;
    border-radius: 18px !important;
    box-shadow: var(--shadow-sm) !important;
}

.daily-gallery-card::after {
    background: rgba(7, 17, 31, 0.62) !important;
}

.daily-gallery-card__badge {
    background: var(--primary-strong, #087f7c) !important;
    border-radius: 16px !important;
    box-shadow: 0 16px 30px rgba(14, 125, 121, 0.24) !important;
}

.daily-gallery-card__credit {
    background: rgba(7, 17, 31, 0.58) !important;
    border-top-right-radius: 12px !important;
}

.gallery-lightbox__backdrop {
    background: rgba(245, 247, 251, 0.98) !important;
}

.gallery-lightbox__stage {
    background: rgba(249, 115, 22, 0.08) !important;
}

.gallery-lightbox__meta {
    background: var(--surface) !important;
    color: var(--text) !important;
}

.gallery-lightbox__meta h2 {
    color: var(--bg-contrast) !important;
}

.gallery-lightbox__meta p {
    color: var(--text-soft) !important;
}

.gallery-lightbox__counter i {
    color: var(--primary-strong) !important;
}

.gallery-lightbox__full {
    background: rgba(14, 165, 164, 0.08) !important;
    border-color: rgba(14, 165, 164, 0.2) !important;
    color: var(--primary-strong) !important;
}

.gallery-lightbox__nav {
    background: var(--bg-contrast) !important;
    box-shadow: 0 16px 30px rgba(7, 17, 31, 0.2) !important;
    color: var(--surface) !important;
}

.gallery-lightbox__close {
    color: var(--bg-contrast) !important;
}

.gallery-lightbox__thumbs button.is-active {
    border-color: var(--primary-strong) !important;
}

@media (max-width: 991px) {
    .event-countdown__summary {
        grid-template-columns: minmax(9rem, 0.72fr) minmax(14rem, 1fr) auto !important;
    }

    .event-countdown__details {
        grid-template-columns: 1fr !important;
    }

    .event-countdown__details .event-countdown__action {
        justify-self: start !important;
    }
}

@media (max-width: 575px) {
    .event-countdown__summary {
        gap: 0.48rem !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        min-height: 3.85rem !important;
        padding: 0.55rem 0.6rem !important;
    }

    .event-countdown__summary h3,
    .event-countdown__summary .event-countdown__kicker {
        display: none !important;
    }

    .event-countdown--compact .event-countdown__timer {
        gap: 0.32rem !important;
    }

    .event-countdown--compact .event-countdown__unit {
        border-radius: 11px !important;
        padding: 0.38rem 0.18rem !important;
    }

    .event-countdown--compact .event-countdown__unit strong {
        font-size: 0.95rem !important;
    }

    .event-countdown--compact .event-countdown__unit span {
        font-size: 0.52rem !important;
        letter-spacing: 0.03em !important;
    }

    .event-countdown__toggle {
        height: 2rem;
        width: 2rem;
    }

    .event-countdown__details {
        padding: 0.85rem !important;
    }

    .event-countdown__details .event-countdown__headline-row {
        align-items: flex-start !important;
    }

    .event-countdown__details .event-countdown__headline-row > div {
        display: block !important;
    }

    .event-countdown__details .event-countdown__kicker {
        display: inline-flex !important;
    }

    .event-countdown__details .event-countdown__action {
        display: inline-flex !important;
        width: fit-content !important;
    }

    .event-countdown__logo--large {
        height: 52px !important;
        width: 52px !important;
    }
}


/* Gallery editor remove controls + lightbox captions */
.gallery-upload-preview__media,
.gallery-existing-grid__media {
    position: relative;
}

.gallery-image-remove-btn,
.gallery-existing-remove-check span {
    align-items: center;
    background: rgba(185, 28, 28, 0.94);
    border: 0;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 800;
    gap: 0.35rem;
    line-height: 1;
    padding: 0.45rem 0.65rem;
    position: absolute;
    right: 0.55rem;
    top: 0.55rem;
    z-index: 3;
}

.gallery-image-remove-btn:hover,
.gallery-existing-remove-check:hover span {
    background: rgba(127, 29, 29, 0.98);
    color: #fff;
}

.gallery-existing-remove-check {
    cursor: pointer;
    margin: 0;
}

.gallery-existing-remove-check input {
    opacity: 0;
    pointer-events: none;
    position: absolute;
}

.gallery-existing-grid__item.is-marked-remove {
    border-color: rgba(185, 28, 28, 0.55) !important;
    box-shadow: 0 0 0 3px rgba(185, 28, 28, 0.13) !important;
    opacity: 0.72;
}

.gallery-existing-grid__item.is-marked-remove img {
    filter: grayscale(1);
}

.gallery-existing-toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.gallery-lightbox__slide {
    align-content: center;
    gap: 0.85rem;
    grid-template-rows: minmax(0, auto) auto;
}

.gallery-lightbox__image-caption {
    background: rgba(15, 23, 42, 0.84);
    border-radius: 999px;
    color: #fff;
    font-size: clamp(0.82rem, 1.6vw, 0.98rem);
    font-weight: 700;
    line-height: 1.45;
    margin: 0 auto;
    max-width: min(92%, 52rem);
    padding: 0.58rem 1rem;
    text-align: center;
}

@media (max-width: 768px) {
    .gallery-lightbox__image-caption {
        border-radius: 1rem;
        max-width: 100%;
    }
}
.gallery-lightbox__slide img {
    max-height: min(74vh, 58rem);
}


/* v113 hotfix: category/tag hero uses v109-safe media flow */
.kisure-safe-feature-hero.hero-grid--showcase {
    align-items: stretch !important;
}

.kisure-safe-feature-hero .hero-story--feature,
.kisure-safe-feature-hero .hero-story--showcase {
    background: var(--surface-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: 30px !important;
    box-shadow: var(--card-shadow) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-story__media {
    aspect-ratio: 16 / 10 !important;
    background: rgba(249, 115, 22, 0.1) !important;
    border-radius: 30px 30px 0 0 !important;
    display: block !important;
    height: auto !important;
    inset: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-story__media picture,
.kisure-safe-feature-hero .hero-story--showcase .hero-story__media img {
    display: block !important;
    height: 100% !important;
    inset: auto !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: 1 !important;
    position: relative !important;
    visibility: visible !important;
    width: 100% !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-story__content--showcase {
    background: transparent !important;
    color: var(--text-main) !important;
    display: block !important;
    min-height: 0 !important;
    padding: 1.3rem 1.35rem 1.5rem !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2 !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-story__copy {
    color: var(--text-main) !important;
    display: grid !important;
    gap: 0.75rem !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-kicker {
    background: var(--accent-soft) !important;
    border-color: rgba(14, 125, 121, 0.16) !important;
    color: var(--accent) !important;
}

.kisure-safe-feature-hero .hero-story--showcase .story-title,
.kisure-safe-feature-hero .hero-story--showcase .story-title a {
    color: var(--text-main) !important;
    font-size: clamp(1.85rem, 3vw, 3rem) !important;
    line-height: 1.02 !important;
    max-width: none !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-story__dek,
.kisure-safe-feature-hero .hero-story--showcase .hero-story__meta {
    color: var(--text-soft) !important;
    max-width: 62ch !important;
}

.kisure-safe-feature-hero .hero-story--showcase .hero-story__cta {
    background: var(--bg-contrast) !important;
    color: var(--surface) !important;
    margin-top: 0.2rem !important;
}

html[data-theme="dark"] .kisure-safe-feature-hero .hero-story--showcase .hero-story__cta {
    background: #fff !important;
    color: #071525 !important;
}

@media (max-width: 767px) {
    .kisure-safe-feature-hero .hero-story--feature,
    .kisure-safe-feature-hero .hero-story--showcase {
        height: auto !important;
        min-height: 0 !important;
    }

    .kisure-safe-feature-hero .hero-story--showcase .hero-story__media {
        aspect-ratio: 16 / 11 !important;
    }

    .kisure-safe-feature-hero .hero-story--showcase .hero-story__meta,
    .kisure-safe-feature-hero .hero-story--showcase .hero-story__cta {
        display: inline-flex !important;
    }
}

/* v114 final hero/gallery stability patch: use the article featured image, keep one clear label, and keep popup captions under the active image. */
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__media,
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__media picture,
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__media img {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__media img {
    filter: none !important;
    object-fit: cover !important;
    object-position: center !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__content--showcase {
    background: rgba(7, 21, 37, 0.92) !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-kicker {
    max-width: max-content !important;
    position: relative !important;
    z-index: 3 !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .story-title,
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__dek,
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__meta,
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__cta {
    position: relative !important;
    z-index: 3 !important;
}

.gallery-lightbox__stage {
    align-items: center !important;
    display: flex !important;
    justify-content: center !important;
}

.gallery-lightbox__slide[data-gallery-active-slide] {
    display: grid !important;
    height: 100% !important;
    justify-items: center !important;
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

.gallery-lightbox__slide[data-gallery-active-slide] img {
    display: block !important;
    height: auto !important;
    max-height: min(74vh, 58rem) !important;
    max-width: 100% !important;
    object-fit: contain !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
}

.gallery-lightbox__image-caption.d-none {
    display: none !important;
}


/* v113 final stability patch: keep homepage featured images visible and simplify category/tag hero copy. */
.hero-story .hero-story__content .story-badge,
.hero-story--showcase .hero-kicker {
    background: rgba(14, 125, 121, 0.94) !important;
    border: 1px solid rgba(14, 125, 121, 0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 14px 30px rgba(14, 125, 121, 0.18) !important;
}

html[data-theme="dark"] .hero-story .hero-story__content .story-badge,
html[data-theme="dark"] .hero-story--showcase .hero-kicker {
    background: rgba(14, 125, 121, 0.96) !important;
    color: #ffffff !important;
}

.hero-story__cta,
.hero-story__cta:hover,
.hero-story__cta:focus {
    text-decoration: none !important;
}

.hero-grid:not(.hero-grid--showcase) .hero-story--feature .hero-story__media,
.hero-grid:not(.hero-grid--showcase) .hero-story--feature .hero-story__media picture,
.hero-grid:not(.hero-grid--showcase) .hero-story--feature .hero-story__media img {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.hero-grid:not(.hero-grid--showcase) .hero-story--feature .hero-story__media img {
    object-fit: cover !important;
    object-position: center !important;
}

.hero-grid:not(.hero-grid--showcase) .hero-story--feature .hero-story__content {
    align-content: center !important;
}

@media (max-width: 991px) {
    .hero-grid:not(.hero-grid--showcase) .hero-story--feature {
        grid-template-columns: 1fr !important;
    }
}

/* v115: homepage uses the category/tag hero system, galleries become a Kisure photo showcase, countdown stays logo+timer compact. */
.kisure-home-feature-hero.hero-grid--showcase {
    align-items: stretch !important;
}

.kisure-home-feature-hero .hero-story--showcase .hero-story__media {
    background: rgba(249, 115, 22, 0.1) !important;
}

.kisure-home-feature-hero .hero-story--showcase .hero-story__content--showcase {
    background: rgba(7, 21, 37, 0.92) !important;
}

.kisure-home-feature-hero .hero-story--showcase .story-title {
    max-width: 17ch !important;
}

.home-gallery-showcase {
    gap: 1.1rem !important;
}

.home-gallery-showcase__grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1.35fr) minmax(17rem, 0.65fr);
}

.home-gallery-showcase__grid--single {
    grid-template-columns: minmax(0, 1fr);
}

.home-gallery-feature {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
}

.home-gallery-feature__media {
    aspect-ratio: 16 / 9;
    background: rgba(249, 115, 22, 0.08);
    display: block;
    overflow: hidden;
    position: relative;
}

.home-gallery-feature__media picture,
.home-gallery-feature__media img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.home-gallery-feature__media::after {
    background: rgba(7, 17, 31, 0.52);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.home-gallery-feature__media .media-type-chip {
    left: 1rem;
    position: absolute;
    top: 1rem;
    z-index: 3;
}

.home-gallery-feature__media .gallery-count-chip {
    bottom: 1rem;
    position: absolute;
    right: 1rem;
    z-index: 3;
}

.home-gallery-feature__body {
    display: grid;
    gap: 0.8rem;
    padding: clamp(1rem, 1.8vw, 1.35rem);
}

.home-gallery-feature__body h3 {
    color: var(--bg-contrast);
    font-size: clamp(1.45rem, 2.1vw, 2.2rem);
    line-height: 1.05;
    margin: 0;
}

.home-gallery-feature__body p {
    color: var(--text-soft);
    margin: 0;
}

.home-gallery-rail {
    display: grid;
    gap: 0.8rem;
}

.home-gallery-rail__item {
    align-items: center;
    display: grid;
    gap: 0.85rem;
    grid-template-columns: 8.5rem minmax(0, 1fr);
    padding: 0.65rem;
}

.home-gallery-rail__media {
    aspect-ratio: 16 / 11;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
}

.home-gallery-rail__media picture,
.home-gallery-rail__media img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.home-gallery-rail__media span {
    align-items: center;
    background: rgba(7, 17, 31, 0.74);
    border-radius: 999px;
    bottom: 0.45rem;
    color: #fff;
    display: inline-flex;
    font-size: 0.75rem;
    font-weight: 800;
    gap: 0.35rem;
    left: 0.45rem;
    padding: 0.28rem 0.52rem;
    position: absolute;
}

.home-gallery-rail__body {
    display: grid;
    gap: 0.35rem;
}

.home-gallery-rail__body span {
    color: var(--accent);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.home-gallery-rail__body h3 {
    color: var(--bg-contrast);
    font-size: 0.98rem;
    line-height: 1.2;
    margin: 0;
}

.event-countdown__summary {
    grid-template-columns: auto minmax(18rem, 1fr) auto !important;
}

.event-countdown__compact-brand {
    min-width: 0 !important;
}

.event-countdown__details .event-countdown__kicker,
.event-countdown__details h3,
.event-countdown__logo--large {
    display: none !important;
}

.event-countdown__details {
    grid-template-columns: minmax(0, 1fr) auto !important;
}

.event-countdown__details .event-countdown__headline-row {
    display: block !important;
}

.event-countdown__details p {
    max-width: 72ch !important;
}

@media (max-width: 1199px) {
    .home-gallery-showcase__grid {
        grid-template-columns: 1fr;
    }

    .home-gallery-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .home-gallery-rail__item {
        align-content: start;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .home-gallery-rail {
        grid-template-columns: 1fr;
    }

    .home-gallery-rail__item {
        grid-template-columns: 7.5rem minmax(0, 1fr);
    }

    .event-countdown__summary {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
    }

    .event-countdown__details {
        grid-template-columns: 1fr !important;
    }
}

/* v116: restore countdown top copy, strengthen shared hero readability, and add article excerpt space in the gallery popup. */
.event-countdown__compact-copy {
    min-width: 0 !important;
    max-width: clamp(9rem, 20vw, 18rem) !important;
}

.event-countdown__summary .event-countdown__compact-copy,
.event-countdown__summary .event-countdown__kicker,
.event-countdown__summary h3 {
    display: block !important;
}

.event-countdown__summary h3 {
    color: #fff !important;
    font-weight: 900 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.event-countdown__details .event-countdown__kicker,
.event-countdown__details h3,
.event-countdown__details .event-countdown__logo--large {
    display: none !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase::before {
    background: rgba(3, 10, 24, 0.08) !important;
    content: "" !important;
    inset: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    z-index: 1 !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__content--showcase {
    background: rgba(3, 10, 24, 0.72) !important;
    position: relative !important;
    z-index: 2 !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__copy {
    position: relative !important;
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.52) !important;
    z-index: 3 !important;
}

.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__dek,
.site-panel--hero.hero-grid--showcase .hero-story--showcase .hero-story__meta {
    color: rgba(255, 255, 255, 0.92) !important;
}

.gallery-lightbox__meta .gallery-lightbox__article-excerpt {
    color: rgba(231, 238, 247, 0.82) !important;
    font-size: clamp(0.98rem, 1.2vw, 1.08rem) !important;
    line-height: 1.55 !important;
    margin: 1rem 0 0 !important;
    max-width: 34rem !important;
}

@media (max-width: 575px) {
    .event-countdown__compact-brand {
        gap: 0.42rem !important;
    }

    .event-countdown__compact-copy {
        max-width: 6.6rem !important;
    }

    .event-countdown--compact .event-countdown__logo {
        height: 34px !important;
        padding: 0.28rem !important;
        width: 34px !important;
    }

    .event-countdown__summary .event-countdown__kicker {
        font-size: 0.52rem !important;
        letter-spacing: 0.08em !important;
    }

    .event-countdown__summary h3 {
        font-size: 0.72rem !important;
        line-height: 1.08 !important;
    }
}

/* v117: final countdown visibility + mobile expanded layout + readable gallery popup excerpt. */
.event-countdown.event-countdown--compact {
    position: relative !important;
}

.event-countdown.event-countdown--compact::before {
    background: rgba(2, 8, 23, 0.64) !important;
    content: "" !important;
    inset: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    z-index: 0 !important;
}

.event-countdown.event-countdown--compact > summary,
.event-countdown.event-countdown--compact > .event-countdown__details {
    position: relative !important;
    z-index: 1 !important;
}

.event-countdown__summary {
    grid-template-columns: minmax(25rem, 0.95fr) minmax(31rem, 1.45fr) auto !important;
}

.event-countdown__compact-brand {
    min-width: 0 !important;
    overflow: hidden !important;
}

.event-countdown__compact-copy {
    max-width: none !important;
    min-width: 0 !important;
    width: 100% !important;
}

.event-countdown__summary h3 {
    font-size: clamp(1rem, 1.35vw, 1.32rem) !important;
    letter-spacing: -0.02em !important;
    max-width: 100% !important;
}

.event-countdown--compact .event-countdown__timer {
    min-width: 0 !important;
}

.event-countdown__details .event-countdown__kicker--details,
.event-countdown__details .event-countdown__details-title {
    display: none !important;
}

.gallery-lightbox__meta .gallery-lightbox__article-excerpt {
    background: rgba(14, 125, 121, 0.075) !important;
    border: 1px solid rgba(14, 125, 121, 0.16) !important;
    border-radius: 18px !important;
    color: #243447 !important;
    font-weight: 650 !important;
    padding: 0.95rem 1rem !important;
}

html[data-theme="dark"] .gallery-lightbox__meta .gallery-lightbox__article-excerpt {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.14) !important;
    color: rgba(255, 255, 255, 0.88) !important;
}

@media (min-width: 768px) and (max-width: 1199px) {
    .event-countdown__summary {
        grid-template-columns: minmax(18rem, 0.75fr) minmax(25rem, 1.25fr) auto !important;
    }

    .event-countdown__compact-copy {
        max-width: 26rem !important;
    }
}

@media (max-width: 767px) {
    .event-countdown-shell {
        margin-top: 0.7rem !important;
    }

    .event-countdown.event-countdown--compact {
        border-radius: 20px !important;
    }

    .event-countdown__summary {
        gap: 0.55rem !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        min-height: 4.2rem !important;
        padding: 0.55rem 0.6rem !important;
    }

    .event-countdown__summary .event-countdown__compact-copy {
        display: none !important;
    }

    .event-countdown--compact .event-countdown__logo {
        height: 38px !important;
        padding: 0.28rem !important;
        width: 38px !important;
    }

    .event-countdown--compact .event-countdown__timer {
        gap: 0.42rem !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        width: 100% !important;
    }

    .event-countdown--compact .event-countdown__unit {
        border-radius: 12px !important;
        min-height: 3.35rem !important;
        padding: 0.42rem 0.22rem !important;
    }

    .event-countdown--compact .event-countdown__unit strong {
        font-size: clamp(1rem, 4.5vw, 1.25rem) !important;
    }

    .event-countdown--compact .event-countdown__unit span {
        font-size: 0.6rem !important;
        letter-spacing: 0.03em !important;
    }

    .event-countdown__toggle {
        height: 2.2rem !important;
        width: 2.2rem !important;
    }

    .event-countdown__details {
        border-top: 0 !important;
        display: block !important;
        padding: 1.35rem 1.25rem 1.25rem !important;
    }

    .event-countdown__details .event-countdown__headline-row {
        display: block !important;
    }

    .event-countdown__details .event-countdown__kicker--details {
        align-items: center !important;
        background: rgba(255, 255, 255, 0.14) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        border-radius: 999px !important;
        color: #fff !important;
        display: inline-flex !important;
        font-size: 0.74rem !important;
        font-weight: 900 !important;
        letter-spacing: 0.16em !important;
        margin: 0 0 1rem !important;
        padding: 0.58rem 0.95rem !important;
        text-transform: uppercase !important;
    }

    .event-countdown__details .event-countdown__details-title {
        color: #fff !important;
        display: block !important;
        font-size: clamp(1.65rem, 7.2vw, 2.25rem) !important;
        font-weight: 950 !important;
        letter-spacing: -0.045em !important;
        line-height: 1.08 !important;
        margin: 0 0 0.75rem !important;
        text-shadow: 0 2px 16px rgba(0, 0, 0, 0.42) !important;
    }

    .event-countdown__details p {
        color: rgba(255, 255, 255, 0.92) !important;
        font-size: clamp(1.02rem, 4.2vw, 1.28rem) !important;
        line-height: 1.55 !important;
        max-width: none !important;
        text-shadow: 0 2px 16px rgba(0, 0, 0, 0.3) !important;
    }

    .event-countdown__details .event-countdown__action {
        background: #fff !important;
        border-radius: 999px !important;
        color: #071525 !important;
        display: inline-flex !important;
        font-size: 1.02rem !important;
        margin-top: 1.25rem !important;
        min-height: 3.2rem !important;
        padding: 0.8rem 1.45rem !important;
        width: fit-content !important;
    }
}

@media (max-width: 430px) {
    .event-countdown__summary {
        gap: 0.42rem !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    .event-countdown--compact .event-countdown__logo {
        height: 34px !important;
        width: 34px !important;
    }

    .event-countdown--compact .event-countdown__timer {
        gap: 0.3rem !important;
    }

    .event-countdown--compact .event-countdown__unit {
        min-height: 3.05rem !important;
        padding: 0.36rem 0.16rem !important;
    }

    .event-countdown__toggle {
        height: 2rem !important;
        width: 2rem !important;
    }
}

/* v118: tablet/mobile countdown summary must stay compact: logo + timer + arrow only. Details show the label/title when opened. */
@media (max-width: 991px) {
    .event-countdown__summary {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 0.6rem !important;
        min-height: 4.45rem !important;
        padding: 0.62rem 0.7rem !important;
    }

    .event-countdown__summary .event-countdown__compact-copy,
    .event-countdown__summary .event-countdown__kicker,
    .event-countdown__summary h3 {
        display: none !important;
    }

    .event-countdown__compact-brand {
        gap: 0 !important;
        min-width: auto !important;
        overflow: visible !important;
    }

    .event-countdown--compact .event-countdown__logo {
        height: 48px !important;
        width: 48px !important;
        padding: 0.36rem !important;
        border-radius: 14px !important;
    }

    .event-countdown--compact .event-countdown__timer {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 0.48rem !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    .event-countdown--compact .event-countdown__unit {
        min-width: 0 !important;
    }

    .event-countdown__details .event-countdown__kicker--details {
        display: inline-flex !important;
    }

    .event-countdown__details .event-countdown__details-title {
        display: block !important;
    }
}

@media (max-width: 575px) {
    .event-countdown__summary {
        gap: 0.48rem !important;
        min-height: 4.1rem !important;
        padding: 0.55rem 0.55rem !important;
    }

    .event-countdown--compact .event-countdown__logo {
        height: 44px !important;
        width: 44px !important;
        padding: 0.32rem !important;
        border-radius: 13px !important;
    }

    .event-countdown--compact .event-countdown__timer {
        gap: 0.34rem !important;
    }

    .event-countdown--compact .event-countdown__unit {
        min-height: 3.15rem !important;
        padding: 0.38rem 0.15rem !important;
    }

    .event-countdown__toggle {
        height: 2.15rem !important;
        width: 2.15rem !important;
    }
}

@media (max-width: 430px) {
    .event-countdown--compact .event-countdown__logo {
        height: 42px !important;
        width: 42px !important;
        padding: 0.3rem !important;
    }

    .event-countdown--compact .event-countdown__timer {
        gap: 0.26rem !important;
    }

    .event-countdown--compact .event-countdown__unit strong {
        font-size: clamp(0.92rem, 4.7vw, 1.08rem) !important;
    }

    .event-countdown--compact .event-countdown__unit span {
        font-size: 0.52rem !important;
    }
}


/* v120: complete gallery popup redesign */
.gallery-lightbox {
    display: grid !important;
    place-items: center !important;
    padding: 1rem !important;
}

.gallery-lightbox__backdrop {
    background: rgba(6, 12, 23, 0.72) !important;
    backdrop-filter: blur(8px) !important;
}

.gallery-lightbox__dialog {
    position: relative !important;
    width: min(100%, 1660px) !important;
    z-index: 2 !important;
}

.gallery-lightbox__frame {
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.12) !important;
    border-radius: 28px !important;
    box-shadow: 0 32px 90px rgba(0, 0, 0, 0.28) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.5fr) minmax(320px, 430px) !important;
    height: min(92vh, 980px) !important;
    overflow: hidden !important;
    position: relative !important;
}

.gallery-lightbox__viewer {
    background: #111827 !important;
    min-width: 0 !important;
    position: relative !important;
}

.gallery-lightbox__stage {
    align-items: center !important;
    background: rgba(255,255,255,0.01) !important;
    display: flex !important;
    height: 100% !important;
    justify-content: center !important;
    padding: 1.35rem 5.2rem 1.35rem !important;
}

.gallery-lightbox__slide,
.gallery-lightbox__slide[data-gallery-active-slide] {
    align-content: stretch !important;
    display: grid !important;
    gap: 1rem !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    height: 100% !important;
    justify-items: center !important;
    width: 100% !important;
}

.gallery-lightbox__slide img,
.gallery-lightbox__slide[data-gallery-active-slide] img {
    border-radius: 20px !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3) !important;
    display: block !important;
    height: auto !important;
    max-height: calc(100% - 0.5rem) !important;
    max-width: 100% !important;
    object-fit: contain !important;
    width: auto !important;
}

.gallery-lightbox__image-caption {
    background: rgba(15, 23, 42, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 20px !important;
    color: #f8fafc !important;
    font-size: clamp(0.96rem, 1.2vw, 1.08rem) !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
    margin: 0 !important;
    max-width: min(100%, 980px) !important;
    padding: 1rem 1.2rem !important;
    text-align: center !important;
    width: fit-content !important;
}

.gallery-lightbox__meta {
    background: #f8fbfd !important;
    border-left: 1px solid rgba(15, 23, 42, 0.08) !important;
    color: #0f172a !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 1.1rem !important;
    overflow-y: auto !important;
    padding: 1.4rem 1.35rem 1.25rem !important;
}

.gallery-lightbox__meta-head {
    display: grid !important;
    gap: 0.95rem !important;
}

.gallery-lightbox__counter {
    align-items: center !important;
    background: rgba(14, 125, 121, 0.08) !important;
    border: 1px solid rgba(14, 125, 121, 0.12) !important;
    border-radius: 999px !important;
    color: #0f172a !important;
    display: inline-flex !important;
    font-weight: 700 !important;
    gap: 0.55rem !important;
    padding: 0.55rem 0.9rem !important;
    width: fit-content !important;
}

.gallery-lightbox__counter i {
    color: #0e7d79 !important;
}

.gallery-lightbox__meta h2 {
    color: #07111f !important;
    font-size: clamp(1.95rem, 2vw, 2.6rem) !important;
    font-weight: 900 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.14 !important;
    margin: 0 !important;
}

.gallery-lightbox__full {
    align-items: center !important;
    align-self: start !important;
    background: rgba(14, 125, 121, 0.08) !important;
    border: 1px solid rgba(14, 125, 121, 0.18) !important;
    border-radius: 999px !important;
    color: #0e7d79 !important;
    display: inline-flex !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    gap: 0.6rem !important;
    min-height: 3.5rem !important;
    padding: 0.85rem 1.15rem !important;
    text-decoration: none !important;
    transition: transform 0.18s ease, box-shadow 0.18s ease !important;
    width: fit-content !important;
}

.gallery-lightbox__full:hover {
    box-shadow: 0 12px 24px rgba(14, 125, 121, 0.12) !important;
    transform: translateY(-1px) !important;
}

.gallery-lightbox__article-card {
    background: rgba(14, 125, 121, 0.06) !important;
    border: 1px solid rgba(14, 125, 121, 0.12) !important;
    border-radius: 20px !important;
    padding: 0 !important;
}

.gallery-lightbox__meta .gallery-lightbox__article-excerpt {
    color: #243447 !important;
    font-size: 1.04rem !important;
    font-weight: 650 !important;
    line-height: 1.65 !important;
    margin: 0 !important;
    max-width: none !important;
    padding: 1rem 1.05rem !important;
}

.gallery-lightbox__thumbs-wrap {
    border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
    display: grid !important;
    gap: 0.8rem !important;
    margin-top: auto !important;
    padding-top: 1rem !important;
}

.gallery-lightbox__thumbs-label {
    color: #475569 !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    margin: 0 !important;
    text-transform: uppercase !important;
}

.gallery-lightbox__thumbs {
    border-top: 0 !important;
    display: grid !important;
    gap: 0.7rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.gallery-lightbox__thumbs button {
    aspect-ratio: 1 / 1 !important;
    background: #dfe8f0 !important;
    border: 3px solid transparent !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08) !important;
    overflow: hidden !important;
    position: relative !important;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease !important;
}

.gallery-lightbox__thumbs button:hover {
    transform: translateY(-1px) !important;
}

.gallery-lightbox__thumbs button.is-active {
    border-color: #0e7d79 !important;
    box-shadow: 0 14px 28px rgba(14, 125, 121, 0.16) !important;
}

.gallery-lightbox__thumbs img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

.gallery-lightbox__close,
.gallery-lightbox__nav {
    align-items: center !important;
    appearance: none !important;
    border: 0 !important;
    border-radius: 999px !important;
    cursor: pointer !important;
    display: inline-flex !important;
    justify-content: center !important;
    z-index: 5 !important;
}

.gallery-lightbox__close {
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.18) !important;
    color: #07111f !important;
    font-size: 1.35rem !important;
    height: 3rem !important;
    position: absolute !important;
    right: 1rem !important;
    top: 1rem !important;
    width: 3rem !important;
}

.gallery-lightbox__nav {
    background: rgba(7, 17, 31, 0.94) !important;
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.24) !important;
    color: #fff !important;
    height: 3.6rem !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 3.6rem !important;
}

.gallery-lightbox__nav--prev {
    left: 1rem !important;
}

.gallery-lightbox__nav--next {
    right: 1rem !important;
}

html[data-theme="dark"] .gallery-lightbox__frame {
    background:#1c1c1c!important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-theme="dark"] .gallery-lightbox__meta {
    background:#1c1c1c!important;
    border-left-color: rgba(255, 255, 255, 0.08) !important;
    color: rgba(255, 255, 255, 0.92) !important;
}

html[data-theme="dark"] .gallery-lightbox__counter {
    background: rgba(14, 125, 121, 0.18) !important;
    border-color: rgba(45, 212, 191, 0.16) !important;
    color: rgba(255, 255, 255, 0.92) !important;
}

html[data-theme="dark"] .gallery-lightbox__meta h2 {
    color: #f8fafc !important;
}

html[data-theme="dark"] .gallery-lightbox__full {
    background: rgba(45, 212, 191, 0.12) !important;
    border-color: rgba(45, 212, 191, 0.2) !important;
    color: #7dd3fc !important;
}

html[data-theme="dark"] .gallery-lightbox__article-card {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
}

html[data-theme="dark"] .gallery-lightbox__meta .gallery-lightbox__article-excerpt,
html[data-theme="dark"] .gallery-lightbox__thumbs-label {
    color: rgba(226, 232, 240, 0.9) !important;
}

html[data-theme="dark"] .gallery-lightbox__close {
    background:#1c1c1c!important;
    color: #f8fafc !important;
}

@media (max-width: 1199px) {
    .gallery-lightbox__frame {
        grid-template-columns: minmax(0, 1.2fr) minmax(300px, 380px) !important;
    }

    .gallery-lightbox__meta h2 {
        font-size: clamp(1.55rem, 2vw, 2rem) !important;
    }

    .gallery-lightbox__thumbs {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    .gallery-lightbox {
        padding: 0.75rem !important;
    }

    .gallery-lightbox__dialog {
        height: 100% !important;
        width: 100% !important;
    }

    .gallery-lightbox__frame {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: auto minmax(0, 1fr) !important;
        height: calc(100vh - 1.5rem) !important;
    }

    .gallery-lightbox__viewer {
        min-height: 0 !important;
    }

    .gallery-lightbox__stage {
        height: auto !important;
        min-height: min(52vh, 30rem) !important;
        padding: 4.5rem 1rem 1rem !important;
    }

    .gallery-lightbox__slide img,
    .gallery-lightbox__slide[data-gallery-active-slide] img {
        max-height: 38vh !important;
    }

    .gallery-lightbox__meta {
        border-left: 0 !important;
        border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
        padding: 1rem !important;
    }

    .gallery-lightbox__meta-head {
        gap: 0.8rem !important;
    }

    .gallery-lightbox__meta h2 {
        font-size: clamp(1.4rem, 4.8vw, 1.9rem) !important;
    }

    .gallery-lightbox__thumbs {
        display: flex !important;
        gap: 0.7rem !important;
        overflow-x: auto !important;
        padding-bottom: 0.2rem !important;
        scroll-snap-type: x proximity !important;
    }

    .gallery-lightbox__thumbs button {
        flex: 0 0 92px !important;
        scroll-snap-align: start !important;
    }
}

@media (max-width: 640px) {
    .gallery-lightbox {
        padding: 0 !important;
    }

    .gallery-lightbox__frame {
        border-radius: 0 !important;
        height: 100vh !important;
        max-height: 100vh !important;
    }

    .gallery-lightbox__close {
        right: 0.9rem !important;
        top: 0.85rem !important;
    }

    .gallery-lightbox__stage {
        min-height: 0 !important;
        padding: 4.25rem 0.9rem 0.9rem !important;
    }

    .gallery-lightbox__slide,
    .gallery-lightbox__slide[data-gallery-active-slide] {
        gap: 0.85rem !important;
    }

    .gallery-lightbox__slide img,
    .gallery-lightbox__slide[data-gallery-active-slide] img {
        border-radius: 16px !important;
        max-height: 34vh !important;
    }

    .gallery-lightbox__image-caption {
        border-radius: 18px !important;
        font-size: 1.02rem !important;
        line-height: 1.5 !important;
        padding: 0.95rem 1rem !important;
        width: 100% !important;
    }

    .gallery-lightbox__nav {
        bottom: 1.15rem !important;
        height: 3.25rem !important;
        top: auto !important;
        transform: none !important;
        width: 3.25rem !important;
    }

    .gallery-lightbox__nav--prev {
        left: 1rem !important;
    }

    .gallery-lightbox__nav--next {
        right: 1rem !important;
    }

    .gallery-lightbox__counter {
        font-size: 0.92rem !important;
        padding: 0.5rem 0.78rem !important;
    }

    .gallery-lightbox__meta h2 {
        font-size: 1.16rem !important;
        line-height: 1.2 !important;
    }

    .gallery-lightbox__full {
        min-height: 3.15rem !important;
        width: 100% !important;
    }

    .gallery-lightbox__meta .gallery-lightbox__article-excerpt {
        font-size: 0.98rem !important;
        line-height: 1.58 !important;
        padding: 0.9rem !important;
    }

    .gallery-lightbox__thumbs-label {
        font-size: 0.78rem !important;
    }

    .gallery-lightbox__thumbs button {
        flex-basis: 84px !important;
    }
}


/* v122: gallery popup final polish for clearer title, excerpt, and thumbnails */
.gallery-lightbox__dialog {
    filter: drop-shadow(0 30px 70px rgba(2, 6, 23, 0.26));
}

.gallery-lightbox__frame {
    border-radius: 32px !important;
    grid-template-columns: minmax(0, 1.58fr) minmax(350px, 450px) !important;
}

.gallery-lightbox__viewer {
    background: #07111f !important;
}

.gallery-lightbox__stage {
    padding: 2rem 5.75rem 1.75rem !important;
}

.gallery-lightbox__slide img,
.gallery-lightbox__slide[data-gallery-active-slide] img {
    background: #0b1220 !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24) !important;
}

.gallery-lightbox__image-caption {
    background: rgba(15, 23, 42, 0.92) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
}

.gallery-lightbox__meta {
    background: #f4f8fb !important;
    gap: 1.25rem !important;
    padding: 2rem !important;
}

.gallery-lightbox__meta-head {
    gap: 1rem !important;
}

.gallery-lightbox__meta h2 {
    color: #07111f !important;
    font-size: clamp(1.8rem, 2vw, 2.42rem) !important;
    letter-spacing: -0.035em !important;
    line-height: 1.08 !important;
    text-wrap: balance;
}

.gallery-lightbox__counter {
    background: rgba(14, 125, 121, 0.10) !important;
    color: #06313c !important;
}

.gallery-lightbox__full {
    background: #07111f !important;
    border-color: #07111f !important;
    color: #ffffff !important;
    width: fit-content !important;
}

.gallery-lightbox__full i {
    color: #2dd4bf !important;
}

.gallery-lightbox__article-card {
    background: #ffffff !important;
    border: 1px solid rgba(14, 125, 121, 0.14) !important;
    border-left: 5px solid #0e7d79 !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08) !important;
}

.gallery-lightbox__meta .gallery-lightbox__article-excerpt {
    color: #1f3144 !important;
    font-size: 1.02rem !important;
    font-weight: 650 !important;
}

.gallery-lightbox__thumbs-wrap {
    margin-top: 0 !important;
}

.gallery-lightbox__thumbs {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.gallery-lightbox__thumbs button {
    border-radius: 14px !important;
}

html[data-theme="dark"] .gallery-lightbox__article-card {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(45, 212, 191, 0.16) !important;
    border-left-color: #2dd4bf !important;
}

html[data-theme="dark"] .gallery-lightbox__full {
    background: #e8fffc !important;
    border-color: #e8fffc !important;
    color: #052c35 !important;
}

@media (max-width: 1199px) {
    .gallery-lightbox__frame {
        grid-template-columns: minmax(0, 1.25fr) minmax(320px, 390px) !important;
    }

    .gallery-lightbox__stage {
        padding-left: 4.75rem !important;
        padding-right: 4.75rem !important;
    }
}

@media (max-width: 991px) {
    .gallery-lightbox__frame {
        border-radius: 24px !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: minmax(0, 54vh) auto !important;
    }

    .gallery-lightbox__stage {
        min-height: 0 !important;
        padding: 4.6rem 1rem 1rem !important;
    }

    .gallery-lightbox__slide img,
    .gallery-lightbox__slide[data-gallery-active-slide] img {
        max-height: 40vh !important;
    }

    .gallery-lightbox__meta {
        gap: .9rem !important;
        max-height: 46vh !important;
        overflow: auto !important;
        padding: 1rem !important;
    }

    .gallery-lightbox__meta h2 {
        font-size: clamp(1.28rem, 4.2vw, 1.8rem) !important;
    }

    .gallery-lightbox__article-card {
        border-left-width: 4px !important;
    }

    .gallery-lightbox__thumbs button {
        flex: 0 0 88px !important;
    }
}

@media (max-width: 640px) {
    .gallery-lightbox__frame {
        border-radius: 0 !important;
        grid-template-rows: minmax(0, 48vh) auto !important;
    }

    .gallery-lightbox__stage {
        padding-top: 4.15rem !important;
    }

    .gallery-lightbox__slide img,
    .gallery-lightbox__slide[data-gallery-active-slide] img {
        max-height: 32vh !important;
    }

    .gallery-lightbox__meta {
        max-height: 52vh !important;
    }

    .gallery-lightbox__counter {
        width: fit-content !important;
    }

    .gallery-lightbox__meta-head {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .gallery-lightbox__full {
        width: 100% !important;
    }
}


/* v126: public football data-engine experience */
.football-page {
    display: grid;
    gap: 1.35rem;
}

.football-hero,
.football-club-hero,
.football-match-hero,
.football-player-hero,
.football-compact-hero,
.football-home-board {
    background: var(--hero-gradient);
    border: 1px solid var(--border-strong);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-md);
    color: var(--text);
    overflow: hidden;
    position: relative;
}

.football-hero::after,
.football-home-board::after,
.football-match-hero::after,
.football-club-hero::after,
.football-player-hero::after,
.football-compact-hero::after {
    background: rgba(14, 165, 164, 0.16);
    content: "";
    height: 16rem;
    pointer-events: none;
    position: absolute;
    right: -5rem;
    top: -6rem;
    width: 16rem;
}

.football-hero,
.football-club-hero,
.football-player-hero,
.football-compact-hero--split {
    align-items: center;
    display: grid;
    gap: 1.35rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: clamp(1.25rem, 3vw, 2.6rem);
}

.football-compact-hero:not(.football-compact-hero--split) {
    padding: clamp(1.25rem, 3vw, 2.2rem);
}

.football-hero h1,
.football-club-hero h1,
.football-match-hero h1,
.football-player-hero h1,
.football-compact-hero h1,
.football-home-board h2 {
    color: var(--bg-contrast);
    font-size: clamp(2rem, 4vw, 4rem);
    letter-spacing: -0.055em;
    line-height: 1.02;
    margin: 0;
}

.football-home-board h2 {
    font-size: clamp(1.55rem, 2.5vw, 2.5rem);
}

.football-hero p,
.football-club-hero p,
.football-player-hero p,
.football-compact-hero p,
.football-home-board p {
    color: var(--text-soft);
    font-size: clamp(0.98rem, 1.3vw, 1.14rem);
    margin: 0.65rem 0 0;
    max-width: 760px;
}

.football-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1rem;
}

.site-button--ghost {
    background: var(--bg-soft) !important;
    border: 1px solid var(--border-strong) !important;
    color: var(--bg-contrast) !important;
}

.football-hero-scorecard,
.football-hero__panel {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    display: grid;
    gap: 0.85rem;
    min-width: min(390px, 100%);
    padding: 1.05rem;
    position: relative;
    z-index: 1;
}

.football-hero-scorecard__league,
.football-hero-scorecard__meta {
    color: var(--primary-strong);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.football-hero-scorecard__teams {
    align-items: center;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.football-hero-scorecard__teams a:not(.football-hero-scorecard__score) {
    align-items: center;
    color: var(--bg-contrast);
    display: grid;
    font-weight: 900;
    gap: 0.5rem;
    justify-items: center;
    text-align: center;
}

.football-hero-scorecard__teams img,
.football-fixture-tile__teams img,
.football-schedule-row__team img,
.football-table-team img,
.football-mini-table img,
.football-player-team-link img {
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 999px;
    height: 38px;
    object-fit: contain;
    padding: 0.22rem;
    width: 38px;
}

.football-hero-scorecard__score {
    align-items: center;
    background: var(--primary-strong, #087f7c);
    border-radius: 18px;
    color: #fff !important;
    display: inline-flex;
    font-family: var(--font-display);
    font-size: clamp(1.35rem, 3vw, 2.4rem);
    font-weight: 900;
    justify-content: center;
    min-height: 74px;
    min-width: 96px;
    padding: 0 0.85rem;
}

.football-quick-panel,
.football-stat-grid {
    display: grid;
    gap: 0.9rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.football-quick-panel a,
.football-stat-grid > div {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    color: var(--text);
    display: grid;
    gap: 0.15rem;
    padding: 1rem;
}

.football-quick-panel strong,
.football-stat-grid strong {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: clamp(1.45rem, 2.2vw, 2.25rem);
    line-height: 1;
}

.football-quick-panel span,
.football-stat-grid span {
    color: var(--text-soft);
    font-size: 0.82rem;
    font-weight: 850;
    text-transform: uppercase;
}

.football-home-board {
    padding: clamp(1rem, 2.5vw, 1.5rem);
}

.football-home-board__head,
.football-home-board__bottom,
.football-feed-strip__head {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}

.football-fixture-strip {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(270px, 1fr));
    margin-top: 1.2rem;
    overflow-x: auto;
    padding-bottom: 0.15rem;
    position: relative;
    scroll-snap-type: x proximity;
    z-index: 1;
}

.football-fixture-tile {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: 20px;
    box-shadow: var(--shadow-sm);
    min-width: 270px;
    overflow: hidden;
    scroll-snap-align: start;
}

.football-fixture-tile__league {
    align-items: center;
    background: var(--primary-strong, #087f7c);
    color: #fff !important;
    display: flex;
    gap: 0.65rem;
    justify-content: space-between;
    padding: 0.82rem 1rem;
}

.football-fixture-tile__league span {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.12;
}

.football-fixture-tile__league small {
    color: rgba(255, 255, 255, 0.86);
    font-weight: 800;
    white-space: nowrap;
}

.football-fixture-tile__body {
    align-items: center;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 0.95rem 1rem 0.75rem;
}

.football-fixture-tile__teams {
    display: grid;
    gap: 0.5rem;
    min-width: 0;
}

.football-fixture-tile__teams a {
    align-items: center;
    color: var(--text);
    display: flex;
    font-size: 0.98rem;
    font-weight: 850;
    gap: 0.55rem;
    min-width: 0;
}

.football-fixture-tile__teams span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-fixture-tile__kickoff {
    border-left: 1px solid var(--border);
    color: var(--bg-contrast);
    display: grid;
    gap: 0.2rem;
    min-width: 92px;
    padding-left: 0.85rem;
    text-align: center;
}

.football-fixture-tile__kickoff strong {
    font-family: var(--font-display);
    font-size: 1rem;
}

.football-fixture-tile__kickoff small,
.football-fixture-tile__venue {
    color: var(--text-soft);
    font-size: 0.76rem;
    font-weight: 800;
}

.football-fixture-tile__venue {
    border-top: 1px solid var(--border);
    padding: 0.65rem 1rem;
}

.football-home-board__bottom {
    align-items: flex-start;
    border-top: 1px solid var(--border);
    margin-top: 1rem;
    padding-top: 1rem;
}

.football-home-board__summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.football-home-board__summary span,
.football-competition-rail a,
.football-season-switcher a {
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--text);
    font-size: 0.82rem;
    font-weight: 850;
    padding: 0.45rem 0.75rem;
}

.football-home-board__summary strong {
    color: var(--primary-strong);
}

.football-competition-rail {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
}

.football-competition-rail a:hover,
.football-season-switcher a.is-active,
.football-season-switcher a:hover {
    background: var(--primary);
    color: #fff;
}

.football-section,
.football-side-panel,
.football-table-wrap {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    padding: clamp(1rem, 2vw, 1.5rem);
}

.football-section--flush .section-heading {
    margin-bottom: 1rem;
}

.football-layout {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
}

.football-layout--wide-main {
    grid-template-columns: minmax(0, 1fr) minmax(290px, 360px);
}

.football-card-grid,
.football-player-grid,
.football-data-grid,
.football-competition-grid,
.football-match-summary-grid {
    display: grid;
    gap: 1rem;
}

.football-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.football-card-grid--compact {
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
}

.football-player-grid,
.football-data-grid,
.football-stat-grid {
    grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
}

.football-data-grid--wide {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.football-competition-grid {
    grid-template-columns: repeat(auto-fit, minmax(255px, 1fr));
}

.football-match-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.football-match-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 20px;
    box-shadow: var(--shadow-sm);
    color: var(--text);
    display: grid;
    gap: 0.85rem;
    min-height: 166px;
    padding: 1rem;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.football-match-card:hover {
    border-color: rgba(14, 165, 164, 0.35);
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.football-match-card.is-live {
    border-color: rgba(239, 68, 68, 0.35);
}

.football-match-card__top,
.football-match-card__meta {
    align-items: center;
    color: var(--text-soft);
    display: flex;
    font-size: 0.78rem;
    font-weight: 850;
    gap: 0.6rem;
    justify-content: space-between;
    text-transform: uppercase;
}

.football-match-card__league {
    color: var(--primary-strong);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-match-card__time,
.football-match-card__meta a,
.football-panel-link {
    background: rgba(14, 165, 164, 0.10);
    border-radius: 999px;
    color: var(--primary-strong);
    font-weight: 900;
    padding: 0.28rem 0.55rem;
    white-space: nowrap;
}

.football-match-card.is-live .football-match-card__time {
    background: rgba(239, 68, 68, 0.12);
    color: var(--danger);
}

.football-match-card__teams {
    align-items: center;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.football-match-card__team {
    align-items: center;
    color: var(--text);
    display: flex;
    gap: 0.55rem;
    min-width: 0;
}

.football-match-card__team:hover span,
.football-table-team:hover strong,
.football-schedule-row__team:hover span {
    color: var(--primary-strong);
}

.football-match-card__team--away {
    justify-content: flex-end;
    text-align: right;
}

.football-match-card__team img,
.football-match-card__team b,
.football-club-hero__badge,
.football-player-hero__photo {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 14px;
    display: inline-flex;
    flex: 0 0 auto;
    height: 42px;
    justify-content: center;
    object-fit: contain;
    padding: 0.15rem;
    width: 42px;
}

.football-match-card__team span {
    font-weight: 900;
    line-height: 1.18;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.football-match-card__score {
    align-items: center;
    background: var(--bg-contrast);
    border-radius: 14px;
    color: var(--surface) !important;
    display: inline-flex;
    font-weight: 900;
    gap: 0.35rem;
    justify-content: center;
    min-height: 44px;
    min-width: 74px;
    padding: 0 0.72rem;
}

.football-match-card__meta {
    border-top: 1px solid var(--border);
    padding-top: 0.65rem;
}

.football-empty {
    background: var(--surface-strong);
    border: 1px dashed var(--border-strong);
    border-radius: 18px;
    color: var(--text-soft);
    font-weight: 800;
    padding: 1rem;
}

.football-side-panel {
    align-self: start;
}

.football-link-list,
.football-article-list,
.football-mini-table,
.football-timeline,
.football-info-list,
.football-schedule-list,
.football-lineup-card__players {
    display: grid;
    gap: 0.7rem;
}

.football-link-list a,
.football-article-list a,
.football-mini-table a,
.football-mini-table div,
.football-timeline__item,
.football-data-card,
.football-player-card,
.football-stat-grid > div,
.football-info-list a,
.football-info-list > span,
.football-summary-team,
.football-summary-kickoff {
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 16px;
    color: var(--text);
    padding: 0.85rem;
    text-decoration: none;
}

.football-link-list a,
.football-article-list a,
.football-mini-table a,
.football-mini-table div,
.football-info-list a,
.football-info-list > span {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.football-link-list a.is-active,
.football-mini-table a.is-active {
    border-color: rgba(14, 165, 164, 0.38);
    box-shadow: inset 4px 0 0 var(--primary);
}

.football-mini-table strong,
.football-table-team {
    align-items: center;
    display: inline-flex;
    gap: 0.5rem;
}

.football-mini-table img,
.football-table-team img {
    height: 28px;
    width: 28px;
}

.football-muted {
    color: var(--text-soft);
    font-weight: 700;
}

.football-club-hero__badge,
.football-player-hero__photo {
    border-radius: 24px;
    height: 104px;
    width: 104px;
}

.football-club-hero__badge img,
.football-player-hero__photo img {
    height: 100%;
    object-fit: contain;
    width: 100%;
}

.football-player-team-link {
    align-items: center;
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--text);
    display: inline-flex;
    font-weight: 900;
    gap: 0.5rem;
    margin-top: 0.9rem;
    padding: 0.45rem 0.75rem;
}

.football-section-tabs {
    display: flex;
    gap: 0.6rem;
    overflow-x: auto;
}

.football-section-tabs a {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--primary-strong);
    flex: 0 0 auto;
    font-weight: 900;
    padding: 0.7rem 1rem;
    text-decoration: none;
}

.football-section-tabs a:hover {
    background: var(--primary);
    color: #fff;
}

.football-match-hero {
    align-items: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    padding: clamp(1rem, 3vw, 2rem);
}

.football-match-hero__team {
    align-items: center;
    color: var(--bg-contrast);
    display: grid;
    gap: 0.8rem;
    justify-items: start;
    position: relative;
    z-index: 1;
}

.football-match-hero__team span {
    color: var(--text-soft);
    font-weight: 900;
    text-transform: uppercase;
}

.football-match-hero__team--away {
    justify-items: end;
    text-align: right;
}

.football-match-hero__team img,
.football-summary-team img {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 18px;
    height: 72px;
    object-fit: contain;
    padding: 0.5rem;
    width: 72px;
}

.football-match-hero__score {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    display: grid;
    gap: 0.45rem;
    min-width: 210px;
    padding: 1rem;
    position: relative;
    text-align: center;
    z-index: 1;
}

.football-match-hero__score a,
.football-match-hero__score small {
    color: var(--text-soft);
    font-weight: 850;
}

.football-match-hero__score div {
    align-items: center;
    display: inline-flex;
    gap: 0.65rem;
    justify-content: center;
}

.football-match-hero__score strong {
    color: var(--bg-contrast);
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: 1;
}

.football-summary-team,
.football-summary-kickoff {
    align-items: center;
    display: grid;
    gap: 0.5rem;
    justify-items: center;
    text-align: center;
}

.football-summary-team strong,
.football-summary-kickoff strong {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 1.15rem;
}

.football-summary-team span,
.football-summary-kickoff span,
.football-summary-kickoff small {
    color: var(--text-soft);
    font-size: 0.82rem;
    font-weight: 850;
}

.football-info-list i {
    color: var(--primary-strong);
    margin-right: 0.7rem;
}

.football-info-list span span {
    display: grid;
}

.football-info-list small {
    color: var(--text-soft);
}

.football-timeline__item span {
    color: var(--primary-strong);
    font-weight: 900;
}

.football-timeline__item p,
.football-data-card p {
    color: var(--text-soft);
    margin: 0.25rem 0 0;
}

.football-lineup-card__players {
    grid-template-columns: repeat(auto-fit, minmax(115px, 1fr));
    margin-top: 0.85rem;
}

.football-lineup-card__players a,
.football-lineup-card__players span {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--text);
    font-size: 0.82rem;
    font-weight: 800;
    padding: 0.4rem 0.55rem;
}

.football-date-filter {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: 18px;
    display: grid;
    gap: 0.4rem;
    padding: 0.85rem;
    position: relative;
    z-index: 1;
}

.football-date-filter label {
    color: var(--text-soft);
    font-size: 0.78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.football-date-filter input {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    color: var(--text);
    padding: 0.55rem;
}

.football-schedule-day h3 {
    margin: 0.6rem 0 0;
}

.football-schedule-competition {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 20px;
    overflow: hidden;
}

.football-schedule-competition__head {
    align-items: center;
    background: var(--primary-strong, #087f7c);
    color: #fff !important;
    display: flex;
    font-weight: 900;
    gap: 1rem;
    justify-content: space-between;
    padding: 0.8rem 1rem;
}

.football-schedule-competition__head small {
    color: rgba(255, 255, 255, 0.86);
}

.football-schedule-row {
    align-items: center;
    border-top: 1px solid var(--border);
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) minmax(130px, auto) minmax(0, 1fr);
    padding: 0.85rem 1rem;
}

.football-schedule-row__team {
    align-items: center;
    color: var(--text);
    display: flex;
    font-weight: 850;
    gap: 0.55rem;
    min-width: 0;
}

.football-schedule-row__team--home {
    justify-content: flex-end;
    text-align: right;
}

.football-schedule-row__middle {
    color: var(--text);
    display: grid;
    gap: 0.15rem;
    text-align: center;
}

.football-schedule-row__middle small,
.football-schedule-row__middle em {
    color: var(--text-soft);
    font-size: 0.72rem;
    font-style: normal;
    font-weight: 800;
}

.football-schedule-row__middle strong {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 1.05rem;
}

.football-competition-card {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 18px;
    color: var(--text);
    display: grid;
    gap: 0.75rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 0.9rem;
}

.football-competition-card:hover {
    border-color: rgba(14, 165, 164, 0.35);
    transform: translateY(-1px);
}

.football-competition-card__logo {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.football-competition-card__logo img {
    height: 34px;
    object-fit: contain;
    width: 34px;
}

.football-competition-card strong,
.football-competition-card small {
    display: block;
}

.football-competition-card small {
    color: var(--text-soft);
    font-size: 0.78rem;
    margin-top: 0.08rem;
}

.football-season-switcher {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
}

.football-table {
    border-collapse: collapse;
    min-width: 760px;
    width: 100%;
}

.football-table-wrap {
    overflow-x: auto;
    padding: 0;
}

.football-section--table .football-table-wrap {
    border-radius: 18px;
}

.football-table th,
.football-table td {
    border-bottom: 1px solid var(--border);
    padding: 0.85rem;
    text-align: left;
    vertical-align: middle;
}

.football-table th {
    background: var(--primary-strong, #087f7c);
    color: #fff;
    font-size: 0.78rem;
    text-transform: uppercase;
}

.football-table tbody tr:hover {
    background: rgba(14, 165, 164, 0.06);
}

.football-table-rank {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 10px;
    display: inline-flex;
    font-weight: 900;
    justify-content: center;
    min-width: 2rem;
    padding: 0.15rem 0.35rem;
}

.football-table-team {
    color: var(--text);
    font-weight: 900;
}

.football-table-team--small {
    font-weight: 800;
}

.football-form-chips {
    display: inline-flex;
    gap: 0.24rem;
}

.football-form-chips span,
.football-form-chips a {
    align-items: center;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.68rem;
    font-weight: 900;
    height: 1.45rem;
    justify-content: center;
    text-decoration: none;
    width: 1.45rem;
}

.football-form-chips .is-w { background: var(--success); }
.football-form-chips .is-d { background: var(--accent); }
.football-form-chips .is-l { background: var(--danger); }
.football-form-chips .is-n { background: var(--text-faint); }

html[data-theme="dark"] .football-match-card,
html[data-theme="dark"] .football-fixture-tile,
html[data-theme="dark"] .football-schedule-competition,
html[data-theme="dark"] .football-table-wrap {
    background: var(--surface);
}

@media (max-width: 1180px) {
    .football-fixture-strip {
        grid-auto-columns: minmax(270px, 360px);
        grid-auto-flow: column;
        grid-template-columns: none;
    }
}

@media (max-width: 991px) {
    .football-hero,
    .football-club-hero,
    .football-player-hero,
    .football-compact-hero--split,
    .football-layout,
    .football-match-hero {
        grid-template-columns: 1fr;
    }

    .football-hero-scorecard,
    .football-hero__panel,
    .football-date-filter {
        width: 100%;
    }

    .football-match-hero__team,
    .football-match-hero__team--away {
        justify-items: center;
        text-align: center;
    }

    .football-quick-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .football-home-board__head,
    .football-home-board__bottom {
        align-items: flex-start;
        flex-direction: column;
    }

    .football-competition-rail {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .football-page {
        gap: 1rem;
    }

    .football-hero,
    .football-club-hero,
    .football-player-hero,
    .football-match-hero,
    .football-compact-hero,
    .football-home-board,
    .football-section,
    .football-side-panel {
        border-radius: 20px;
    }

    .football-quick-panel,
    .football-match-summary-grid {
        grid-template-columns: 1fr;
    }

    .football-card-grid,
    .football-card-grid--compact {
        grid-template-columns: 1fr;
    }

    .football-match-card__teams,
    .football-hero-scorecard__teams,
    .football-fixture-tile__body {
        grid-template-columns: 1fr;
        text-align: left;
    }

    .football-match-card__team--away,
    .football-schedule-row__team--home {
        justify-content: flex-start;
        text-align: left;
    }

    .football-match-card__score,
    .football-hero-scorecard__score {
        justify-self: start;
    }

    .football-schedule-row {
        grid-template-columns: 1fr;
    }

    .football-schedule-row__middle {
        background: var(--surface-strong);
        border-radius: 14px;
        padding: 0.6rem;
        text-align: left;
    }

    .football-table {
        min-width: 820px;
    }
}

/* v127: compact football cards, Supersport-style mobile match centre, and SEO page polish */
.football-fixture-strip {
    gap: 0.75rem;
    grid-template-columns: repeat(4, minmax(235px, 1fr));
    margin-top: 0.9rem;
}

.football-fixture-tile {
    border-radius: 16px;
    min-width: 0;
}

.football-fixture-tile__league {
    min-height: 50px;
    padding: 0.62rem 0.78rem;
}

.football-fixture-tile__league-title {
    align-items: center;
    display: flex;
    gap: 0.52rem;
    min-width: 0;
}

.football-fixture-tile__league-title img,
.football-fixture-tile__league-title i,
.football-match-card__league img {
    align-items: center;
    background: rgba(255, 255, 255, 0.96);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    flex: 0 0 auto;
    height: 26px;
    justify-content: center;
    object-fit: contain;
    padding: 0.18rem;
    width: 26px;
}

.football-fixture-tile__league-title > span,
.football-match-card__league span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-fixture-tile__league span {
    font-size: 0.95rem;
}

.football-fixture-tile__body {
    gap: 0.58rem;
    grid-template-columns: minmax(0, 1fr) minmax(74px, auto);
    padding: 0.72rem 0.78rem 0.58rem;
}

.football-fixture-tile__teams {
    gap: 0.42rem;
}

.football-fixture-tile__teams a {
    font-size: 0.86rem;
    gap: 0.45rem;
}

.football-fixture-tile__teams img,
.football-schedule-row__team img {
    height: 28px;
    width: 28px;
}

.football-fixture-tile__kickoff {
    min-width: 74px;
    padding-left: 0.65rem;
}

.football-fixture-tile__venue {
    padding: 0.5rem 0.78rem;
}

.football-match-card {
    border-radius: 16px;
    gap: 0.62rem;
    min-height: 0;
    padding: 0.82rem;
}

.football-match-card__league {
    align-items: center;
    display: inline-flex;
    gap: 0.42rem;
    min-width: 0;
}

.football-match-card__team img,
.football-match-card__team b {
    border-radius: 11px;
    height: 34px;
    width: 34px;
}

.football-match-card__score {
    border-radius: 12px;
    min-height: 38px;
    min-width: 62px;
    padding: 0 0.55rem;
}

.football-player-card {
    align-items: center;
    display: grid;
    gap: 0.45rem;
    justify-items: center;
    text-align: center;
}

.football-player-card img,
.football-player-card b {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    display: inline-flex;
    height: 58px;
    justify-content: center;
    object-fit: cover;
    width: 58px;
}

.football-player-card span {
    color: var(--bg-contrast);
    font-weight: 900;
    line-height: 1.12;
}

.football-player-card small {
    color: var(--text-soft);
    font-weight: 800;
}

.football-match-hero__meta {
    color: var(--text-soft);
    display: grid;
    gap: 0.16rem;
    grid-column: 1 / -1;
    justify-items: center;
    position: relative;
    text-align: center;
    z-index: 1;
}

.football-match-hero__meta a,
.football-match-hero__meta strong {
    color: var(--bg-contrast);
    font-weight: 900;
}

.football-match-hero__meta span {
    font-size: 0.82rem;
    font-weight: 800;
}

@media (max-width: 1180px) {
    .football-fixture-strip {
        grid-auto-columns: minmax(235px, 315px);
    }
}

@media (max-width: 991px) {
    .football-match-hero {
        grid-template-columns: minmax(0, 1fr) minmax(110px, auto) minmax(0, 1fr) !important;
    }

    .football-match-hero__team,
    .football-match-hero__team--away {
        justify-items: center;
        text-align: center;
    }
}

@media (max-width: 640px) {
    .football-page {
        gap: 0.72rem;
    }

    .football-home-board,
    .football-section,
    .football-side-panel,
    .football-table-wrap,
    .football-hero,
    .football-club-hero,
    .football-player-hero,
    .football-match-hero,
    .football-compact-hero {
        border-radius: 16px;
    }

    .football-home-board,
    .football-section,
    .football-side-panel,
    .football-compact-hero:not(.football-compact-hero--split) {
        padding: 0.75rem;
    }

    .football-home-board__head h2,
    .football-section .section-heading h2 {
        font-size: 1rem;
        letter-spacing: -0.02em;
    }

    .football-home-board__head p,
    .football-hero p,
    .football-club-hero p,
    .football-player-hero p,
    .football-compact-hero p {
        font-size: 0.82rem;
    }

    .football-fixture-strip {
        gap: 0.55rem;
        grid-auto-columns: minmax(216px, 76vw) !important;
        margin-top: 0.65rem;
        padding-bottom: 0.35rem;
    }

    .football-fixture-tile {
        border-radius: 14px;
    }

    .football-fixture-tile__league {
        min-height: 42px;
        padding: 0.45rem 0.55rem;
    }

    .football-fixture-tile__league-title {
        gap: 0.38rem;
    }

    .football-fixture-tile__league-title img,
    .football-fixture-tile__league-title i,
    .football-match-card__league img {
        height: 22px;
        width: 22px;
    }

    .football-fixture-tile__league span {
        font-size: 0.78rem;
    }

    .football-fixture-tile__league small {
        font-size: 0.63rem;
        max-width: 78px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .football-fixture-tile__body {
        gap: 0.4rem;
        grid-template-columns: minmax(0, 1fr) minmax(58px, auto) !important;
        padding: 0.55rem;
        text-align: left;
    }

    .football-fixture-tile__teams {
        gap: 0.28rem;
    }

    .football-fixture-tile__teams a {
        font-size: 0.74rem;
        gap: 0.34rem;
    }

    .football-fixture-tile__teams img,
    .football-schedule-row__team img {
        height: 22px;
        padding: 0.1rem;
        width: 22px;
    }

    .football-fixture-tile__kickoff {
        min-width: 58px;
        padding-left: 0.42rem;
    }

    .football-fixture-tile__kickoff strong {
        font-size: 0.78rem;
    }

    .football-fixture-tile__kickoff small,
    .football-fixture-tile__venue {
        font-size: 0.64rem;
    }

    .football-fixture-tile__venue {
        padding: 0.38rem 0.55rem;
    }

    .football-card-grid,
    .football-card-grid--compact {
        gap: 0.62rem;
        grid-template-columns: 1fr;
    }

    .football-match-card {
        border-radius: 14px;
        gap: 0.48rem;
        padding: 0.65rem;
    }

    .football-match-card__top {
        background: var(--primary-strong, #087f7c);
        border-radius: 13px 13px 0 0;
        color: #fff;
        margin: -0.65rem -0.65rem 0.28rem;
        padding: 0.48rem 0.58rem;
    }

    .football-match-card__league,
    .football-match-card__time {
        color: #fff !important;
    }

    .football-match-card__time {
        background: rgba(255, 255, 255, 0.16);
        font-size: 0.66rem;
        padding: 0.2rem 0.42rem;
    }

    .football-match-card__teams {
        align-items: center;
        gap: 0.32rem 0.5rem;
        grid-template-areas: "home score" "away score";
        grid-template-columns: minmax(0, 1fr) minmax(54px, auto) !important;
        text-align: left;
    }

    .football-match-card__team:first-child {
        grid-area: home;
    }

    .football-match-card__team--away {
        flex-direction: row-reverse;
        grid-area: away;
        justify-content: flex-end;
        text-align: left;
    }

    .football-match-card__team span {
        font-size: 0.78rem;
    }

    .football-match-card__team img,
    .football-match-card__team b {
        border-radius: 9px;
        height: 26px;
        width: 26px;
    }

    .football-match-card__score {
        align-self: stretch;
        border-radius: 11px;
        grid-area: score;
        min-height: 50px;
        min-width: 54px;
        padding: 0 0.42rem;
    }

    .football-match-card__meta {
        font-size: 0.64rem;
        gap: 0.34rem;
        overflow-x: auto;
        padding-top: 0.42rem;
        text-transform: none;
    }

    .football-match-card__meta a {
        padding: 0.22rem 0.42rem;
    }

    .football-club-hero,
    .football-player-hero {
        gap: 0.65rem;
        grid-template-columns: auto minmax(0, 1fr) !important;
        padding: 0.78rem;
    }

    .football-club-hero__badge,
    .football-player-hero__photo {
        border-radius: 16px;
        height: 58px;
        width: 58px;
    }

    .football-club-hero h1,
    .football-player-hero h1,
    .football-compact-hero h1,
    .football-hero h1 {
        font-size: 1.25rem;
        letter-spacing: -0.03em;
        line-height: 1.06;
    }

    .football-hero__actions {
        gap: 0.42rem;
        overflow-x: auto;
        padding-bottom: 0.12rem;
    }

    .football-hero__actions .site-button,
    .football-section-tabs a,
    .football-season-switcher a {
        font-size: 0.72rem;
        padding: 0.48rem 0.62rem;
        white-space: nowrap;
    }

    .football-section-tabs {
        gap: 0.4rem;
    }

    .football-match-hero {
        gap: 0.42rem;
        grid-template-columns: minmax(0, 1fr) minmax(68px, auto) minmax(0, 1fr) !important;
        padding: 0.72rem;
    }

    .football-match-hero__meta {
        font-size: 0.7rem;
    }

    .football-match-hero__meta span {
        font-size: 0.66rem;
    }

    .football-match-hero__team {
        gap: 0.34rem;
    }

    .football-match-hero__team h1 {
        font-size: 0.78rem;
        letter-spacing: -0.02em;
        line-height: 1.08;
        max-width: 105px;
    }

    .football-match-hero__team span {
        display: none;
    }

    .football-match-hero__team img,
    .football-summary-team img {
        border-radius: 13px;
        height: 42px;
        padding: 0.22rem;
        width: 42px;
    }

    .football-match-hero__score {
        border-radius: 13px;
        gap: 0.18rem;
        min-width: 68px;
        padding: 0.42rem;
    }

    .football-match-hero__score > a {
        display: none;
    }

    .football-match-hero__score strong {
        font-size: 1rem;
    }

    .football-match-hero__score small {
        font-size: 0.62rem;
        line-height: 1.12;
    }

    .football-match-summary-grid {
        gap: 0.45rem;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .football-summary-team,
    .football-summary-kickoff,
    .football-data-card,
    .football-mini-table a,
    .football-mini-table div,
    .football-info-list a,
    .football-info-list > span {
        border-radius: 13px;
        padding: 0.55rem;
    }

    .football-summary-team strong,
    .football-summary-kickoff strong {
        font-size: 0.76rem;
    }

    .football-summary-team span,
    .football-summary-kickoff span,
    .football-summary-kickoff small {
        font-size: 0.62rem;
    }

    .football-schedule-list {
        gap: 0.52rem;
    }

    .football-schedule-day h3 {
        font-size: 0.92rem;
        margin: 0.35rem 0 0;
    }

    .football-schedule-competition {
        border-radius: 14px;
    }

    .football-schedule-competition__head {
        padding: 0.5rem 0.62rem;
    }

    .football-schedule-competition__head span,
    .football-schedule-competition__head small {
        font-size: 0.72rem;
    }

    .football-schedule-row {
        gap: 0.34rem;
        grid-template-columns: minmax(0, 1fr) minmax(58px, auto) minmax(0, 1fr) !important;
        padding: 0.52rem 0.6rem;
    }

    .football-schedule-row__team {
        font-size: 0.72rem;
        gap: 0.3rem;
    }

    .football-schedule-row__team--home {
        justify-content: flex-end;
        text-align: right;
    }

    .football-schedule-row__middle {
        background: transparent;
        border-radius: 0;
        padding: 0;
        text-align: center;
    }

    .football-schedule-row__middle small,
    .football-schedule-row__middle em {
        font-size: 0.58rem;
        max-width: 76px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .football-schedule-row__middle strong {
        font-size: 0.82rem;
    }

    .football-table {
        min-width: 640px;
    }

    .football-table th,
    .football-table td {
        font-size: 0.72rem;
        padding: 0.46rem;
    }

    .football-table-team {
        gap: 0.35rem;
    }

    .football-table-team img,
    .football-mini-table img {
        height: 22px;
        width: 22px;
    }

    .football-table-rank {
        border-radius: 8px;
        min-width: 1.55rem;
        padding: 0.08rem 0.22rem;
    }

    .football-form-chips span,
    .football-form-chips a {
        font-size: 0.58rem;
        height: 1.1rem;
        width: 1.1rem;
    }

    .football-player-grid,
    .football-stat-grid {
        gap: 0.58rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .football-player-card {
        border-radius: 13px;
        padding: 0.62rem;
    }

    .football-player-card img,
    .football-player-card b {
        border-radius: 13px;
        height: 42px;
        width: 42px;
    }

    .football-player-card span {
        font-size: 0.78rem;
    }

    .football-player-card small,
    .football-muted,
    .football-data-card p {
        font-size: 0.74rem;
    }

    .football-stat-grid > div {
        border-radius: 13px;
        padding: 0.62rem;
    }

    .football-stat-grid strong {
        font-size: 1.08rem;
    }

    .football-competition-grid,
    .football-data-grid,
    .football-data-grid--wide {
        gap: 0.62rem;
        grid-template-columns: 1fr;
    }

    .football-competition-card {
        border-radius: 13px;
        padding: 0.62rem;
    }

    .football-competition-card__logo {
        border-radius: 12px;
        height: 34px;
        width: 34px;
    }

    .football-competition-card__logo img {
        height: 26px;
        width: 26px;
    }
}

/* v128: compact football homepage rail, fixed schedule rows, clean standings text, and SEO title polish */
.football-home-board {
    padding: clamp(0.85rem, 1.8vw, 1.15rem);
}

.football-home-board__head {
    gap: 0.8rem;
}

.football-home-board__head .site-kicker {
    letter-spacing: 0.18em;
}

.football-home-board h2 {
    font-size: clamp(1.25rem, 1.9vw, 1.9rem);
    line-height: 1.05;
}

.football-home-board p {
    font-size: clamp(0.84rem, 1vw, 0.98rem);
    max-width: 620px;
}

.football-home-board .site-button {
    padding: 0.7rem 1rem;
}

.football-fixture-strip {
    gap: 0.72rem;
    grid-template-columns: repeat(4, minmax(250px, 1fr));
    margin-top: 0.85rem;
    padding: 0 0 0.25rem;
    scrollbar-width: thin;
}

.football-fixture-strip::-webkit-scrollbar {
    height: 6px;
}

.football-fixture-strip::-webkit-scrollbar-thumb {
    background: rgba(14, 125, 121, 0.35);
    border-radius: 999px;
}

.football-fixture-tile {
    border-radius: 15px;
    min-width: 250px;
}

.football-fixture-tile__league {
    min-height: 46px;
    padding: 0.52rem 0.68rem;
}

.football-fixture-tile__league-title,
.football-schedule-competition__title {
    align-items: center;
    display: flex;
    gap: 0.48rem;
    min-width: 0;
}

.football-schedule-competition__title img,
.football-schedule-competition__title i {
    align-items: center;
    background: rgba(255, 255, 255, 0.96);
    border-radius: 999px;
    color: var(--primary-strong);
    display: inline-flex;
    flex: 0 0 auto;
    height: 25px;
    justify-content: center;
    object-fit: contain;
    padding: 0.16rem;
    width: 25px;
}

.football-fixture-tile__league-title > span,
.football-schedule-competition__title > span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-fixture-tile__body {
    gap: 0.55rem;
    grid-template-columns: minmax(0, 1fr) minmax(68px, auto);
    padding: 0.64rem 0.68rem 0.52rem;
}

.football-fixture-tile__teams a {
    align-items: flex-start;
    font-size: 0.82rem;
    gap: 0.38rem;
}

.football-fixture-tile__teams span {
    line-height: 1.14;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    word-break: normal;
}

.football-fixture-tile__kickoff {
    min-width: 68px;
    padding-left: 0.52rem;
}

.football-fixture-tile__venue {
    font-size: 0.72rem;
    overflow: hidden;
    padding: 0.44rem 0.68rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-home-board__bottom {
    margin-top: 0.8rem;
    padding-top: 0.75rem;
}

.football-home-board__summary span,
.football-competition-rail a {
    font-size: 0.76rem;
    padding: 0.36rem 0.62rem;
}

.football-section--embedded {
    margin-top: 1rem;
}

.football-schedule-competition__head {
    min-height: 48px;
    padding: 0.62rem 0.78rem;
}

.football-schedule-competition__head > i {
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.95rem;
}

.football-schedule-row {
    grid-template-columns: minmax(0, 1fr) minmax(112px, auto) minmax(0, 1fr);
    min-height: 76px;
    padding: 0.72rem 0.86rem;
}

.football-schedule-row__team span {
    line-height: 1.16;
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.football-schedule-row__middle small {
    line-height: 1.15;
}

.football-schedule-row__middle em {
    display: none;
}

.football-side-panel .football-muted:empty {
    display: none;
}

@media (max-width: 1180px) {
    .football-fixture-strip {
        grid-auto-columns: minmax(248px, 310px);
        grid-auto-flow: column;
        grid-template-columns: none;
    }
}

@media (max-width: 640px) {
    .football-home-board {
        padding: 0.65rem;
    }

    .football-home-board__head {
        align-items: stretch;
        gap: 0.55rem;
    }

    .football-home-board h2 {
        font-size: 0.98rem;
        letter-spacing: -0.02em;
        line-height: 1.08;
    }

    .football-home-board p {
        font-size: 0.72rem;
        line-height: 1.35;
        margin-top: 0.36rem;
    }

    .football-home-board .site-button {
        justify-content: center;
        padding: 0.5rem 0.72rem;
        width: 100%;
    }

    .football-fixture-strip {
        gap: 0.5rem;
        grid-auto-columns: minmax(218px, 72vw) !important;
        margin-top: 0.55rem;
    }

    .football-fixture-tile {
        min-width: 218px;
    }

    .football-fixture-tile__league {
        min-height: 38px;
        padding: 0.38rem 0.5rem;
    }

    .football-fixture-tile__league-title img,
    .football-fixture-tile__league-title i,
    .football-schedule-competition__title img,
    .football-schedule-competition__title i {
        height: 20px;
        width: 20px;
    }

    .football-fixture-tile__league span {
        font-size: 0.72rem;
    }

    .football-fixture-tile__league small {
        font-size: 0.58rem;
        max-width: 76px;
    }

    .football-fixture-tile__body {
        grid-template-columns: minmax(0, 1fr) minmax(54px, auto) !important;
        padding: 0.48rem 0.5rem;
    }

    .football-fixture-tile__teams a {
        font-size: 0.68rem;
        line-height: 1.1;
    }

    .football-fixture-tile__teams img {
        height: 20px;
        width: 20px;
    }

    .football-fixture-tile__kickoff {
        min-width: 54px;
        padding-left: 0.36rem;
    }

    .football-fixture-tile__kickoff strong {
        font-size: 0.72rem;
    }

    .football-fixture-tile__kickoff small,
    .football-fixture-tile__venue {
        font-size: 0.58rem;
    }

    .football-home-board__bottom {
        gap: 0.5rem;
        margin-top: 0.55rem;
        padding-top: 0.55rem;
    }

    .football-home-board__summary {
        gap: 0.35rem;
    }

    .football-home-board__summary span,
    .football-competition-rail a {
        font-size: 0.66rem;
        padding: 0.28rem 0.48rem;
    }

    .football-hero-scorecard {
        padding: 0.72rem;
    }

    .football-hero-scorecard__teams {
        grid-template-columns: minmax(0, 1fr) minmax(58px, auto) minmax(0, 1fr) !important;
        text-align: center;
    }

    .football-hero-scorecard__teams a:not(.football-hero-scorecard__score) {
        font-size: 0.72rem;
        gap: 0.28rem;
        justify-items: center;
    }

    .football-hero-scorecard__teams img {
        height: 32px;
        width: 32px;
    }

    .football-hero-scorecard__score {
        font-size: 0.92rem;
        min-height: 46px;
        min-width: 58px;
        padding: 0 0.35rem;
    }

    .football-schedule-competition {
        border-radius: 13px;
    }

    .football-schedule-competition__head {
        min-height: 38px;
        padding: 0.42rem 0.55rem;
    }

    .football-schedule-competition__title > span {
        font-size: 0.68rem;
    }

    .football-schedule-competition__head > i {
        font-size: 0.8rem;
    }

    .football-schedule-row {
        gap: 0.24rem 0.52rem;
        grid-template-areas: "home score" "away score";
        grid-template-columns: minmax(0, 1fr) minmax(54px, auto) !important;
        min-height: 0;
        padding: 0.54rem 0.62rem;
    }

    .football-schedule-row__team {
        font-size: 0.68rem;
        gap: 0.3rem;
        min-width: 0;
    }

    .football-schedule-row__team--home {
        flex-direction: row-reverse;
        grid-area: home;
        justify-content: flex-end !important;
        text-align: left !important;
    }

    .football-schedule-row__team--away {
        grid-area: away;
        justify-content: flex-start;
        text-align: left;
    }

    .football-schedule-row__team img {
        height: 20px;
        width: 20px;
    }

    .football-schedule-row__team span {
        font-size: 0.68rem;
        line-height: 1.12;
    }

    .football-schedule-row__middle {
        align-self: stretch;
        border-left: 1px solid var(--border);
        display: grid;
        gap: 0.1rem;
        grid-area: score;
        min-width: 54px;
        padding-left: 0.48rem;
        place-content: center;
        text-align: center;
    }

    .football-schedule-row__middle small {
        font-size: 0.54rem;
        max-width: 76px;
    }

    .football-schedule-row__middle strong {
        font-size: 0.78rem;
    }

    .football-match-hero {
        background: var(--primary-strong, #087f7c);
        color: #fff;
        gap: 0.36rem;
        padding: 0.68rem 0.72rem 0.82rem;
    }

    .football-match-hero__meta,
    .football-match-hero__meta a,
    .football-match-hero__meta strong,
    .football-match-hero__meta span,
    .football-match-hero__team h1,
    .football-match-hero__score strong,
    .football-match-hero__score small {
        color: #fff !important;
    }

    .football-match-hero__score {
        background: transparent;
        border: 0;
        box-shadow: none;
        min-width: 58px;
        padding: 0.2rem;
    }

    .football-match-hero__team img,
    .football-summary-team img {
        background: rgba(255, 255, 255, 0.96);
        height: 34px;
        width: 34px;
    }

    .football-match-hero__team h1 {
        font-size: 0.72rem;
        max-width: 96px;
    }

    .football-match-hero__score small {
        display: none;
    }
}

/* v129: football normalization UX, mobile standings, stacked fixture rows, and clean SEO text */
.football-home-board {
    padding: clamp(0.78rem, 1.45vw, 1rem);
}

.football-home-board h2 {
    font-size: clamp(1.12rem, 1.55vw, 1.65rem);
}

.football-home-board p {
    font-size: clamp(0.78rem, 0.95vw, 0.92rem);
}

.football-fixture-strip {
    grid-template-columns: repeat(4, minmax(285px, 1fr));
}

.football-fixture-tile {
    min-width: 285px;
}

.football-fixture-tile__league-title > span,
.football-schedule-competition__title > span,
.football-match-card__league span {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.football-fixture-tile__league small {
    white-space: normal;
    text-align: right;
}

.football-standings-mobile {
    display: none;
}

.football-standings-card {
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 15px;
    box-shadow: var(--shadow-sm);
    display: grid;
    gap: 0.5rem;
    padding: 0.7rem;
}

.football-standings-card__team {
    align-items: center;
    color: var(--text);
    display: grid;
    gap: 0.45rem;
    grid-template-columns: auto auto minmax(0, 1fr) auto;
}

.football-standings-card__team img {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    height: 28px;
    object-fit: contain;
    padding: 0.12rem;
    width: 28px;
}

.football-standings-card__team strong {
    color: var(--bg-contrast);
    font-size: 0.86rem;
    line-height: 1.12;
}

.football-standings-card__team em {
    color: var(--primary-strong);
    font-style: normal;
    font-weight: 900;
    white-space: nowrap;
}

.football-standings-card__stats {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.football-standings-card__stats span {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    color: var(--text-soft);
    font-size: 0.68rem;
    font-weight: 850;
    padding: 0.26rem 0.2rem;
    text-align: center;
}

.football-timeline--split {
    position: relative;
}

.football-timeline__phase {
    background: var(--bg-contrast);
    border-radius: 999px;
    color: var(--surface);
    font-size: 0.78rem;
    font-weight: 900;
    justify-self: center;
    padding: 0.38rem 0.8rem;
    text-align: center;
}

.football-timeline__phase.is-live {
    background: var(--danger);
    color: #fff;
}

.football-timeline__item {
    align-items: center;
    display: grid;
    gap: 0.5rem;
    grid-template-columns: auto auto minmax(0, 1fr);
}

.football-timeline__item--away {
    background: rgba(14, 125, 121, 0.06);
}

.football-timeline__minute {
    min-width: 2.4rem;
}

.football-timeline__icon {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    display: inline-flex;
    height: 2rem;
    justify-content: center;
    width: 2rem;
}

.football-timeline__item p {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.football-timeline__item p span,
.football-timeline__item p em {
    color: var(--text-soft);
    font-style: normal;
    font-weight: 800;
}

.football-timeline__item p a {
    color: var(--primary-strong);
    font-weight: 900;
}

@media (max-width: 1180px) {
    .football-fixture-strip {
        grid-auto-columns: minmax(270px, 340px) !important;
        grid-auto-flow: column;
        grid-template-columns: none;
    }
}

@media (max-width: 640px) {
    .football-home-board {
        padding: 0.58rem;
    }

    .football-home-board h2 {
        font-size: 0.92rem;
    }

    .football-home-board p {
        font-size: 0.68rem;
    }

    .football-fixture-strip {
        grid-auto-columns: minmax(238px, 82vw) !important;
    }

    .football-fixture-tile {
        min-width: 238px;
    }

    .football-fixture-tile__league span {
        font-size: 0.68rem;
    }

    .football-fixture-tile__league small {
        max-width: 92px;
        overflow: visible;
        text-overflow: clip;
    }

    .football-fixture-tile__teams a,
    .football-fixture-tile__kickoff small,
    .football-fixture-tile__venue {
        font-size: 0.64rem;
    }

    .football-section--standings-table .football-table-wrap {
        display: none;
    }

    .football-standings-mobile {
        display: grid;
        gap: 0.52rem;
    }

    .football-standings-card .football-form-chips {
        justify-content: flex-start;
    }

    .football-schedule-row {
        align-items: center;
        gap: 0.24rem 0.5rem;
        grid-template-areas: "home score" "away score" !important;
        grid-template-columns: minmax(0, 1fr) minmax(58px, auto) !important;
        min-height: 0;
        padding: 0.52rem 0.6rem;
    }

    .football-schedule-row__team--home {
        flex-direction: row-reverse;
        grid-area: home;
        justify-content: flex-end !important;
        text-align: left !important;
    }

    .football-schedule-row__team--away {
        grid-area: away;
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .football-schedule-row__team span {
        font-size: 0.68rem;
        line-height: 1.12;
    }

    .football-schedule-row__middle {
        align-self: stretch;
        border-left: 1px solid var(--border);
        display: grid;
        gap: 0.1rem;
        grid-area: score;
        min-width: 58px;
        padding-left: 0.48rem;
        place-content: center;
        text-align: center;
    }

    .football-schedule-row__middle small {
        display: none;
    }

    .football-schedule-row__middle strong {
        font-size: 0.76rem;
    }

    .football-match-hero {
        background: var(--primary-strong, #087f7c) !important;
        border-radius: 0;
        color: #fff;
        gap: 0.32rem;
        grid-template-columns: minmax(0, 1fr) minmax(58px, auto) minmax(0, 1fr) !important;
        padding: 0.72rem 0.55rem 0.9rem;
    }

    .football-match-hero__meta {
        gap: 0.12rem;
        line-height: 1.1;
    }

    .football-match-hero__team img,
    .football-summary-team img {
        height: 34px;
        width: 34px;
    }

    .football-match-hero__team h1 {
        color: #fff !important;
        font-size: 0.72rem;
        max-width: 92px;
    }

    .football-match-hero__score {
        background: transparent;
        border: 0;
        box-shadow: none;
        color: #fff;
        min-width: 58px;
        padding: 0.2rem;
    }

    .football-match-hero__score strong,
    .football-match-hero__score small,
    .football-match-hero__meta a,
    .football-match-hero__meta strong,
    .football-match-hero__meta span {
        color: #fff !important;
    }

    .football-match-hero__score div {
        gap: 0.26rem;
    }

    .football-timeline__item {
        border-radius: 13px;
        gap: 0.35rem;
        grid-template-columns: auto auto minmax(0, 1fr);
        padding: 0.55rem;
    }

    .football-timeline__minute {
        font-size: 0.72rem;
        min-width: 1.85rem;
    }

    .football-timeline__icon {
        height: 1.65rem;
        width: 1.65rem;
    }

    .football-timeline__item strong {
        font-size: 0.76rem;
        line-height: 1.14;
    }

    .football-timeline__item p {
        font-size: 0.68rem;
        line-height: 1.2;
    }
}

.football-schedule-row__team b {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.68rem;
    font-weight: 900;
    height: 28px;
    justify-content: center;
    width: 28px;
}

@media (max-width: 640px) {
    .football-schedule-row__team b {
        font-size: 0.56rem;
        height: 22px;
        width: 22px;
    }
}

/* v139 football data-engine alignment fixes */
@media (min-width: 992px) {
    .football-layout {
        align-items: start;
        grid-template-columns: minmax(0, 1fr) minmax(310px, 380px);
    }

    .football-layout > .football-side-panel {
        justify-self: stretch;
        margin-left: auto;
        width: 100%;
    }

    .football-layout--wide-main {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    }
}

.football-info-list a,
.football-info-list > span {
    gap: 0.75rem;
    justify-content: flex-start;
}

.football-info-list a > span,
.football-info-list > span > span {
    min-width: 0;
}

.football-info-list strong,
.football-mini-table strong,
.football-link-list span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.football-lineups-grid {
    grid-template-columns: repeat(2, minmax(280px, 1fr));
}

.football-lineup-card__head {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.football-lineup-card__head img {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    height: 44px;
    object-fit: contain;
    padding: 0.25rem;
    width: 44px;
}

.football-lineup-card__head h3,
.football-lineup-card__head p {
    margin: 0;
}

.football-lineup-card__players--photos {
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
}

.football-lineup-card__players--subs {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
}

.football-lineup-player {
    align-items: center;
    display: flex !important;
    gap: 0.55rem;
    justify-content: flex-start;
    min-width: 0;
    text-align: left;
}

.football-lineup-player img,
.football-lineup-player b {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.68rem;
    height: 30px;
    justify-content: center;
    object-fit: cover;
    width: 30px;
}

.football-lineup-player span {
    background: transparent !important;
    border: 0 !important;
    display: grid;
    gap: 0.1rem;
    min-width: 0;
    padding: 0 !important;
}

.football-lineup-player strong {
    font-size: 0.78rem;
    line-height: 1.12;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-lineup-player small {
    color: var(--text-soft);
    font-size: 0.68rem;
    font-weight: 850;
}

.football-lineup-card__subs {
    border-top: 1px solid var(--border);
    margin-top: 1rem;
    padding-top: 0.85rem;
}

.football-lineup-card__subs h4,
.football-profile-history h3,
.football-standings-legend h3,
.football-bracket-panel h3 {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: 0.92rem;
    margin: 0 0 0.65rem;
}

.football-substitution-list {
    display: grid;
    gap: 0.45rem;
}

.football-substitution-list span {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    color: var(--text);
    font-size: 0.78rem;
    font-weight: 800;
    padding: 0.5rem 0.65rem;
}

.football-table-group td {
    background: rgba(14, 125, 121, 0.10);
    color: var(--primary-strong);
    font-size: 0.78rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.football-qualification-badge {
    color: var(--primary-strong);
    display: block;
    font-size: 0.68rem;
    font-weight: 850;
    margin-top: 0.2rem;
}

.football-standings-legend,
.football-bracket-panel,
.football-profile-history {
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 18px;
    margin-top: 1rem;
    padding: 1rem;
}

.football-standings-legend > div,
.football-bracket-grid,
.football-knockout-list,
.football-profile-history__list,
.data-engine-dashboard-grid {
    display: grid;
    gap: 0.7rem;
}

.football-standings-legend > div {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.football-standings-legend span {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 850;
    gap: 0.45rem;
    padding: 0.45rem 0.65rem;
}

.football-standings-legend i {
    border-radius: 999px;
    display: inline-block;
    height: 0.65rem;
    width: 0.65rem;
}

.football-standings-legend small {
    color: var(--text-soft);
    display: block;
    font-weight: 850;
    margin-top: 0.7rem;
}

.football-standings-legend b {
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.65rem;
    height: 1.1rem;
    justify-content: center;
    line-height: 1.1rem;
    margin: 0 0.15rem;
    width: 1.1rem;
}

.football-standings-legend b.is-w { background: var(--success); }
.football-standings-legend b.is-d { background: var(--accent); }
.football-standings-legend b.is-l { background: var(--danger); }

.football-bracket-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.football-bracket-grid article,
.football-knockout-list article,
.football-profile-history__row {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 0.75rem;
}

.football-bracket-grid article span,
.football-profile-history__row span,
.football-profile-history__row em {
    color: var(--text-soft);
    display: block;
    font-size: 0.78rem;
    font-style: normal;
    font-weight: 800;
    margin-top: 0.25rem;
}

.football-knockout-list {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    margin-top: 0.8rem;
}

.football-stat-grid--player {
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
}

.football-empty--profile {
    margin-top: 1rem;
}

.data-engine-dashboard-grid {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
}

.data-engine-dashboard-grid span {
    background: var(--bs-light, #f8fafc);
    border: 1px solid rgba(148, 163, 184, 0.3);
    border-radius: 14px;
    display: grid;
    padding: 0.75rem;
}

.data-engine-dashboard-grid strong {
    color: #0e7d79;
    font-size: 1.4rem;
    line-height: 1;
}

.data-engine-dashboard-grid small {
    color: #64748b;
    font-weight: 800;
    margin-top: 0.25rem;
}

html[data-theme="dark"] .data-engine-dashboard-grid span {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.22);
}

html[data-theme="dark"] .data-engine-dashboard-grid small {
    color: #cbd5e1;
}

@media (max-width: 991px) {
    .football-lineups-grid {
        grid-template-columns: 1fr;
    }

    .football-layout > .football-side-panel {
        margin-left: 0;
    }
}

@media (max-width: 640px) {
    .football-lineup-card__players--photos,
    .football-lineup-card__players--subs {
        grid-template-columns: 1fr;
    }

    .football-lineup-player strong {
        white-space: normal;
    }

    .football-standings-legend,
    .football-bracket-panel,
    .football-profile-history {
        border-radius: 14px;
        padding: 0.75rem;
    }
}


/* v140 football data-engine frontend refinements */
.football-fixture-strip--scroll {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(230px, 280px);
    gap: 12px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    padding-bottom: 10px;
}
.football-fixture-strip--scroll .football-fixture-tile { cursor: pointer; scroll-snap-align: start; min-height: 132px; }
.football-fixture-tile__body--link { color: inherit; text-decoration: none; }
.football-fixture-tile__body--link:hover { text-decoration: none; }
.football-fixture-tile__teams span { display: flex; align-items: center; gap: 7px; min-width: 0; }
.football-fixture-tile__teams strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .82rem; }
.football-list-stack--cards { display: grid; grid-template-columns: 1fr; gap: 12px; }
.football-list-stack--cards .football-match-card { width: 100%; }
@media (min-width: 900px) {
    .football-list-stack--cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .football-card-grid--compact .football-match-card, .football-fixture-tile { transform: scale(.96); transform-origin: top left; }
    .football-home-board .football-fixture-strip--scroll { grid-auto-columns: minmax(220px, 260px); }
}
@media (min-width: 1180px) {
    .football-list-stack--cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.football-standings-toolbar,
.football-topscorer-toolbar {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.football-competition-search { display: flex; align-items: end; gap: 10px; flex-wrap: wrap; }
.football-competition-search label { display: block; font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: #0e7d79; width: 100%; }
.football-competition-search select,
.football-competition-search input { min-width: min(360px, 100%); border: 1px solid rgba(15,23,42,.14); border-radius: 14px; padding: 11px 12px; background: #fff; color: #061626; font-weight: 700; }
.football-competition-search button,
.football-topscorer-toolbar button { border: 0; border-radius: 14px; padding: 12px 16px; background: #07142a; color: #fff; font-weight: 800; cursor: pointer; }
.football-standings-hero__title { display: flex; align-items: center; gap: 16px; }
.football-standings-hero__title > img { width: 72px; height: 72px; object-fit: contain; border-radius: 20px; background: #fff; padding: 10px; box-shadow: 0 12px 28px rgba(0,0,0,.12); }
.football-link-list--logos a { display: grid; grid-template-columns: 28px minmax(0, 1fr) 16px; align-items: center; gap: 10px; }
.football-link-list--logos img { width: 28px; height: 28px; object-fit: contain; border-radius: 50%; background: #fff; padding: 3px; }
.football-link-list__more { margin-top: 8px; border-top: 1px solid rgba(15,23,42,.10); }
.football-knockout-bracket { display: grid; grid-template-columns: repeat(var(--round-count), minmax(210px, 1fr)); gap: 18px; overflow-x: auto; padding: 8px 2px 16px; }
.football-knockout-round { min-width: 210px; display: flex; flex-direction: column; gap: 10px; }
.football-knockout-round h3 { margin: 0 0 4px; font-size: .9rem; text-transform: uppercase; letter-spacing: .08em; color: #0e7d79; }
.football-bracket-match { position: relative; display: grid; gap: 6px; padding: 10px; border-radius: 14px; background: #fff; border: 1px solid rgba(15,23,42,.12); color: #07142a; text-decoration: none; box-shadow: 0 10px 24px rgba(15,23,42,.08); }
.football-bracket-match::after { content: ""; position: absolute; right: -18px; top: 50%; width: 18px; border-top: 2px solid rgba(14,125,121,.28); }
.football-knockout-round:last-child .football-bracket-match::after { display: none; }
.football-bracket-match span { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; align-items: center; gap: 7px; font-size: .84rem; font-weight: 700; }
.football-bracket-match img { width: 24px; height: 24px; object-fit: contain; border-radius: 50%; background: #f8fafc; }
.football-club-hero--balanced { grid-template-columns: auto minmax(0, 1fr); align-items: center; }
.football-club-hero__content { min-width: 0; }
.football-mini-table__full-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 12px; font-weight: 800; color: #0e7d79; text-decoration: none; }
.data-engine-form input.form-control { width: 100%; max-width: 680px; border-radius: 12px; padding: 10px 12px; }
@media (max-width: 900px) {
    .football-fixture-strip--scroll { grid-auto-columns: minmax(215px, 82vw); }
    .football-standings-hero__title { align-items: flex-start; }
    .football-standings-hero__title > img { width: 56px; height: 56px; }
    .football-knockout-bracket { grid-template-columns: repeat(var(--round-count), minmax(190px, 78vw)); }
    .football-competition-search { width: 100%; }
    .football-competition-search select { flex: 1 1 100%; }
}
@media (max-width: 640px) {
    .football-club-hero--balanced { grid-template-columns: 1fr; text-align: center; justify-items: center; }
    .football-standings-toolbar, .football-topscorer-toolbar { align-items: stretch; }
    .football-competition-search button, .football-topscorer-toolbar button { width: 100%; }
}
.football-standings-toolbar--single { align-items: center; }
.football-competition-grid--wide { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.football-competition-card--full {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.football-competition-card__main {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    color: inherit;
    text-decoration: none;
    flex: 1 1 auto;
}
.football-competition-card__main span:last-child { min-width: 0; }
.football-competition-card__actions {
    display: flex;
    gap: 6px;
    flex: 0 0 auto;
}
.football-competition-card__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 7px 10px;
    background: rgba(14, 125, 121, .10);
    color: #0e7d79;
    font-size: .74rem;
    font-weight: 900;
    text-decoration: none;
}
@media (max-width: 640px) {
    .football-competition-card--full { align-items: flex-start; flex-direction: column; }
    .football-competition-card__actions { width: 100%; }
    .football-competition-card__actions a { flex: 1 1 0; }
}

/* v145: homepage football rail anti-overlap + standings/bracket data guard */
.football-home-board {
    overflow: hidden;
}

.football-home-board .football-fixture-strip--scroll {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    grid-auto-columns: clamp(270px, 20vw, 320px) !important;
    gap: clamp(14px, 1.35vw, 22px) !important;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: inline mandatory;
    padding: 10px 4px 16px !important;
    margin-top: 1rem;
    scrollbar-gutter: stable;
}

.football-home-board .football-fixture-strip--scroll .football-fixture-tile {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    transform: none !important;
    transform-origin: unset !important;
    scroll-snap-align: start;
    position: relative;
    z-index: 0;
    isolation: isolate;
}

.football-home-board .football-fixture-tile__league {
    min-width: 0;
    gap: 10px;
}

.football-home-board .football-fixture-tile__league-title {
    min-width: 0;
    flex: 1 1 auto;
}

.football-home-board .football-fixture-tile__league-title > span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.football-home-board .football-fixture-tile__league small {
    flex: 0 0 auto;
    max-width: 44%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap !important;
}

.football-home-board .football-fixture-tile__body {
    grid-template-columns: minmax(0, 1fr) minmax(70px, auto);
}

.football-home-board .football-fixture-tile__teams,
.football-home-board .football-fixture-tile__teams span,
.football-home-board .football-fixture-tile__teams strong {
    min-width: 0;
}

.football-home-board .football-fixture-tile__teams strong {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

@media (min-width: 1180px) {
    .football-home-board .football-fixture-strip--scroll {
        grid-auto-columns: clamp(260px, 18vw, 300px) !important;
    }
}

@media (max-width: 900px) {
    .football-home-board .football-fixture-strip--scroll {
        grid-auto-columns: minmax(240px, 78vw) !important;
        gap: 12px !important;
        padding-inline: 2px !important;
    }
}

@media (max-width: 560px) {
    .football-home-board .football-fixture-strip--scroll {
        grid-auto-columns: minmax(230px, 86vw) !important;
    }

    .football-home-board .football-fixture-tile__league small {
        max-width: 36%;
    }
}

/* v146: match centre layout cleanup, compact lineups, and stat comparison rows */
.football-match-hero__team > span {
    display: none !important;
}

.football-layout--match-table {
    align-items: start;
}

.football-layout--match-table > .football-side-panel {
    justify-self: end;
    max-width: 310px;
    width: 100%;
}

.football-layout--match-table .football-mini-table a {
    gap: 0.55rem;
}

.football-layout--match-table .football-mini-table strong {
    flex: 1 1 auto;
    font-size: 0.88rem;
}

.football-layout--match-table .football-mini-table em {
    flex: 0 0 auto;
    font-style: italic;
    font-weight: 850;
}

.football-section--match-stats {
    align-self: start;
    justify-self: end;
    max-width: 390px;
    width: 100%;
}

.football-match-stats {
    display: grid;
    gap: 0.55rem;
}

.football-match-stat-row {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 14px;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: 48px minmax(0, 1fr) 48px;
    padding: 0.58rem 0.65rem;
}

.football-match-stat-row__value {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--bg-contrast);
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 950;
    justify-content: center;
    min-height: 30px;
    padding: 0.2rem 0.35rem;
    text-align: center;
}

.football-match-stat-row__middle {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
    text-align: center;
}

.football-match-stat-row__middle strong {
    color: var(--text);
    font-size: 0.74rem;
    font-weight: 900;
    line-height: 1.15;
}

.football-match-stat-bar {
    align-items: center;
    display: grid;
    gap: 0.25rem;
    grid-template-columns: 1fr 1fr;
}

.football-match-stat-bar i,
.football-match-stat-bar b {
    border-radius: 999px;
    display: block;
    height: 6px;
    max-width: 100%;
    min-width: 6px;
}

.football-match-stat-bar i {
    justify-self: end;
    background: var(--primary);
}

.football-match-stat-bar b {
    justify-self: start;
    background: var(--bg-contrast);
}

.football-lineup-card__subs--events:empty,
.football-substitution-list:empty {
    display: none !important;
}

.football-lineup-card__subs--events .football-substitution-list span:empty {
    display: none !important;
}

.football-lineup-card__subs--events {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .football-layout:has(.football-section--match-stats) {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 390px);
    }
}

@media (max-width: 991px) {
    .football-layout--match-table > .football-side-panel,
    .football-section--match-stats {
        justify-self: stretch;
        max-width: none;
    }
}

@media (max-width: 640px) {
    .football-match-stat-row {
        gap: 0.45rem;
        grid-template-columns: 42px minmax(0, 1fr) 42px;
        padding: 0.48rem;
    }

    .football-match-stat-row__value {
        font-size: 0.68rem;
        min-height: 26px;
    }

    .football-match-stat-row__middle strong {
        font-size: 0.68rem;
    }
}

/* v147: compact homepage rail, match stat reposition, competition actions */
.football-home-board .football-fixture-strip--scroll {
    grid-auto-columns: clamp(190px, 14vw, 224px) !important;
    gap: 10px !important;
    padding: 8px 2px 14px !important;
}

.football-home-board .football-fixture-strip--scroll .football-fixture-tile {
    min-height: 96px !important;
    border-radius: 12px !important;
}

.football-home-board .football-fixture-tile__league {
    min-height: 34px !important;
    padding: 0.38rem 0.5rem !important;
    gap: 7px !important;
}

.football-home-board .football-fixture-tile__league span {
    font-size: 0.8rem !important;
    line-height: 1.05 !important;
}

.football-home-board .football-fixture-tile__league small {
    font-size: 0.66rem !important;
    max-width: 42% !important;
}

.football-home-board .football-fixture-tile__league-title img,
.football-home-board .football-fixture-tile__league-title i {
    width: 21px !important;
    height: 21px !important;
    padding: 0.12rem !important;
}

.football-home-board .football-fixture-tile__body {
    grid-template-columns: minmax(0, 1fr) minmax(50px, auto) !important;
    gap: 0.42rem !important;
    padding: 0.44rem 0.5rem !important;
}

.football-home-board .football-fixture-tile__teams {
    gap: 0.32rem !important;
}

.football-home-board .football-fixture-tile__teams span {
    gap: 5px !important;
}

.football-home-board .football-fixture-tile__teams img {
    width: 20px !important;
    height: 20px !important;
}

.football-home-board .football-fixture-tile__teams strong {
    font-size: 0.72rem !important;
}

.football-home-board .football-fixture-tile__kickoff {
    min-width: 50px !important;
    padding-left: 0.4rem !important;
}

.football-home-board .football-fixture-tile__kickoff strong {
    font-size: 0.84rem !important;
}

.football-home-board .football-fixture-tile__kickoff small,
.football-home-board .football-fixture-tile__venue {
    font-size: 0.62rem !important;
}

.football-home-board .football-fixture-tile__venue {
    padding: 0.34rem 0.5rem !important;
}

@media (min-width: 1180px) {
    .football-home-board .football-fixture-strip--scroll {
        grid-auto-columns: clamp(188px, 13vw, 220px) !important;
    }
}

@media (max-width: 991px) {
    .football-home-board .football-fixture-strip--scroll {
        grid-auto-columns: minmax(210px, 56vw) !important;
    }
}

@media (max-width: 560px) {
    .football-home-board .football-fixture-strip--scroll {
        grid-auto-columns: minmax(210px, 84vw) !important;
    }
}

@media (min-width: 992px) {

    .football-layout--match-overview,
    .football-layout--match-table {
        grid-template-columns: minmax(0, 1fr) minmax(330px, 390px) !important;
    }

    .football-layout--match-overview > .football-side-panel,
    .football-layout--match-table > .football-side-panel,
    .football-page .football-layout > aside.football-side-panel {
        justify-self: stretch !important;
        width: 100% !important;
        max-width: none !important;
    }
}

.football-section--match-stats-inline {
    margin-top: 1rem;
    padding: clamp(0.9rem, 1.6vw, 1.2rem);
}

.football-match-stats--inline {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.football-ad-panel {
    min-height: 260px;
}

.football-sidebar-ad-slot {
    align-items: center;
    background: var(--surface-strong);
    border: 1px dashed var(--border);
    border-radius: 16px;
    display: flex;
    justify-content: center;
    min-height: 230px;
    overflow: hidden;
    padding: 0.75rem;
}

.football-competition-card__actions {
    flex-wrap: wrap;
    justify-content: flex-end;
}

@media (max-width: 991px) {
    .football-page .football-layout > aside.football-side-panel,
    .football-page .football-layout > .football-side-panel {
        position: static;
        top: auto;
    }

    .football-match-stats--inline {
        grid-template-columns: 1fr;
    }
}

/* v148: finished/upcoming rail, readable labels, color standings and admin data-engine polish */
.football-home-board .football-fixture-strip--scroll {
    grid-auto-columns: clamp(280px, 18vw, 330px) !important;
    gap: 14px !important;
}
.football-home-board .football-fixture-tile__league {
    min-height: 46px !important;
    padding: 0.54rem 0.68rem !important;
    align-items: center;
}
.football-home-board .football-fixture-tile__league-title {
    flex: 1 1 auto;
    min-width: 0;
}
.football-home-board .football-fixture-tile__league-title > span,
.football-home-board .football-fixture-tile__league span {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    font-size: 0.92rem !important;
    line-height: 1.08 !important;
}
.football-home-board .football-fixture-tile__league small {
    flex: 0 0 auto;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    font-size: 0.78rem !important;
}
.football-home-board .football-fixture-tile__teams strong {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.12;
}
.football-home-board .football-fixture-tile__kickoff {
    min-width: 68px !important;
}
@media (min-width: 1180px) {
    .football-home-board .football-fixture-strip--scroll { grid-auto-columns: clamp(270px, 16vw, 315px) !important; }
}
@media (max-width: 991px) {
    .football-home-board .football-fixture-strip--scroll { grid-auto-columns: minmax(250px, 68vw) !important; }
}
@media (max-width: 560px) {
    .football-home-board .football-fixture-strip--scroll { grid-auto-columns: minmax(238px, 86vw) !important; }
    .football-home-board .football-fixture-tile__league small { font-size: 0.66rem !important; }
}

.football-table tr.has-qualification td:first-child,
.football-standings-card.has-qualification {
    box-shadow: inset 4px 0 0 var(--qualification-color, var(--primary));
}
.football-qualification-badge { display: none !important; }
.football-qualification-marker {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    margin-top: 0.32rem;
    vertical-align: middle;
}
.football-qualification-marker i {
    background: var(--qualification-color, var(--primary));
    border: 2px solid color-mix(in srgb, var(--qualification-color, var(--primary)) 35%, #fff);
    border-radius: 999px;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--qualification-color, var(--primary)) 13%, transparent);
    display: inline-block;
    height: 0.78rem;
    width: 0.78rem;
}
.football-form-chips--interactive span,
.football-form-chips--interactive a {
    cursor: help;
    position: relative;
}
.football-form-chips--interactive span:hover::after,
.football-form-chips--interactive span:focus::after,
.football-form-chips--interactive a:hover::after,
.football-form-chips--interactive a:focus::after {
    background: #07142a;
    border-radius: 10px;
    bottom: calc(100% + 8px);
    color: #fff;
    content: attr(data-football-tooltip);
    font-size: 0.72rem;
    font-weight: 800;
    left: 50%;
    line-height: 1.2;
    max-width: 220px;
    min-width: 150px;
    padding: 0.55rem 0.65rem;
    position: absolute;
    transform: translateX(-50%);
    white-space: normal;
    z-index: 50;
}

.football-table-wrap .football-form-chips--interactive span:hover::after,
.football-table-wrap .football-form-chips--interactive span:focus::after,
.football-table-wrap .football-form-chips--interactive a:hover::after,
.football-table-wrap .football-form-chips--interactive a:focus::after {
    display: none !important;
}

.football-knockout-bracket--tree {
    align-items: center;
    gap: clamp(20px, 3vw, 46px) !important;
    padding: 0.75rem 0.25rem 1.25rem !important;
}
.football-knockout-bracket--tree .football-knockout-round {
    gap: clamp(14px, 2vw, 24px);
    justify-content: center;
    min-width: 240px;
}
.football-bracket-match--tie,
.football-knockout-bracket--tree .football-bracket-match {
    border-radius: 18px;
    padding: 0.85rem;
    position: relative;
}
.football-bracket-match--tie::before,
.football-knockout-bracket--tree .football-bracket-match::before {
    border-right: 2px solid rgba(14, 125, 121, 0.24);
    content: "";
    height: 32px;
    position: absolute;
    right: -24px;
    top: 50%;
    transform: translateY(-50%);
}
.football-knockout-round:last-child .football-bracket-match::before { display: none; }
.football-bracket-match__legs {
    display: flex !important;
    gap: 0.35rem;
    justify-content: flex-end;
    margin-bottom: 0.35rem;
}
.football-bracket-match__legs b {
    background: var(--surface-strong);
    border-radius: 999px;
    color: var(--text-soft);
    font-size: 0.66rem;
    font-weight: 950;
    padding: 0.2rem 0.42rem;
}
.football-bracket-team {
    display: grid !important;
    grid-template-columns: 26px minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 0.5rem;
}
.football-bracket-team em {
    color: var(--text);
    font-style: normal;
    font-weight: 850;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.football-bracket-team strong,
.football-bracket-team b {
    color: var(--bg-contrast);
    font-weight: 950;
}
.football-bracket-team.is-winner em,
.football-bracket-team.is-winner strong { color: var(--primary-strong); }
.football-bracket-match small {
    color: var(--text-soft);
    display: block;
    font-size: 0.74rem;
    font-weight: 800;
    margin-top: 0.35rem;
}
@media (max-width: 900px) {
    .football-knockout-bracket--tree { grid-template-columns: repeat(var(--round-count), minmax(230px, 82vw)); }
}

.admin-data-engine-page .data-engine-hero {
    align-items: flex-start;
    background: rgba(7,20,42,.08);
    border: 1px solid rgba(14,125,121,.18);
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: clamp(1.2rem, 2vw, 2rem);
}
.data-engine-hero__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: .65rem;
    justify-content: flex-end;
}
.data-engine-hero__actions .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 44px;
}
@media (max-width: 800px) {
    .admin-data-engine-page .data-engine-hero {
        flex-direction: column;
    }
    .data-engine-hero__actions {
        justify-content: stretch;
        width: 100%;
    }
    .data-engine-hero__actions .btn {
        flex: 1 1 220px;
    }
}
.data-engine-tabs {
    background: #fff;
    border: 1px solid rgba(15,23,42,.10);
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(15,23,42,.06);
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin: 1rem 0;
    padding: 0.5rem;
}
.data-engine-tabs a {
    border-radius: 999px;
    color: #334155;
    font-weight: 850;
    padding: 0.62rem 0.9rem;
    text-decoration: none;
}
.data-engine-tabs a.is-active,
.data-engine-tabs a:hover {
    background: #0e7d79;
    color: #fff;
}
.data-engine-stat-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    margin-bottom: 1rem;
}
.data-engine-stat-card,
.data-engine-panel,
.data-engine-table-card {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .10);
    border-radius: 20px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
}
.data-engine-stat-card {
    display: grid;
    gap: 0.2rem;
    min-height: 112px;
    padding: 1rem;
}
.data-engine-stat-card span {
    color: #0e7d79;
    font-size: 0.72rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.data-engine-stat-card strong {
    color: #07142a;
    font-size: clamp(1.3rem, 2vw, 2.05rem);
    line-height: 1;
}
.data-engine-stat-card small { color: #64748b; font-weight: 750; }
.data-engine-stat-card.is-online { border-color: rgba(14,125,121,.25); box-shadow: inset 4px 0 0 #0e7d79, 0 14px 34px rgba(15, 23, 42, .06); }
.data-engine-stat-card.is-offline { border-color: rgba(220,38,38,.25); box-shadow: inset 4px 0 0 #dc2626, 0 14px 34px rgba(15, 23, 42, .06); }
.data-engine-actions-panel {
    display: grid;
    gap: 0.7rem;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    margin: 1rem 0;
}
.data-engine-actions-panel button {
    align-items: center;
    background: #0e7d79;
    border: 0;
    border-radius: 16px;
    color: #fff;
    display: inline-flex;
    font-weight: 900;
    gap: 0.55rem;
    justify-content: center;
    min-height: 48px;
    padding: 0.8rem 1rem;
    width: 100%;
}
.data-engine-panel { margin: 1rem 0; padding: clamp(1rem, 1.5vw, 1.25rem); }
.data-engine-panel__head {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    margin-bottom: 0.8rem;
}
.data-engine-panel__head span {
    color: #07142a;
    font-weight: 950;
}
.data-engine-panel__head a { color: #0e7d79; font-weight: 900; }
.data-engine-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.data-engine-details { display: grid; gap: 0.55rem; }
.data-engine-details div { background: #f8fafc; border-radius: 12px; padding: 0.65rem; }
.data-engine-details dt { color: #64748b; font-size: 0.72rem; font-weight: 900; text-transform: uppercase; }
.data-engine-details dd { color: #07142a; font-weight: 850; margin: 0.15rem 0 0; overflow-wrap: anywhere; }

.normalization-logo-uploader {
    display: grid;
    gap: 0.5rem;
}
.normalization-logo-uploader img,
.normalization-record-title img {
    background: #f8fafc;
    border: 1px solid rgba(15,23,42,.10);
    border-radius: 14px;
    height: 44px;
    object-fit: contain;
    padding: 0.25rem;
    width: 44px;
}
.normalization-logo-uploader img {
    height: 58px;
    width: 58px;
}
.normalization-check--danger { color: #dc2626; font-weight: 850; }
.data-engine-normalization-table label {
    color: #0e7d79;
    font-size: 0.68rem;
    font-weight: 950;
    letter-spacing: .04em;
    margin: 0.42rem 0 0.18rem;
    text-transform: uppercase;
}
.data-engine-normalization-table input.form-control,
.data-engine-normalization-table textarea.form-control,
.data-engine-normalization-filter .form-control {
    border: 1px solid rgba(15,23,42,.14);
    border-radius: 12px;
    font-weight: 750;
    padding: 0.55rem 0.7rem;
}
@media (max-width: 900px) {
    .data-engine-table-card { overflow-x: auto; }
    .data-engine-normalization-table { min-width: 980px; }
}

/* v149: competition directory polish, clean qualification edges, and consistent mini tables */
.football-page .football-section--flush {
    overflow: visible;
}
.football-page:has(.football-competition-grid--wide) {
    padding-top: clamp(1rem, 2.4vw, 2rem);
}
.football-standings-toolbar--single {
    align-items: flex-start !important;
    background: rgba(15,23,42,.03);
    border: 1px solid var(--border);
    border-radius: 22px;
    padding: clamp(.85rem, 1.5vw, 1.15rem);
}
.football-standings-toolbar--single .section-heading {
    margin: 0 !important;
}
.football-competition-grid--wide {
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr)) !important;
    gap: clamp(.9rem, 1.5vw, 1.15rem) !important;
}
.football-competition-card--directory {
    align-items: stretch !important;
    background: var(--surface-strong) rgba(14,165,164,.12) !important;
    border: 1px solid var(--border) !important;
    border-radius: 24px !important;
    box-shadow: var(--shadow-sm);
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: 1fr !important;
    min-height: 190px;
    overflow: hidden;
    padding: 1rem !important;
    position: relative;
}
.football-competition-card--directory:hover {
    border-color: rgba(14, 125, 121, .34) !important;
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}
.football-competition-card--directory::before {
    background: var(--primary);
    border-radius: 999px;
    content: "";
    height: 4px;
    left: 1rem;
    position: absolute;
    right: 1rem;
    top: 0;
}
.football-competition-card--directory .football-competition-card__main {
    align-items: center !important;
    display: grid !important;
    gap: .9rem !important;
    grid-template-columns: 56px minmax(0, 1fr) !important;
    min-height: 84px;
}
.football-competition-card--directory .football-competition-card__logo {
    background: #fff !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 24px rgba(15,23,42,.08);
    height: 56px !important;
    padding: .35rem;
    width: 56px !important;
}
.football-competition-card--directory .football-competition-card__logo img {
    height: 44px !important;
    width: 44px !important;
}
.football-competition-card__text {
    display: grid;
    gap: .18rem;
    min-width: 0;
}
.football-competition-card__text strong {
    color: var(--bg-contrast);
    font-size: clamp(1.08rem, 1.4vw, 1.35rem);
    line-height: 1.1;
    overflow: visible;
    white-space: normal;
}
.football-competition-card__country,
.football-competition-card__text em {
    color: var(--text-soft);
    font-size: .82rem;
    font-style: normal;
    font-weight: 850;
}
.football-competition-card--directory .football-competition-card__actions {
    align-items: stretch;
    display: grid !important;
    gap: .5rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch !important;
    margin-top: auto;
    width: 100%;
}
.football-competition-card--directory .football-competition-card__actions a {
    align-items: center;
    background: rgba(14,125,121,.11) !important;
    border: 1px solid rgba(14,125,121,.14);
    border-radius: 14px !important;
    color: var(--primary-strong) !important;
    display: inline-flex;
    font-size: .78rem !important;
    font-weight: 950 !important;
    gap: .35rem;
    justify-content: center;
    min-height: 42px;
    padding: .55rem .45rem !important;
    text-decoration: none;
}
.football-competition-card--directory .football-competition-card__actions a:hover {
    background: var(--primary) !important;
    color: #fff !important;
}

/* Standings: use only the colored left edge; remove dot markers completely. */
.football-qualification-marker,
.football-qualification-marker i {
    display: none !important;
}
.football-table tr.has-qualification td:first-child,
.football-standings-card.has-qualification {
    box-shadow: inset 5px 0 0 var(--qualification-color, var(--primary)) !important;
}
.football-table tr.has-qualification td:first-child {
    position: relative;
}
.football-table tr.has-qualification td:first-child::before {
    background: var(--qualification-color, var(--primary));
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    top: 0;
    width: 5px;
}

/* Homepage rail: finished + upcoming cards, readable league/round labels with no ellipses. */
.football-home-board .football-fixture-strip--scroll {
    grid-auto-columns: clamp(292px, 19vw, 340px) !important;
    gap: 1rem !important;
}
.football-home-board .football-fixture-tile {
    border-radius: 18px !important;
    min-height: 138px !important;
    overflow: hidden !important;
    transform: none !important;
    width: auto !important;
}
.football-home-board .football-fixture-tile__league {
    display: grid !important;
    gap: .5rem !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    min-height: 48px !important;
}
.football-home-board .football-fixture-tile__league-title {
    min-width: 0 !important;
    overflow: visible !important;
}
.football-home-board .football-fixture-tile__league-title > span {
    font-size: .9rem !important;
    font-weight: 950 !important;
    line-height: 1.05 !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    word-break: normal !important;
}
.football-home-board .football-fixture-tile__league small {
    align-self: center;
    font-size: .76rem !important;
    font-weight: 950 !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}
.football-home-board .football-fixture-tile__teams strong {
    font-size: .86rem !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
}

/* Team/club sidebar mini table: match-page style everywhere. */
.football-side-panel .football-mini-table {
    display: grid;
    gap: .55rem;
}
.football-side-panel .football-mini-table a {
    align-items: center;
    background: var(--surface-strong);
    border: 1px solid var(--border);
    border-radius: 14px;
    color: var(--text);
    display: grid;
    gap: .55rem;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    min-height: 46px;
    padding: .45rem .55rem;
    text-decoration: none;
}
.football-side-panel .football-mini-table a.is-active {
    border-color: rgba(14,125,121,.55);
    box-shadow: inset 4px 0 0 var(--primary);
}
.football-side-panel .football-mini-table a > span {
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    display: inline-flex;
    font-weight: 900;
    height: 32px;
    justify-content: center;
    width: 32px;
}
.football-side-panel .football-mini-table strong {
    align-items: center;
    display: flex;
    gap: .45rem;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.football-side-panel .football-mini-table strong img {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 50%;
    flex: 0 0 auto;
    height: 22px;
    object-fit: contain;
    padding: 2px;
    width: 22px;
}
.football-side-panel .football-mini-table em {
    color: var(--bg-contrast);
    font-style: italic;
    font-weight: 900;
}
.football-panel-link--block,
.football-side-panel .football-panel-link {
    display: inline-flex;
    margin-top: .8rem;
    text-decoration: none;
}

@media (max-width: 991px) {
    .football-competition-grid--wide { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; }
    .football-home-board .football-fixture-strip--scroll { grid-auto-columns: minmax(285px, 74vw) !important; }
}
@media (max-width: 560px) {
    .football-competition-card--directory .football-competition-card__actions { grid-template-columns: 1fr; }
    .football-home-board .football-fixture-strip--scroll { grid-auto-columns: minmax(265px, 88vw) !important; }
    .football-home-board .football-fixture-tile__league-title > span { font-size: .84rem !important; }
    .football-home-board .football-fixture-tile__league small { font-size: .68rem !important; }
}

/* v150: live data + projected knockout polish */
.football-bracket-match.is-projected {
    background: #fff;
    border-style: dashed;
}
.football-bracket-match.is-projected .football-bracket-match__legs b {
    width: auto;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: .62rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    background: rgba(14,125,121,.12);
    color: var(--primary-strong, #0e7d79);
}
.football-bracket-match.is-projected small {
    color: #64748b;
}


/* v154 football polish: stack match info labels and keep sidebar ads clean. */
.football-info-list a > span,
.football-info-list > span > span {
    display: grid;
    gap: 0.15rem;
    line-height: 1.2;
}

.football-info-list strong,
.football-info-list small {
    display: block;
}

.football-sidebar-stack {
    align-self: start;
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.football-sidebar-stack .football-side-panel {
    width: 100%;
}

.football-ad-panel .football-sidebar-ad-slot {
    margin-top: 0.75rem;
}

.football-transfer-list{display:grid;gap:12px}.football-transfer-card{border:1px solid rgba(15,23,42,.1);border-radius:18px;background:#fff;padding:14px 16px;box-shadow:0 12px 28px rgba(15,23,42,.06)}.football-transfer-card strong{display:block;font-size:1rem;color:#0f172a}.football-transfer-card span{display:block;color:#64748b;font-size:.85rem;margin-top:2px}.football-transfer-card p{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 0;color:#334155}.football-transfer-card img{width:24px;height:24px;object-fit:contain;border-radius:999px;background:#fff;border:1px solid rgba(15,23,42,.12)}.article-score-chip{display:flex;align-items:center;gap:12px;border:1px solid rgba(14,125,121,.18);background: #fff;border-radius:18px;padding:12px 14px;margin:18px 0}.article-score-chip img{width:28px;height:28px;object-fit:contain}.article-score-chip strong{font-size:1.2rem}.article-score-chip span{font-weight:800}.article-score-chip small{display:block;color:#64748b;font-size:.78rem}


/* v157 football/article/admin refinements */
.article-score-chip{display:none!important}
.article-match-scoreboard{margin:22px 0;border-radius:24px;background:#151515;color:#fff;padding:24px 32px;box-shadow:0 22px 48px rgba(0,0,0,.22);overflow:hidden;position:relative}
.article-match-scoreboard:before{content:"";position:absolute;inset:0;background: rgba(255,221,70,.14);pointer-events:none}.article-match-scoreboard__meta{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;color:#cbd5e1;font-size:.95rem;margin-bottom:18px}.article-match-scoreboard__meta strong{color:#fff}.article-match-scoreboard__main{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px;align-items:center}.article-match-scoreboard__team{display:flex;align-items:center;gap:14px;font-size:clamp(1.25rem,3vw,2.2rem);font-weight:800;min-width:0}.article-match-scoreboard__team strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.article-match-scoreboard__team--home{justify-content:flex-end}.article-match-scoreboard__team--away{justify-content:flex-start}.article-match-scoreboard__team img{width:54px;height:54px;object-fit:contain;border-radius:999px;background:#fff;padding:5px}.article-match-scoreboard__score{display:grid;grid-template-columns:auto 3px auto;align-items:center;gap:18px;text-align:center}.article-match-scoreboard__score b{font-size:clamp(2.8rem,7vw,5.2rem);line-height:.9}.article-match-scoreboard__score em{width:3px;height:78px;background:#f5c400;display:block}.article-match-scoreboard__score span{grid-column:1/-1;color:#f5c400;text-transform:uppercase;font-weight:900;letter-spacing:.08em;margin-top:6px}.football-live-pill,.football-summary-live{display:inline-flex!important;align-items:center;gap:8px;border-radius:999px;background:#ef4444;color:#fff!important;font-weight:900;text-transform:uppercase;letter-spacing:.04em;padding:7px 12px;box-shadow:0 12px 26px rgba(239,68,68,.22)}.football-live-pill i,.football-summary-live i{width:9px;height:9px;border-radius:999px;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.7);animation:kisureLivePulse 1.3s infinite}.football-live-pill em,.football-summary-live b{font-style:normal;background:rgba(255,255,255,.18);border-radius:999px;padding:2px 7px}.football-match-hero.is-live{border-color:rgba(239,68,68,.45);box-shadow:0 24px 60px rgba(239,68,68,.12)}@keyframes kisureLivePulse{70%{box-shadow:0 0 0 9px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}.football-select-search,.js-football-match-option-search,.js-admin-filter-search{border:1px solid rgba(15,23,42,.13);border-radius:14px;padding:11px 13px;background:#fff;width:100%;font-weight:700}.graphics-manual-fallback{display:none!important}.admin-graphics-create .graphic-type-panel[data-panel="table-square"] .graphics-table-builder{display:none}.admin-graphics-create .alert-info,.admin-graphics-create .alert-warning{font-weight:700}.football-topscorer-toolbar{gap:14px}.football-competition-search{min-width:min(100%,520px)}.football-competition-search select{width:100%;min-height:44px}.football-competition-search select[size]{height:auto;max-height:320px;overflow:auto}
@media (max-width: 760px){.article-match-scoreboard{padding:18px 16px;border-radius:20px}.article-match-scoreboard__main{grid-template-columns:1fr;gap:14px}.article-match-scoreboard__team,.article-match-scoreboard__team--home,.article-match-scoreboard__team--away{justify-content:center;text-align:center;flex-direction:column;font-size:1.35rem}.article-match-scoreboard__team--away{flex-direction:column-reverse}.article-match-scoreboard__score{justify-content:center}.article-match-scoreboard__score b{font-size:3rem}.article-match-scoreboard__score em{height:52px}.football-section--table .football-table-wrap{overflow:visible}.football-section--table .football-table{min-width:0;width:100%;border-collapse:separate;border-spacing:0 10px}.football-section--table .football-table thead{display:none}.football-section--table .football-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#fff;border:1px solid rgba(15,23,42,.1);border-radius:18px;padding:12px;box-shadow:0 12px 30px rgba(15,23,42,.06)}html[data-theme="dark"] .football-section--table .football-table tr{background:#1c1c1c;}.football-section--table .football-table td{display:flex;align-items:center;justify-content:space-between;border:0!important;padding:5px 0!important;font-size:.9rem}.football-section--table .football-table td:before{content:attr(data-label);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:900}.football-section--table .football-table td[data-label="Player"],.football-section--table .football-table td[data-label="Team"]{grid-column:1/-1}.football-section--table .football-table td[data-label="Player"]:before,.football-section--table .football-table td[data-label="Team"]:before{margin-right:12px}.football-table-team{min-width:0}.football-table-team strong,.football-table-team span{white-space:normal}.football-topscorer-toolbar,.football-competition-search{width:100%}.football-competition-search{display:grid;gap:8px}.football-compact-hero--split{gap:14px}.football-season-switcher{justify-content:flex-start;overflow-x:auto}}

.admin-graphics-create .graphic-type-panel[data-panel="score-square"] .card-body>.row{display:none!important}


/* v158 football/player/article/top-scorers/graphics refresh */
.football-player-hero--detailed{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);align-items:center;gap:32px;background: rgba(14,20,42,.04);border:1px solid rgba(14,125,121,.14);border-radius:34px;padding:36px 42px;overflow:hidden}.football-player-hero__media{display:flex;align-items:center;justify-content:center}.football-player-hero__photo{width:160px;height:160px;border-radius:30px;background: #eef7f6;border:1px solid rgba(14,125,121,.14);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;box-shadow:0 18px 40px rgba(15,23,42,.08)}.football-player-hero__photo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.football-player-hero__content{display:grid;gap:12px;align-content:center}.football-player-hero__content h1{font-size:clamp(2.3rem,4.4vw,4.8rem);line-height:.95;margin:0;color:#0b1632}.football-player-hero__content p{font-size:1.15rem;color:#52637c;margin:0}.football-player-team-link{display:inline-flex;align-items:center;gap:12px;border-radius:999px;padding:10px 18px;background:#fff;border:1px solid rgba(15,23,42,.1);box-shadow:0 12px 28px rgba(15,23,42,.06);width:max-content;max-width:100%}.football-player-team-link img{width:42px;height:42px;border-radius:50%;background:#fff;object-fit:contain;border:1px solid rgba(15,23,42,.08)}
.article-match-scoreboard{margin:22px 0;border-radius:28px;background: #08101d;color:#fff;padding:24px 28px;box-shadow:0 22px 48px rgba(0,0,0,.22);overflow:hidden;position:relative}.article-match-scoreboard:before{content:"";position:absolute;inset:0;background: rgba(14,125,121,.18);pointer-events:none}.article-match-scoreboard__meta{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;color:#cbd5e1;font-size:.96rem;margin-bottom:20px}.article-match-scoreboard__meta strong{color:#fff}.article-match-scoreboard__main{display:grid;grid-template-columns:minmax(0,1fr) 72px auto 72px minmax(0,1fr);align-items:center;gap:16px}.article-match-scoreboard__team{display:flex;align-items:center;font-size:clamp(1.4rem,2.8vw,3rem);font-weight:800;min-width:0}.article-match-scoreboard__team strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.article-match-scoreboard__team--home{justify-content:flex-end;text-align:right}.article-match-scoreboard__team--away{justify-content:flex-start;text-align:left}.article-match-scoreboard__crest{display:flex;align-items:center;justify-content:center}.article-match-scoreboard__crest img{width:64px;height:64px;border-radius:999px;background:#fff;padding:6px;object-fit:contain;box-shadow:0 10px 24px rgba(0,0,0,.18)}.article-match-scoreboard__score{display:grid;grid-template-columns:auto 3px auto;align-items:center;gap:18px;text-align:center}.article-match-scoreboard__score b{font-size:clamp(3.2rem,7vw,5.2rem);line-height:.9;color:#fff}.article-match-scoreboard__score em{width:3px;height:80px;background:#0e7d79;display:block}.article-match-scoreboard__score span{grid-column:1/-1;color:#8de2d7;text-transform:uppercase;font-weight:900;letter-spacing:.08em;margin-top:8px}.article-match-scoreboard__details{display:flex;justify-content:center;align-items:center;gap:12px 18px;flex-wrap:wrap;margin-top:18px;color:#d9e2ef}.article-match-scoreboard__details span{display:inline-flex;align-items:center;gap:8px}.article-match-scoreboard__status-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:rgba(14,125,121,.18);color:#fff;padding:8px 14px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.article-match-scoreboard__status-pill.is-live{background:#dc2626}.article-match-scoreboard__status-pill i{width:9px;height:9px;border-radius:999px;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.65);animation:kisureLivePulse 1.2s infinite}.article-match-scoreboard__status-pill em{font-style:normal;background:rgba(255,255,255,.16);padding:2px 7px;border-radius:999px}
.football-topscorers-mobile-list{display:none}.football-topscorers-table-wrap{overflow-x:auto}.football-topscorer-card{border:1px solid rgba(15,23,42,.1);border-radius:18px;background:#fff;box-shadow:0 14px 32px rgba(15,23,42,.06);overflow:hidden}.football-topscorer-card+ .football-topscorer-card{margin-top:12px}.football-topscorer-card summary{list-style:none;display:grid;grid-template-columns:44px minmax(0,1fr) 56px 36px;gap:12px;align-items:center;padding:14px 16px;cursor:pointer}.football-topscorer-card summary::-webkit-details-marker{display:none}.football-topscorer-card__rank{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:12px;background:#eff6ff;border:1px solid rgba(15,23,42,.1);font-weight:900;color:#0b1632}.football-topscorer-card__name{font-weight:800;color:#0b1632;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.football-topscorer-card__goals{font-size:1.15rem;font-weight:900;text-align:center;color:#0e7d79}.football-topscorer-card__toggle{display:flex;align-items:center;justify-content:center;color:#64748b;transition:transform .2s ease}.football-topscorer-card[open] .football-topscorer-card__toggle{transform:rotate(180deg)}.football-topscorer-card__body{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;padding:0 16px 16px}.football-topscorer-card__body div{display:grid;gap:3px;padding:10px 12px;border-radius:14px;background:#f8fafc}.football-topscorer-card__body span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:800}.football-topscorer-card__body strong,.football-topscorer-card__body a{color:#0b1632;font-weight:800;text-decoration:none}
.football-bracket-panel--knockout{background:#f8fafc;border:1px solid rgba(15,23,42,.08);border-radius:26px;padding:20px}.football-knockout-bracket--tree{gap:20px;align-items:start}.football-knockout-round h3{padding:0 6px}.football-bracket-match--tie,.football-knockout-bracket--tree .football-bracket-match{border-radius:18px;background:#fff;border:1px solid rgba(15,23,42,.1);padding:12px;box-shadow:0 14px 30px rgba(15,23,42,.06)}.football-bracket-match--tie::before,.football-knockout-bracket--tree .football-bracket-match::before,.football-bracket-match::after{border-color:rgba(148,163,184,.45)!important}.football-bracket-match__legs{color:#0e7d79}.football-bracket-match__legs b{background:rgba(14,125,121,.1);color:#0e7d79}.football-bracket-team{grid-template-columns:28px minmax(0,1fr) auto!important;gap:8px!important}.football-bracket-team em{font-style:normal;color:#0b1632}.football-bracket-match.is-projected{opacity:1;background:#fff}.football-bracket-match.is-projected .football-bracket-match__legs b{background:rgba(148,163,184,.15);color:#475569}.football-bracket-match.is-projected small{color:#64748b}
.admin-graphics-create .graphics-control-card .card-body{display:grid;gap:18px}.admin-graphics-create .graphics-control-card .alert{margin-bottom:0}.admin-graphics-create .graphics-control-field .form-select,.admin-graphics-create .graphics-control-field .form-control,.admin-graphics-create .form-select,.admin-graphics-create .form-control{border-radius:16px;min-height:48px}.admin-graphics-create .graphics-submit-bar{background:transparent;border:0;padding:18px 0 0}.admin-graphics-create .graphic-type-panel .card-body{display:grid;gap:16px}
@media (max-width: 991px){.football-player-hero--detailed{grid-template-columns:1fr;justify-items:center;text-align:center;padding:28px 20px}.football-player-team-link{margin-inline:auto}.football-player-hero__content{text-align:center}.football-player-hero__content h1{font-size:clamp(2.1rem,9vw,3.4rem)}.article-match-scoreboard__main{grid-template-columns:1fr;gap:10px}.article-match-scoreboard__team,.article-match-scoreboard__team--home,.article-match-scoreboard__team--away{justify-content:center;text-align:center}.article-match-scoreboard__crest{display:none}.article-match-scoreboard__score{justify-content:center}.article-match-scoreboard__score em{height:56px}.article-match-scoreboard__details{justify-content:center}.football-knockout-bracket--tree{grid-template-columns:repeat(var(--round-count),minmax(220px,78vw))}}
@media (max-width: 760px){.football-topscorers-table-wrap{display:none}.football-topscorers-mobile-list{display:block}.football-topscorer-card__body{grid-template-columns:1fr}.football-topscorer-toolbar{display:grid}.football-player-hero__photo{width:132px;height:132px;border-radius:24px}.article-match-scoreboard{padding:18px 16px;border-radius:22px}.article-match-scoreboard__meta{font-size:.84rem;gap:10px}.article-match-scoreboard__score b{font-size:3.2rem}.article-match-scoreboard__score span{font-size:.82rem}.article-match-scoreboard__details{font-size:.86rem}.football-knockout-bracket--tree{grid-template-columns:repeat(var(--round-count),minmax(190px,74vw))}}

@media (max-width: 991px){
  .article-match-scoreboard__main{grid-template-columns:minmax(0,1fr) 52px auto 52px minmax(0,1fr)!important;gap:10px}
  .article-match-scoreboard__team,.article-match-scoreboard__team--home,.article-match-scoreboard__team--away{justify-content:center!important;text-align:center!important;font-size:clamp(1rem,3vw,1.8rem)}
  .article-match-scoreboard__crest{display:flex!important}
  .article-match-scoreboard__crest img{width:46px;height:46px;padding:4px}
  .article-match-scoreboard__score b{font-size:clamp(2.3rem,6vw,3.4rem)}
  .article-match-scoreboard__score em{height:50px}
}
@media (max-width: 520px){
  .article-match-scoreboard__meta{font-size:.78rem}
  .article-match-scoreboard__main{grid-template-columns:minmax(0,1fr) 40px auto 40px minmax(0,1fr)!important;gap:8px}
  .article-match-scoreboard__team{font-size:.95rem}
  .article-match-scoreboard__crest img{width:38px;height:38px}
  .article-match-scoreboard__score{gap:10px}
  .article-match-scoreboard__score b{font-size:2.1rem}
  .article-match-scoreboard__score span{font-size:.74rem}
}


/* v159 football fixes: full-width scorers, article score details, player button, bracket and lineup pitch */
.football-topscorer-toolbar{width:100%;display:block}.football-topscorer-toolbar .football-competition-search{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:16px;box-shadow:0 12px 30px rgba(15,23,42,.05)}.football-topscorer-toolbar .football-competition-search label{grid-column:1/-1}.football-topscorer-toolbar .football-competition-search input,.football-topscorer-toolbar .football-competition-search select{min-width:0;width:100%}.football-topscorer-toolbar .football-competition-search button{height:48px;border-radius:14px;background:#07142a;color:#fff;border:0;padding:0 28px;font-weight:900}.football-player-team-link{min-height:54px}.football-player-team-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.article-match-scoreboard__event-grid{margin-top:18px;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:10px;padding-top:16px}.article-match-scoreboard__event-grid div{display:grid;grid-template-columns:minmax(120px,.28fr) 1fr;gap:12px;align-items:start}.article-match-scoreboard__event-grid span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#8de2d7;font-weight:900}.article-match-scoreboard__event-grid strong{font-weight:800;color:#fff}.football-section--fullwidth{grid-column:1/-1;width:100%}.football-section--knockout-path{margin-top:24px}.football-bracket-panel--fullwidth{width:100%;max-width:none}.football-knockout-bracket--responsive{min-height:360px}.football-bracket-slot-icon{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e5e7eb;color:#94a3b8}.football-bracket-match.is-slot{background:#fff}.football-bracket-match.is-slot small{display:none}.football-lineups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.football-formation-pitch{position:relative;overflow:hidden;border-radius:24px;background: #0aa164;min-height:560px;padding:22px 18px;display:grid;gap:14px;align-content:space-between;border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 0 0 2px rgba(255,255,255,.06)}.football-formation-pitch:before{content:"";position:absolute;inset:14px;border:2px solid rgba(255,255,255,.15);border-radius:18px}.football-formation-pitch:after{content:"";position:absolute;left:50%;top:50%;width:132px;height:132px;border:2px solid rgba(255,255,255,.12);border-radius:50%;transform:translate(-50%,-50%)}.football-formation-pitch__halfway{position:absolute;left:0;right:0;top:50%;border-top:2px solid rgba(255,255,255,.12)}.football-formation-row{position:relative;z-index:1;display:grid;grid-template-columns:repeat(var(--line-count,1),minmax(0,1fr));gap:8px;justify-items:center}.football-formation-row--keeper{--line-count:1}.football-formation-player{display:grid;justify-items:center;text-align:center;text-decoration:none;color:#fff;font-weight:900;min-width:0}.football-formation-player img,.football-formation-player b{width:48px;height:48px;border-radius:50%;background:#fff;color:#0b1632;display:flex;align-items:center;justify-content:center;object-fit:cover;border:3px solid #fff;box-shadow:0 8px 18px rgba(0,0,0,.22)}.football-formation-player span{margin-top:5px;font-size:.78rem;line-height:1.15;text-shadow:0 2px 8px rgba(0,0,0,.32);max-width:88px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.football-formation-player em{font-style:normal;margin-right:4px;color:#dffcf6}.admin-graphics-create .graphics-manual-fallback,.admin-graphics-create .graphics-extra-manual-fallback{display:none!important}.admin-graphics-create .graphic-type-panel[data-panel="score-square"] .alert,.admin-graphics-create .graphic-type-panel[data-panel="table-square"] .alert{font-size:1rem}.admin-graphics-create .graphics-submit-bar .btn{min-height:50px;border-radius:16px;font-weight:900;padding-inline:24px}
@media(max-width:991px){.football-topscorer-toolbar .football-competition-search{grid-template-columns:1fr}.football-player-team-link{min-height:48px;padding:8px 12px;font-size:.92rem}.football-player-team-link img{width:34px;height:34px}.football-lineups-grid{grid-template-columns:1fr}.football-formation-pitch{min-height:720px}.football-knockout-bracket--responsive{grid-template-columns:1fr!important;overflow:visible}.football-knockout-bracket--responsive .football-knockout-round{min-width:0}.football-knockout-bracket--responsive .football-bracket-match:before,.football-knockout-bracket--responsive .football-bracket-match:after{display:none!important}}
@media(max-width:560px){.football-player-team-link{max-width:100%;width:100%;justify-content:center}.football-player-team-link span{font-size:.88rem}.article-match-scoreboard__event-grid div{grid-template-columns:1fr}.football-formation-pitch{min-height:760px;padding:18px 10px}.football-formation-player img,.football-formation-player b{width:42px;height:42px}.football-formation-player span{font-size:.72rem;max-width:74px}.football-topscorer-toolbar .football-competition-search{padding:12px}}


/* v160 match scoreboard, knockout explainer and graphics editor fixes */
.article-match-scoreboard--match-page{margin-top:0;margin-bottom:24px;border-radius:34px;min-height:280px;display:grid;align-content:center}.article-match-scoreboard--match-page .article-match-scoreboard__meta{margin-bottom:18px}.article-match-scoreboard--match-page .article-match-scoreboard__team{text-decoration:none;color:#fff}.article-match-scoreboard--match-page .article-match-scoreboard__score{text-decoration:none;color:#fff}.article-match-scoreboard__event-grid{max-width:1040px;margin-inline:auto}.article-match-scoreboard__event-grid div{border-radius:16px;background:rgba(255,255,255,.06);padding:10px 14px}.article-match-scoreboard__event-grid div:empty{display:none}.football-bracket-explainer{margin:0 0 18px;border:1px solid rgba(14,125,121,.16);background: rgba(255,255,255,.9);border-radius:20px;padding:14px 16px;color:#0b1632}.football-bracket-explainer summary{cursor:pointer;font-weight:900;color:#0e7d79;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.football-bracket-explainer div{display:grid;gap:10px;margin-top:12px}.football-bracket-explainer p{margin:0;color:#475569;line-height:1.55}.football-standings-mobile-group{display:none;margin:14px 0 8px;padding:10px 14px;border-radius:14px;background:rgba(14,125,121,.1);color:#0e7d79;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.football-bracket-match.is-slot .football-bracket-team em{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-weight:900;letter-spacing:.02em}.football-bracket-match.is-slot .football-bracket-slot-icon{background:#eef2f7;color:#94a3b8}.admin-graphics-create .graphics-control-field.d-none{display:none!important}.admin-graphics-create .graphics-type-help{display:block;margin-top:8px;font-weight:700}.admin-graphics-create .graphic-type-panel.d-none{display:none!important}.admin-graphics-create .card-body>.graphics-control-field.alert{margin-bottom:1rem}.admin-graphics-create [data-panel="score-square"] .graphics-manual-fallback,.admin-graphics-create [data-panel="table-square"] .graphics-table-builder{display:none!important}.football-topscorer-toolbar{width:100%;max-width:none}.football-topscorer-toolbar .football-competition-search{width:100%;max-width:none!important}
@media(max-width:760px){.article-match-scoreboard--match-page{border-radius:24px;min-height:auto}.article-match-scoreboard--match-page .article-match-scoreboard__main{grid-template-columns:minmax(0,1fr) 42px auto 42px minmax(0,1fr)!important}.article-match-scoreboard--match-page .article-match-scoreboard__team{font-size:.95rem!important}.article-match-scoreboard--match-page .article-match-scoreboard__event-grid{font-size:.9rem}.football-standings-mobile-group{display:block}.football-bracket-explainer{padding:12px;border-radius:16px}.football-bracket-explainer p{font-size:.9rem}.football-knockout-bracket--responsive{display:flex!important;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory}.football-knockout-bracket--responsive .football-knockout-round{min-width:78vw;scroll-snap-align:start}}
@media(max-width:760px){
  .football-knockout-bracket--responsive{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;gap:18px!important;min-height:0!important}
  .football-knockout-bracket--responsive .football-knockout-round{min-width:0!important;width:100%!important;display:grid!important;gap:12px!important}
  .football-knockout-bracket--responsive .football-knockout-round h3{position:sticky;top:72px;background:#fff;z-index:2;padding:8px;border-radius:12px;border:1px solid rgba(15,23,42,.08)}
  .football-knockout-bracket--responsive .football-bracket-match{max-width:100%;width:100%}
  .football-knockout-bracket--responsive .football-bracket-match::before,.football-knockout-bracket--responsive .football-bracket-match::after{display:none!important}
}

/* v162 match summary scores, football story icons, player full-name/dark-mode fixes */
.football-summary-kickoff--score {
    gap: 0.35rem;
    min-height: 128px;
}
.football-summary-scoreline {
    align-items: center;
    display: inline-flex;
    gap: 0.45rem;
    justify-content: center;
    line-height: 1;
}
.football-summary-scoreline em,
.football-summary-scoreline b {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    font-size: clamp(1.5rem, 3vw, 2.25rem);
    font-style: normal;
    font-weight: 950;
}
.football-summary-scoreline b {
    color: var(--primary-strong);
}
.football-summary-time {
    font-weight: 900;
}
.football-article-list a.football-article-list__item {
    align-items: center;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 0.78rem;
    justify-content: stretch;
}
.football-article-list__icon {
    align-items: center;
    background: rgba(14, 20, 42, 0.06);
    border: 1px solid var(--border);
    border-radius: 14px;
    display: inline-flex;
    height: 46px;
    justify-content: center;
    overflow: hidden;
    width: 46px;
}
.football-article-list__icon img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.football-article-list__icon b {
    color: var(--primary-strong);
    font-weight: 950;
}
.football-article-list__body {
    display: grid;
    gap: 0.22rem;
    min-width: 0;
}
.football-article-list__body strong {
    color: var(--text);
    line-height: 1.25;
}
.football-article-list__body em {
    color: var(--text-soft);
    font-size: 0.82rem;
    font-style: normal;
    font-weight: 850;
}
html[data-theme="dark"] .football-player-hero--detailed {
    background: rgba(14, 125, 121, 0.16);
    border-color: rgba(141, 226, 215, 0.16);
}
html[data-theme="dark"] .football-player-hero__content h1,
html[data-theme="dark"] .football-player-hero__content p,
html[data-theme="dark"] .football-player-team-link span,
html[data-theme="dark"] .football-data-card h3,
html[data-theme="dark"] .football-data-card p,
html[data-theme="dark"] .football-stat-grid--player span,
html[data-theme="dark"] .football-stat-grid--player strong {
    color: #f8fafc;
}
html[data-theme="dark"] .football-player-hero__photo,
html[data-theme="dark"] .football-player-team-link,
html[data-theme="dark"] .football-data-card,
html[data-theme="dark"] .football-stat-grid--player > div,
html[data-theme="dark"] .football-article-list a.football-article-list__item {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.22);
    box-shadow:none;
}
html[data-theme="dark"] .football-player-team-link img,
html[data-theme="dark"] .football-article-list__icon {
    background: rgba(255, 255, 255, 0.94);
}
html[data-theme="dark"] .football-article-list__body strong {
    color: #f8fafc;
}
html[data-theme="dark"] .football-article-list__body em,
html[data-theme="dark"] .football-player-hero__content p {
    color: #cbd5e1;
}
@media (max-width: 760px) {
    .football-summary-kickoff--score {
        min-height: 102px;
        padding: 0.65rem;
    }
    .football-summary-scoreline em,
    .football-summary-scoreline b {
        font-size: 1.3rem;
    }
    .football-article-list a.football-article-list__item {
        grid-template-columns: 40px minmax(0, 1fr);
    }
    .football-article-list__icon {
        height: 40px;
        width: 40px;
    }
    .football-player-team-link {
        font-size: 0.88rem;
        gap: 8px;
        min-height: 46px;
        padding: 7px 12px;
    }
    .football-player-team-link img {
        height: 34px;
        width: 34px;
    }
}

/* v163 knockout dark-mode and match scoreboard alignment refinements */
.article-match-scoreboard__support {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    margin-top: 18px;
    padding-top: 18px;
    align-items: start;
}
.article-match-scoreboard__support--assists {
    margin-top: 14px;
    padding-top: 16px;
}
.article-match-scoreboard__support-col {
    min-width: 0;
}
.article-match-scoreboard__support-col strong,
.article-match-scoreboard__support-center strong,
.article-match-scoreboard__support-center span {
    display: block;
}
.article-match-scoreboard__support-col strong {
    color: #fff;
    font-size: clamp(0.98rem, 1.8vw, 1.15rem);
    font-weight: 850;
    line-height: 1.55;
}
.article-match-scoreboard__support-col--home {
    text-align: right;
}
.article-match-scoreboard__support-col--away {
    text-align: left;
}
.article-match-scoreboard__support-center {
    align-self: center;
    display: grid;
    gap: 0.35rem;
    justify-items: center;
    min-width: 110px;
    text-align: center;
}
.article-match-scoreboard__support-center strong {
    color: #f8fafc;
    font-family: var(--font-display);
    font-size: clamp(1rem, 2vw, 1.35rem);
    font-weight: 950;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
.article-match-scoreboard__support-center span {
    color: #cbd5e1;
    font-size: 0.92rem;
    font-weight: 850;
}
.article-match-scoreboard__support-center--label span {
    color: #8de2d7;
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.article-match-scoreboard__support--single {
    grid-template-columns: 1fr;
}
.article-match-scoreboard__support--single .article-match-scoreboard__support-center {
    min-width: 0;
}
.article-match-scoreboard__facts {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    color: #d9e2ef;
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem 1.25rem;
    justify-content: center;
    margin-top: 16px;
    padding-top: 14px;
}
.article-match-scoreboard__facts span {
    display: inline-flex;
    gap: 0.35rem;
}
.article-match-scoreboard__facts b {
    color: #8de2d7;
    font-weight: 900;
}
html[data-theme="dark"] .football-bracket-panel--knockout {
    background:#1c1c1c;
    border-color: rgba(141, 226, 215, 0.14);
    box-shadow:none;
}
html[data-theme="dark"] .football-bracket-panel--knockout .section-heading h2,
html[data-theme="dark"] .football-bracket-panel--knockout .section-heading h3,
html[data-theme="dark"] .football-bracket-panel--knockout .site-kicker,
html[data-theme="dark"] .football-bracket-panel--knockout .football-panel-link,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match small,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-team em {
    color: #f8fafc;
}
html[data-theme="dark"] .football-bracket-panel--knockout .site-kicker,
html[data-theme="dark"] .football-bracket-panel--knockout .football-panel-link,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match__legs,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match__legs b,
html[data-theme="dark"] .football-bracket-panel--knockout .football-knockout-round h3,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-explainer summary {
    color: #8de2d7;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-panel-link {
    background: rgba(14, 125, 121, 0.12);
    border: 1px solid rgba(141, 226, 215, 0.18);
    border-radius: 999px;
    padding: 0.55rem 0.9rem;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-explainer {
    background:#1c1c1c;
    border-color: rgba(141, 226, 215, 0.18);
    color: #f8fafc;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-explainer p {
    color: #cbd5e1;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match--tie,
html[data-theme="dark"] .football-bracket-panel--knockout .football-knockout-bracket--tree .football-bracket-match,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match.is-slot {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.18);
    box-shadow:none;
    color: #f8fafc;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match img {
    background: rgba(255, 255, 255, 0.94);
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-slot-icon {
    background: rgba(148, 163, 184, 0.14);
    color: #cbd5e1;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match.is-slot .football-bracket-slot-icon {
    background: rgba(148, 163, 184, 0.14);
    color: #cbd5e1;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match.is-slot .football-bracket-team em,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match.is-projected small {
    color: #cbd5e1;
}
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match::before,
html[data-theme="dark"] .football-bracket-panel--knockout .football-bracket-match::after {
    border-color: rgba(141, 226, 215, 0.18) !important;
}
@media (max-width: 760px) {
    .article-match-scoreboard__support {
        grid-template-columns: 1fr;
        gap: 12px;
        text-align: center;
    }
    .article-match-scoreboard__support-col,
    .article-match-scoreboard__support-col--home,
    .article-match-scoreboard__support-col--away {
        text-align: center;
    }
    .article-match-scoreboard__support-center {
        min-width: 0;
        order: -1;
    }
    .article-match-scoreboard__support-col strong {
        font-size: 0.96rem;
    }
    .article-match-scoreboard__facts {
        font-size: 0.88rem;
        gap: 0.5rem 0.9rem;
    }
    html[data-theme="dark"] .football-knockout-bracket--responsive .football-knockout-round h3 {
        background:#1c1c1c;
        border-color: rgba(141, 226, 215, 0.16);
        color: #8de2d7;
    }
}

/* v164 scoreboard order: HT middle, goal icon center, details last */
.article-match-scoreboard__details--halftime {
    margin-top: 14px;
    justify-content: center;
}
.article-match-scoreboard__halftime-pill {
    border: 1px solid rgba(141, 226, 215, 0.28);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #cbd5e1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0.42rem 0.85rem;
    font-weight: 900;
}
.article-match-scoreboard__goal-icon {
    align-items: center;
    background: rgba(141, 226, 215, 0.22);
    border: 1px solid rgba(141, 226, 215, 0.38);
    border-radius: 999px;
    color: #ffffff;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    width: 44px;
    box-shadow: 0 12px 26px rgba(14, 125, 121, 0.25);
}
.article-match-scoreboard__goal-icon i {
    font-size: 1.05rem;
}
.article-match-scoreboard__details--last {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    margin-top: 16px;
    padding-top: 14px;
}
.article-match-scoreboard__details--last span {
    color: #d9e2ef;
    font-weight: 800;
}
.article-match-scoreboard__details--last i {
    color: #8de2d7;
}
.article-match-scoreboard__support-center > .article-match-scoreboard__goal-icon + span,
.article-match-scoreboard__support-center > .article-match-scoreboard__goal-icon + strong {
    display: none;
}
@media (max-width: 760px) {
    .article-match-scoreboard__goal-icon {
        height: 38px;
        width: 38px;
    }
    .article-match-scoreboard__details--last {
        align-items: center;
        display: flex;
        gap: 0.45rem 0.8rem;
        justify-content: center;
    }
}

/* v165 mobile scoreboard: BBC-style compact match centre */
@media (max-width: 760px) {
    .article-match-scoreboard,
    .article-match-scoreboard--match-page {
        border-radius: 0;
        margin-inline: calc(-1 * var(--site-shell-padding, 0px));
        padding: 28px 18px 30px;
        background: #151515;
        box-shadow: none;
    }

    .article-match-scoreboard__meta {
        display: grid;
        gap: 5px;
        justify-items: center;
        margin-bottom: 20px;
        text-align: center;
    }

    .article-match-scoreboard__meta span,
    .article-match-scoreboard__meta strong {
        font-size: 0.98rem;
        line-height: 1.2;
    }

    .article-match-scoreboard__meta strong {
        color: #fff;
        font-weight: 900;
    }

    .article-match-scoreboard__main,
    .article-match-scoreboard--match-page .article-match-scoreboard__main {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        grid-template-areas:
            "homecrest score awaycrest"
            "homename score awayname";
        column-gap: 14px;
        row-gap: 8px;
        align-items: center;
        justify-items: center;
        max-width: 430px;
        margin-inline: auto;
    }

    .article-match-scoreboard__team,
    .article-match-scoreboard--match-page .article-match-scoreboard__team {
        color: #fff;
        display: block;
        font-size: 1rem !important;
        line-height: 1.2;
        max-width: 120px;
        min-width: 0;
        text-align: center !important;
        text-decoration: none;
    }

    .article-match-scoreboard__team strong {
        display: block;
        overflow: visible;
        text-overflow: clip;
        white-space: normal;
    }

    .article-match-scoreboard__team--home {
        grid-area: homename;
        justify-self: center !important;
    }

    .article-match-scoreboard__team--away {
        grid-area: awayname;
        justify-self: center !important;
    }

    .article-match-scoreboard__crest {
        display: flex !important;
        align-items: center;
        justify-content: center;
    }

    .article-match-scoreboard__crest--home {
        grid-area: homecrest;
    }

    .article-match-scoreboard__crest--away {
        grid-area: awaycrest;
    }

    .article-match-scoreboard__crest img,
    .article-match-scoreboard__team img {
        width: 54px;
        height: 54px;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        object-fit: contain;
        padding: 0;
    }

    .article-match-scoreboard__score,
    .article-match-scoreboard--match-page .article-match-scoreboard__score {
        grid-area: score;
        display: grid;
        grid-template-columns: auto 2px auto;
        gap: 12px;
        align-items: center;
        justify-items: center;
        min-width: 116px;
        text-align: center;
        text-decoration: none;
    }

    .article-match-scoreboard__score b {
        color: #fff;
        font-size: 3.15rem;
        font-weight: 900;
        line-height: 0.9;
    }

    .article-match-scoreboard__score em {
        width: 2px;
        height: 52px;
        background: #f5c400;
    }

    .article-match-scoreboard__score span {
        grid-column: 1 / -1;
        color: #f5c400;
        font-size: 0.94rem;
        font-weight: 950;
        letter-spacing: 0.04em;
        margin-top: 2px;
    }

    .article-match-scoreboard__details--halftime {
        margin-top: 12px;
        padding-top: 0;
    }

    .article-match-scoreboard__halftime-pill {
        background: transparent;
        border: 0;
        box-shadow: none;
        color: #cbd5e1;
        font-size: 1rem;
        padding: 0;
    }

    .article-match-scoreboard__support {
        border-top: 0;
        max-width: 430px;
        margin: 16px auto 0;
        padding-top: 0;
    }

    .article-match-scoreboard__support--goals {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px 26px;
    }

    .article-match-scoreboard__support--goals .article-match-scoreboard__support-center {
        display: none;
    }

    .article-match-scoreboard__support-col,
    .article-match-scoreboard__support-col--home,
    .article-match-scoreboard__support-col--away {
        text-align: center !important;
    }

    .article-match-scoreboard__support-col strong {
        display: block;
        color: #fff;
        font-size: 0.96rem;
        font-weight: 900;
        line-height: 1.65;
    }

    .article-match-scoreboard__support-col strong br {
        display: block;
    }

    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        border-top: 1px solid rgba(255, 255, 255, 0.16);
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 12px 26px;
        margin-top: 18px;
        padding-top: 14px;
    }

    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center {
        grid-column: 1 / -1;
        min-width: 0;
        order: -1;
    }

    .article-match-scoreboard__support-center--label span {
        color: #fff;
        font-family: var(--font-display);
        font-size: 1.12rem;
        font-weight: 950;
        letter-spacing: 0;
        text-transform: none;
    }

    .article-match-scoreboard__support--single {
        border-top: 1px solid rgba(255, 255, 255, 0.16);
        margin-top: 18px;
        padding-top: 14px;
    }

    .article-match-scoreboard__support--single .article-match-scoreboard__support-center {
        justify-items: center;
        text-align: center;
    }

    .article-match-scoreboard__details--last {
        border-top: 1px solid rgba(255, 255, 255, 0.12);
        justify-content: center;
        margin-top: 18px;
        padding-top: 13px;
    }

    .article-match-scoreboard__details--last span {
        font-size: 0.84rem;
    }
}

@media (max-width: 420px) {
    .article-match-scoreboard,
    .article-match-scoreboard--match-page {
        padding-inline: 12px;
    }

    .article-match-scoreboard__main,
    .article-match-scoreboard--match-page .article-match-scoreboard__main,
    .article-match-scoreboard__support,
    .article-match-scoreboard__support--goals,
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        max-width: 100%;
    }

    .article-match-scoreboard__main,
    .article-match-scoreboard--match-page .article-match-scoreboard__main {
        column-gap: 10px;
    }

    .article-match-scoreboard__score,
    .article-match-scoreboard--match-page .article-match-scoreboard__score {
        gap: 10px;
        min-width: 96px;
    }

    .article-match-scoreboard__score b {
        font-size: 2.75rem;
    }

    .article-match-scoreboard__score em {
        height: 48px;
    }

    .article-match-scoreboard__crest img,
    .article-match-scoreboard__team img {
        width: 48px;
        height: 48px;
    }

    .article-match-scoreboard__team,
    .article-match-scoreboard--match-page .article-match-scoreboard__team {
        max-width: 92px;
        font-size: 0.95rem !important;
    }

    .article-match-scoreboard__support--goals,
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        gap: 10px 18px;
    }
}

/* v166 scoreboard refinements: teal mobile colour, centered VS, visible HT and wrapping scorer columns */
.article-match-scoreboard__score.is-vs {
    grid-template-columns: 1fr;
    min-width: 120px;
    justify-items: center;
}
.article-match-scoreboard__score.is-vs b {
    grid-column: 1 / -1;
    text-align: center;
    width: 100%;
}
.article-match-scoreboard__score.is-vs span {
    grid-column: 1 / -1;
}
@media (min-width: 761px) {
    .article-match-scoreboard__support-col {
        min-width: 0;
    }
    .article-match-scoreboard__support-col strong {
        display: inline-block;
        max-width: min(42ch, 100%);
        overflow-wrap: break-word;
        word-break: normal;
        white-space: normal;
    }
    .article-match-scoreboard__support-col--home strong {
        margin-left: auto;
    }
    .article-match-scoreboard__support-col--away strong {
        margin-right: auto;
    }
    .article-match-scoreboard__support--goals,
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        grid-template-columns: minmax(0, 1fr) 70px minmax(0, 1fr);
    }
}
@media (max-width: 760px) {
    .article-match-scoreboard,
    .article-match-scoreboard--match-page {
        background: #08101d;
        border-top: 3px solid rgba(14, 125, 121, 0.65);
    }
    .article-match-scoreboard__score,
    .article-match-scoreboard--match-page .article-match-scoreboard__score {
        align-self: center;
    }
    .article-match-scoreboard__score.is-vs,
    .article-match-scoreboard--match-page .article-match-scoreboard__score.is-vs {
        grid-template-columns: 1fr !important;
        min-width: 92px;
        place-items: center;
    }
    .article-match-scoreboard__score.is-vs b {
        font-size: 3rem;
        line-height: 0.95;
        text-align: center;
    }
    .article-match-scoreboard__score em {
        background: #0e7d79 !important;
    }
    .article-match-scoreboard__score span,
    .article-match-scoreboard__halftime-pill,
    .article-match-scoreboard__support-center--label span {
        color: #8de2d7 !important;
    }
    .article-match-scoreboard__halftime-pill {
        font-weight: 950;
    }
    .article-match-scoreboard__goal-icon {
        background: rgba(141, 226, 215, 0.22);
        border-color: rgba(141, 226, 215, 0.45);
        color: #fff;
        box-shadow: 0 10px 24px rgba(14, 125, 121, 0.25);
    }
    .article-match-scoreboard__details--last i,
    .article-match-scoreboard__facts b {
        color: #8de2d7;
    }
}
/* v166 final color override: use Kisure teal instead of yellow in all scoreboard modes */
.article-match-scoreboard:before {
    background: rgba(14, 125, 121, 0.18) !important;
}
.article-match-scoreboard__score em {
    background: #0e7d79 !important;
}
.article-match-scoreboard__score span {
    color: #8de2d7 !important;
}
.article-match-scoreboard__details--halftime .article-match-scoreboard__halftime-pill {
    color: #8de2d7 !important;
    border-color: rgba(141, 226, 215, 0.32) !important;
}


/* v167 scoreboard scorer/assist alignment: no goal icon between scorers */
.article-match-scoreboard__support-center--empty {
    min-width: clamp(72px, 8vw, 120px);
    visibility: hidden;
}
.article-match-scoreboard__support--goals .article-match-scoreboard__support-center--empty {
    display: block;
}
.article-match-scoreboard__support-col strong {
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal;
    word-break: normal;
}
.article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
    grid-template-columns: minmax(0, 1fr) clamp(92px, 10vw, 140px) minmax(0, 1fr);
}
.article-match-scoreboard__support-center--label {
    align-self: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    justify-self: center;
    min-height: 100%;
    text-align: center;
    width: 100%;
}
.article-match-scoreboard__support-center--label > span {
    align-items: center;
    display: inline-flex !important;
    justify-content: center;
    line-height: 1;
    margin-inline: auto;
    min-height: 32px;
    text-align: center;
    width: 100%;
}
.article-match-scoreboard__support--single .article-match-scoreboard__support-center--label {
    max-width: 760px;
    margin-inline: auto;
}
.article-match-scoreboard__goal-icon {
    display: none !important;
}
@media (max-width: 760px) {
    .article-match-scoreboard__support-center--empty {
        display: none !important;
        min-width: 0;
    }
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
    .article-match-scoreboard__support-center--label {
        min-height: auto;
    }
    .article-match-scoreboard__support-center--label > span {
        min-height: 24px;
    }
}


/* v168 final scoreboard assists alignment and goal-icon removal */
.article-match-scoreboard__goal-icon,
.article-match-scoreboard__goal-icon * {
    display: none !important;
}
.article-match-scoreboard__support--goals .article-match-scoreboard__support-center,
.article-match-scoreboard__support--goals .article-match-scoreboard__support-center--empty {
    display: block !important;
    visibility: hidden !important;
    min-width: clamp(80px, 8vw, 128px) !important;
}
.article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) clamp(110px, 11vw, 160px) minmax(0, 1fr) !important;
    align-items: stretch !important;
}
.article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center--label {
    align-self: stretch !important;
    display: grid !important;
    justify-content: center !important;
    justify-items: center !important;
    align-content: center !important;
    place-items: center !important;
    text-align: center !important;
    min-height: 100% !important;
    width: 100% !important;
}
.article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center--label > span {
    display: inline-grid !important;
    place-items: center !important;
    width: 100% !important;
    margin: 0 auto !important;
    line-height: 1 !important;
    text-align: center !important;
}
.article-match-scoreboard__support-col strong {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.55 !important;
}
.article-match-scoreboard__support-col--home strong {
    margin-left: auto !important;
}
.article-match-scoreboard__support-col--away strong {
    margin-right: auto !important;
}
@media (max-width: 760px) {
    .article-match-scoreboard__support--goals .article-match-scoreboard__support-center,
    .article-match-scoreboard__support--goals .article-match-scoreboard__support-center--empty {
        display: none !important;
        min-width: 0 !important;
    }
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    }
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center--label {
        grid-column: 1 / -1 !important;
        min-height: auto !important;
    }
}

/* v169 article scorecard compact default with dropdown details */
.article-match-scoreboard:not(.article-match-scoreboard--match-page) {
    padding-bottom: 18px;
}
.article-match-scoreboard__more {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    margin-top: 18px;
    padding-top: 12px;
}
.article-match-scoreboard__more summary {
    align-items: center;
    background: rgba(14, 125, 121, 0.14);
    border: 1px solid rgba(141, 226, 215, 0.18);
    border-radius: 999px;
    color: #8de2d7;
    cursor: pointer;
    display: inline-flex;
    font-weight: 900;
    gap: 10px;
    justify-content: center;
    letter-spacing: 0.04em;
    list-style: none;
    margin-inline: auto;
    min-height: 40px;
    padding: 0 16px;
    text-transform: uppercase;
    width: fit-content;
}
.article-match-scoreboard__more summary::-webkit-details-marker {
    display: none;
}
.article-match-scoreboard__more summary i {
    font-size: 0.78rem;
    transition: transform 0.2s ease;
}
.article-match-scoreboard__more[open] summary i {
    transform: rotate(180deg);
}
.article-match-scoreboard__more-body {
    display: grid;
    gap: 0;
    margin-top: 12px;
}
.article-match-scoreboard:not(.article-match-scoreboard--match-page) .article-match-scoreboard__support:first-child,
.article-match-scoreboard:not(.article-match-scoreboard--match-page) .article-match-scoreboard__details--halftime:first-child {
    margin-top: 0;
}
.article-match-scoreboard:not(.article-match-scoreboard--match-page) .article-match-scoreboard__main {
    margin-bottom: 0;
}
@media (max-width: 760px) {
    .article-match-scoreboard__more {
        margin-top: 12px;
        padding-top: 10px;
    }
    .article-match-scoreboard__more summary {
        font-size: 0.72rem;
        min-height: 34px;
        padding-inline: 13px;
    }
}
    .site-header-football__match-main {
        grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr) auto;
    }

/* v171: header football league hover panels + mobile bracket fit */
.football-header-leagues {
    position: relative;
    z-index: 40;
    margin-top: 0.75rem;
    margin-bottom: 1rem;
}
.football-header-leagues__surface {
    position: relative;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(16px);
    padding: 1rem 1.2rem;
}
.football-header-leagues__tabs {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    min-height: 58px;
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-width: none;
}
.football-header-leagues__tabs::-webkit-scrollbar { display: none; }
.football-header-league { position: static; flex: 0 0 auto; }
.football-header-league__tab,
.football-header-league__more {
    align-items: center;
    border-radius: 18px;
    color: #0b1632;
    display: inline-flex;
    gap: 0.75rem;
    min-height: 48px;
    padding: 0.65rem 1rem;
    text-decoration: none;
    transition: 0.2s ease;
    white-space: nowrap;
}
.football-header-league__tab:hover,
.football-header-league:focus-within .football-header-league__tab {
    background: #075d66;
    color: #fff;
    box-shadow: 0 14px 30px rgba(8, 127, 122, 0.18);
}
.football-header-league:first-child .football-header-league__tab {
    background: #075d66;
    color: #fff;
    box-shadow: 0 14px 30px rgba(8, 127, 122, 0.18);
}
.football-header-league__logo {
    align-items: center;
    background: rgba(14, 125, 121, 0.10);
    border-radius: 999px;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}
.football-header-league__tab:hover .football-header-league__logo,
.football-header-league:focus-within .football-header-league__logo,
.football-header-league:first-child .football-header-league__logo {
    background: rgba(255,255,255,.18);
}
.football-header-league__logo img {
    height: 25px;
    object-fit: contain;
    width: 25px;
}
.football-header-league__logo i { color: #0e7d79; }
.football-header-league__tab:hover .football-header-league__logo i,
.football-header-league:focus-within .football-header-league__logo i,
.football-header-league:first-child .football-header-league__logo i { color: #fff; }
.football-header-league__tab strong,
.football-header-league__more strong {
    font-size: 0.98rem;
    font-weight: 900;
}
.football-header-league__more {
    margin-left: auto;
    color: #172033;
}
.football-header-league__more:hover { background: #eef9f8; color: #0e7d79; }
.football-header-league__dropdown {
    left: 1.2rem;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    right: 1.2rem;
    top: calc(100% - 0.25rem);
    transform: translateY(10px);
    transition: opacity .18s ease, transform .18s ease;
    z-index: 80;
}
.football-header-league:hover .football-header-league__dropdown,
.football-header-league:focus-within .football-header-league__dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.football-header-panel {
    background: rgba(255,255,255,.98);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 26px;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.15);
    display: grid;
    gap: 1rem;
    grid-template-columns: 260px minmax(0, 1fr) 280px 290px;
    padding: 1.1rem;
}
.football-header-panel__lead {
    align-content: center;
    background: rgba(14,125,121,.02);
    border-radius: 22px;
    display: grid;
    gap: 0.7rem;
    padding: 1.35rem;
}
.football-header-panel__lead.is-live { background: rgba(14,125,121,.04); }
.football-header-panel__lead span {
    align-items: center;
    background: #10b981;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: .08em;
    padding: .35rem .65rem;
    text-transform: uppercase;
    width: max-content;
}
.football-header-panel__lead strong {
    color: #0b1632;
    font-size: 1.1rem;
    font-weight: 950;
}
.football-header-panel__lead small { color: #64748b; font-size: .9rem; }
.football-header-panel__lead a {
    color: #0e7d79;
    font-weight: 900;
    text-decoration: none;
}
.football-header-panel__matches {
    display: grid;
    gap: .7rem;
    min-width: 0;
}
.football-header-panel__group {
    display: grid;
    gap: .45rem;
}
.football-header-panel__group-title {
    align-items: center;
    color: #0e7d79;
    display: flex;
    font-size: .68rem;
    font-weight: 950;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.football-header-panel__group-title:after {
    background: rgba(14,125,121,.14);
    content: "";
    flex: 1;
    height: 1px;
    margin-left: .55rem;
}
.football-header-match-row {
    align-items: center;
    border-radius: 16px;
    color: #0b1632;
    display: grid;
    gap: .55rem;
    grid-template-columns: 56px minmax(0, 1fr) auto minmax(0, 1fr);
    min-height: 56px;
    padding: .55rem .65rem;
    text-decoration: none;
    transition: .18s ease;
}
.football-header-match-row:hover { background: #f2fbfa; color: #0e7d79; }
.football-header-match-row.is-live .football-header-match-row__status { color: #10b981; }
.football-header-match-row__status {
    color: #0e7d79;
    font-size: .78rem;
    font-weight: 950;
    text-transform: uppercase;
}
.football-header-match-row__team {
    align-items: center;
    display: flex;
    gap: .5rem;
    min-width: 0;
}
.football-header-match-row__team img {
    background: #fff;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 999px;
    height: 28px;
    object-fit: contain;
    padding: 2px;
    width: 28px;
}
.football-header-match-row__team strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.football-header-match-row b {
    color: #07142a;
    font-size: 1rem;
    font-weight: 950;
    min-width: 42px;
    text-align: center;
}
.football-header-match-row--empty {
    grid-template-columns: 28px 1fr;
    color: #64748b;
    background: #f8fafc;
}
.football-header-panel__side,
.football-header-panel__cta {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 22px;
    padding: 1rem;
}
.football-header-panel__side-head {
    align-items: center;
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .75rem;
}
.football-header-panel__side-head strong { color: #0b1632; font-weight: 950; }
.football-header-panel__side-head a { color: #0e7d79; font-size: .85rem; font-weight: 900; text-decoration: none; }
.football-header-toplist,
.football-header-tablemini {
    display: grid;
    gap: .5rem;
}
.football-header-toplist a,
.football-header-tablemini a {
    align-items: center;
    color: #0b1632;
    display: grid;
    gap: .55rem;
    grid-template-columns: 22px 36px minmax(0,1fr) auto;
    min-height: 45px;
    text-decoration: none;
}
.football-header-toplist span,
.football-header-tablemini span { color: #64748b; font-weight: 900; text-align: center; }
.football-header-toplist img,
.football-header-toplist em,
.football-header-tablemini em {
    align-items: center;
    background: #eef9f8;
    border-radius: 999px;
    display: inline-flex;
    font-style: normal;
    font-weight: 950;
    height: 34px;
    justify-content: center;
    object-fit: cover;
    width: 34px;
}
.football-header-toplist strong,
.football-header-tablemini strong {
    display: grid;
    font-size: .9rem;
    line-height: 1.15;
    min-width: 0;
}
.football-header-toplist small { color: #64748b; font-size: .78rem; font-weight: 700; }
.football-header-toplist b,
.football-header-tablemini b {
    background: #def7f4;
    border-radius: 999px;
    color: #0e7d79;
    font-weight: 950;
    min-width: 38px;
    padding: .35rem .55rem;
    text-align: center;
}
.football-header-tablemini a { grid-template-columns: 22px 44px minmax(0,1fr) auto; }
.football-header-tablemini em {
    border-radius: 12px;
    color: #0e7d79;
    font-size: .75rem;
    letter-spacing: .04em;
    width: 44px;
}
.football-header-panel__cta {
    align-content: center;
    background: rgba(14,125,121,.02);
    display: grid;
    gap: 1rem;
    text-decoration: none;
}
.football-header-panel__cta > i {
    align-items: center;
    background: rgba(14,125,121,.10);
    border-radius: 16px;
    color: #0e7d79;
    display: inline-flex;
    height: 52px;
    justify-content: center;
    width: 52px;
}
.football-header-panel__cta span { display: grid; gap: .4rem; }
.football-header-panel__cta strong { color: #0b1632; font-size: 1.2rem; font-weight: 950; }
.football-header-panel__cta small { color: #64748b; line-height: 1.45; }
.football-header-panel__cta b {
    align-items: center;
    background: #00788a;
    border-radius: 999px;
    color: #fff;
    display: flex;
    font-weight: 950;
    justify-content: space-between;
    padding: .75rem 1rem;
}
.football-header-leagues__mobile { display: none; }
html[data-theme="dark"] .football-header-leagues__surface,
html[data-theme="dark"] .football-header-panel {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.16);
}
html[data-theme="dark"] .football-header-league__tab,
html[data-theme="dark"] .football-header-league__more,
html[data-theme="dark"] .football-header-panel__lead strong,
html[data-theme="dark"] .football-header-panel__side-head strong,
html[data-theme="dark"] .football-header-match-row,
html[data-theme="dark"] .football-header-match-row b,
html[data-theme="dark"] .football-header-toplist a,
html[data-theme="dark"] .football-header-tablemini a,
html[data-theme="dark"] .football-header-panel__cta strong {
    color: #f8fafc;
}
html[data-theme="dark"] .football-header-match-row:hover,
html[data-theme="dark"] .football-header-match-row--empty,
html[data-theme="dark"] .football-header-panel__side,
html[data-theme="dark"] .football-header-panel__cta {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.16);
}
html[data-theme="dark"] .football-header-panel__lead,
html[data-theme="dark"] .football-header-panel__cta { background: rgba(14, 125, 121, 0.10); }
html[data-theme="dark"] .football-header-panel__lead small,
html[data-theme="dark"] .football-header-toplist small,
html[data-theme="dark"] .football-header-panel__cta small { color: #cbd5e1; }
@media (max-width: 1180px) {
    .football-header-panel { grid-template-columns: 220px minmax(0, 1fr) 260px; }
    .football-header-panel__cta { display: none; }
}
@media (max-width: 991px) {
    .football-header-leagues__surface { border-radius: 24px; padding: .85rem; }
    .football-header-leagues__tabs { display: none; }
    .football-header-leagues__mobile { display: grid; gap: .75rem; }
    .football-header-mobile-panel {
        background: #fff;
        border: 1px solid rgba(15,23,42,.08);
        border-radius: 20px;
        overflow: hidden;
    }
    .football-header-mobile-panel summary {
        align-items: center;
        cursor: pointer;
        display: grid;
        gap: .75rem;
        grid-template-columns: 34px 1fr auto;
        list-style: none;
        padding: .8rem .95rem;
    }
    .football-header-mobile-panel summary::-webkit-details-marker { display: none; }
    .football-header-mobile-panel summary span {
        align-items: center;
        background: #eef9f8;
        border-radius: 999px;
        display: inline-flex;
        height: 34px;
        justify-content: center;
        width: 34px;
    }
    .football-header-mobile-panel summary img { height: 25px; object-fit: contain; width: 25px; }
    .football-header-mobile-panel summary strong { color: #0b1632; font-weight: 950; }
    .football-header-mobile-panel[open] summary i:last-child { transform: rotate(180deg); }
    .football-header-mobile-panel__body { display: grid; gap: .7rem; padding: 0 .95rem .95rem; }
    .football-header-mobile-panel__link,
    .football-header-mobile-panel__more {
        align-items: center;
        background: #eef9f8;
        border-radius: 16px;
        color: #0e7d79;
        display: flex;
        font-weight: 950;
        gap: .6rem;
        justify-content: space-between;
        padding: .8rem .95rem;
        text-decoration: none;
    }
    .football-header-mobile-panel__more { background: #07142a; color: #fff; }
    .football-header-match-row { grid-template-columns: 50px minmax(0, 1fr) auto minmax(0, 1fr); padding: .5rem; }
    .football-header-match-row__team strong { font-size: .86rem; }
    .football-header-toplist a,
    .football-header-tablemini a { grid-template-columns: 20px 34px minmax(0,1fr) auto; }
    html[data-theme="dark"] .football-header-mobile-panel { background:#1c1c1c; border-color: rgba(148,163,184,.16); }
    html[data-theme="dark"] .football-header-mobile-panel summary strong { color: #f8fafc; }
}
@media (max-width: 560px) {
    .football-header-leagues { margin-top: .55rem; }
    .football-header-leagues__surface { padding: .55rem; border-radius: 20px; }
    .football-header-match-row { grid-template-columns: 44px minmax(0,1fr) 46px minmax(0,1fr); gap: .35rem; }
    .football-header-match-row__status { font-size: .68rem; }
    .football-header-match-row__team img { width: 22px; height: 22px; }
    .football-header-match-row__team { gap: .3rem; }
    .football-header-match-row__team strong { font-size: .78rem; }
}
/* Make large tournament standings/brackets fit small screens cleanly */
@media (max-width: 760px) {
    .football-section--knockout-path,
    .football-bracket-panel--fullwidth,
    .football-bracket-panel--knockout {
        max-width: 100%;
        overflow: hidden;
    }
    .football-bracket-panel--knockout { padding: 14px; border-radius: 20px; }
    .football-bracket-panel--knockout .section-heading {
        align-items: flex-start;
        gap: .8rem;
    }
    .football-bracket-panel--knockout .section-heading h2 {
        font-size: 1.05rem;
        line-height: 1.2;
        overflow-wrap: anywhere;
    }
    .football-knockout-bracket--responsive {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        min-height: 0 !important;
        overflow: visible !important;
        padding: 0 !important;
    }
    .football-knockout-bracket--responsive .football-knockout-round {
        display: grid !important;
        gap: 10px !important;
        min-width: 0 !important;
        width: 100% !important;
    }
    .football-knockout-bracket--responsive .football-knockout-round h3 {
        position: static !important;
        background: rgba(14,125,121,.08);
        border: 1px solid rgba(14,125,121,.14);
        border-radius: 12px;
        color: #0e7d79;
        padding: 8px 10px;
    }
    .football-knockout-bracket--responsive .football-bracket-match {
        max-width: 100%;
        min-width: 0;
        width: 100%;
    }
    .football-knockout-bracket--responsive .football-bracket-match::before,
    .football-knockout-bracket--responsive .football-bracket-match::after {
        display: none !important;
    }
    .football-bracket-team em,
    .football-bracket-team strong,
    .football-bracket-team b {
        min-width: 0;
        overflow-wrap: anywhere;
        white-space: normal;
    }
}

/* v172: header league cards/dropdown polish and mobile standings fit */
.football-header-leagues { margin-top: .7rem; position: relative; z-index: 25; }
.football-header-leagues__surface { overflow: visible; }
.football-header-league__tab,
.football-header-league__more { min-width: 145px; }
.football-header-league__dropdown { left: 24px; right: 24px; top: calc(100% - 8px); padding-top: 18px; }
.football-header-panel { grid-template-columns: 240px minmax(0, 1fr) 260px 300px; }
.football-header-panel__matches { grid-template-columns: 1fr; }
.football-header-panel__group { gap: .45rem; }
.football-header-match-row { grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: .55rem .8rem; align-items: center; }
.football-header-match-row__status { grid-column: 1 / -1; white-space: nowrap; text-align: left; letter-spacing: .04em; }
.football-header-match-row__team--home { justify-content: flex-start; }
.football-header-match-row__team--away { justify-content: flex-start; }
.football-header-match-row b { min-width: 54px; text-align: center; }
.football-header-panel__cta { min-height: 100%; }

.football-header-leagues__mobile { display: none; }
.football-header-mobile-tabs { display: flex; gap: .85rem; overflow-x: auto; padding: .2rem .1rem .8rem; scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; }
.football-header-mobile-tabs::-webkit-scrollbar { display: none; }
.football-header-mobile-tab { appearance: none; border: 1px solid rgba(15,23,42,.08); background: #fff; color: #0b1632; border-radius: 20px; display: grid; gap: .55rem; justify-items: center; align-content: center; min-width: 118px; min-height: 112px; padding: .9rem .75rem; text-decoration: none; box-shadow: 0 14px 36px rgba(15,23,42,.08); scroll-snap-align: start; }
.football-header-mobile-tab span { width: 46px; height: 46px; border-radius: 16px; display: inline-flex; align-items: center; justify-content: center; background: #f8fafc; }
.football-header-mobile-tab img { max-width: 34px; max-height: 34px; object-fit: contain; }
.football-header-mobile-tab i { color: #0e7d79; font-size: 1.35rem; }
.football-header-mobile-tab strong { color: #0b1632; font-weight: 950; line-height: 1.1; text-align: center; }
.football-header-mobile-tab.is-active { background: #0e7d79; border-color: rgba(14,125,121,.4); color: #fff; }
.football-header-mobile-tab.is-active span { background: rgba(255,255,255,.14); }
.football-header-mobile-tab.is-active strong,
.football-header-mobile-tab.is-active i { color: #fff; }
.football-header-mobile-panels { display: grid; gap: 1rem; }
.football-header-mobile-panel[hidden] { display: none !important; }
.football-header-mobile-panel { display: grid; gap: 1rem; }
.football-header-mobile-panel__scoreboard { border: 1px solid rgba(14,125,121,.16); border-radius: 24px; background: rgba(255,255,255,.96); padding: 1rem; box-shadow: 0 18px 42px rgba(15,23,42,.07); }
.football-header-mobile-panel__head { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-bottom: .95rem; }
.football-header-mobile-panel__head > span { border-radius: 999px; background: #dffcf6; color: #0e7d79; padding: .38rem .7rem; font-weight: 950; text-transform: uppercase; letter-spacing: .04em; }
.football-header-mobile-panel__head > span.is-live { background: #10b981; color: #fff; }
.football-header-mobile-panel__head strong { color: #0b1632; font-weight: 950; font-size: 1.1rem; }
.football-header-mobile-panel__head a { color: #0e7d79; text-decoration: none; font-weight: 950; white-space: nowrap; }
.football-header-mobile-match-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .85rem; }
.football-header-mobile-match-grid .football-header-match-row { display: grid; grid-template-columns: minmax(0,1fr) auto; min-height: 138px; padding: .85rem; border-radius: 18px; align-content: center; background: #fff; box-shadow: 0 12px 32px rgba(15,23,42,.06); }
.football-header-mobile-match-grid .football-header-match-row__status { grid-column: 1 / -1; color: #10b981; font-weight: 950; text-align: left; }
.football-header-mobile-match-grid .football-header-match-row__team { grid-column: 1; display: flex; gap: .45rem; }
.football-header-mobile-match-grid .football-header-match-row__team--away { margin-top: .45rem; }
.football-header-mobile-match-grid .football-header-match-row__team img { width: 30px; height: 30px; }
.football-header-mobile-match-grid .football-header-match-row__team strong { font-size: .01px; line-height: 0; color: transparent; }
.football-header-mobile-match-grid .football-header-match-row__team strong::after { content: attr(data-initials); color: #0b1632; font-size: .95rem; line-height: 1; font-weight: 950; }
.football-header-mobile-match-grid .football-header-match-row b { grid-column: 2; grid-row: 2 / span 2; align-self: center; min-width: 34px; color: #0b1632; font-size: 1.2rem; }
.football-header-mobile-panel__below { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1rem; }
.football-header-mobile-panel__below .football-header-panel__side,
.football-header-mobile-panel__below .football-header-panel__cta { display: grid; min-height: 210px; border-radius: 24px; }

@media (max-width: 991px) {
    .football-header-leagues__surface { border-radius: 24px; padding: .9rem; }
    .football-header-leagues__tabs { display: none !important; }
    .football-header-leagues__mobile { display: grid; gap: 1rem; }
}
@media (max-width: 640px) {
    .football-header-leagues { margin-top: .55rem; }
    .football-header-leagues__surface { padding: .65rem; border-radius: 20px; }
    .football-header-mobile-tab { min-width: 100px; min-height: 100px; border-radius: 18px; }
    .football-header-mobile-tab span { width: 40px; height: 40px; }
    .football-header-mobile-tab img { max-width: 30px; max-height: 30px; }
    .football-header-mobile-tab strong { font-size: .88rem; }
    .football-header-mobile-panel__scoreboard { padding: .8rem; border-radius: 22px; }
    .football-header-mobile-panel__head { align-items: flex-start; flex-wrap: wrap; }
    .football-header-mobile-panel__head strong { order: 2; width: 100%; }
    .football-header-mobile-match-grid { grid-template-columns: 1fr 1fr; gap: .65rem; }
    .football-header-mobile-match-grid .football-header-match-row { min-height: 126px; padding: .7rem; }
    .football-header-mobile-panel__below { grid-template-columns: 1fr; }
    .football-header-mobile-panel__below .football-header-panel__side,
    .football-header-mobile-panel__below .football-header-panel__cta { min-height: 0; }
}
@media (max-width: 420px) {
    .football-header-mobile-match-grid { grid-template-columns: 1fr; }
    .football-header-mobile-match-grid .football-header-match-row { min-height: 108px; }
}

/* v172: stronger small-screen fit for long World Cup standings/brackets */
@media (max-width: 760px) {
    .football-standings-layout,
    .football-main-grid,
    .football-content-grid { display: block !important; }
    .football-section--fullwidth,
    .football-section--knockout-path,
    .football-bracket-panel--fullwidth,
    .football-bracket-panel--knockout { width: 100% !important; max-width: 100% !important; overflow: hidden; }
    .football-bracket-panel--knockout { padding: 12px !important; border-radius: 18px !important; }
    .football-knockout-bracket--responsive { display: grid !important; grid-template-columns: 1fr !important; gap: 14px !important; overflow: visible !important; min-width: 0 !important; }
    .football-knockout-bracket--responsive .football-knockout-round { width: 100% !important; min-width: 0 !important; }
    .football-knockout-bracket--responsive .football-bracket-match { width: 100% !important; max-width: 100% !important; }
    .football-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

html[data-theme="dark"] .football-header-mobile-tab { background:#1c1c1c; border-color: rgba(148,163,184,.18); }
html[data-theme="dark"] .football-header-mobile-tab strong { color: #f8fafc; }
html[data-theme="dark"] .football-header-mobile-panel__scoreboard { background:#1c1c1c; border-color: rgba(141,226,215,.18); }
html[data-theme="dark"] .football-header-mobile-panel__head strong,
html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row__team strong::after,
html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row b { color: #f8fafc; }
html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row { background:#1c1c1c; border-color: rgba(148,163,184,.16); }

/* v173: football header mobile click-only panels + desktop carousel dropdown */
.football-header-league__tab,
.football-header-league__more {
    border-color: rgba(14, 125, 121, 0.10);
    background: #f8fbfb;
    color: #0b1632;
}
.football-header-league__tab:hover,
.football-header-league:focus-within .football-header-league__tab,
.football-header-league:first-child .football-header-league__tab,
.football-header-mobile-tab.is-active {
    background: #16a39e;
    color: #ffffff;
    box-shadow: 0 18px 40px rgba(14, 125, 121, 0.22);
}
.football-header-league__more:hover,
.football-header-panel__lead a,
.football-header-panel__group-title a,
.football-header-panel__side-head a {
    color: #087b78;
}
.football-header-panel__lead a,
.football-header-panel__group-title a {
    align-items: center;
    background: rgba(14, 125, 121, 0.08);
    border: 1px solid rgba(14, 125, 121, 0.12);
    border-radius: 999px;
    display: inline-flex;
    gap: 0.35rem;
    padding: 0.42rem 0.72rem;
    text-decoration: none;
}
.football-header-panel__group-title {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}
.football-header-panel__group-title a {
    flex: 0 0 auto;
    font-size: 0.72rem;
    font-weight: 950;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
.football-header-panel__group-title:after {
    display: none;
}
@media (min-width: 992px) {
    .football-header-panel__matches,
    .football-header-panel__group {
        min-width: 0;
        overflow: hidden;
    }
    .football-header-panel__matches {
        gap: 0.8rem;
    }
    .football-header-panel__match-slider {
        display: flex;
        gap: 0.75rem;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        padding: 0.08rem 0.08rem 0.5rem;
        scroll-padding-left: 0.08rem;
        scroll-snap-type: x mandatory;
        scrollbar-color: rgba(14, 125, 121, 0.45) rgba(14, 125, 121, 0.08);
        scrollbar-width: thin;
        -webkit-overflow-scrolling: touch;
    }
    .football-header-panel__match-slider::-webkit-scrollbar {
        height: 7px;
    }
    .football-header-panel__match-slider::-webkit-scrollbar-track {
        background: rgba(14, 125, 121, 0.08);
        border-radius: 999px;
    }
    .football-header-panel__match-slider::-webkit-scrollbar-thumb {
        background: rgba(14, 125, 121, 0.45);
        border-radius: 999px;
    }
    .football-header-panel__match-slider .football-header-match-row {
        background: rgba(255, 255, 255, 0.92);
        border: 1px solid rgba(15, 23, 42, 0.08);
        border-radius: 18px;
        box-shadow: 0 14px 32px rgba(15, 23, 42, 0.06);
        display: grid;
        flex: 0 0 min(100%, 450px);
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        gap: 0.55rem 0.8rem;
        min-height: 82px;
        padding: 0.72rem 0.8rem;
        scroll-snap-align: start;
    }
    .football-header-panel__match-slider .football-header-match-row__status {
        color: #087b78;
        display: block;
        font-size: 0.74rem;
        font-weight: 950;
        grid-column: 1 / -1;
        letter-spacing: 0.045em;
        line-height: 1.1;
        overflow: hidden;
        text-align: left;
        text-overflow: ellipsis;
        text-transform: uppercase;
        white-space: nowrap;
        writing-mode: horizontal-tb !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team {
        min-width: 0;
    }
    .football-header-panel__match-slider .football-header-match-row__team--home,
    .football-header-panel__match-slider .football-header-match-row__team--away {
        justify-content: flex-start;
    }
    .football-header-panel__match-slider .football-header-match-row__team strong {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .football-header-panel__match-slider .football-header-match-row b {
        align-self: center;
        background: rgba(8, 123, 120, 0.08);
        border-radius: 999px;
        color: #0b1632;
        font-weight: 950;
        min-width: 54px;
        padding: 0.28rem 0.45rem;
        text-align: center;
    }
    .football-header-panel__match-slider .football-header-match-row--view-more {
        align-content: center;
        color: #087b78;
        flex-basis: 190px;
        gap: 0.45rem;
        grid-template-columns: 1fr !important;
        justify-items: center;
        text-align: center;
    }
    .football-header-panel__match-slider .football-header-match-row--view-more span {
        font-weight: 950;
    }
}
.football-header-mobile-tab {
    border-color: rgba(14, 125, 121, 0.10);
}
.football-header-mobile-tab:hover,
.football-header-mobile-tab:focus-visible {
    border-color: rgba(14, 125, 121, 0.26);
    box-shadow: 0 16px 34px rgba(14, 125, 121, 0.13);
    outline: none;
}
.football-header-mobile-panel__head > span {
    background: rgba(14, 125, 121, 0.10);
    color: #087b78;
}
.football-header-mobile-panel__head > span.is-live {
    background: #10b981;
    color: #fff;
}
.football-header-mobile-panel__head a,
.football-header-panel__cta b {
    background: #0e7d79;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    gap: 0.45rem;
    padding: 0.5rem 0.78rem;
    text-decoration: none;
}
.football-header-mobile-panel[hidden] {
    display: none !important;
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, 0.16);
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row b {
    background: rgba(141, 226, 215, 0.12);
    color: #f8fafc;
}
html[data-theme="dark"] .football-header-panel__group-title a,
html[data-theme="dark"] .football-header-panel__lead a {
    background: rgba(141, 226, 215, 0.10);
    border-color: rgba(141, 226, 215, 0.16);
    color: #8de2d7;
}
@media (max-width: 991px) {
    .football-header-mobile-panels {
        min-height: 0;
    }
    .football-header-mobile-panel {
        animation: kisureHeaderPanelIn 0.18s ease both;
    }
}
@media (max-width: 640px) {
    .football-header-mobile-tabs {
        gap: 0.7rem;
        padding-bottom: 0.65rem;
    }
    .football-header-mobile-tab {
        min-height: 104px;
    }
    .football-header-mobile-panel__head a {
        font-size: 0.78rem;
        padding: 0.42rem 0.62rem;
    }
}
@keyframes kisureHeaderPanelIn {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* v174 header league panel fixes: dots, one-card paging, full mobile team names */
@media (min-width: 992px) {
    .football-header-panel__match-slider {
        scrollbar-width: none !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        scroll-behavior: smooth;
    }
    .football-header-panel__match-slider::-webkit-scrollbar { display: none !important; }
    .football-header-panel__match-slider .football-header-match-row {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        min-height: 76px;
    }
    .football-header-panel__match-slider .football-header-match-row--view-more {
        flex: 0 0 100% !important;
        min-height: 76px;
    }
    .football-header-panel__pager {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: .55rem;
        padding-top: .2rem;
    }
    .football-header-panel__pager span {
        width: 9px;
        height: 9px;
        border-radius: 999px;
        background: rgba(14, 125, 121, .18);
        display: block;
    }
    .football-header-panel__pager span.is-active {
        background: #10b981;
        box-shadow: 0 0 0 4px rgba(16,185,129,.12);
    }
}
.football-header-panel__side:has(.football-header-toplist) .football-header-panel__side-head strong::after {
    content: "";
}
.football-header-toplist a {
    min-height: 54px;
}
.football-header-toplist img,
.football-header-toplist em {
    width: 42px;
    height: 42px;
}
.football-header-toplist strong small {
    display: block;
    margin-top: .15rem;
}
@media (max-width: 991px) {
    .football-header-mobile-match-grid .football-header-match-row {
        grid-template-columns: minmax(0, 1fr) auto !important;
        min-height: 132px;
        align-content: center;
    }
    .football-header-mobile-match-grid .football-header-match-row__status {
        grid-column: 1 / -1;
        white-space: normal;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong {
        color: #0b1632 !important;
        display: -webkit-box;
        font-size: .86rem !important;
        font-weight: 950;
        line-height: 1.15 !important;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal !important;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong::after {
        content: none !important;
    }
    .football-header-mobile-match-grid .football-header-match-row b {
        background: rgba(14,125,121,.08);
        border-radius: 999px;
        grid-column: 2;
        grid-row: 2 / span 2;
        min-width: 42px;
        padding: .28rem .42rem;
    }
}
@media (max-width: 420px) {
    .football-header-mobile-match-grid .football-header-match-row {
        min-height: 106px;
        padding: .72rem;
    }
    .football-header-mobile-match-grid .football-header-match-row__team img {
        width: 24px;
        height: 24px;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong {
        font-size: .82rem !important;
    }
}
html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row__team strong {
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-panel__pager span { background: rgba(141,226,215,.18); }
html[data-theme="dark"] .football-header-panel__pager span.is-active { background: #8de2d7; }

/* v175 header league panel refinements: no heading CTA, clickable pager, logo-only mobile tabs, full team names */
.football-header-panel__group-title {
    justify-content: flex-start !important;
}
.football-header-panel__group-title a {
    display: none !important;
}
.football-header-panel__pager button,
.football-header-panel__pager span {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: rgba(14, 125, 121, .18);
    display: block;
}
.football-header-panel__pager button {
    appearance: none;
    border: 0;
    cursor: pointer;
    padding: 0;
    transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.football-header-panel__pager button:hover,
.football-header-panel__pager button:focus-visible {
    background: rgba(14, 125, 121, .55);
    outline: none;
    transform: scale(1.15);
}
.football-header-panel__pager button.is-active,
.football-header-panel__pager span.is-active {
    background: #10b981;
    box-shadow: 0 0 0 4px rgba(16,185,129,.12);
}
@media (min-width: 992px) {
    .football-header-panel__match-slider .football-header-match-row__team strong {
        display: -webkit-box !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        white-space: normal !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-height: 1.15;
        max-width: 100%;
        word-break: normal;
    }
    .football-header-panel__match-slider .football-header-match-row__team {
        align-items: center;
        min-width: 0;
    }
    .football-header-panel__match-slider .football-header-match-row {
        grid-template-columns: minmax(160px, 1fr) auto minmax(160px, 1fr) !important;
    }
}
@media (max-width: 991px) {
    .football-header-mobile-tab {
        min-width: 74px !important;
        min-height: 76px !important;
        padding: .68rem .55rem !important;
        border-radius: 18px !important;
    }
    .football-header-mobile-tab strong {
        display: none !important;
    }
    .football-header-mobile-tab span {
        width: 46px !important;
        height: 46px !important;
        border-radius: 15px !important;
        margin: 0 auto;
    }
    .football-header-mobile-tab img {
        max-width: 36px !important;
        max-height: 36px !important;
    }
    .football-header-mobile-tab i {
        font-size: 1.35rem;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong {
        display: -webkit-box !important;
        color: #0b1632 !important;
        font-size: .86rem !important;
        font-weight: 950 !important;
        line-height: 1.15 !important;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal !important;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong::after {
        content: none !important;
    }
}
@media (max-width: 420px) {
    .football-header-mobile-tab {
        min-width: 66px !important;
        min-height: 70px !important;
        padding: .55rem .45rem !important;
    }
    .football-header-mobile-tab span {
        width: 42px !important;
        height: 42px !important;
    }
    .football-header-mobile-tab img {
        max-width: 32px !important;
        max-height: 32px !important;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong {
        font-size: .82rem !important;
    }
}
html[data-theme="dark"] .football-header-panel__pager button,
html[data-theme="dark"] .football-header-panel__pager span { background: rgba(141,226,215,.18); }
html[data-theme="dark"] .football-header-panel__pager button.is-active,
html[data-theme="dark"] .football-header-panel__pager span.is-active { background: #8de2d7; }
html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row__team strong { color: #f8fafc !important; }

/* v176: header league strip logo-only desktop, lighter hover, balanced dropdown cards */
@media (min-width: 992px) {
    .football-header-leagues__surface {
        padding: 0.9rem 1.2rem !important;
    }
    .football-header-leagues__tabs {
        display: flex !important;
        gap: 0.7rem !important;
        justify-content: space-between !important;
        align-items: center !important;
        overflow: visible !important;
    }
    .football-header-league {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        max-width: 170px;
    }
    .football-header-league__tab {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 60px !important;
        justify-content: center !important;
        padding: 0.68rem 0.85rem !important;
        background: #f7fbfb !important;
        border: 1px solid rgba(15, 23, 42, 0.06) !important;
        box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05) !important;
        color: #0b1632 !important;
    }
    .football-header-league__tab strong {
        display: none !important;
    }
    .football-header-league__logo {
        width: 46px !important;
        height: 46px !important;
        border-radius: 18px !important;
        background: rgba(14, 125, 121, 0.08) !important;
        transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
    }
    .football-header-league__logo img {
        width: 34px !important;
        height: 34px !important;
        object-fit: contain !important;
    }
    .football-header-league__logo i {
        color: #087b78 !important;
        font-size: 1.28rem;
    }
    .football-header-league__tab:hover,
    .football-header-league:focus-within .football-header-league__tab,
    .football-header-league:first-child .football-header-league__tab {
        background: rgba(255, 255, 255, 0.96) !important;
        color: #0b1632 !important;
        box-shadow: 0 16px 34px rgba(14, 125, 121, 0.13) !important;
        border-color: rgba(14, 125, 121, 0.22) !important;
    }
    .football-header-league__tab:hover .football-header-league__logo,
    .football-header-league:focus-within .football-header-league__logo,
    .football-header-league:first-child .football-header-league__logo {
        background: rgba(14, 125, 121, 0.14) !important;
        transform: translateY(-1px);
    }
    .football-header-league__tab:hover .football-header-league__logo i,
    .football-header-league:focus-within .football-header-league__logo i,
    .football-header-league:first-child .football-header-league__logo i {
        color: #087b78 !important;
    }
    .football-header-league__more {
        flex: 1 1 0 !important;
        max-width: 170px;
        margin-left: 0 !important;
        justify-content: center !important;
        min-height: 60px !important;
        background: #f8fbfb !important;
        border: 1px solid rgba(15, 23, 42, 0.06) !important;
        box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05) !important;
        color: #0b1632 !important;
    }
    .football-header-league__more:hover {
        background: rgba(255, 255, 255, 0.96) !important;
        color: #087b78 !important;
        border-color: rgba(14, 125, 121, 0.22) !important;
    }
    .football-header-league__dropdown {
        left: 1.4rem !important;
        right: 1.4rem !important;
        top: calc(100% - 0.2rem) !important;
    }
    .football-header-panel {
        grid-template-columns: 245px minmax(420px, 1fr) 330px 300px !important;
        align-items: stretch !important;
        gap: 1rem !important;
        padding: 1rem !important;
    }
    .football-header-panel__lead {
        min-width: 0;
        padding: 1.1rem !important;
    }
    .football-header-panel__lead strong {
        font-size: 1.05rem !important;
        line-height: 1.25;
    }
    .football-header-panel__matches {
        min-width: 0 !important;
        overflow: hidden !important;
    }
    .football-header-panel__match-slider[data-kisure-paged="true"] {
        display: block !important;
        overflow: visible !important;
        padding: 0 !important;
    }
    .football-header-panel__match-slider[data-kisure-paged="true"] .football-header-match-row {
        display: none !important;
    }
    .football-header-panel__match-slider[data-kisure-paged="true"] .football-header-match-row.is-active {
        display: grid !important;
    }
    .football-header-panel__match-slider .football-header-match-row {
        grid-template-columns: minmax(185px, 1fr) 76px minmax(185px, 1fr) !important;
        width: 100% !important;
        min-height: 88px !important;
        padding: 0.82rem 0.95rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row__status {
        grid-column: 1 / -1 !important;
        color: #087b78 !important;
        font-size: 0.78rem !important;
        letter-spacing: 0.05em !important;
        white-space: nowrap !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team {
        gap: 0.62rem !important;
        min-width: 0 !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team img {
        width: 32px !important;
        height: 32px !important;
        flex: 0 0 32px !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team strong {
        display: block !important;
        font-size: 0.96rem !important;
        line-height: 1.18 !important;
        max-width: none !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        -webkit-line-clamp: unset !important;
    }
    .football-header-panel__match-slider .football-header-match-row b {
        align-self: center !important;
        justify-self: center !important;
        min-width: 62px !important;
        padding: 0.42rem 0.55rem !important;
        font-size: 1rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row--view-more {
        min-height: 88px !important;
        justify-content: center !important;
        align-content: center !important;
        text-align: center !important;
    }
    .football-header-panel__pager {
        display: flex !important;
        justify-content: center !important;
        gap: 0.55rem !important;
        padding-top: 0.35rem !important;
    }
    .football-header-panel__pager button {
        width: 10px !important;
        height: 10px !important;
        position: relative !important;
        z-index: 3 !important;
    }
    .football-header-panel__pager button.is-active {
        background: #10b981 !important;
        box-shadow: 0 0 0 4px rgba(16, 185, 129, .12) !important;
    }
}
@media (min-width: 992px) and (max-width: 1380px) {
    .football-header-panel {
        grid-template-columns: 220px minmax(390px, 1fr) 300px !important;
    }
    .football-header-panel__cta {
        display: none !important;
    }
    .football-header-panel__match-slider .football-header-match-row {
        grid-template-columns: minmax(160px, 1fr) 68px minmax(160px, 1fr) !important;
    }
}
@media (max-width: 991px) {
    .football-header-mobile-tabs {
        justify-content: space-between !important;
        gap: 0.55rem !important;
    }
    .football-header-mobile-tab {
        flex: 1 1 0 !important;
        min-width: 58px !important;
        max-width: 82px !important;
        min-height: 66px !important;
        padding: .5rem .35rem !important;
        background: #f8fbfb !important;
    }
    .football-header-mobile-tab span {
        width: 42px !important;
        height: 42px !important;
        border-radius: 15px !important;
    }
    .football-header-mobile-tab img {
        max-width: 32px !important;
        max-height: 32px !important;
    }
    .football-header-mobile-tab.is-active,
    .football-header-mobile-tab:hover,
    .football-header-mobile-tab:focus-visible {
        background: rgba(255,255,255,.96) !important;
        border-color: rgba(14, 125, 121, .22) !important;
        box-shadow: 0 12px 28px rgba(14, 125, 121, .12) !important;
    }
    .football-header-mobile-tab.is-active span {
        background: rgba(14, 125, 121, .12) !important;
    }
    .football-header-mobile-tab.is-active i,
    .football-header-mobile-tab:hover i,
    .football-header-mobile-tab:focus-visible i {
        color: #087b78 !important;
    }
    .football-header-mobile-match-grid .football-header-match-row__team strong {
        color: #0b1632 !important;
        display: block !important;
        font-size: .86rem !important;
        line-height: 1.16 !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-break: normal !important;
        -webkit-line-clamp: unset !important;
    }
}
@media (max-width: 520px) {
    .football-header-mobile-tab {
        min-width: 50px !important;
        min-height: 60px !important;
        padding: .45rem .28rem !important;
    }
    .football-header-mobile-tab span {
        width: 38px !important;
        height: 38px !important;
    }
    .football-header-mobile-tab img {
        max-width: 29px !important;
        max-height: 29px !important;
    }
    .football-header-mobile-panel__scoreboard {
        padding: .75rem !important;
    }
    .football-header-mobile-match-grid .football-header-match-row {
        min-height: 112px !important;
        padding: .72rem !important;
    }
}
html[data-theme="dark"] .football-header-league__tab,
html[data-theme="dark"] .football-header-league__more,
html[data-theme="dark"] .football-header-mobile-tab {
    background:#1c1c1c!important;
    border-color: rgba(148,163,184,.16) !important;
}
html[data-theme="dark"] .football-header-league__tab:hover,
html[data-theme="dark"] .football-header-league:focus-within .football-header-league__tab,
html[data-theme="dark"] .football-header-league:first-child .football-header-league__tab,
html[data-theme="dark"] .football-header-league__more:hover,
html[data-theme="dark"] .football-header-mobile-tab.is-active,
html[data-theme="dark"] .football-header-mobile-tab:hover,
html[data-theme="dark"] .football-header-mobile-tab:focus-visible {
    background: rgba(14,125,121,.18) !important;
    border-color: rgba(141,226,215,.24) !important;
    color: #f8fafc !important;
}

/* v177: compact header/countdown and balanced league dropdown */
.site-header {
    padding: .55rem 0 0 !important;
}
.site-header__inner {
    gap: .55rem !important;
}
.site-header__bar {
    border-radius: 26px !important;
    min-height: 76px !important;
    padding: .68rem 1rem !important;
}
.site-header__brand img {
    max-height: 2.75rem !important;
    max-width: min(11.8rem, 30vw) !important;
}
.site-header__nav {
    gap: .18rem !important;
}
.site-header__nav a,
.site-header__nav button {
    font-size: .86rem !important;
    min-height: 2.35rem !important;
    padding: 0 .78rem !important;
}
.header-menu-item {
    padding-block: .12rem .22rem !important;
}
.site-icon-button {
    height: 2.55rem !important;
    width: 2.55rem !important;
}
.site-icon-button--label {
    min-width: 8.6rem !important;
    padding-inline: .82rem !important;
}
.site-header__utility {
    gap: .45rem !important;
}
.event-countdown-shell {
    margin-bottom: .45rem !important;
    margin-top: .5rem !important;
    max-height: 520px;
    opacity: 1;
    transition: max-height .2s ease, margin .2s ease, opacity .16s ease;
}
.event-countdown-shell.is-expired {
    margin: 0 !important;
    max-height: 0 !important;
    opacity: 0;
    overflow: hidden !important;
    pointer-events: none;
}
.event-countdown.event-countdown--compact {
    border-radius: 24px !important;
    box-shadow: 0 14px 34px rgba(10, 28, 58, .13) !important;
    overflow: hidden !important;
}
.event-countdown__summary {
    align-items: center !important;
    display: grid !important;
    gap: .75rem !important;
    grid-template-columns: minmax(260px, .7fr) minmax(360px, 1fr) 44px !important;
    min-height: 68px !important;
    padding: .62rem .9rem !important;
}
.event-countdown__compact-brand {
    gap: .7rem !important;
    min-width: 0 !important;
}
.event-countdown__compact-copy {
    min-width: 0 !important;
}
.event-countdown--compact .event-countdown__logo {
    border-radius: 15px !important;
    height: 42px !important;
    padding: 7px !important;
    width: 42px !important;
}
.event-countdown__summary .event-countdown__kicker {
    font-size: .68rem !important;
    letter-spacing: .12em !important;
    margin: 0 0 .18rem !important;
    padding: 0 !important;
}
.event-countdown__summary h3 {
    font-size: clamp(1rem, 1.35vw, 1.28rem) !important;
    line-height: 1.18 !important;
    margin: 0 !important;
}
.event-countdown--compact .event-countdown__timer {
    display: grid !important;
    gap: .45rem !important;
    grid-template-columns: repeat(4, minmax(74px, 1fr)) !important;
    width: 100% !important;
}
.event-countdown--compact .event-countdown__unit {
    border-radius: 14px !important;
    min-height: 44px !important;
    min-width: 0 !important;
    padding: .42rem .55rem !important;
}
.event-countdown--compact .event-countdown__unit strong {
    font-size: 1.08rem !important;
}
.event-countdown--compact .event-countdown__unit span {
    font-size: .62rem !important;
    letter-spacing: .07em !important;
    margin-top: .2rem !important;
}
.event-countdown__toggle {
    height: 44px !important;
    width: 44px !important;
}
.event-countdown__details {
    padding: .72rem .9rem .85rem !important;
}
.event-countdown__details .event-countdown__headline-row {
    gap: .75rem !important;
}
.site-header + .event-countdown-shell + .football-header-leagues,
.site-header + .football-header-leagues {
    margin-top: .5rem !important;
}
.football-header-leagues {
    margin-bottom: .65rem !important;
    margin-top: .5rem !important;
}
.football-header-leagues__surface {
    border-radius: 24px !important;
    padding: .55rem .8rem !important;
}
@media (min-width: 992px) {
    .football-header-leagues__tabs {
        gap: .55rem !important;
        min-height: 54px !important;
    }
    .football-header-league,
    .football-header-league__more {
        max-width: 158px !important;
    }
    .football-header-league__tab,
    .football-header-league__more {
        border-radius: 16px !important;
        min-height: 52px !important;
        padding: .45rem .72rem !important;
    }
    .football-header-league__logo {
        border-radius: 15px !important;
        height: 38px !important;
        width: 38px !important;
    }
    .football-header-league__logo img {
        height: 29px !important;
        width: 29px !important;
    }
    .football-header-league__logo i {
        font-size: 1.08rem !important;
    }
    .football-header-league__dropdown {
        left: .9rem !important;
        padding-top: .45rem !important;
        right: .9rem !important;
        top: calc(100% + .2rem) !important;
    }
    .football-header-panel {
        align-items: stretch !important;
        border-radius: 22px !important;
        gap: .8rem !important;
        grid-template-columns: minmax(190px, .72fr) minmax(0, 2fr) minmax(250px, .9fr) !important;
        padding: .82rem !important;
    }
    .football-header-panel__cta {
        display: none !important;
    }
    .football-header-panel__lead {
        align-content: center !important;
        border-radius: 20px !important;
        gap: .58rem !important;
        min-width: 0 !important;
        padding: .95rem !important;
    }
    .football-header-panel__lead span {
        font-size: .68rem !important;
        padding: .3rem .58rem !important;
    }
    .football-header-panel__lead strong {
        font-size: .98rem !important;
        line-height: 1.22 !important;
    }
    .football-header-panel__lead small {
        font-size: .82rem !important;
        line-height: 1.35 !important;
    }
    .football-header-panel__lead a {
        justify-content: center !important;
        margin-top: .08rem !important;
        width: 100% !important;
    }
    .football-header-panel__matches {
        display: grid !important;
        gap: .55rem !important;
        grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
        min-width: 0 !important;
        overflow: visible !important;
    }
    .football-header-panel__group {
        align-content: start !important;
        gap: .36rem !important;
        min-width: 0 !important;
    }
    .football-header-panel__group-title {
        font-size: .66rem !important;
        min-height: 16px !important;
    }
    .football-header-panel__match-slider[data-kisure-paged="true"] {
        display: block !important;
        overflow: visible !important;
        padding: 0 !important;
    }
    .football-header-panel__match-slider .football-header-match-row {
        border-radius: 16px !important;
        gap: .4rem .72rem !important;
        grid-template-columns: minmax(135px, 1fr) 62px minmax(135px, 1fr) !important;
        min-height: 72px !important;
        padding: .62rem .78rem !important;
        width: 100% !important;
    }
    .football-header-panel__match-slider .football-header-match-row__status {
        font-size: .68rem !important;
        letter-spacing: .05em !important;
        line-height: 1.05 !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team {
        gap: .5rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team img {
        flex: 0 0 28px !important;
        height: 28px !important;
        width: 28px !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team strong {
        display: -webkit-box !important;
        font-size: .92rem !important;
        line-height: 1.13 !important;
        overflow: hidden !important;
        overflow-wrap: normal !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-break: normal !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2 !important;
    }
    .football-header-panel__match-slider .football-header-match-row b {
        font-size: .96rem !important;
        min-width: 56px !important;
        padding: .34rem .5rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row--view-more {
        min-height: 72px !important;
    }
    .football-header-panel__pager {
        gap: .48rem !important;
        min-height: 14px !important;
        padding-top: .22rem !important;
    }
    .football-header-panel__pager button,
    .football-header-panel__pager span {
        height: 8px !important;
        width: 8px !important;
    }
    .football-header-panel__side {
        align-content: center !important;
        border-radius: 20px !important;
        display: grid !important;
        min-width: 0 !important;
        padding: .9rem !important;
    }
    .football-header-panel__side-head {
        gap: .55rem !important;
        margin-bottom: .55rem !important;
    }
    .football-header-panel__side-head strong {
        font-size: 1rem !important;
    }
    .football-header-panel__side-head a {
        font-size: .8rem !important;
        white-space: nowrap !important;
    }
    .football-header-toplist,
    .football-header-tablemini {
        gap: .42rem !important;
    }
    .football-header-toplist a,
    .football-header-tablemini a {
        gap: .5rem !important;
        grid-template-columns: 20px 38px minmax(0, 1fr) auto !important;
        min-height: 46px !important;
    }
    .football-header-toplist img,
    .football-header-toplist em,
    .football-header-tablemini em {
        height: 38px !important;
        width: 38px !important;
    }
    .football-header-toplist strong,
    .football-header-tablemini strong {
        font-size: .86rem !important;
    }
    .football-header-toplist b,
    .football-header-tablemini b {
        min-width: 34px !important;
        padding: .32rem .5rem !important;
    }
}
@media (min-width: 992px) and (max-width: 1180px) {
    .football-header-panel {
        grid-template-columns: 180px minmax(0, 1fr) 230px !important;
    }
    .football-header-panel__match-slider .football-header-match-row {
        grid-template-columns: minmax(110px, 1fr) 56px minmax(110px, 1fr) !important;
    }
}
@media (max-width: 991px) {
    .site-header {
        padding-top: .42rem !important;
    }
    .site-header__bar {
        border-radius: 22px !important;
        min-height: 64px !important;
        padding: .58rem .72rem !important;
    }
    .site-header__brand img {
        max-height: 2.35rem !important;
        max-width: min(10.2rem, 50vw) !important;
    }
    .site-icon-button {
        height: 2.35rem !important;
        width: 2.35rem !important;
    }
    .event-countdown-shell {
        margin-top: .42rem !important;
    }
    .event-countdown.event-countdown--compact {
        border-radius: 20px !important;
    }
    .event-countdown__summary {
        grid-template-columns: minmax(0, 1fr) 40px !important;
        min-height: 0 !important;
        padding: .65rem !important;
    }
    .event-countdown__compact-brand {
        grid-column: 1;
    }
    .event-countdown--compact .event-countdown__logo {
        height: 38px !important;
        width: 38px !important;
    }
    .event-countdown__summary h3 {
        font-size: 1rem !important;
    }
    .event-countdown--compact .event-countdown__timer {
        grid-column: 1 / -1;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
    .event-countdown--compact .event-countdown__unit {
        min-height: 42px !important;
        padding: .38rem .35rem !important;
    }
    .event-countdown__toggle {
        grid-column: 2;
        grid-row: 1;
        height: 40px !important;
        width: 40px !important;
    }
    .football-header-leagues {
        margin-top: .42rem !important;
    }
    .football-header-leagues__surface {
        border-radius: 20px !important;
        padding: .55rem !important;
    }
    .football-header-mobile-tabs {
        gap: .45rem !important;
        padding-bottom: .52rem !important;
    }
    .football-header-mobile-tab {
        min-height: 58px !important;
    }
    .football-header-mobile-tab span {
        height: 36px !important;
        width: 36px !important;
    }
    .football-header-mobile-tab img {
        max-height: 28px !important;
        max-width: 28px !important;
    }
}
@media (max-width: 520px) {
    .event-countdown--compact .event-countdown__timer {
        gap: .35rem !important;
    }
    .event-countdown--compact .event-countdown__unit strong {
        font-size: .98rem !important;
    }
    .event-countdown--compact .event-countdown__unit span {
        font-size: .56rem !important;
    }
    .football-header-mobile-tab {
        min-height: 54px !important;
        min-width: 46px !important;
        padding: .36rem .22rem !important;
    }
    .football-header-mobile-tab span {
        height: 34px !important;
        width: 34px !important;
    }
    .football-header-mobile-tab img {
        max-height: 26px !important;
        max-width: 26px !important;
    }
}

/* v178: centered fixture cards and forgiving league dropdown hover */
@media (min-width: 992px) {
    .football-header-league.is-open .football-header-league__tab {
        background: rgba(255, 255, 255, 0.96) !important;
        border-color: rgba(14, 125, 121, 0.22) !important;
        box-shadow: 0 16px 34px rgba(14, 125, 121, 0.13) !important;
        color: #0b1632 !important;
    }
    .football-header-league.is-open .football-header-league__logo {
        background: rgba(14, 125, 121, 0.14) !important;
        transform: translateY(-1px);
    }
    .football-header-league.is-open .football-header-league__logo i {
        color: #087b78 !important;
    }
    .football-header-league__dropdown {
        padding-top: 1.2rem !important;
        top: calc(100% - .72rem) !important;
        transition: opacity .16s ease, transform .16s ease !important;
    }
    .football-header-league__dropdown::before {
        content: "";
        height: 1.25rem;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }
    .football-header-league.is-open .football-header-league__dropdown {
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }
    .football-header-panel {
        grid-template-columns: minmax(190px, 230px) minmax(460px, 1fr) minmax(270px, 340px) !important;
    }
    .football-header-panel__matches {
        align-content: center !important;
        justify-items: center !important;
    }
    .football-header-panel__group {
        justify-self: center !important;
        width: min(100%, 680px) !important;
    }
    .football-header-panel__group-title,
    .football-header-panel__match-slider,
    .football-header-panel__pager {
        width: 100% !important;
    }
    .football-header-panel__match-slider .football-header-match-row {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        margin-inline: auto !important;
        max-width: 680px !important;
        min-height: 76px !important;
        padding: .66rem .9rem !important;
        width: 100% !important;
    }
    .football-header-panel__match-slider .football-header-match-row__status {
        justify-self: center !important;
        text-align: center !important;
        width: 100% !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team--home {
        justify-content: flex-end !important;
        text-align: right !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team--away {
        justify-content: flex-start !important;
        text-align: left !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team strong {
        flex: 0 1 auto !important;
        max-width: 15rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row b {
        justify-self: center !important;
        min-width: 58px !important;
    }
    .football-header-panel__match-slider .football-header-match-row--view-more {
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        text-align: center !important;
    }
}
@media (min-width: 992px) and (max-width: 1180px) {
    .football-header-panel {
        grid-template-columns: 180px minmax(360px, 1fr) 230px !important;
    }
    .football-header-panel__group,
    .football-header-panel__match-slider .football-header-match-row {
        max-width: 560px !important;
    }
    .football-header-panel__match-slider .football-header-match-row__team strong {
        max-width: 11rem !important;
    }
}
html[data-theme="dark"] .football-header-league.is-open .football-header-league__tab {
    background: rgba(14,125,121,.18) !important;
    border-color: rgba(141,226,215,.24) !important;
    color: #f8fafc !important;
}

/* v179: opaque dark football header and match rows as name-logo-score-logo-name */
@media (min-width: 992px) {
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
        gap: .5rem 1rem !important;
        max-width: 640px !important;
        padding-inline: 1.15rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) .football-header-match-row__team {
        align-items: center !important;
        gap: .6rem !important;
        min-width: 0 !important;
    }
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) .football-header-match-row__team--home {
        flex-direction: row-reverse !important;
        justify-content: flex-start !important;
        justify-self: end !important;
        text-align: right !important;
    }
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) .football-header-match-row__team--away {
        flex-direction: row !important;
        justify-content: flex-start !important;
        justify-self: start !important;
        text-align: left !important;
    }
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) .football-header-match-row__team strong {
        max-width: 13rem !important;
    }
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) .football-header-match-row__team img {
        background: #fff !important;
        flex: 0 0 34px !important;
        height: 34px !important;
        width: 34px !important;
    }
    .football-header-panel__match-slider .football-header-match-row:not(.football-header-match-row--empty):not(.football-header-match-row--view-more) b {
        min-width: 64px !important;
    }
}
html[data-theme="dark"] .football-header-leagues__surface {
    background:#1c1c1c!important;
    border-color:#303030!important;
    box-shadow:none!important;
    backdrop-filter: none !important;
}
html[data-theme="dark"] .football-header-league__tab,
html[data-theme="dark"] .football-header-league__more,
html[data-theme="dark"] .football-header-mobile-tab {
    background:#1c1c1c!important;
    border-color:#303030!important;
    box-shadow: none !important;
    color: #eaf2ff !important;
}
html[data-theme="dark"] .football-header-league__tab:hover,
html[data-theme="dark"] .football-header-league:focus-within .football-header-league__tab,
html[data-theme="dark"] .football-header-league.is-open .football-header-league__tab,
html[data-theme="dark"] .football-header-league:first-child .football-header-league__tab,
html[data-theme="dark"] .football-header-league__more:hover,
html[data-theme="dark"] .football-header-mobile-tab.is-active,
html[data-theme="dark"] .football-header-mobile-tab:hover,
html[data-theme="dark"] .football-header-mobile-tab:focus-visible {
    background:#242424!important;
    border-color: #1c9d98 !important;
    color: #f8fafc !important;
    box-shadow:none!important;
}
html[data-theme="dark"] .football-header-league__logo,
html[data-theme="dark"] .football-header-mobile-tab span {
    background:#242424!important;
}
html[data-theme="dark"] .football-header-league__tab:hover .football-header-league__logo,
html[data-theme="dark"] .football-header-league:focus-within .football-header-league__logo,
html[data-theme="dark"] .football-header-league.is-open .football-header-league__logo,
html[data-theme="dark"] .football-header-league:first-child .football-header-league__logo,
html[data-theme="dark"] .football-header-mobile-tab.is-active span {
    background:#242424!important;
}
html[data-theme="dark"] .football-header-panel {
    background:#1c1c1c!important;
    border-color:#303030!important;
    box-shadow:none!important;
    backdrop-filter: none !important;
}
html[data-theme="dark"] .football-header-panel__lead {
    background:#242424!important;
    border: 1px solid #1d3448 !important;
}
html[data-theme="dark"] .football-header-panel__lead span {
    background: #0f766e !important;
    color: #ecfeff !important;
}
html[data-theme="dark"] .football-header-panel__lead strong,
html[data-theme="dark"] .football-header-panel__side-head strong,
html[data-theme="dark"] .football-header-toplist strong,
html[data-theme="dark"] .football-header-tablemini strong,
html[data-theme="dark"] .football-header-match-row__team strong {
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-panel__lead small,
html[data-theme="dark"] .football-header-toplist small,
html[data-theme="dark"] .football-header-panel__side-head a {
    color: #b7c6da !important;
}
html[data-theme="dark"] .football-header-panel__lead a {
    background:#242424!important;
    border-color: #1f6867 !important;
    color: #b8fff7 !important;
}
html[data-theme="dark"] .football-header-panel__group-title {
    color: #7ddbd2 !important;
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row {
    background:#1c1c1c!important;
    border-color:#303030!important;
    box-shadow: none !important;
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row:hover {
    background:#242424!important;
    border-color:#303030!important;
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row__status {
    color: #7ddbd2 !important;
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row b {
    background: #e8f7f5 !important;
    color: #07142a !important;
}
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row--empty,
html[data-theme="dark"] .football-header-panel__match-slider .football-header-match-row--view-more {
    background:#242424!important;
    color: #b8fff7 !important;
}
html[data-theme="dark"] .football-header-panel__side,
html[data-theme="dark"] .football-header-panel__cta {
    background:#1c1c1c!important;
    border-color:#303030!important;
}
html[data-theme="dark"] .football-header-toplist a,
html[data-theme="dark"] .football-header-tablemini a {
    background: transparent !important;
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-toplist b,
html[data-theme="dark"] .football-header-tablemini b {
    background:#242424!important;
    color: #b8fff7 !important;
}
html[data-theme="dark"] .football-header-panel__pager button,
html[data-theme="dark"] .football-header-panel__pager span {
    background:#242424!important;
}
html[data-theme="dark"] .football-header-panel__pager button.is-active,
html[data-theme="dark"] .football-header-panel__pager span.is-active {
    background: #22c7b8 !important;
    box-shadow:none!important;
}

/* v180: visible league icons in dark mode and light mobile league strip */
html[data-theme="dark"] .football-header-league__logo,
html[data-theme="dark"] .football-header-league__tab:hover .football-header-league__logo,
html[data-theme="dark"] .football-header-league:focus-within .football-header-league__logo,
html[data-theme="dark"] .football-header-league.is-open .football-header-league__logo,
html[data-theme="dark"] .football-header-league:first-child .football-header-league__logo {
    background: #f5f7fb !important;
    border: 1px solid #d8e2ef !important;
    box-shadow:none!important;
}
html[data-theme="dark"] .football-header-league__logo img,
html[data-theme="dark"] .football-header-mobile-tab img {
    filter: none !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}
html[data-theme="dark"] .football-header-league__logo i {
    color: #083344 !important;
}
html[data-theme="dark"] .football-header-league__more i {
    color: #eaf2ff !important;
}
html[data-theme="dark"] .football-header-league__more:hover i {
    color: #b8fff7 !important;
}

/* v183: restore mobile dark mode while keeping league icons readable */
@media (max-width: 991px) {
    html[data-theme="dark"] .football-header-leagues__surface {
        background:#1c1c1c!important;
        border-color:#303030!important;
        box-shadow:none!important;
    }
    html[data-theme="dark"] .football-header-leagues__mobile,
    html[data-theme="dark"] .football-header-mobile-panels,
    html[data-theme="dark"] .football-header-mobile-panel {
        background: transparent !important;
    }
    html[data-theme="dark"] .football-header-mobile-tabs {
        background:#1c1c1c!important;
        border-radius: 16px !important;
    }
    html[data-theme="dark"] .football-header-mobile-tab {
        background:#1c1c1c!important;
        border-color:#303030!important;
        color: #eaf2ff !important;
        box-shadow: none !important;
    }
    html[data-theme="dark"] .football-header-mobile-tab strong {
        color: #eaf2ff !important;
    }
    html[data-theme="dark"] .football-header-mobile-tab.is-active,
    html[data-theme="dark"] .football-header-mobile-tab:hover,
    html[data-theme="dark"] .football-header-mobile-tab:focus-visible {
        background:#242424!important;
        border-color: #1c9d98 !important;
        color: #f8fafc !important;
        box-shadow:none!important;
    }
    html[data-theme="dark"] .football-header-mobile-tab.is-active strong,
    html[data-theme="dark"] .football-header-mobile-tab:hover strong,
    html[data-theme="dark"] .football-header-mobile-tab:focus-visible strong {
        color: #f8fafc !important;
    }
    html[data-theme="dark"] .football-header-mobile-tab span,
    html[data-theme="dark"] .football-header-mobile-tab.is-active span,
    html[data-theme="dark"] .football-header-mobile-tab:hover span,
    html[data-theme="dark"] .football-header-mobile-tab:focus-visible span {
        background: #d9e6f2 !important;
        border: 1px solid #b9c8d8 !important;
        box-shadow:none!important;
    }
    html[data-theme="dark"] .football-header-mobile-tab img {
        filter: none !important;
        mix-blend-mode: normal !important;
        opacity: 1 !important;
    }
    html[data-theme="dark"] .football-header-mobile-tab i {
        color: #083344 !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__scoreboard {
        background:#1c1c1c!important;
        border: 1px solid #26364f !important;
        box-shadow: none !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__head > span {
        background:#242424!important;
        color: #b8fff7 !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__head strong,
    html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row__team strong,
    html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row__team strong::after,
    html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row b,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__side-head strong,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-toplist strong,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__cta strong {
        color: #f8fafc !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__head a,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__side-head a {
        color: #8de2d7 !important;
    }
    html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row {
        background:#1c1c1c!important;
        border: 1px solid #26364f !important;
        box-shadow: none !important;
        color: #f8fafc !important;
    }
    html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row__status {
        color: #7ddbd2 !important;
    }
    html[data-theme="dark"] .football-header-mobile-match-grid .football-header-match-row b {
        background: rgba(141, 226, 215, .12) !important;
        color: #f8fafc !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__side,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__cta {
        background:#1c1c1c!important;
        border-color:#303030!important;
        box-shadow: none !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-toplist a,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-tablemini a {
        color: #f8fafc !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-toplist small,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__cta small {
        color: #b7c6da !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-toplist b,
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-tablemini b {
        background:#242424!important;
        color: #b8fff7 !important;
    }
    html[data-theme="dark"] .football-header-mobile-panel__below .football-header-panel__cta b {
        background: #0e7d79 !important;
        color: #ffffff !important;
    }
}

/* v184: standings preview uses club logos when available */
.football-header-tablemini img {
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 999px;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .08);
    height: 40px;
    object-fit: contain;
    padding: 4px;
    width: 40px;
}
html[data-theme="dark"] .football-header-tablemini img {
    background: #d9e6f2;
    border-color: #b9c8d8;
}

/* v186: expanded mobile countdown must push the league strip down, not overlap it */
@media (max-width: 991px) {
    .event-countdown-shell {
        max-height: none !important;
        overflow: visible !important;
    }
    .event-countdown-shell.is-expired {
        max-height: 0 !important;
        overflow: hidden !important;
    }
    .site-header + .event-countdown-shell + .football-header-leagues {
        clear: both !important;
        margin-top: .9rem !important;
    }
    .event-countdown.event-countdown--compact[open] .event-countdown__details {
        padding-bottom: 1.45rem !important;
    }
}
@media (max-width: 575px) {
    .event-countdown-shell {
        margin-bottom: .85rem !important;
    }
    .event-countdown.event-countdown--compact[open] .event-countdown__details {
        padding-bottom: 1.65rem !important;
    }
}

/* v193: tighten the mobile league strip so it does not leave a wide blank gap */
@media (max-width: 991px) {
    .football-header-leagues {
        margin-bottom: .25rem !important;
    }
    .football-header-leagues__surface {
        padding-bottom: .28rem !important;
    }
    .football-header-mobile-tabs {
        padding-bottom: .08rem !important;
    }
    .football-header-mobile-panels {
        gap: .65rem !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .football-header-mobile-panel[hidden] {
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .football-header-mobile-panel.is-active {
        margin-top: .55rem !important;
    }
}
@media (max-width: 575px) {
    .football-header-leagues {
        margin-bottom: .12rem !important;
    }
    .football-header-leagues__surface {
        padding-bottom: .22rem !important;
    }
    .football-header-mobile-tabs {
        padding-bottom: 0 !important;
    }
}


/* Kisure football polish v194: header IDs, mobile spacing, dark-mode readability and match balance */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.football-header-league__tab--more { gap: .45rem; }
.football-header-league--more { position: relative; flex: 0 0 auto; }
.football-header-league__dropdown--more { min-width: min(680px, calc(100vw - 2rem)); right: 0; left: auto; }
.football-header-more-panel { display: grid; gap: .85rem; padding: .95rem; border-radius: 24px; background: rgba(255,255,255,.98); border: 1px solid rgba(15,23,42,.1); box-shadow: 0 28px 60px rgba(2,6,23,.18); }
.football-header-more-panel__quick { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .65rem; }
.football-header-more-panel__quick a,
.football-header-more-panel__leagues a,
.football-header-more-panel__all { display: flex; align-items: center; gap: .65rem; border: 1px solid rgba(15,23,42,.1); border-radius: 18px; background: #fff; color: #061626; padding: .72rem .78rem; text-decoration: none; min-width: 0; }
.football-header-more-panel__quick a > i { width: 36px; height: 36px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: rgba(14,165,164,.12); color: var(--primary-strong); flex: 0 0 auto; }
.football-header-more-panel__quick strong,
.football-header-more-panel__leagues strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.football-header-more-panel__quick small,
.football-header-more-panel__leagues small { color: #64748b; display: block; font-size: .74rem; margin-top: .1rem; }
.football-header-more-panel__leagues { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
.football-header-more-panel__leagues span { width: 32px; height: 32px; border-radius: 999px; background: #f8fafc; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; border: 1px solid rgba(15,23,42,.08); }
.football-header-more-panel__leagues img { width: 24px; height: 24px; object-fit: contain; }
.football-header-more-panel__all { justify-content: space-between; background: rgba(255,255,255,.96); font-weight: 900; }
html[data-theme="dark"] .football-header-more-panel { background:#1c1c1c; border-color: rgba(148,163,184,.22); box-shadow:none; }
html[data-theme="dark"] .football-header-more-panel__quick a,
html[data-theme="dark"] .football-header-more-panel__leagues a,
html[data-theme="dark"] .football-header-more-panel__all { background:#1c1c1c; border-color: rgba(148,163,184,.22); color: #f8fafc; }
html[data-theme="dark"] .football-header-more-panel__quick small,
html[data-theme="dark"] .football-header-more-panel__leagues small { color: #cbd5e1; }
html[data-theme="dark"] .football-header-more-panel__leagues span { background:#1c1c1c; border-color: rgba(148,163,184,.2); }

@media (max-width: 760px) {
    .football-header-leagues { margin-bottom: .45rem !important; }
    .football-header-leagues__surface { padding: .42rem !important; border-radius: 18px !important; }
    .football-header-leagues__mobile { gap: .38rem !important; }
    .football-header-mobile-tabs { gap: .42rem !important; padding: .2rem !important; }
    .football-header-mobile-panels:empty { display: none !important; }
    .football-header-mobile-panel[hidden] { display: none !important; }
    .football-header-mobile-panel { margin-top: .2rem !important; }
    .football-header-mobile-panel__below { margin-top: .5rem !important; }
}

.football-header-panel__pager button { cursor: pointer; }
.football-header-panel__pager button:hover { transform: translateY(-1px); opacity: .85; }
.football-header-match-row__team strong { min-width: 0; }
@media (max-width: 760px) {
    .football-header-match-row__team strong { font-size: .68rem; line-height: 1.05; white-space: normal; overflow: visible; text-overflow: clip; }
    .football-header-match-row__team strong::before { content: none !important; }
}

.football-competition-search { background: rgba(255,255,255,.74); border: 1px solid rgba(15,23,42,.08); border-radius: 20px; padding: .75rem; }
.football-competition-search input,
.football-competition-search select { background: #fff; color: #071320; border-color: rgba(15,23,42,.16); }
.football-competition-card[hidden] { display: none !important; }
html[data-theme="dark"] .football-competition-search { background:#1c1c1c; border-color: rgba(148,163,184,.22); }
html[data-theme="dark"] .football-competition-search label { color: #7ddbd8; }
html[data-theme="dark"] .football-competition-search input,
html[data-theme="dark"] .football-competition-search select,
html[data-theme="dark"] .football-select-search { background:#1c1c1c; border-color: rgba(148,163,184,.3); color: #f8fafc; }
html[data-theme="dark"] .football-competition-search input::placeholder,
html[data-theme="dark"] .football-select-search::placeholder { color: #94a3b8; }
html[data-theme="dark"] .football-competition-card,
html[data-theme="dark"] .football-competition-card--directory { background:#1c1c1c; border-color: rgba(148,163,184,.18); color: #f8fafc; }
html[data-theme="dark"] .football-competition-card strong,
html[data-theme="dark"] .football-competition-card__text strong { color: #f8fafc; }
html[data-theme="dark"] .football-competition-card small,
html[data-theme="dark"] .football-competition-card em,
html[data-theme="dark"] .football-competition-card__country { color: #cbd5e1; }
html[data-theme="dark"] .football-competition-card__logo { background: #0b1220; border-color: rgba(148,163,184,.2); color: #7ddbd8; }
html[data-theme="dark"] .football-competition-card__actions a { background:#1c1c1c; border-color: rgba(148,163,184,.18); color: #e2e8f0; }

@media (max-width: 720px) {
    .football-club-hero--balanced { grid-template-columns: 1fr !important; text-align: center; justify-items: center; gap: .9rem; padding-top: 1.15rem; }
    .football-club-hero--balanced .football-club-hero__badge { order: -1; width: 96px; height: 96px; margin: 0 auto; justify-self: center; transform: none !important; }
    .football-club-hero--balanced .football-club-hero__badge img { width: 76px; height: 76px; object-fit: contain; }
    .football-club-hero--balanced .football-hero__actions { justify-content: center; width: 100%; }
}

.football-transfer-card { transition: background .2s ease, border-color .2s ease, transform .2s ease; }
html[data-theme="dark"] .football-transfer-card { background:#1c1c1c; border-color: rgba(148,163,184,.18); box-shadow:none; }
html[data-theme="dark"] .football-transfer-card strong { color: #f8fafc; }
html[data-theme="dark"] .football-transfer-card span { color: #cbd5e1; }
html[data-theme="dark"] .football-transfer-card p { color: #e2e8f0; }
html[data-theme="dark"] .football-transfer-card img { background: #fff; }

.football-schedule-competition__head { justify-content: flex-start !important; }
.football-schedule-row { grid-template-columns: minmax(0, 1fr) minmax(96px, 160px) minmax(0, 1fr) !important; }
.football-schedule-row__middle { min-width: 0 !important; max-width: 170px; justify-self: center; }
.football-schedule-row__middle small { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 640px) {
    .football-schedule-row { grid-template-columns: minmax(0, 1fr) minmax(58px, 72px) !important; }
    .football-schedule-row__middle { max-width: 72px; }
}

.article-match-scoreboard__support { grid-template-columns: minmax(0, 1fr) minmax(74px, auto) minmax(0, 1fr) !important; }
.article-match-scoreboard__support-col { min-width: 0; display: flex; }
.article-match-scoreboard__support-col--home { justify-content: flex-end !important; text-align: right !important; }
.article-match-scoreboard__support-col--away { justify-content: flex-start !important; text-align: left !important; }
.article-match-scoreboard__support-col--home strong { margin-left: auto; margin-right: 0; text-align: right !important; }
.article-match-scoreboard__support-col--away strong { margin-left: 0; margin-right: auto; text-align: left !important; }
.article-match-scoreboard__support-center--empty { min-width: 74px; }
@media (max-width: 760px) {
    .article-match-scoreboard__support,
    .article-match-scoreboard__support--goals,
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) { grid-template-columns: 1fr !important; gap: .5rem !important; }
    .article-match-scoreboard__support-center--empty { display: none !important; }
    .article-match-scoreboard__support-col--home,
    .article-match-scoreboard__support-col--away { justify-content: flex-start !important; text-align: left !important; }
    .article-match-scoreboard__support-col--home strong,
    .article-match-scoreboard__support-col--away strong { margin: 0 !important; text-align: left !important; }
}

.football-formation-player { max-width: 76px; }
.football-formation-player span { max-width: 100%; overflow: hidden; text-overflow: clip; white-space: nowrap; }
.football-formation-player:hover span,
.football-lineup-player:hover strong { overflow: visible; white-space: normal; position: relative; z-index: 4; }
.football-lineup-player strong { overflow: hidden; text-overflow: clip; white-space: nowrap; }
@media (max-width: 720px) {
    .football-formation-player { max-width: 64px; }
    .football-formation-player span { font-size: .66rem; }
}
/* Keep shortened lineup labels readable on hover. */
.football-formation-pitch { overflow: visible !important; }
.football-formation-player span { display: block !important; -webkit-line-clamp: unset !important; -webkit-box-orient: initial !important; }
.football-formation-player:hover span,
.football-lineup-player:hover strong { background: rgba(5,15,30,.88); color: #fff; border-radius: 8px; padding: 2px 5px; box-shadow: 0 10px 20px rgba(0,0,0,.22); }

/* Kisure football polish v195: header dropdown containment, no auto-selected tabs, and mobile scoreboard side columns */
@media (min-width: 992px) {
    .football-header-leagues__surface {
        overflow: visible !important;
    }
    .football-header-leagues__tabs {
        overflow: visible !important;
        gap: clamp(.55rem, 1vw, .95rem) !important;
    }
    .football-header-league--more {
        position: static !important;
    }
    .football-header-league__dropdown--more {
        left: 1.2rem !important;
        right: 1.2rem !important;
        top: calc(100% - .15rem) !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    .football-header-more-panel {
        max-height: min(72vh, 640px) !important;
        overflow: auto !important;
    }
    .football-header-more-panel__quick {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
    .football-header-more-panel__leagues {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 1200px) and (min-width: 992px) {
    .football-header-more-panel__quick,
    .football-header-more-panel__leagues {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

.football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__tab,
.football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__tab:hover {
    background: rgba(255,255,255,.52) !important;
    border-color: rgba(15,23,42,.1) !important;
    box-shadow: none !important;
    color: #0b1632 !important;
}
.football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__logo {
    background: rgba(14, 125, 121, .10) !important;
}
.football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__logo i {
    color: #0e7d79 !important;
}
html[data-theme="dark"] .football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__tab {
    background:#1c1c1c!important;
    border-color: rgba(148,163,184,.2) !important;
    color: #e2e8f0 !important;
}
html[data-theme="dark"] .football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__logo {
    background: rgba(255,255,255,.94) !important;
}
html[data-theme="dark"] .football-header-league:first-child:not(:hover):not(:focus-within) .football-header-league__logo i {
    color: #0e7d79 !important;
}

.article-match-scoreboard__support-col strong span,
.article-match-scoreboard__support-center strong span {
    display: block;
}

@media (min-width: 761px) {
    .article-match-scoreboard__support-col--home strong span {
        text-align: right;
    }
    .article-match-scoreboard__support-col--away strong span {
        text-align: left;
    }
}

@media (max-width: 760px) {
    .article-match-scoreboard,
    .article-match-scoreboard--match-page {
        box-sizing: border-box !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        padding-left: clamp(14px, 4vw, 18px) !important;
        padding-right: clamp(14px, 4vw, 18px) !important;
        width: 100% !important;
    }
    .article-match-scoreboard__main,
    .article-match-scoreboard--match-page .article-match-scoreboard__main {
        max-width: 100% !important;
    }
    .article-match-scoreboard__support,
    .article-match-scoreboard__support--goals,
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        align-items: start !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: .55rem 1rem !important;
        max-width: 100% !important;
        width: 100% !important;
    }
    .article-match-scoreboard__support-center--empty {
        display: none !important;
    }
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center--label {
        grid-column: 1 / -1 !important;
        justify-self: center !important;
        order: -1 !important;
        text-align: center !important;
        width: 100% !important;
    }
    .article-match-scoreboard__support-col,
    .article-match-scoreboard__support-col--home,
    .article-match-scoreboard__support-col--away {
        display: flex !important;
        min-width: 0 !important;
    }
    .article-match-scoreboard__support-col--home {
        justify-content: flex-start !important;
        text-align: left !important;
    }
    .article-match-scoreboard__support-col--away {
        justify-content: flex-end !important;
        text-align: right !important;
    }
    .article-match-scoreboard__support-col strong,
    .article-match-scoreboard__support-center strong {
        display: grid !important;
        gap: .28rem !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        word-break: normal !important;
    }
    .article-match-scoreboard__support-col--home strong {
        margin: 0 auto 0 0 !important;
        text-align: left !important;
    }
    .article-match-scoreboard__support-col--away strong {
        margin: 0 0 0 auto !important;
        text-align: right !important;
    }
    .article-match-scoreboard__support-col--home strong span {
        text-align: left !important;
    }
    .article-match-scoreboard__support-col--away strong span {
        text-align: right !important;
    }
    .article-match-scoreboard__support--single {
        grid-template-columns: 1fr !important;
    }
    .article-match-scoreboard__support--single .article-match-scoreboard__support-center--label {
        justify-items: center !important;
        text-align: center !important;
    }
}

@media (max-width: 420px) {
    .article-match-scoreboard__support,
    .article-match-scoreboard__support--goals,
    .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        gap: .55rem .7rem !important;
    }
    .article-match-scoreboard__support-col strong,
    .article-match-scoreboard__support-center strong {
        font-size: .82rem !important;
        line-height: 1.36 !important;
    }
    .article-match-scoreboard__details--last {
        gap: .45rem .65rem !important;
        overflow-wrap: anywhere !important;
    }
}

/* Kisure football polish v196: More dropdown controls, fixture meta placement and sports-desk redesign */
.football-header-more-panel {
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 24px;
    box-shadow: 0 28px 70px rgba(2, 12, 27, .18);
    color: #0b1632;
}
.football-header-more-panel__quick a,
.football-header-more-panel__leagues a,
.football-header-more-panel__all {
    background: #f7fbfb !important;
    border: 1px solid rgba(15, 23, 42, .1) !important;
    color: #0b1632 !important;
}
.football-header-more-panel__quick a:hover,
.football-header-more-panel__leagues a:hover,
.football-header-more-panel__all:hover {
    background: rgba(20, 184, 166, .08) !important;
    border-color: rgba(14, 125, 121, .32) !important;
    color: #075f62 !important;
}
.football-header-more-panel__quick a > i,
.football-header-more-panel__leagues a span {
    background: rgba(14, 125, 121, .11) !important;
    color: #0e7d79 !important;
}
.football-header-more-panel__quick small { color: #64748b !important; }
.football-header-more-panel__leagues a strong { white-space: normal !important; }

html[data-theme="dark"] .football-header-more-panel {
    background:#1c1c1c!important;
    border-color:#303030!important;
    box-shadow:none!important;
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-more-panel__quick a,
html[data-theme="dark"] .football-header-more-panel__leagues a,
html[data-theme="dark"] .football-header-more-panel__all {
    background:#1c1c1c!important;
    border-color:#303030!important;
    color: #f8fafc !important;
}
html[data-theme="dark"] .football-header-more-panel__quick a:hover,
html[data-theme="dark"] .football-header-more-panel__leagues a:hover,
html[data-theme="dark"] .football-header-more-panel__all:hover {
    background:#242424!important;
    border-color: #1c9d98 !important;
    color: #b8fff7 !important;
}
html[data-theme="dark"] .football-header-more-panel__quick a > i,
html[data-theme="dark"] .football-header-more-panel__leagues a span {
    background: #f5f7fb !important;
    color: #083344 !important;
}
html[data-theme="dark"] .football-header-more-panel__quick strong,
html[data-theme="dark"] .football-header-more-panel__leagues strong,
html[data-theme="dark"] .football-header-more-panel__all strong { color: #f8fafc !important; }
html[data-theme="dark"] .football-header-more-panel__quick small { color: #cbd5e1 !important; }

.football-schedule-row {
    align-items: center !important;
    display: grid !important;
    gap: .42rem 1rem !important;
    grid-template-columns: minmax(0, 1fr) minmax(92px, 138px) minmax(0, 1fr) !important;
    grid-template-areas:
        "meta meta meta"
        "home middle away" !important;
}
.football-schedule-row__meta {
    color: var(--text-soft) !important;
    display: block !important;
    font-size: .76rem !important;
    font-weight: 850 !important;
    grid-area: meta !important;
    letter-spacing: .02em !important;
    line-height: 1.35 !important;
    min-width: 0 !important;
    overflow: visible !important;
    text-align: center !important;
    text-overflow: clip !important;
    white-space: normal !important;
}
.football-schedule-row__team--home { grid-area: home !important; }
.football-schedule-row__middle {
    grid-area: middle !important;
    justify-self: stretch !important;
    max-width: none !important;
    min-width: 0 !important;
}
.football-schedule-row__team--away { grid-area: away !important; }
.football-schedule-row__middle small { display: none !important; }
.football-schedule-row__middle em {
    display: block !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
}
html[data-theme="dark"] .football-schedule-row__meta { color: #b7c6da !important; }
@media (max-width: 640px) {
    .football-schedule-row {
        grid-template-columns: minmax(0, 1fr) minmax(62px, 82px) minmax(0, 1fr) !important;
        gap: .36rem .45rem !important;
        padding: .72rem .68rem !important;
    }
    .football-schedule-row__meta {
        font-size: .68rem !important;
        text-align: center !important;
    }
    .football-schedule-row__middle { max-width: none !important; }
}

.sports-desk-page.stack-grid { gap: 1.35rem; }
.sports-desk-intro,
.sports-desk-data-strip {
    align-items: center;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(14, 125, 121, .16);
    border-radius: 28px;
    box-shadow: 0 22px 60px rgba(2, 12, 27, .08);
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: clamp(1rem, 2.5vw, 1.5rem);
}
.sports-desk-intro h1,
.sports-desk-data-strip h2 {
    color: var(--bg-contrast);
    font-family: var(--font-display);
    margin: .15rem 0 .35rem;
}
.sports-desk-intro p,
.sports-desk-data-strip p {
    color: var(--text-soft);
    margin: 0;
    max-width: 760px;
}
.sports-desk-home-hero {
    overflow: hidden;
}
.sports-desk-home-hero .hero-story__media img {
    object-fit: cover;
}
.sports-desk-data-strip .football-mini-table {
    min-width: min(390px, 42vw);
}
html[data-theme="dark"] .sports-desk-intro,
html[data-theme="dark"] .sports-desk-data-strip {
    background:#1c1c1c;
    border-color: rgba(141,226,215,.18);
    box-shadow:none;
}
html[data-theme="dark"] .sports-desk-intro h1,
html[data-theme="dark"] .sports-desk-data-strip h2 { color: #f8fafc; }
html[data-theme="dark"] .sports-desk-intro p,
html[data-theme="dark"] .sports-desk-data-strip p { color: #cbd5e1; }
html[data-theme="dark"] .sports-desk-data-strip .football-mini-table a {
    background:#1c1c1c;
    border-color: rgba(148,163,184,.18);
    color: #f8fafc;
}
@media (max-width: 820px) {
    .sports-desk-intro,
    .sports-desk-data-strip {
        grid-template-columns: 1fr;
        text-align: left;
    }
    .sports-desk-intro .football-hero__actions { justify-content: flex-start; }
    .sports-desk-data-strip .football-mini-table { min-width: 0; width: 100%; }
}
@media (max-width: 560px) {
    .sports-desk-intro,
    .sports-desk-data-strip { border-radius: 22px; padding: .95rem; }
    .sports-desk-intro .football-hero__actions,
    .sports-desk-intro .site-button { width: 100%; }
    .sports-desk-intro .site-button { justify-content: center; }
}

/* Kisure football polish v197: precise More IDs, sports-desk source locking and fixture meta wrapping */
.football-header-more-panel__quick span,
.football-header-more-panel__leagues strong {
    min-width: 0;
}
.football-header-more-panel__quick a,
.football-header-more-panel__leagues a {
    min-height: 64px;
}
.football-header-more-panel__quick small:empty,
.football-header-more-panel__leagues small:empty {
    display: none !important;
}
html[data-theme="dark"] .football-header-league__dropdown--more {
    color: #f8fafc;
}
html[data-theme="dark"] .football-header-more-panel__all {
    background:#1c1c1c!important;
}
html[data-theme="dark"] .football-header-more-panel__all i {
    color: #7cf7ec !important;
}
.football-schedule-row__meta {
    background: rgba(14, 125, 121, .08) !important;
    border: 1px solid rgba(14, 125, 121, .12) !important;
    border-radius: 999px !important;
    justify-self: center !important;
    max-width: 100% !important;
    padding: .24rem .7rem !important;
    width: fit-content !important;
}
html[data-theme="dark"] .football-schedule-row__meta {
    background: rgba(20, 184, 166, .12) !important;
    border-color: rgba(125, 247, 236, .18) !important;
    color: #d7fffb !important;
}
.football-match-card__meta {
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
}
.football-match-card__meta span,
.football-match-card__venue {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
}
.football-match-card__venue {
    color: var(--text-soft) !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    text-transform: none !important;
}
.sports-desk-intro .site-button,
.sports-desk-data-strip .football-mini-table a,
.sports-desk-layout .football-section,
.sports-desk-layout .football-side-panel {
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}
.sports-desk-data-strip .football-mini-table a strong,
.sports-desk-data-strip .football-mini-table a em {
    color: inherit;
}
html[data-theme="dark"] .sports-desk-page .site-button--ghost {
    background:#1c1c1c!important;
    border-color: rgba(125, 247, 236, .2) !important;
    color: #dffdfa !important;
}
html[data-theme="dark"] .sports-desk-layout .football-section,
html[data-theme="dark"] .sports-desk-layout .football-side-panel {
    background:#1c1c1c!important;
    border-color: rgba(125, 247, 236, .14) !important;
    color: #f8fafc !important;
}
html[data-theme="dark"] .sports-desk-layout .section-heading h2,
html[data-theme="dark"] .sports-desk-layout h3,
html[data-theme="dark"] .sports-desk-layout .news-card__title {
    color: #f8fafc !important;
}
html[data-theme="dark"] .sports-desk-layout .story-meta,
html[data-theme="dark"] .sports-desk-layout .sidebar-muted,
html[data-theme="dark"] .sports-desk-layout .football-muted {
    color: #cbd5e1 !important;
}
@media (max-width: 640px) {
    .football-schedule-row__meta {
        border-radius: 14px !important;
        font-size: .66rem !important;
        line-height: 1.3 !important;
        padding: .25rem .5rem !important;
    }
    .football-match-card__meta {
        gap: .4rem !important;
    }
}

/* v199 standings selector + real competition season windows */
.football-standings-toolbar .football-competition-search--wide {
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 18px;
    border-radius: 24px;
}
.football-standings-toolbar .football-competition-search--wide select {
    width: 100%;
    min-width: 0;
    min-height: 54px;
    border-radius: 18px;
    padding-inline: 18px;
    font-size: 1rem;
}
.football-competition-search--auto noscript button {
    margin-top: 8px;
}
.football-standings-toolbar .football-competition-search--wide + .section-heading {
    width: 100%;
}
html[data-theme="dark"] .football-standings-toolbar .football-competition-search--wide {
    background:#1c1c1c;
    border-color: rgba(125, 219, 216, .22);
    box-shadow:none;
}
html[data-theme="dark"] .football-standings-toolbar .football-competition-search--wide select {
    background:#1c1c1c;
    color: #f8fafc;
    border-color: rgba(148,163,184,.32);
}

/* v200: sharpen football logos in dark mode on /football and football data cards */
html[data-theme="dark"] .football-page img[src*="media.api-sports.io/football"],
html[data-theme="dark"] .football-page img[src*="/storage/football/"],
html[data-theme="dark"] .football-header-leagues img[src*="media.api-sports.io/football"],
html[data-theme="dark"] .football-header-leagues img[src*="/storage/football/"] {
    filter: none !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}

html[data-theme="dark"] .football-page .football-competition-card__logo,
html[data-theme="dark"] .football-page .football-match-card__team img,
html[data-theme="dark"] .football-page .football-hero-scorecard__teams img,
html[data-theme="dark"] .football-page .football-fixture-tile__teams img,
html[data-theme="dark"] .football-page .football-schedule-row__team img,
html[data-theme="dark"] .football-page .football-table-team img,
html[data-theme="dark"] .football-page .football-mini-table img,
html[data-theme="dark"] .football-page .football-summary-team img,
html[data-theme="dark"] .football-page .football-player-team-link img,
html[data-theme="dark"] .football-page .article-match-scoreboard__crest img,
html[data-theme="dark"] .football-header-league__logo,
html[data-theme="dark"] .football-header-mobile-tab span,
html[data-theme="dark"] .football-header-match-row__team img,
html[data-theme="dark"] .football-header-toplist img,
html[data-theme="dark"] .football-header-tablemini img,
html[data-theme="dark"] .football-header-more-panel__leagues span {
    background: #ffffff !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    box-shadow:none!important;
}

html[data-theme="dark"] .football-page .football-competition-card__logo img,
html[data-theme="dark"] .football-page .football-match-card__team img,
html[data-theme="dark"] .football-page .football-hero-scorecard__teams img,
html[data-theme="dark"] .football-page .football-fixture-tile__teams img,
html[data-theme="dark"] .football-page .football-schedule-row__team img,
html[data-theme="dark"] .football-page .football-table-team img,
html[data-theme="dark"] .football-page .football-mini-table img,
html[data-theme="dark"] .football-page .football-summary-team img,
html[data-theme="dark"] .football-page .football-player-team-link img,
html[data-theme="dark"] .football-page .article-match-scoreboard__crest img,
html[data-theme="dark"] .football-header-league__logo img,
html[data-theme="dark"] .football-header-mobile-tab img,
html[data-theme="dark"] .football-header-match-row__team img,
html[data-theme="dark"] .football-header-toplist img,
html[data-theme="dark"] .football-header-tablemini img,
html[data-theme="dark"] .football-header-more-panel__leagues img {
    background: #ffffff !important;
    border-color: rgba(226, 232, 240, .95) !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}

html[data-theme="dark"] .football-page .football-competition-card__logo {
    min-height: 52px;
    min-width: 52px;
}

html[data-theme="dark"] .football-page .football-competition-card__logo img {
    max-height: 38px;
    max-width: 38px;
    object-fit: contain;
}

html[data-theme="dark"] .football-page .football-match-card,
html[data-theme="dark"] .football-page .football-competition-card,
html[data-theme="dark"] .football-page .football-quick-panel a,
html[data-theme="dark"] .football-page .football-stat-grid > div,
html[data-theme="dark"] .football-page .football-hero-scorecard,
html[data-theme="dark"] .football-page .football-section,
html[data-theme="dark"] .football-page .football-empty {
    border-color: rgba(125, 219, 216, .22) !important;
}

html[data-theme="dark"] .football-page .football-competition-card:hover .football-competition-card__logo,
html[data-theme="dark"] .football-page .football-match-card:hover .football-match-card__team img,
html[data-theme="dark"] .football-header-league__tab:hover .football-header-league__logo,
html[data-theme="dark"] .football-header-league:focus-within .football-header-league__logo,
html[data-theme="dark"] .football-header-league.is-open .football-header-league__logo {
    box-shadow:none!important;
}

html[data-theme="dark"] .football-page .football-competition-card__logo i,
html[data-theme="dark"] .football-header-league__logo i,
html[data-theme="dark"] .football-header-mobile-tab i,
html[data-theme="dark"] .football-header-more-panel__leagues i {
    color: #0f766e !important;
}

/* v201: safe knockout rendering and live-clock polish */
.football-section--notice {
    margin-top: 24px;
}
.football-bracket-safe-notice {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
    border-radius: 22px;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(14, 125, 121, .16);
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
}
.football-bracket-safe-notice h2 {
    margin: 4px 0 8px;
    color: #0b1632;
    font-size: clamp(1.1rem, 2vw, 1.55rem);
}
.football-bracket-safe-notice p {
    margin: 0;
    color: #536179;
    line-height: 1.55;
    max-width: 72ch;
}
html[data-theme="dark"] .football-bracket-safe-notice {
    background:#1c1c1c;
    border-color: rgba(148, 163, 184, .24);
    box-shadow:none;
}
html[data-theme="dark"] .football-bracket-safe-notice h2 {
    color: #f8fafc;
}
html[data-theme="dark"] .football-bracket-safe-notice p {
    color: #cbd5e1;
}
[data-live-clock] {
    transition: color .18s ease, opacity .18s ease;
}
.is-live [data-live-clock],
[data-live-clock][data-live-status] {
    font-variant-numeric: tabular-nums;
}
@media (max-width: 720px) {
    .football-bracket-safe-notice {
        align-items: stretch;
        flex-direction: column;
        padding: 16px;
        border-radius: 18px;
    }
    .football-bracket-safe-notice .site-button {
        width: 100%;
        justify-content: center;
    }
}


/* v206: smart live-clock ticker states with exact league filtering and visible blinking apostrophe */
[data-live-clock].is-live-clock-running,
[data-live-clock][data-live-clock-state="running"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}
[data-live-clock].is-live-clock-running::before,
[data-live-clock][data-live-clock-state="running"]::before {
    content: "";
    width: .52rem;
    height: .52rem;
    flex: 0 0 .52rem;
    border-radius: 999px;
    background: #ef4444;
    box-shadow: 0 0 0 0 rgba(239, 68, 68, .55);
    animation: kisure-live-clock-pulse 1s ease-out infinite;
}
[data-live-clock].is-live-clock-running::after,
[data-live-clock][data-live-clock-state="running"]::after {
    content: "'";
    display: inline-block;
    min-width: .32em;
    margin-left: -.16rem;
    font-size: 1.18em;
    line-height: 1;
    font-weight: 1000;
    color: #ef4444;
    opacity: 1;
    transform: translateY(-.06em);
    animation: kisure-live-apostrophe-blink .72s steps(1, end) infinite;
}
[data-live-clock][data-live-added-time] {
    color: #b45309;
    font-weight: 1000;
}
[data-live-clock][data-live-added-time]::before {
    background: #f59e0b !important;
    box-shadow: 0 0 0 0 rgba(245, 158, 11, .55) !important;
}
[data-live-clock][data-live-added-time]::after {
    color: #f59e0b !important;
}
[data-live-clock].is-live-clock-paused,
[data-live-clock][data-live-clock-state="paused"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}
[data-live-clock].is-live-clock-paused::before,
[data-live-clock][data-live-clock-state="paused"]::before {
    content: "Ⅱ";
    width: 1rem;
    height: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(245, 158, 11, .14);
    color: #d97706;
    font-size: .62em;
    font-weight: 1000;
}
[data-live-clock].is-live-clock-final,
[data-live-clock][data-live-clock-state="final"] {
    font-variant-numeric: tabular-nums;
}
@keyframes kisure-live-clock-pulse {
    0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, .58); transform: scale(1); }
    70% { box-shadow: 0 0 0 .52rem rgba(239, 68, 68, 0); transform: scale(.94); }
    100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); transform: scale(1); }
}
@keyframes kisure-live-clock-blink {
    0%, 100% { opacity: .9; }
    50% { opacity: .42; }
}
@keyframes kisure-live-apostrophe-blink {
    0%, 49% { opacity: 1; transform: translateY(-.02em); }
    50%, 100% { opacity: 0; transform: translateY(-.02em); }
}
.football-match-card__time.is-live-clock-running,
.football-schedule-row__middle [data-live-clock].is-live-clock-running,
.football-header-match-row__status.is-live-clock-running {
    color: #dc2626;
}
html[data-theme="dark"] [data-live-clock].is-live-clock-running::before,
html[data-theme="dark"] [data-live-clock][data-live-clock-state="running"]::before {
    background: #fb7185;
    box-shadow:none;
}
html[data-theme="dark"] [data-live-clock].is-live-clock-running::after,
html[data-theme="dark"] [data-live-clock][data-live-clock-state="running"]::after {
    color: #fda4af;
}
html[data-theme="dark"] [data-live-clock][data-live-added-time] {
    color: #fbbf24;
}
html[data-theme="dark"] [data-live-clock][data-live-added-time]::after {
    color: #fbbf24 !important;
}
@media (max-width: 640px) {
    [data-live-clock].is-live-clock-running::after,
    [data-live-clock][data-live-clock-state="running"]::after {
        font-size: .52em;
        letter-spacing: .06em;
    }
    [data-live-clock].is-live-clock-running,
    [data-live-clock][data-live-clock-state="running"] {
        gap: .28rem;
    }
}

/* v206: keep live matches above finished results in header panels */
.football-header-panel__matches .football-header-panel__group--live + .football-header-panel__group--results {
    margin-top: .65rem;
}
.football-header-panel__group--results .football-header-panel__group-title span::before {
    content: "";
    width: .45rem;
    height: .45rem;
    border-radius: 999px;
    background: currentColor;
    opacity: .45;
    display: inline-block;
    margin-right: .45rem;
    vertical-align: middle;
}
.football-header-mobile-section-title {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: .2rem 0 -.25rem;
    font-size: .72rem;
    line-height: 1;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 950;
    color: #0f766e;
}
.football-header-mobile-section-title::before {
    content: "";
    width: 1.35rem;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    opacity: .75;
}
.football-header-mobile-section-title--live {
    color: #059669;
}
.football-header-mobile-section-title--results {
    color: #64748b;
    margin-top: .65rem;
}
html[data-theme="dark"] .football-header-mobile-section-title--results {
    color: #94a3b8;
}

/* v207: compact professional knockout tree with stage-list and accordion fallback */
.football-bracket-panel--compact{background: #f8fbfb;border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 44px rgba(15,23,42,.06);overflow:hidden}.football-knockout-heading{align-items:flex-start}.football-knockout-heading .football-muted{margin:.35rem 0 0;color:#64748b;max-width:760px}.football-knockout-heading__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.football-knockout-mode-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:rgba(14,165,154,.11);border:1px solid rgba(14,125,121,.18);color:#08736f;padding:9px 13px;font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.football-knockout-flow{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:10px 2px 16px;margin-bottom:6px;scrollbar-width:thin}.football-knockout-flow span{white-space:nowrap;border-radius:999px;background:#eefafa;border:1px solid rgba(14,125,121,.14);color:#0b1632;padding:8px 12px;font-weight:900;font-size:.82rem}.football-knockout-flow i{color:#0e7d79;font-size:.75rem;opacity:.8}.football-bracket-explainer--compact{margin:0 0 16px;border-radius:16px;border:1px solid rgba(15,23,42,.08);background:#fff}.football-bracket-explainer--compact summary{font-size:.92rem}.football-knockout-stage-track{display:grid;gap:14px}.football-knockout-stage-track--tree,.football-knockout-stage-track--scroll{grid-template-columns:repeat(var(--round-count),minmax(230px,1fr));overflow-x:auto;align-items:start;padding-bottom:8px}.football-knockout-stage-track--scroll{grid-template-columns:repeat(var(--round-count),minmax(235px,300px));scroll-snap-type:x proximity}.football-knockout-stage-track--stage-list,.football-knockout-stage-track--accordion{grid-template-columns:1fr}.football-knockout-stage{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;overflow:hidden;min-width:0}.football-knockout-stage--tree,.football-knockout-stage--scroll{min-width:230px;scroll-snap-align:start}.football-knockout-stage summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(15,23,42,.06);background: rgba(255,255,255,.9);font-weight:900;color:#0b1632}.football-knockout-stage summary::-webkit-details-marker{display:none}.football-knockout-stage summary span{text-transform:uppercase;letter-spacing:.07em;font-size:.82rem;color:#08736f}.football-knockout-stage summary b{font-size:.75rem;color:#64748b;background:#f1f5f9;border-radius:999px;padding:5px 9px;white-space:nowrap}.football-knockout-stage__matches{display:grid;gap:7px;padding:10px}.football-knockout-stage--stage-list .football-knockout-stage__matches{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.football-knockout-stage--accordion .football-knockout-stage__matches{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-height:460px;overflow:auto}.football-knockout-mini-match{position:relative;display:grid;gap:4px;text-decoration:none;color:#0b1632;background:#fbfdfe;border:1px solid rgba(15,23,42,.07);border-radius:14px;padding:8px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.football-knockout-mini-match:hover{transform:translateY(-1px);border-color:rgba(14,125,121,.28);box-shadow:0 10px 24px rgba(15,23,42,.08)}.football-knockout-mini-match__meta{display:flex;align-items:center;justify-content:space-between;gap:6px;color:#64748b;font-size:.7rem;line-height:1.2}.football-knockout-mini-match__meta b{display:inline-flex;align-items:center;border-radius:999px;background:rgba(14,125,121,.1);color:#08736f;padding:3px 7px;font-size:.68rem;white-space:nowrap}.football-knockout-mini-match__meta em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.football-knockout-mini-team{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:28px}.football-knockout-mini-team img,.football-knockout-mini-team>span{width:24px;height:24px;border-radius:50%;object-fit:contain;background:#fff;border:1px solid rgba(15,23,42,.08);display:inline-flex;align-items:center;justify-content:center;color:#94a3b8}.football-knockout-mini-team em{font-style:normal;font-weight:850;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.football-knockout-mini-team strong{font-size:.9rem;font-weight:950;min-width:18px;text-align:right;color:#0b1632}.football-knockout-mini-team.is-winner em,.football-knockout-mini-team.is-winner strong{color:#08736f}.football-knockout-mini-match.is-slot{background: #f8fafc}.football-knockout-stage-track--tree .football-knockout-stage:not(:last-child) .football-knockout-mini-match::after,.football-knockout-stage-track--scroll .football-knockout-stage:not(:last-child) .football-knockout-mini-match::after{content:"";position:absolute;right:-12px;top:50%;width:12px;border-top:1px solid rgba(14,125,121,.24)}
html[data-theme="dark"] .football-bracket-panel--compact{background:#1c1c1c;border-color:rgba(148,163,184,.16);box-shadow:none;}html[data-theme="dark"] .football-knockout-heading .football-muted{color:#9fb1c9}html[data-theme="dark"] .football-knockout-mode-pill{background:rgba(45,212,191,.12);border-color:rgba(45,212,191,.22);color:#7cf1e7}html[data-theme="dark"] .football-knockout-flow span{background:rgba(45,212,191,.08);border-color:rgba(45,212,191,.18);color:#eaf6ff}html[data-theme="dark"] .football-knockout-flow i{color:#7cf1e7}html[data-theme="dark"] .football-bracket-explainer--compact,html[data-theme="dark"] .football-knockout-stage{background:#1c1c1c;border-color:rgba(148,163,184,.16);}html[data-theme="dark"] .football-knockout-stage summary{background:#1c1c1c;border-color:rgba(148,163,184,.12);color:#f8fafc;}html[data-theme="dark"] .football-knockout-stage summary span{color:#7cf1e7}html[data-theme="dark"] .football-knockout-stage summary b{background:rgba(148,163,184,.12);color:#cbd5e1}html[data-theme="dark"] .football-knockout-mini-match{background:#1c1c1c;border-color:rgba(148,163,184,.15);color:#f8fafc;}html[data-theme="dark"] .football-knockout-mini-match:hover{border-color:rgba(45,212,191,.32);box-shadow:none;}html[data-theme="dark"] .football-knockout-mini-match__meta{color:#9fb1c9}html[data-theme="dark"] .football-knockout-mini-match__meta b{background:rgba(45,212,191,.12);color:#7cf1e7}html[data-theme="dark"] .football-knockout-mini-team img,html[data-theme="dark"] .football-knockout-mini-team>span{background:#f8fafc;border-color:rgba(148,163,184,.22);color:#64748b}html[data-theme="dark"] .football-knockout-mini-team strong{color:#f8fafc}html[data-theme="dark"] .football-knockout-mini-team.is-winner em,html[data-theme="dark"] .football-knockout-mini-team.is-winner strong{color:#7cf1e7}html[data-theme="dark"] .football-knockout-mini-match.is-slot{background:#242424;}
@media(max-width:991px){.football-knockout-heading{display:grid;gap:10px}.football-knockout-heading__actions{width:100%;justify-content:space-between}.football-knockout-stage-track--tree,.football-knockout-stage-track--scroll{grid-template-columns:repeat(var(--round-count),minmax(78vw,1fr))}.football-knockout-flow{padding-bottom:12px}.football-knockout-stage--tree,.football-knockout-stage--scroll{min-width:78vw}.football-knockout-stage-track--tree .football-knockout-stage:not(:last-child) .football-knockout-mini-match::after,.football-knockout-stage-track--scroll .football-knockout-stage:not(:last-child) .football-knockout-mini-match::after{display:none}}@media(max-width:640px){.football-bracket-panel--compact{border-radius:22px;padding:14px}.football-knockout-flow span{font-size:.74rem;padding:7px 10px}.football-knockout-stage-track{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important}.football-knockout-stage--tree,.football-knockout-stage--scroll{min-width:0}.football-knockout-stage__matches,.football-knockout-stage--stage-list .football-knockout-stage__matches,.football-knockout-stage--accordion .football-knockout-stage__matches{grid-template-columns:1fr;max-height:none}.football-knockout-mini-match{padding:8px;border-radius:12px}.football-knockout-mini-team em{font-size:.82rem}.football-knockout-heading__actions{justify-content:flex-start}}

/* v208: knockout tree shows only true bracket rounds; group/preliminary/matchday rounds stay in fixtures */

/* v209: FotMob-style professional knockout bracket tree */
.football-bracket-panel--visual{
    position:relative;
    padding:28px;
    border-radius:30px;
    overflow:hidden;
    background: #f9fbfb;
    border:1px solid rgba(15,23,42,.08);
    box-shadow:0 20px 54px rgba(15,23,42,.08);
}
.football-bracket-panel--visual .football-muted{max-width:820px;color:#64748b;line-height:1.55}.football-visual-bracket{position:relative}.football-visual-bracket--desktop{display:grid;grid-template-columns:minmax(0,1fr) minmax(148px,190px) minmax(0,1fr);gap:26px;align-items:center;margin-top:22px;min-height:clamp(360px,calc(var(--bracket-max-items,4) * 78px),880px)}.football-visual-bracket__side{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(94px,1fr);gap:34px;align-items:stretch;min-height:inherit}.football-visual-bracket__side--left{justify-content:end}.football-visual-bracket__side--right{justify-content:start}.football-visual-round{position:relative;display:grid;grid-template-rows:auto 1fr;gap:12px;min-width:94px}.football-visual-round__label{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 7px;border-radius:999px;background:rgba(14,125,121,.08);border:1px solid rgba(14,125,121,.12);color:#08736f;font-size:.62rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase;text-align:center;white-space:normal}.football-visual-round__matches{position:relative;display:flex;flex-direction:column;justify-content:space-around;gap:16px;min-height:calc(var(--bracket-max-items,4) * 66px)}.football-visual-round:not(:last-child)::after{content:"";position:absolute;top:52%;bottom:10%;width:2px;background: #e5e7eb;opacity:.72}.football-visual-bracket__side--left .football-visual-round:not(:last-child)::after{right:-18px}.football-visual-bracket__side--right .football-visual-round:not(:last-child)::after{left:-18px}.football-visual-match{position:relative;width:90px;min-height:78px;margin-inline:auto;display:grid;grid-template-rows:auto auto;align-content:center;gap:4px;padding:8px 7px;border-radius:10px;background:#fff;border:1px solid rgba(15,23,42,.1);box-shadow:0 8px 20px rgba(15,23,42,.07);text-decoration:none;color:#0b1632;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.football-visual-match:hover{transform:translateY(-2px);border-color:rgba(14,125,121,.3);box-shadow:0 14px 30px rgba(15,23,42,.12)}.football-visual-bracket__side--left .football-visual-match::after,.football-visual-bracket__side--right .football-visual-match::before{content:"";position:absolute;top:50%;width:34px;border-top:2px solid rgba(148,163,184,.26)}.football-visual-bracket__side--left .football-visual-match::after{right:-34px}.football-visual-bracket__side--right .football-visual-match::before{left:-34px}.football-visual-round:last-child .football-visual-match::after,.football-visual-round:last-child .football-visual-match::before{border-color:rgba(0,168,107,.75)}.football-visual-match__teams{display:grid;grid-template-columns:1fr 1fr;gap:3px;align-items:start}.football-visual-match__team{display:grid;justify-items:center;gap:2px;min-width:0}.football-visual-match__team img,.football-visual-match__fallback{width:20px;height:20px;border-radius:50%;object-fit:contain;background:#fff;border:1px solid rgba(15,23,42,.08);display:flex;align-items:center;justify-content:center;font-size:.48rem;font-weight:950;color:#64748b}.football-visual-match__team b{max-width:38px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;line-height:1;font-weight:1000;color:#0b1632}.football-visual-match__team.is-winner b{color:#00856f}.football-visual-match__score{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.88rem;line-height:1;font-weight:950}.football-visual-match__score strong{min-width:12px;text-align:center}.football-visual-match__score em{font-style:normal;color:#64748b}.football-visual-match__badge{justify-self:center;max-width:76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:5px;padding:2px 5px;background:#e0f2fe;color:#0369a1;font-size:.54rem;line-height:1;font-weight:950;text-transform:uppercase}.football-visual-match.is-final-badge .football-visual-match__badge{background:#fde68a;color:#92400e}.football-visual-match.is-bronze-badge .football-visual-match__badge{background:#bae6fd;color:#075985}.football-visual-bracket__center{display:grid;justify-items:center;align-content:center;gap:18px;min-height:inherit;position:relative}.football-visual-bracket__center::before{content:"";position:absolute;top:22%;bottom:24%;left:50%;border-left:2px solid rgba(148,163,184,.24);transform:translateX(-50%)}.football-visual-champion{position:relative;z-index:1;display:grid;justify-items:center;text-align:center;gap:6px;color:#64748b}.football-visual-champion__trophy{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#b6b6b6;font-size:2.35rem;background: #f4f4f5;border:1px solid rgba(15,23,42,.08)}.football-visual-champion img,.football-visual-champion>span:not(.football-visual-champion__trophy){width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;object-fit:contain;background:#ecfeff;border:1px solid rgba(14,125,121,.16);color:#08736f;font-weight:950}.football-visual-champion strong{font-size:1rem;color:#64748b;font-weight:850}.football-visual-champion em{font-style:normal;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:950;color:#94a3b8}.football-visual-center-match{position:relative;z-index:2}.football-visual-center-match--final .football-visual-match{border-color:rgba(245,158,11,.35);box-shadow:0 12px 26px rgba(245,158,11,.14)}.football-visual-center-match--bronze .football-visual-match{border-color:rgba(14,165,233,.28)}.football-visual-match--center{width:92px}.football-visual-match--center::before,.football-visual-match--center::after{display:none!important}.football-visual-bracket--mobile{display:none}.football-mobile-bracket-round{position:relative;display:grid;gap:12px;padding-bottom:24px}.football-mobile-bracket-round:not(:last-child)::after,.football-mobile-bracket-final-ladder::before{content:"";position:absolute;left:50%;bottom:0;height:24px;border-left:2px solid rgba(148,163,184,.26);transform:translateX(-50%)}.football-mobile-bracket-round h3{margin:0;text-align:center;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;color:#08736f}.football-mobile-bracket-round__matches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;justify-items:center}.football-mobile-bracket-final-ladder{position:relative;display:grid;justify-items:center;gap:16px;padding-top:8px}.football-visual-match--mobile{width:96px;min-height:84px}.football-visual-champion--mobile{margin-top:4px}.football-visual-champion--mobile .football-visual-champion__trophy{width:64px;height:64px;font-size:2.8rem}html[data-theme="dark"] .football-bracket-panel--visual{background:#1c1c1c;border-color:rgba(148,163,184,.16);box-shadow:none;}html[data-theme="dark"] .football-bracket-panel--visual .football-muted{color:#9fb1c9}html[data-theme="dark"] .football-visual-round__label{background:rgba(45,212,191,.1);border-color:rgba(45,212,191,.2);color:#7cf1e7}html[data-theme="dark"] .football-visual-match{background:#1c1c1c;border-color:rgba(148,163,184,.16);color:#f8fafc;box-shadow:none;}html[data-theme="dark"] .football-visual-match:hover{border-color:rgba(45,212,191,.35);box-shadow:none;}html[data-theme="dark"] .football-visual-match__team b,html[data-theme="dark"] .football-visual-match__score{color:#f8fafc}html[data-theme="dark"] .football-visual-match__team.is-winner b{color:#7cf1e7}html[data-theme="dark"] .football-visual-match__team img,html[data-theme="dark"] .football-visual-match__fallback{background:#fff;border-color:rgba(148,163,184,.2)}html[data-theme="dark"] .football-visual-match__score em{color:#94a3b8}html[data-theme="dark"] .football-visual-champion__trophy{background:#1c1c1c;border-color:rgba(148,163,184,.18);color:#94a3b8;}html[data-theme="dark"] .football-visual-champion strong{color:#e2e8f0}html[data-theme="dark"] .football-mobile-bracket-round h3{color:#7cf1e7}@media(max-width:1020px){.football-visual-bracket--desktop{grid-template-columns:1fr;display:none}.football-visual-bracket--mobile{display:grid;gap:18px;margin-top:18px}.football-bracket-panel--visual{padding:20px;border-radius:24px}.football-mobile-bracket-round__matches{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));max-width:520px;margin-inline:auto;width:100%}}@media(max-width:560px){.football-bracket-panel--visual{padding:14px;border-radius:20px}.football-mobile-bracket-round__matches{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.football-visual-match--mobile{width:88px;min-height:80px}.football-visual-match__team img,.football-visual-match__fallback{width:19px;height:19px}.football-visual-match__team b{font-size:.62rem}.football-visual-match__score{font-size:.82rem}.football-visual-match__badge{font-size:.5rem;max-width:72px}.football-visual-champion strong{font-size:.92rem}}

/* v210 professional true-bracket repair: exact competition rendering + FotMob-style tree */
.football-bracket-panel--visual{
    overflow-x:auto;
    background: #f8fbfc;
}
.football-visual-bracket--desktop{
    min-width:1180px;
    grid-template-columns:minmax(420px,1fr) 230px minmax(420px,1fr);
    gap:40px;
    padding:8px 4px 18px;
    align-items:center;
}
.football-visual-bracket__side{
    grid-auto-columns:minmax(96px,118px);
    gap:56px;
}
.football-visual-round__label{
    min-height:18px;
    padding:3px 6px;
    font-size:.56rem;
    opacity:.86;
}
.football-visual-round__matches{
    min-height:calc(var(--bracket-max-items,4) * 84px);
    gap:22px;
}
.football-visual-match{
    width:92px;
    min-height:88px;
    border-radius:12px;
    padding:8px 7px;
    box-shadow:0 10px 28px rgba(15,23,42,.08);
}
.football-visual-match__team img,
.football-visual-match__fallback{
    width:24px;
    height:24px;
}
.football-visual-match__team b{
    max-width:42px;
    font-size:.68rem;
}
.football-visual-match__score{
    font-size:.9rem;
    letter-spacing:.02em;
}
.football-visual-match__badge{
    max-width:78px;
    font-size:.52rem;
}
.football-visual-bracket__side--left .football-visual-match::after,
.football-visual-bracket__side--right .football-visual-match::before{
    width:56px;
    border-color:rgba(148,163,184,.34);
}
.football-visual-bracket__side--left .football-visual-match::after{right:-56px;}
.football-visual-bracket__side--right .football-visual-match::before{left:-56px;}
.football-visual-round:not(:last-child)::after{
    width:2px;
    opacity:.8;
    background: #e5e7eb;
}
.football-visual-bracket__side--left .football-visual-round:not(:last-child)::after{right:-29px;}
.football-visual-bracket__side--right .football-visual-round:not(:last-child)::after{left:-29px;}
.football-visual-bracket__center{
    gap:20px;
}
.football-visual-champion__trophy{
    width:66px;
    height:66px;
    font-size:3rem;
}
.football-visual-champion img,
.football-visual-champion>span:not(.football-visual-champion__trophy){
    width:38px;
    height:38px;
    margin-top:-22px;
}
.football-visual-champion strong{
    font-size:1.05rem;
}
.football-visual-match--center{
    width:96px;
    min-height:90px;
}
@media(max-width:1020px){
    .football-bracket-panel--visual{overflow-x:hidden;}
    .football-visual-bracket--mobile{
        display:grid;
        gap:14px;
        justify-items:center;
        padding:10px 0 18px;
    }
    .football-mobile-bracket-round{
        width:100%;
        max-width:460px;
        padding:12px 10px 28px;
        border-radius:16px;
        background:rgba(255,255,255,.62);
        border:1px solid rgba(15,23,42,.06);
    }
    .football-mobile-bracket-round__matches{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px 18px;
        justify-items:center;
    }
    .football-mobile-bracket-final-ladder{
        width:100%;
        max-width:460px;
        padding:16px 10px;
        border-radius:16px;
        background:rgba(255,255,255,.65);
        border:1px solid rgba(15,23,42,.06);
    }
    .football-visual-match--mobile{
        width:104px;
        min-height:92px;
    }
}
@media(max-width:560px){
    .football-mobile-bracket-round,
    .football-mobile-bracket-final-ladder{max-width:100%;}
    .football-mobile-bracket-round__matches{gap:10px 12px;}
    .football-visual-match--mobile{width:96px;min-height:86px;}
    .football-visual-match__team b{font-size:.64rem;}
}
html[data-theme="dark"] .football-mobile-bracket-round,
html[data-theme="dark"] .football-mobile-bracket-final-ladder{
    background:#1c1c1c;
    border-color:rgba(148,163,184,.14);
}

/* v212: exact data-engine seasons dropdown and bracket source fix */
.football-season-switcher--dropdown{display:inline-flex;align-items:center;gap:10px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid rgba(14,125,121,.16);box-shadow:0 12px 28px rgba(15,23,42,.08);padding:8px 10px 8px 14px;margin-left:auto}
.football-season-switcher--dropdown label{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#08736f;white-space:nowrap}
.football-season-switcher--dropdown select{appearance:auto;border:0;background:#0ea5a0;color:#fff;border-radius:999px;padding:10px 14px;font-weight:900;min-width:155px;outline:0;box-shadow:none}
.football-season-switcher--dropdown select option{color:#0b1632;background:#fff;font-weight:700}
html[data-theme="dark"] .football-season-switcher--dropdown{background:#1c1c1c;border-color:rgba(45,212,191,.2);box-shadow:none;}
html[data-theme="dark"] .football-season-switcher--dropdown label{color:#7cf1e7}
html[data-theme="dark"] .football-season-switcher--dropdown select{background:#0f766e;color:#ecfeff}
@media(max-width:760px){.football-season-switcher--dropdown{width:100%;justify-content:space-between;border-radius:18px;margin-left:0}.football-season-switcher--dropdown select{min-width:0;flex:1}}

/* v216 knockout fix: semi/quarter stages are no longer classified as Final; canonical bracket rounds supported. */

/* v217: desktop bracket fit, two-leg finals, penalties, solid header panel */
.football-header-panel{
    background:#fff !important;
}
html[data-theme="dark"] .football-header-panel{
    background:#1c1c1c!important;
}
.football-header-match-row b{
    display:grid;
    justify-items:center;
    align-content:center;
    gap:2px;
}
.football-header-match-row b small{
    display:block;
    font-size:.54rem;
    line-height:1;
    letter-spacing:.06em;
    color:#0f766e;
}
html[data-theme="dark"] .football-header-match-row b small{
    color:#7cf1e7;
}
.football-bracket-panel--visual{
    overflow:hidden !important;
}
.football-visual-bracket--desktop{
    min-width:0 !important;
    width:100% !important;
    grid-template-columns:minmax(0,1fr) clamp(136px,12vw,190px) minmax(0,1fr) !important;
    gap:clamp(14px,1.8vw,28px) !important;
    min-height:clamp(330px, calc(var(--bracket-max-items,4) * 76px), 650px) !important;
    padding:8px 0 14px !important;
    overflow:visible !important;
}
.football-visual-bracket__side{
    grid-auto-columns:minmax(74px, min(8vw,102px)) !important;
    gap:clamp(20px,2.7vw,42px) !important;
    min-width:0 !important;
}
.football-visual-round{
    min-width:0 !important;
}
.football-visual-round__matches{
    min-height:clamp(260px, calc(var(--bracket-max-items,4) * 72px), 610px) !important;
    gap:clamp(12px,1.6vw,20px) !important;
}
.football-visual-match{
    width:clamp(74px,5.3vw,92px) !important;
    min-height:clamp(82px,6.2vw,100px) !important;
    padding:7px 5px !important;
    border:1px solid rgba(15,23,42,.1);
    appearance:none;
    font:inherit;
    cursor:pointer;
}
.football-visual-match__team img,
.football-visual-match__fallback{
    width:clamp(18px,1.55vw,24px) !important;
    height:clamp(18px,1.55vw,24px) !important;
}
.football-visual-match__team b{
    max-width:44px !important;
    font-size:clamp(.58rem,.72vw,.68rem) !important;
}
.football-visual-match__score{
    font-size:clamp(.78rem,.84vw,.9rem) !important;
}
.football-visual-match__penalties,
.football-visual-match__tie-note{
    justify-self:center;
    max-width:86px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    border-radius:999px;
    padding:2px 6px;
    font-size:.48rem;
    line-height:1;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.football-visual-match__penalties{
    background:#ecfdf5;
    color:#047857;
}
.football-visual-match__tie-note{
    background:#f1f5f9;
    color:#64748b;
}
.football-visual-bracket__side--left .football-visual-match::after,
.football-visual-bracket__side--right .football-visual-match::before{
    width:clamp(20px,2.7vw,42px) !important;
    border-top-width:2px;
    border-color:rgba(148,163,184,.34);
}
.football-visual-bracket__side--left .football-visual-match::after{
    right:calc(-1 * clamp(20px,2.7vw,42px)) !important;
}
.football-visual-bracket__side--right .football-visual-match::before{
    left:calc(-1 * clamp(20px,2.7vw,42px)) !important;
}
.football-visual-match.has-winner::after,
.football-visual-match.has-winner::before{
    border-top-width:3px !important;
    border-color:rgba(0,168,107,.9) !important;
}
.football-visual-round:not(:last-child)::after{
    top:22% !important;
    bottom:16% !important;
    width:2px !important;
    background: #e5e7eb !important;
}
.football-visual-bracket__side--left .football-visual-round:not(:last-child)::after{
    right:calc(-1 * clamp(10px,1.35vw,21px)) !important;
}
.football-visual-bracket__side--right .football-visual-round:not(:last-child)::after{
    left:calc(-1 * clamp(10px,1.35vw,21px)) !important;
}
.football-visual-match--center{
    width:clamp(82px,6vw,96px) !important;
}
.football-visual-champion{
    border:0;
    background:transparent;
    padding:0;
    font:inherit;
}
.football-visual-champion.is-celebratable{
    cursor:pointer;
}
.football-visual-champion__burst{
    position:absolute;
    inset:50%;
    width:1px;
    height:1px;
    pointer-events:none;
    z-index:4;
}
.football-visual-champion>.football-visual-champion__burst{
    width:1px !important;
    height:1px !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
}
.football-visual-champion__spark{
    position:absolute;
    left:0;
    top:0;
    width:13px;
    height:13px;
    border-radius:999px;
    background:var(--spark-color,#0e7d79);
    box-shadow:0 0 22px var(--spark-color,#0e7d79),0 0 44px var(--spark-color,#0e7d79);
    animation:kisureChampionSpark 1.65s cubic-bezier(.16,.9,.2,1) var(--spark-delay,0ms) forwards;
}
@keyframes kisureChampionSpark{
    0%{opacity:0;transform:translate(-50%,-50%) scale(.3);}
    18%{opacity:1;}
    78%{opacity:1;}
    100%{opacity:0;transform:translate(calc(-50% + var(--spark-x)),calc(-50% + var(--spark-y))) scale(.18);}
}
.football-two-leg-modal[hidden]{
    display:none !important;
}
.football-two-leg-modal{
    position:fixed;
    inset:0;
    z-index:1300;
    display:grid;
    place-items:center;
    padding:20px;
    background:rgba(15,23,42,.58);
}
.football-two-leg-modal__card{
    position:relative;
    width:min(540px,100%);
    overflow:hidden;
    border-radius:18px;
    background:#fff;
    box-shadow:0 28px 90px rgba(15,23,42,.28);
}
.football-two-leg-modal__card h3{
    margin:0;
    padding:18px 54px 16px;
    border-bottom:1px solid rgba(15,23,42,.08);
    text-align:center;
    color:#0b1632;
    font-size:1.28rem;
    font-weight:950;
}
.football-two-leg-modal__x{
    position:absolute;
    top:10px;
    right:10px;
    width:34px;
    height:34px;
    border:0;
    border-radius:999px;
    background:#f8fafc;
    color:#0b1632;
    cursor:pointer;
}
.football-two-leg-modal__body{
    display:grid;
}
.football-two-leg-modal__row{
    display:grid;
    grid-template-columns:minmax(82px,.8fr) minmax(0,1fr) 30px auto 30px minmax(0,1fr);
    align-items:center;
    gap:10px;
    padding:16px 22px;
    background:#fff;
}
.football-two-leg-modal__row:nth-child(even){
    background:#f8fafc;
}
.football-two-leg-modal__date{
    color:#64748b;
    font-weight:800;
    font-size:.78rem;
}
.football-two-leg-modal__row strong{
    color:#334155;
    font-size:.95rem;
    line-height:1.08;
}
.football-two-leg-modal__row img,
.football-two-leg-modal__crest{
    width:28px;
    height:28px;
    border-radius:50%;
    object-fit:contain;
    background:#fff;
    border:1px solid rgba(15,23,42,.08);
    display:grid;
    place-items:center;
    font-size:.62rem;
    font-weight:950;
    color:#0f766e;
}
.football-two-leg-modal__row b{
    color:#0f766e;
    min-width:42px;
    text-align:center;
    font-size:1rem;
}
.football-two-leg-modal__row small{
    grid-column:4;
    justify-self:center;
    margin-top:-6px;
    border-radius:999px;
    padding:3px 7px;
    background:#ecfdf5;
    color:#047857;
    font-size:.64rem;
    font-weight:950;
}
.football-two-leg-modal__aggregate[hidden]{
    display:none !important;
}
.football-two-leg-modal__aggregate{
    display:grid;
    justify-items:center;
    gap:9px;
    margin:14px 20px 18px;
    padding:14px 18px 15px;
    border:1px solid rgba(14,125,121,.18);
    border-radius:14px;
    background: rgba(240,253,250,.96);
    color:#0b1632;
    text-align:center;
}
.football-two-leg-modal__aggregate-label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:25px;
    padding:4px 12px;
    border-radius:999px;
    background:#0e7d79;
    color:#fff;
    font-size:.7rem;
    font-weight:1000;
    letter-spacing:.04em;
    line-height:1;
}
.football-two-leg-modal__aggregate-scoreline{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    gap:clamp(12px,3vw,22px);
    width:min(100%,440px);
}
.football-two-leg-modal__aggregate-scoreline strong{
    min-width:0;
    color:#334155;
    font-size:.9rem;
    font-weight:900;
    line-height:1.18;
    overflow-wrap:anywhere;
}
.football-two-leg-modal__aggregate-scoreline strong:first-child{
    text-align:right;
}
.football-two-leg-modal__aggregate-scoreline strong:last-child{
    text-align:left;
}
.football-two-leg-modal__aggregate-scoreline b{
    min-width:58px;
    color:#0f766e;
    font-size:1.08rem;
    font-weight:1000;
    white-space:nowrap;
    text-align:center;
}
.football-two-leg-modal__close{
    width:100%;
    border:0;
    border-top:1px solid rgba(15,23,42,.08);
    padding:16px;
    background:#fff;
    color:#00946f;
    font-size:1rem;
    font-weight:900;
    cursor:pointer;
}
.article-match-scoreboard__details--penalties{
    justify-content:center;
    margin-top:12px;
}
.article-match-scoreboard__penalty-pill,
.football-summary-penalties,
.football-match-card__penalties,
.football-schedule-row__penalties{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border-radius:999px;
    background:rgba(45,212,191,.14);
    color:#0f766e;
    font-weight:950;
}
.article-match-scoreboard__penalty-pill{
    padding:8px 13px;
    letter-spacing:.03em;
}
.football-summary-penalties,
.football-match-card__penalties,
.football-schedule-row__penalties{
    padding:4px 8px;
    font-size:.72rem;
}
.football-schedule-row__penalties{
    margin-top:3px;
}
html[data-theme="dark"] .football-visual-match__penalties,
html[data-theme="dark"] .football-two-leg-modal__row small,
html[data-theme="dark"] .article-match-scoreboard__penalty-pill,
html[data-theme="dark"] .football-summary-penalties,
html[data-theme="dark"] .football-match-card__penalties,
html[data-theme="dark"] .football-schedule-row__penalties{
    background:rgba(45,212,191,.14);
    color:#7cf1e7;
}
html[data-theme="dark"] .football-visual-match__tie-note{
    background:rgba(148,163,184,.13);
    color:#cbd5e1;
}
html[data-theme="dark"] .football-two-leg-modal{
    background:rgba(0,0,0,.68);
}
html[data-theme="dark"] .football-two-leg-modal__card,
html[data-theme="dark"] .football-two-leg-modal__close{
    background:#1c1c1c;
    color:#7cf1e7;
}
html[data-theme="dark"] .football-two-leg-modal__card h3{
    border-color:rgba(148,163,184,.14);
    color:#f8fafc;
}
html[data-theme="dark"] .football-two-leg-modal__row{
    background:#1c1c1c;
}
html[data-theme="dark"] .football-two-leg-modal__row:nth-child(even){
    background:#1c1c1c;
}
html[data-theme="dark"] .football-two-leg-modal__row strong{
    color:#e2e8f0;
}
html[data-theme="dark"] .football-two-leg-modal__aggregate{
    border-color:rgba(45,212,191,.22);
    background:#242424;
    color:#f8fafc;
}
html[data-theme="dark"] .football-two-leg-modal__aggregate strong{
    color:#e2e8f0;
}
html[data-theme="dark"] .football-two-leg-modal__aggregate b{
    color:#7cf1e7;
}
html[data-theme="dark"] .football-two-leg-modal__date{
    color:#94a3b8;
}
html[data-theme="dark"] .football-two-leg-modal__x{
    background:#1c1c1c;
    color:#f8fafc;
}
@media(max-width:1320px){
    .football-visual-bracket--desktop{
        grid-template-columns:minmax(0,1fr) clamp(120px,10vw,160px) minmax(0,1fr) !important;
        gap:14px !important;
    }
    .football-visual-bracket__side{
        grid-auto-columns:minmax(68px,86px) !important;
        gap:22px !important;
    }
    .football-visual-match{
        width:76px !important;
        min-height:88px !important;
    }
    .football-visual-bracket__side--left .football-visual-match::after,
    .football-visual-bracket__side--right .football-visual-match::before{
        width:22px !important;
    }
    .football-visual-bracket__side--left .football-visual-match::after{right:-22px !important;}
    .football-visual-bracket__side--right .football-visual-match::before{left:-22px !important;}
    .football-visual-bracket__side--left .football-visual-round:not(:last-child)::after{right:-11px !important;}
    .football-visual-bracket__side--right .football-visual-round:not(:last-child)::after{left:-11px !important;}
}
@media(max-width:640px){
    .football-two-leg-modal__row{
        grid-template-columns:1fr 28px auto 28px 1fr;
        gap:8px;
        padding:14px;
    }
    .football-two-leg-modal__date{
        grid-column:1 / -1;
    }
    .football-two-leg-modal__row strong:first-of-type{
        text-align:right;
    }
    .football-two-leg-modal__row small{
        grid-column:3;
    }
    .football-two-leg-modal__aggregate{
        margin:12px 14px 16px;
        padding:12px 10px 13px;
    }
    .football-two-leg-modal__aggregate-scoreline{
        grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
        gap:9px;
        width:100%;
    }
    .football-two-leg-modal__aggregate-scoreline strong{
        font-size:.8rem;
    }
    .football-two-leg-modal__aggregate-scoreline b{
        min-width:50px;
        font-size:1rem;
    }
}

/* v219: permanent league isolation, two-leg final safety, bigger champion fireworks and connected bracket lines */
.football-visual-bracket--desktop{
    align-items:stretch !important;
}
.football-visual-bracket__side{
    align-content:stretch !important;
    justify-content:space-evenly !important;
}
.football-visual-bracket--rounds-1 .football-visual-bracket__side,
.football-visual-bracket--rounds-2 .football-visual-bracket__side{
    justify-content:center !important;
    grid-auto-columns:minmax(96px,130px) !important;
    gap:clamp(42px,6vw,90px) !important;
}
.football-visual-bracket--rounds-1 .football-visual-round__matches,
.football-visual-bracket--rounds-2 .football-visual-round__matches{
    min-height:clamp(320px,42vw,620px) !important;
    justify-content:space-evenly !important;
}
.football-visual-round__matches{
    justify-content:space-evenly !important;
}
.football-visual-match::after,
.football-visual-match::before{
    z-index:0;
}
.football-visual-round:not(:last-child)::after{
    border-radius:999px;
    opacity:.95;
}
.football-visual-bracket__center::before,
.football-visual-bracket__center::after{
    content:"";
    position:absolute;
    left:50%;
    width:2px;
    transform:translateX(-50%);
    background: rgba(14,125,121,.05);
    border-radius:999px;
    pointer-events:none;
}
.football-visual-bracket__center::before{top:74px;height:34%;}
.football-visual-bracket__center::after{bottom:74px;height:28%;}
.football-visual-center-match--final{
    z-index:6;
    transform:scale(1.28);
    filter:drop-shadow(0 18px 30px rgba(245,158,11,.22));
    animation:kisureFinalFocus 2.4s ease-in-out infinite;
}
.football-visual-center-match--final .football-visual-match{
    width:clamp(128px,10.4vw,170px) !important;
    min-height:clamp(130px,9.8vw,168px) !important;
    border-width:2px !important;
    border-color:rgba(245,158,11,.62) !important;
    background: #fffbeb !important;
}
.football-visual-center-match--final .football-visual-match__team img,
.football-visual-center-match--final .football-visual-match__fallback{
    width:clamp(30px,2.45vw,40px) !important;
    height:clamp(30px,2.45vw,40px) !important;
}
.football-visual-center-match--final .football-visual-match__team b{
    font-size:clamp(.74rem,.92vw,.9rem) !important;
    max-width:64px !important;
}
.football-visual-center-match--final .football-visual-match__score{
    font-size:clamp(1.05rem,1.2vw,1.35rem) !important;
}
.football-visual-center-match--final .football-visual-match__badge{
    font-size:.64rem !important;
    padding:4px 9px !important;
}
.football-visual-champion{
    position:relative;
    z-index:7;
}
.football-visual-champion.is-celebratable .football-visual-champion__trophy{
    animation:kisureTrophyGlow 2.7s ease-in-out infinite;
}
@keyframes kisureFinalFocus{
    0%,100%{transform:scale(1.22);}
    50%{transform:scale(1.34);}
}
@keyframes kisureTrophyGlow{
    0%,100%{box-shadow:0 10px 28px rgba(15,23,42,.08),0 0 0 rgba(245,158,11,0);}
    50%{box-shadow:0 12px 36px rgba(15,23,42,.1),0 0 0 10px rgba(245,158,11,.11);}
}
.football-two-leg-modal__row{
    color:inherit;
    text-decoration:none;
}
a.football-two-leg-modal__row:hover{
    background:#ecfeff;
}
.article-match-scoreboard__details--penalties{
    gap:10px;
}
.article-match-scoreboard__penalty-pill{
    background: rgba(45,212,191,.18);
    color:#0f766e;
    border:1px solid rgba(14,125,121,.14);
}
html[data-theme="dark"] .football-visual-center-match--final .football-visual-match{
    background:#1c1c1c!important;
    border-color:rgba(245,158,11,.62) !important;
}
html[data-theme="dark"] a.football-two-leg-modal__row:hover{
    background:#242424;
}
@media(max-width:1020px){
    .football-visual-center-match--final{transform:none;animation:none;}
    .football-visual-center-match--final .football-visual-match{width:118px !important;min-height:120px !important;}
}

/* v220: league fixture/result SEO pages, missed-penalty markers, calmer two-leg final card */
.football-fixture-hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.football-fixture-hero-actions .site-button{min-width:120px;justify-content:center}.football-scoreboard-missed-penalty{display:inline-flex;align-items:center;margin-left:4px;font-size:.95em;line-height:1;filter:drop-shadow(0 1px 0 rgba(15,23,42,.12))}.football-visual-center-match--final{transform:none!important;filter:none!important;animation:none!important}.football-visual-center-match--final .football-visual-match{width:clamp(92px,6.8vw,112px)!important;min-height:clamp(92px,7vw,116px)!important;border-width:1px!important;box-shadow:0 10px 22px rgba(15,23,42,.08)!important;background:#fff!important}.football-visual-center-match--final .football-visual-match:hover{transform:translateY(-1px)!important}.football-visual-center-match--final .football-visual-match__team img,.football-visual-center-match--final .football-visual-match__fallback{width:clamp(22px,1.8vw,28px)!important;height:clamp(22px,1.8vw,28px)!important}.football-visual-center-match--final .football-visual-match__team b{font-size:clamp(.64rem,.78vw,.74rem)!important;max-width:48px!important}.football-visual-center-match--final .football-visual-match__score{font-size:clamp(.86rem,.95vw,1.05rem)!important}.football-visual-center-match--final .football-visual-match__badge{font-size:.56rem!important;padding:3px 7px!important}.football-visual-center-match--final .football-visual-match__tie-note{font-size:.46rem!important;max-width:92px}.football-visual-match.has-two-leg-tie{cursor:pointer}.football-visual-match.has-two-leg-tie::marker{content:""}html[data-theme="dark"] .football-visual-center-match--final .football-visual-match{background:#1c1c1c!important;box-shadow:none!important;}.football-header-panel__side .football-header-toplist:empty{display:none}@media(max-width:760px){.football-fixture-hero-actions{width:100%;justify-content:flex-start}.football-fixture-hero-actions .site-button{flex:1}}

/* v222 league centre and league fixture pages */
.football-fixtures-hero .football-fixture-hero-actions,
.football-league-hero .football-season-switcher { margin-left: auto; }
.football-fixture-hero-actions { display: grid; gap: .75rem; justify-items: end; }
.football-fixture-hero-actions__tabs { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; }
.football-standings-hero__league-link { align-self: center; white-space: nowrap; }
.football-league-tabs { display: flex; gap: .65rem; overflow-x: auto; padding: .35rem 0 1rem; margin-top: -0.25rem; scroll-behavior: smooth; }
.football-league-tabs a { flex: 0 0 auto; padding: .72rem 1rem; border: 1px solid rgba(14, 125, 121, .22); border-radius: 999px; background: rgba(255,255,255,.86); color: #0f172a; text-decoration: none; font-weight: 900; box-shadow: 0 10px 25px rgba(15, 23, 42, .05); }
.football-league-tabs a:hover { background: #0eaaa7; color: #fff; border-color: #0eaaa7; }
.football-league-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0 1.35rem; }
.football-league-summary-grid article { border: 1px solid rgba(14,125,121,.18); background: rgba(255,255,255,.92); border-radius: 24px; padding: 1rem; display: grid; gap: .25rem; box-shadow: 0 18px 45px rgba(15,23,42,.06); }
.football-league-summary-grid span { color: #087c80; text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; font-weight: 950; }
.football-league-summary-grid strong { color: #0f172a; font-size: clamp(1.7rem, 3vw, 2.45rem); line-height: 1; }
.football-league-summary-grid small { color: #64748b; font-weight: 750; }
.football-main-stack { display: grid; gap: 1.25rem; min-width: 0; }
.football-heading-actions { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; }
.football-table--compact td, .football-table--compact th { padding: .78rem .8rem; }
.football-league-bracket-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: .9rem; }
.football-league-bracket-list article { border: 1px solid rgba(14,125,121,.18); border-radius: 22px; padding: .95rem; background: rgba(255,255,255,.88); box-shadow: 0 12px 30px rgba(15,23,42,.05); }
.football-league-bracket-list h3 { margin: 0 0 .8rem; color: #087c80; font-size: .9rem; text-transform: uppercase; letter-spacing: .12em; }
.football-league-bracket-list article > div { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: .5rem; padding: .55rem 0; border-top: 1px solid rgba(15,23,42,.08); font-size: .86rem; font-weight: 850; }
.football-league-bracket-list article > div span:last-child { text-align: right; }
.football-mini-list { display: grid; gap: .65rem; }
.football-mini-list a, .football-mini-list > div { display: grid; grid-template-columns: auto 1fr auto; gap: .75rem; align-items: center; padding: .65rem; border: 1px solid rgba(15,23,42,.08); border-radius: 18px; background: rgba(248,250,252,.85); text-decoration: none; color: #0f172a; }
.football-mini-list--compact a, .football-mini-list--compact > div { grid-template-columns: 1fr auto; }
.football-mini-list img { width: 40px; height: 40px; object-fit: cover; border-radius: 999px; background: #fff; border: 1px solid rgba(15,23,42,.08); }
.football-mini-list strong { display: block; color: #0f172a; }
.football-mini-list small { display: block; color: #64748b; font-weight: 750; }
.football-mini-list b { background: #d9f7f4; color: #0e7d79; border-radius: 999px; padding: .45rem .7rem; min-width: 2.25rem; text-align: center; }
.football-side-panel__subhead { margin-top: 1rem; }
.football-season-history { display: grid; gap: .65rem; }
.football-season-history article { border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: .75rem; background: rgba(248,250,252,.82); display: grid; gap: .25rem; }
.football-season-history strong { color: #0f172a; }
.football-season-history span, .football-season-history small { color: #64748b; font-weight: 750; }
.football-header-match-row--league-centre { background: rgba(255,255,255,.92) !important; }
html[data-theme="dark"] .football-league-tabs a,
html[data-theme="dark"] .football-league-summary-grid article,
html[data-theme="dark"] .football-league-bracket-list article,
html[data-theme="dark"] .football-mini-list a,
html[data-theme="dark"] .football-mini-list > div,
html[data-theme="dark"] .football-season-history article,
html[data-theme="dark"] .football-header-match-row--league-centre { background:#1c1c1c!important; border-color: rgba(148,163,184,.22); color: #e5e7eb; }
html[data-theme="dark"] .football-league-summary-grid strong,
html[data-theme="dark"] .football-mini-list strong,
html[data-theme="dark"] .football-season-history strong { color: #f8fafc; }
html[data-theme="dark"] .football-league-summary-grid small,
html[data-theme="dark"] .football-mini-list small,
html[data-theme="dark"] .football-season-history span,
html[data-theme="dark"] .football-season-history small { color: #cbd5e1; }
@media (max-width: 900px) { .football-league-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .football-fixtures-hero .football-fixture-hero-actions, .football-league-hero .football-season-switcher { margin-left: 0; justify-items: stretch; width: 100%; } .football-fixture-hero-actions__tabs { justify-content: flex-start; } }
@media (max-width: 560px) { .football-league-summary-grid { grid-template-columns: 1fr 1fr; gap: .7rem; } .football-league-summary-grid article { padding: .82rem; border-radius: 18px; } .football-league-tabs a { padding: .62rem .78rem; font-size: .82rem; } }


/* v222 league overview + header fallback polish */
.football-league-tabs a.is-active{background:#0eaaa7;color:#fff;border-color:#0eaaa7;box-shadow:0 14px 30px rgba(14,170,167,.22)}
.football-league-overview-grid{display:none}.football-league-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.football-league-wide-list{display:grid;gap:.8rem}.football-season-history--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.85rem}.football-link-list--cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8rem}.football-league-briefs{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1rem;margin:1rem 0 1.8rem}.football-league-brief{border:1px solid rgba(14,125,121,.16);border-radius:24px;background: rgba(255,255,255,.94);box-shadow:0 18px 45px rgba(15,23,42,.055);padding:1rem;min-width:0}.football-league-brief--standings{grid-row:span 2}.football-league-brief__head{display:flex;align-items:center;justify-content:space-between;gap:.85rem;margin-bottom:.75rem}.football-league-brief__head span{display:inline-flex;align-items:center;gap:.5rem;color:#087c80;font-size:.78rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.football-league-brief__head span i{width:30px;height:30px;display:grid;place-items:center;border-radius:12px;background:rgba(14,170,167,.13)}.football-league-brief__head a{display:inline-flex;align-items:center;gap:.35rem;color:#0e7d79;font-size:.82rem;font-weight:900;text-decoration:none;white-space:nowrap}.football-brief-table,.football-brief-list{display:grid;gap:.55rem}.football-brief-table a{display:grid;grid-template-columns:30px 34px minmax(0,1fr) auto;align-items:center;gap:.65rem;text-decoration:none;color:#0f172a;background:rgba(248,250,252,.9);border:1px solid rgba(15,23,42,.07);border-radius:16px;padding:.58rem .68rem}.football-brief-table b{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:rgba(14,170,167,.12);color:#087c80}.football-brief-table img{width:34px;height:34px;object-fit:contain;border-radius:999px;background:#fff;border:1px solid rgba(15,23,42,.08)}.football-brief-table strong{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.football-brief-table em{font-style:normal;color:#64748b;font-size:.82rem;font-weight:900}.football-brief-list a{display:grid;gap:.18rem;text-decoration:none;color:#0f172a;background:rgba(248,250,252,.86);border:1px solid rgba(15,23,42,.07);border-radius:16px;padding:.65rem .75rem}.football-brief-list a small{color:#64748b;font-size:.78rem;font-weight:850}.football-brief-list a strong{font-size:.94rem;line-height:1.25}.football-brief-list--scores a strong b{color:#087c80;margin:0 .25rem}.football-brief-list--players a{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.football-brief-list--players img{width:34px;height:34px;object-fit:cover;border-radius:999px;background:#fff;border:1px solid rgba(15,23,42,.08)}.football-brief-list--players span{display:grid;min-width:0}.football-brief-list--players span strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.football-brief-list--players b{background:#d9f7f4;color:#0e7d79;border-radius:999px;padding:.38rem .62rem;min-width:2rem;text-align:center}.football-league-brief .football-muted{margin:.25rem 0 0;color:#64748b;font-weight:750}.football-header-tablemini__empty{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;min-height:76px;padding:.85rem 1rem!important;border-radius:20px;background:rgba(14,170,167,.10)!important;text-decoration:none}.football-header-tablemini__empty>span{min-width:0;display:grid;gap:.1rem}.football-header-tablemini__empty strong{white-space:normal!important;line-height:1.05}.football-header-tablemini__empty small{display:block;color:#64748b;font-size:.75rem;font-weight:800}.football-header-tablemini__empty b{width:44px;height:44px;display:grid;place-items:center;border-radius:999px;background:rgba(14,170,167,.14);color:#087c80}.football-header-tablemini__empty>i{color:#087c80;font-size:1.1rem}html[data-theme="dark"] .football-league-overview-grid a,html[data-theme="dark"] .football-header-tablemini__empty{background:#1c1c1c!important;border-color:rgba(45,212,191,.18);color:#e5f2ff;}html[data-theme="dark"] .football-league-overview-grid small,html[data-theme="dark"] .football-header-tablemini__empty small{color:#9fb2c8}@media(max-width:900px){.football-league-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.football-league-two-col{grid-template-columns:1fr}}@media(max-width:560px){.football-league-overview-grid{grid-template-columns:1fr}.football-league-overview-grid a{min-height:112px;border-radius:18px}}

/* v223 fixture pages, canonical standings links and clean header fallback */
html,
body{
    max-width:100%;
    overflow-x:hidden;
}
.site-shell,
.football-page,
.football-layout,
.football-section,
.football-sidebar-stack,
.football-schedule-list,
.football-schedule-day,
.football-schedule-competition{
    min-width:0;
    max-width:100%;
}
.football-fixtures-page .football-layout--wide-main{
    grid-template-columns:minmax(0,1fr) minmax(280px,340px);
    align-items:start;
    overflow:visible;
}
.football-fixtures-page .football-section--schedule,
.football-fixtures-page .football-schedule-list,
.football-fixtures-page .football-schedule-competition{
    overflow:clip;
}
.football-fixtures-page .football-schedule-row{
    max-width:100%;
    overflow:hidden;
}
.football-fixtures-page .football-schedule-row__team,
.football-fixtures-page .football-schedule-row__middle,
.football-fixtures-page .football-schedule-row__meta{
    min-width:0;
}
.football-fixtures-page .football-schedule-row__team span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.football-fixtures-page .football-link-list a span{
    white-space:normal;
}
.football-fixtures-page .football-compact-hero{
    max-width:100%;
    overflow:clip;
}
.football-fixtures-page .football-fixture-hero-actions{
    min-width:0;
    max-width:100%;
}
.football-fixtures-page .football-season-switcher{
    max-width:100%;
}
.football-fixtures-page .football-season-switcher select{
    max-width:min(100%,340px);
}
@media (max-width:1180px){
    .football-fixtures-page .football-layout--wide-main{
        grid-template-columns:1fr;
    }
    .football-fixtures-page .football-sidebar-stack{
        width:100%;
    }
}
@media (max-width:760px){
    .football-fixtures-page .football-section--schedule{
        padding-inline:.75rem;
    }
    .football-fixtures-page .football-schedule-row{
        grid-template-columns:minmax(0,1fr) minmax(58px,78px) minmax(0,1fr)!important;
    }
}
.football-header-tablemini a.football-header-tablemini__empty{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 48px!important;
    align-items:center!important;
    gap:12px!important;
    min-height:96px!important;
    padding:16px 18px!important;
    border-radius:22px!important;
    background: rgba(255,255,255,.92) !important;
    color:#0b1632!important;
    text-decoration:none!important;
}
.football-header-tablemini a.football-header-tablemini__empty > i{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:rgba(14,170,167,.12);
    color:#087c80;
    font-size:1rem;
}
.football-header-tablemini a.football-header-tablemini__empty > span{
    display:block!important;
    min-width:0!important;
    text-align:left!important;
    color:inherit!important;
}
.football-header-tablemini a.football-header-tablemini__empty strong{
    display:block!important;
    color:#0b1632!important;
    font-size:.98rem!important;
    line-height:1.1!important;
    white-space:normal!important;
}
.football-header-tablemini a.football-header-tablemini__empty small{
    display:block!important;
    color:#64748b!important;
    font-size:.76rem!important;
    font-weight:800!important;
    line-height:1.25!important;
    margin-top:3px!important;
}
.football-header-tablemini a.football-header-tablemini__empty b{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    background:rgba(14,170,167,.16)!important;
    color:#087c80!important;
}
html[data-theme="dark"] .football-header-tablemini a.football-header-tablemini__empty{
    background:#1c1c1c!important;
    border-color:rgba(45,212,191,.18)!important;
    color:#f8fafc!important;
}
html[data-theme="dark"] .football-header-tablemini a.football-header-tablemini__empty strong{
    color:#f8fafc!important;
}
html[data-theme="dark"] .football-header-tablemini a.football-header-tablemini__empty small{
    color:#b9c8dc!important;
}
@media (max-width:520px){
    .football-header-tablemini a.football-header-tablemini__empty{
        grid-template-columns:38px minmax(0,1fr) 42px!important;
        min-height:82px!important;
        padding:13px!important;
    }
    .football-header-tablemini a.football-header-tablemini__empty > i,
    .football-header-tablemini a.football-header-tablemini__empty b{
        width:38px!important;
        height:38px!important;
        min-width:38px!important;
    }
}


/* v224 promotion/brand placements */
.football-promo-slot {
    border: 1px solid rgba(14,125,121,.16);
    border-radius: 28px;
    background: rgba(248,250,252,.92);
    box-shadow: 0 18px 42px rgba(15,23,42,.06);
    display: grid;
    gap: .85rem;
    margin: clamp(1rem, 2vw, 1.35rem) 0;
    padding: clamp(.85rem, 1.8vw, 1.1rem);
    min-width: 0;
    overflow: hidden;
}
.football-promo-slot--billboard {
    grid-template-columns: minmax(150px, 240px) minmax(0, 1fr);
    align-items: center;
}
.football-promo-slot--inline {
    grid-template-columns: minmax(130px, 190px) minmax(0, 1fr);
    align-items: center;
    border-radius: 22px;
    margin: 1rem 0 0;
}
.football-promo-slot--sidebar {
    grid-template-columns: 1fr;
    border-radius: 22px;
    margin: 1rem 0 0;
}
.football-promo-slot__label {
    display: grid;
    gap: .25rem;
    align-content: center;
}
.football-promo-slot__label span {
    color: #087c80;
    font-size: .76rem;
    font-weight: 950;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.football-promo-slot__label small {
    color: #64748b;
    font-weight: 850;
}
.football-promo-slot__creative {
    min-height: 96px;
    min-width: 0;
    display: grid;
    align-items: stretch;
}
.football-promo-slot--sidebar .football-promo-slot__creative { min-height: 210px; }
.football-promo-slot__creative > .kisure-safe-ad-slot {
    width: 100%;
    min-width: 0;
}
.football-promo-slot__fallback {
    align-items: center;
    background: rgba(219,250,247,.75);
    border: 1px dashed rgba(14,125,121,.28);
    border-radius: 20px;
    color: #0b1632;
    display: grid;
    gap: .2rem;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 96px;
    padding: 1rem 1.15rem;
    text-decoration: none;
}
.football-promo-slot__fallback strong,
.football-promo-slot__fallback small { grid-column: 1; }
.football-promo-slot__fallback strong { font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.1; }
.football-promo-slot__fallback small { color: #64748b; font-weight: 780; line-height: 1.25; }
.football-promo-slot__fallback b {
    align-items: center;
    background: #0eaaa7;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-weight: 950;
    gap: .45rem;
    grid-column: 2;
    grid-row: 1 / span 2;
    justify-self: end;
    padding: .72rem 1rem;
    white-space: nowrap;
}
.football-promo-slot__creative:has(.kisure-safe-ad-slot) .football-promo-slot__fallback {
    display: none;
}
.football-ad-panel .football-sidebar-ad-slot {
    background: rgba(255,255,255,.92);
    border-style: solid;
}
html[data-theme="dark"] .football-promo-slot {
    background:#1c1c1c;
    border-color: rgba(45,212,191,.18);
    box-shadow:none;
}
html[data-theme="dark"] .football-promo-slot__fallback {
    background:#1c1c1c;
    border-color: rgba(45,212,191,.24);
    color: #f8fafc;
}
html[data-theme="dark"] .football-promo-slot__label small,
html[data-theme="dark"] .football-promo-slot__fallback small { color: #b9c8dc; }
@media (max-width: 760px) {
    .football-promo-slot,
    .football-promo-slot--billboard,
    .football-promo-slot--inline {
        grid-template-columns: 1fr;
        border-radius: 20px;
    }
    .football-promo-slot__creative { min-height: 84px; }
    .football-promo-slot__fallback {
        grid-template-columns: 1fr;
        min-height: 92px;
        padding: .9rem;
    }
    .football-promo-slot__fallback b {
        grid-column: 1;
        grid-row: auto;
        justify-self: start;
        padding: .58rem .82rem;
    }
}



/* v237 clean frontend sidebar behaviour: simple v30-style sticky columns, no inner scroll rails. */
@media (min-width: 1200px) {
    .content-grid,
    .article-shell,
    .football-layout,
    .football-layout--wide-main,
    .football-layout--match-page,
    .football-main-grid,
    .football-content-grid,
    .sports-desk-layout,
    .article-main-section,
    .main-content-wrapper {
        align-items: start;
        overflow: visible;
    }

    .sticky-sidebar,
    .article-rail.sticky-sidebar,
    .football-sidebar-stack.sticky-sidebar,
    .football-side-panel.sticky-sidebar,
    .continue-reading-trending.sticky-sidebar {
        position: -webkit-sticky;
        position: sticky;
        top: 7.4rem;
        align-self: start;
        height: max-content;
        min-width: 0;
        transform: none;
        overflow: visible;
        z-index: 10;
    }
}
@media (max-width: 1199.98px) {
    .sticky-sidebar,
    .article-rail.sticky-sidebar,
    .football-sidebar-stack.sticky-sidebar,
    .football-side-panel.sticky-sidebar,
    .continue-reading-trending.sticky-sidebar {
        position: static;
        top: auto;
        height: auto;
    }
}
.site-header,
.site-header__inner,
.site-header__bar,
.site-header__nav,
.header-menu-item,
.theme-menu {
    overflow: visible;
}
.site-header {
    z-index: 7000;
    isolation: isolate;
}
.header-menu-item__dropdown,
.theme-menu__dropdown {
    z-index: 7200;
}
html[data-theme="dark"] .football-league-brief{background:#1c1c1c;border-color:rgba(45,212,191,.18);color:#e5f2ff;}html[data-theme="dark"] .football-brief-table a,html[data-theme="dark"] .football-brief-list a{background:#1c1c1c;border-color:rgba(45,212,191,.12);color:#e5f2ff;}html[data-theme="dark"] .football-brief-table em,html[data-theme="dark"] .football-brief-list a small,html[data-theme="dark"] .football-league-brief .football-muted{color:#9fb2c8}
@media(max-width:900px){.football-league-briefs{grid-template-columns:1fr}.football-league-brief--standings{grid-row:auto}}@media(max-width:560px){.football-league-brief{border-radius:18px;padding:.82rem}.football-league-brief__head{align-items:flex-start;flex-direction:column}.football-brief-table a{grid-template-columns:28px minmax(0,1fr) auto}.football-brief-table img{display:none}.football-brief-table em{font-size:.75rem}}

/* v238 hard reset and forced sticky sidebar behaviour.
   This deliberately avoids inner rail wrappers and makes the sidebar itself stick. */
@media (min-width: 992px) {
    .site-main,
    .site-shell,
    .site-shell--wide,
    .content-grid,
    .article-shell,
    .article-main-section,
    .main-content-wrapper,
    .sports-desk-layout,
    .football-page,
    .football-layout,
    .football-layout--wide-main,
    .football-layout--match-page,
    .football-main-grid,
    .football-content-grid,
    .football-section--standings-table,
    .football-section--table,
    .football-fixtures-page,
    .football-standings-page,
    .football-match-page,
    .news-view-page,
    .home-news-layout,
    .category-news-layout,
    .tag-news-layout {
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        contain: none !important;
        transform: none !important;
        filter: none !important;
        perspective: none !important;
        isolation: auto !important;
    }

    .content-grid,
    .article-shell,
    .article-main-section,
    .sports-desk-layout,
    .football-layout,
    .football-layout--wide-main,
    .football-layout--match-page,
    .football-main-grid,
    .football-content-grid {
        align-items: start !important;
    }

    .sticky-sidebar,
    aside.sticky-sidebar,
    .sidebar-stack.sticky-sidebar,
    .article-rail.sticky-sidebar,
    .football-sidebar-stack.sticky-sidebar,
    .football-side-panel.sticky-sidebar,
    .football-layout > aside.football-side-panel,
    .football-layout > .football-sidebar-stack,
    .continue-reading-trending.sticky-sidebar {
        align-self: start !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        position: -webkit-sticky !important;
        position: sticky !important;
        top: var(--kisure-sticky-top, 118px) !important;
        transform: none !important;
        width: 100%;
        z-index: 80 !important;
    }

    .kisure-js-sticky-placeholder {
        display: none;
        min-width: 0;
        pointer-events: none;
        visibility: hidden;
    }

    .kisure-js-sticky-placeholder.is-active {
        display: block;
    }

    .sticky-sidebar.is-js-sticky-fixed,
    aside.sticky-sidebar.is-js-sticky-fixed,
    .sidebar-stack.sticky-sidebar.is-js-sticky-fixed,
    .article-rail.sticky-sidebar.is-js-sticky-fixed,
    .football-sidebar-stack.sticky-sidebar.is-js-sticky-fixed,
    .football-side-panel.sticky-sidebar.is-js-sticky-fixed,
    .continue-reading-trending.sticky-sidebar.is-js-sticky-fixed {
        position: fixed !important;
        margin: 0 !important;
        max-width: none !important;
        z-index: 800 !important;
        will-change: top, left, width;
    }
}

@media (max-width: 991.98px) {
    .sticky-sidebar,
    aside.sticky-sidebar,
    .sidebar-stack.sticky-sidebar,
    .article-rail.sticky-sidebar,
    .football-sidebar-stack.sticky-sidebar,
    .football-side-panel.sticky-sidebar,
    .football-layout > aside.football-side-panel,
    .football-layout > .football-sidebar-stack,
    .continue-reading-trending.sticky-sidebar {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        position: static !important;
        top: auto !important;
        width: 100% !important;
    }

    .sticky-sidebar.is-js-sticky-fixed,
    .kisure-js-sticky-placeholder {
        display: none !important;
        position: static !important;
    }
}

/* v290: balanced fixture rows on mobile/tablet, finished prediction result buttons */
.football-schedule-row {
    grid-template-columns: minmax(0, 1fr) minmax(104px, 150px) minmax(0, 1fr) !important;
    grid-template-areas:
        "meta meta meta"
        "home middle away"
        "actions actions actions" !important;
    align-items: center !important;
    row-gap: .55rem !important;
}
.football-schedule-row__meta { grid-area: meta !important; }
.football-schedule-row__team--home { grid-area: home !important; }
.football-schedule-row__middle { grid-area: middle !important; }
.football-schedule-row__team--away { grid-area: away !important; }
.football-schedule-row__actions {
    grid-area: actions !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: .55rem !important;
    min-width: 0 !important;
}
.football-schedule-row__prediction {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .42rem !important;
    width: fit-content !important;
    max-width: 100% !important;
    padding: .52rem .85rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(14, 170, 167, .24) !important;
    background: rgba(224, 252, 247, .88) !important;
    color: #087c80 !important;
    font-size: .78rem !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: 0 10px 24px rgba(2, 12, 27, .06) !important;
}
.football-schedule-row__prediction:hover {
    background: #0eaaa7 !important;
    border-color: #0eaaa7 !important;
    color: #fff !important;
    transform: translateY(-1px);
}
.football-schedule-row__prediction--won {
    background: rgba(220, 252, 231, .92) !important;
    border-color: rgba(22, 163, 74, .28) !important;
    color: #166534 !important;
}
.football-schedule-row__prediction--lost {
    background: rgba(254, 226, 226, .92) !important;
    border-color: rgba(220, 38, 38, .24) !important;
    color: #991b1b !important;
}
.football-schedule-row__prediction--void,
.football-schedule-row__prediction--settled {
    background: rgba(241, 245, 249, .94) !important;
    border-color: rgba(100, 116, 139, .18) !important;
    color: #334155 !important;
}
.football-schedule-row__scoreline {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .34rem !important;
    white-space: nowrap !important;
}
.football-schedule-row__scoreline b,
.football-schedule-row__scoreline span,
.football-schedule-row__scoreline i {
    flex: 0 0 auto !important;
}
.football-schedule-row__scoreline i {
    color: #0e7d79 !important;
    font-style: normal !important;
    font-weight: 950 !important;
}
.football-schedule-row__team img,
.football-schedule-row__team b {
    flex: 0 0 auto !important;
}
.football-schedule-row__team span {
    min-width: 0 !important;
}
html[data-theme="dark"] .football-schedule-row__prediction {
    background:#1c1c1c!important;
    border-color: rgba(45, 212, 191, .24) !important;
    color: #a7fff4 !important;
    box-shadow:none!important;
}
html[data-theme="dark"] .football-schedule-row__prediction:hover {
    background: #0f766e !important;
    color: #ffffff !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--won {
    background: rgba(20, 83, 45, .48) !important;
    border-color: rgba(74, 222, 128, .24) !important;
    color: #bbf7d0 !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--lost {
    background: rgba(127, 29, 29, .48) !important;
    border-color: rgba(248, 113, 113, .24) !important;
    color: #fecaca !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--void,
html[data-theme="dark"] .football-schedule-row__prediction--settled {
    background:#242424!important;
    border-color: rgba(148, 163, 184, .22) !important;
    color: #dbeafe !important;
}
html[data-theme="dark"] .football-schedule-row__scoreline i {
    color: #7dd3fc !important;
}
@media (max-width: 980px) {
    .football-schedule-row {
        grid-template-columns: minmax(0, 1fr) minmax(86px, 118px) minmax(0, 1fr) !important;
        column-gap: .5rem !important;
        row-gap: .48rem !important;
        padding: .78rem .72rem !important;
    }
    .football-schedule-row__team {
        gap: .32rem !important;
        font-size: clamp(.72rem, 2.6vw, .92rem) !important;
        line-height: 1.12 !important;
        min-width: 0 !important;
    }
    .football-schedule-row__team--home {
        justify-content: flex-end !important;
        text-align: right !important;
    }
    .football-schedule-row__team--away {
        justify-content: flex-start !important;
        text-align: left !important;
    }
    .football-schedule-row__team span {
        display: -webkit-box !important;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: normal !important;
        max-width: 100% !important;
    }
    .football-schedule-row__team img,
    .football-schedule-row__team b {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
    }
    .football-schedule-row__middle {
        min-width: 0 !important;
        max-width: none !important;
        text-align: center !important;
        justify-items: center !important;
    }
    .football-schedule-row__middle strong {
        font-size: clamp(.9rem, 3vw, 1.05rem) !important;
        min-width: 0 !important;
    }
    .football-schedule-row__middle em {
        display: block !important;
        max-width: 112px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: .64rem !important;
    }
    .football-schedule-row__middle small {
        display: none !important;
    }
    .football-schedule-row__prediction {
        padding: .48rem .75rem !important;
        font-size: .72rem !important;
    }
}
@media (max-width: 420px) {
    .football-schedule-row {
        grid-template-columns: minmax(0, 1fr) minmax(72px, 92px) minmax(0, 1fr) !important;
        column-gap: .34rem !important;
        padding-inline: .54rem !important;
    }
    .football-schedule-row__team img,
    .football-schedule-row__team b {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
    }
    .football-schedule-row__middle strong {
        gap: .22rem !important;
        font-size: .84rem !important;
    }
    .football-schedule-row__middle em {
        max-width: 86px !important;
        font-size: .58rem !important;
    }
}

/* v290: finished prediction buttons on football match cards */
.football-match-card__actions {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: .55rem !important;
    margin-top: .7rem !important;
}
.football-match-card__prediction {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .42rem !important;
    width: fit-content !important;
    max-width: 100% !important;
    padding: .56rem .9rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(14,170,167,.24) !important;
    background: rgba(224,252,247,.9) !important;
    color: #087c80 !important;
    font-size: .78rem !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}
.football-match-card__prediction:hover {
    background: #0eaaa7 !important;
    border-color: #0eaaa7 !important;
    color: #ffffff !important;
}
.football-match-card__prediction--won { background: rgba(220,252,231,.92) !important; border-color: rgba(22,163,74,.28) !important; color: #166534 !important; }
.football-match-card__prediction--lost { background: rgba(254,226,226,.92) !important; border-color: rgba(220,38,38,.24) !important; color: #991b1b !important; }
.football-match-card__prediction--void,
.football-match-card__prediction--settled { background: rgba(241,245,249,.94) !important; border-color: rgba(100,116,139,.18) !important; color: #334155 !important; }
html[data-theme="dark"] .football-match-card__prediction { background:#1c1c1c!important; border-color: rgba(45,212,191,.24) !important; color: #a7fff4 !important; }
html[data-theme="dark"] .football-match-card__prediction:hover { background: #0f766e !important; color: #ffffff !important; }
html[data-theme="dark"] .football-match-card__prediction--won { background: rgba(20,83,45,.48) !important; border-color: rgba(74,222,128,.24) !important; color: #bbf7d0 !important; }
html[data-theme="dark"] .football-match-card__prediction--lost { background: rgba(127,29,29,.48) !important; border-color: rgba(248,113,113,.24) !important; color: #fecaca !important; }
html[data-theme="dark"] .football-match-card__prediction--void,
html[data-theme="dark"] .football-match-card__prediction--settled { background:#242424!important; border-color: rgba(148,163,184,.22) !important; color: #dbeafe !important; }
@media (max-width: 640px) {
    .football-match-card__teams {
        grid-template-columns: minmax(0,1fr) minmax(72px,92px) minmax(0,1fr) !important;
        align-items: center !important;
        gap: .35rem !important;
    }
    .football-match-card__team {
        min-width: 0 !important;
        gap: .32rem !important;
    }
    .football-match-card__team span {
        display: -webkit-box !important;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden !important;
        white-space: normal !important;
        line-height: 1.12 !important;
    }
    .football-match-card__score {
        min-width: 0 !important;
        white-space: nowrap !important;
        gap: .24rem !important;
        font-size: .9rem !important;
    }
}

/* v291: mobile/tablet fixtures must read name-logo | score/time | logo-name */
.football-schedule-row__team--home,
.football-schedule-row__team--away {
    min-width: 0 !important;
}
.football-schedule-row__team--home {
    flex-direction: row !important;
    justify-content: flex-end !important;
    justify-self: stretch !important;
    text-align: right !important;
}
.football-schedule-row__team--away {
    flex-direction: row !important;
    justify-content: flex-start !important;
    justify-self: stretch !important;
    text-align: left !important;
}
.football-schedule-row__team--home span,
.football-schedule-row__team--away span {
    min-width: 0 !important;
}
.football-schedule-row__team--home img,
.football-schedule-row__team--home b,
.football-schedule-row__team--away img,
.football-schedule-row__team--away b {
    flex: 0 0 auto !important;
    order: initial !important;
}
.football-schedule-row__middle {
    justify-self: center !important;
}

@media (max-width: 980px) {
    .football-schedule-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) clamp(78px, 22vw, 118px) minmax(0, 1fr) !important;
        grid-template-areas:
            "meta meta meta"
            "home middle away"
            "actions actions actions" !important;
        align-items: center !important;
        column-gap: clamp(.28rem, 1.8vw, .62rem) !important;
        row-gap: .5rem !important;
        padding: .78rem clamp(.5rem, 2vw, .85rem) !important;
    }
    .football-schedule-row__meta {
        grid-area: meta !important;
        text-align: center !important;
    }
    .football-schedule-row__team--home {
        grid-area: home !important;
        flex-direction: row !important;
        justify-content: flex-end !important;
        text-align: right !important;
    }
    .football-schedule-row__team--away {
        grid-area: away !important;
        flex-direction: row !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }
    .football-schedule-row__team {
        display: flex !important;
        align-items: center !important;
        gap: .34rem !important;
        min-width: 0 !important;
        width: 100% !important;
        line-height: 1.12 !important;
    }
    .football-schedule-row__team span {
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: normal !important;
        max-width: min(100%, 8.2rem) !important;
        font-size: clamp(.68rem, 2.55vw, .88rem) !important;
        font-weight: 950 !important;
    }
    .football-schedule-row__team--home span {
        text-align: right !important;
    }
    .football-schedule-row__team--away span {
        text-align: left !important;
    }
    .football-schedule-row__team img,
    .football-schedule-row__team b {
        width: clamp(22px, 6.7vw, 28px) !important;
        height: clamp(22px, 6.7vw, 28px) !important;
        min-width: clamp(22px, 6.7vw, 28px) !important;
        flex: 0 0 auto !important;
    }
    .football-schedule-row__middle {
        grid-area: middle !important;
        justify-self: stretch !important;
        justify-items: center !important;
        text-align: center !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: 0 !important;
        border-left: 0 !important;
    }
    .football-schedule-row__middle strong,
    .football-schedule-row__scoreline {
        justify-content: center !important;
        text-align: center !important;
        font-size: clamp(.82rem, 3vw, 1rem) !important;
        max-width: 100% !important;
    }
    .football-schedule-row__middle em {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: clamp(.54rem, 2vw, .66rem) !important;
        text-align: center !important;
    }
    .football-schedule-row__actions {
        grid-area: actions !important;
    }
}

@media (max-width: 420px) {
    .football-schedule-row {
        grid-template-columns: minmax(0, 1fr) clamp(70px, 24vw, 88px) minmax(0, 1fr) !important;
        column-gap: .28rem !important;
    }
    .football-schedule-row__team {
        gap: .25rem !important;
    }
    .football-schedule-row__team span {
        font-size: .64rem !important;
        max-width: 5.7rem !important;
    }
    .football-schedule-row__middle strong,
    .football-schedule-row__scoreline {
        font-size: .78rem !important;
        gap: .18rem !important;
    }
}

/* v292: stale fixture result-sync state */
.football-schedule-row.is-sync-pending {
    border-color: rgba(245, 158, 11, .26) !important;
    background: rgba(255, 255, 255, .96) !important;
}
.football-schedule-row.is-sync-pending .football-schedule-row__middle em {
    color: #b45309 !important;
    font-weight: 950 !important;
}
.football-schedule-row__prediction--sync {
    background: rgba(254, 243, 199, .95) !important;
    border-color: rgba(245, 158, 11, .34) !important;
    color: #92400e !important;
}
html[data-theme="dark"] .football-schedule-row.is-sync-pending {
    background:#1c1c1c!important;
    border-color: rgba(245, 158, 11, .24) !important;
}
html[data-theme="dark"] .football-schedule-row.is-sync-pending .football-schedule-row__middle em {
    color: #fde68a !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--sync {
    background: rgba(69, 45, 10, .82) !important;
    border-color: rgba(251, 191, 36, .30) !important;
    color: #fde68a !important;
}

/* v297: responsive match scoreboard event alignment
   Keep goal and assist rows in the desktop three-column shape on phones/tablets.
   This prevents scorer/assist names from being squeezed into tiny two-column blocks. */
@media (max-width: 900px) {
    .article-match-scoreboard .article-match-scoreboard__support,
    .article-match-scoreboard .article-match-scoreboard__support--goals,
    .article-match-scoreboard .article-match-scoreboard__support--penalties,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard--match-page .article-match-scoreboard__support,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        align-items: center !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) clamp(42px, 12vw, 64px) minmax(0, 1fr) !important;
        gap: .65rem clamp(.45rem, 2.4vw, .9rem) !important;
        max-width: min(100%, 680px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 100% !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support--single,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--single {
        grid-template-columns: 1fr !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-center,
    .article-match-scoreboard .article-match-scoreboard__support-center--icon,
    .article-match-scoreboard .article-match-scoreboard__support-center--label,
    .article-match-scoreboard .article-match-scoreboard__support-center--empty,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center--icon,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center--label,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center--empty {
        align-self: center !important;
        display: grid !important;
        grid-column: auto !important;
        justify-content: center !important;
        justify-items: center !important;
        min-height: 0 !important;
        min-width: 0 !important;
        order: initial !important;
        place-items: center !important;
        text-align: center !important;
        visibility: visible !important;
        width: auto !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-center--empty,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center--empty {
        visibility: hidden !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center .football-event-icon {
        align-items: center !important;
        display: inline-flex !important;
        justify-content: center !important;
        min-height: 38px !important;
        min-width: 38px !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col,
    .article-match-scoreboard .article-match-scoreboard__support-col--home,
    .article-match-scoreboard .article-match-scoreboard__support-col--away,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--home,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--away {
        display: block !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--home,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--home {
        text-align: right !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--away,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--away {
        text-align: left !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col strong,
    .article-match-scoreboard .article-match-scoreboard__support-center strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center strong {
        display: block !important;
        font-size: clamp(.86rem, 3.2vw, 1rem) !important;
        font-weight: 900 !important;
        line-height: 1.48 !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: break-word !important;
        white-space: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col strong span,
    .article-match-scoreboard .article-match-scoreboard__support-center strong span,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col strong span,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center strong span {
        display: block !important;
        max-width: 100% !important;
        overflow-wrap: break-word !important;
        white-space: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--home strong,
    .article-match-scoreboard .article-match-scoreboard__support-col--home strong span,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--home strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--home strong span {
        margin-left: auto !important;
        margin-right: 0 !important;
        text-align: right !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--away strong,
    .article-match-scoreboard .article-match-scoreboard__support-col--away strong span,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--away strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--away strong span {
        margin-left: 0 !important;
        margin-right: auto !important;
        text-align: left !important;
    }

    .article-match-scoreboard__more-body .article-match-scoreboard__support:first-child,
    .article-match-scoreboard__more-body .article-match-scoreboard__details--halftime + .article-match-scoreboard__support {
        margin-top: 14px !important;
    }
}

@media (max-width: 420px) {
    .article-match-scoreboard .article-match-scoreboard__support,
    .article-match-scoreboard .article-match-scoreboard__support--goals,
    .article-match-scoreboard .article-match-scoreboard__support--penalties,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard--match-page .article-match-scoreboard__support,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1fr) !important;
        gap: .55rem .45rem !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center .football-event-icon {
        min-height: 34px !important;
        min-width: 34px !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col strong,
    .article-match-scoreboard .article-match-scoreboard__support-center strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center strong {
        font-size: clamp(.78rem, 3.65vw, .92rem) !important;
        line-height: 1.42 !important;
    }
}

/* v298: mobile/tablet scoreboard event sections with centered title and two team columns */
@media (max-width: 900px) {
    .article-match-scoreboard .article-match-scoreboard__support--goals,
    .article-match-scoreboard .article-match-scoreboard__support--penalties,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        align-items: start !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        grid-template-areas:
            "event-title event-title"
            "home-events away-events" !important;
        gap: .45rem clamp(.85rem, 4.2vw, 1.55rem) !important;
        max-width: min(100%, 560px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: left !important;
        width: 100% !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support--goals,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals {
        margin-top: 16px !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard .article-match-scoreboard__support--penalties,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties {
        margin-top: 18px !important;
        padding-top: 14px !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support--goals .article-match-scoreboard__support-center,
    .article-match-scoreboard .article-match-scoreboard__support--penalties .article-match-scoreboard__support-center,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals .article-match-scoreboard__support-center,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties .article-match-scoreboard__support-center,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center {
        align-items: center !important;
        display: flex !important;
        grid-area: event-title !important;
        grid-column: 1 / -1 !important;
        justify-content: center !important;
        justify-self: center !important;
        min-height: 0 !important;
        min-width: 0 !important;
        order: -1 !important;
        text-align: center !important;
        visibility: visible !important;
        width: 100% !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support--goals .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard .article-match-scoreboard__support--penalties .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties .article-match-scoreboard__support-center .football-event-icon,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center .football-event-icon {
        display: none !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support--goals .article-match-scoreboard__support-center::before,
    .article-match-scoreboard .article-match-scoreboard__support--penalties .article-match-scoreboard__support-center::before,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center::before,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals .article-match-scoreboard__support-center::before,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties .article-match-scoreboard__support-center::before,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) .article-match-scoreboard__support-center::before {
        color: #ffffff !important;
        content: none !important; /* FE850: explicit .article-match-scoreboard__support-title is the sole visible mobile heading. */
        display: block !important;
        font-family: var(--font-display) !important;
        font-size: clamp(1.02rem, 4vw, 1.25rem) !important;
        font-weight: 950 !important;
        letter-spacing: .02em !important;
        line-height: 1.2 !important;
        text-align: center !important;
        text-transform: none !important;
        white-space: nowrap !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--home,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--home {
        grid-area: home-events !important;
        grid-column: 1 !important;
        min-width: 0 !important;
        text-align: left !important;
        width: 100% !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--away,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--away {
        grid-area: away-events !important;
        grid-column: 2 !important;
        min-width: 0 !important;
        text-align: left !important;
        width: 100% !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col strong {
        display: block !important;
        font-size: clamp(.86rem, 3.25vw, 1rem) !important;
        font-weight: 900 !important;
        line-height: 1.45 !important;
        margin: 0 !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: break-word !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col strong span,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col strong span {
        display: block !important;
        margin: 0 0 .15rem !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: break-word !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-center--empty,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-center--empty {
        display: none !important;
        visibility: hidden !important;
    }
}

@media (max-width: 420px) {
    .article-match-scoreboard .article-match-scoreboard__support--goals,
    .article-match-scoreboard .article-match-scoreboard__support--penalties,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: .42rem clamp(.65rem, 3.4vw, 1rem) !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col strong,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col strong {
        font-size: clamp(.78rem, 3.55vw, .92rem) !important;
        line-height: 1.42 !important;
    }
}

/* v299: scoreboard event columns mirror team sides on match and article scorecards */
.article-match-scoreboard .article-match-scoreboard__support-col--home,
.article-match-scoreboard--match-page .article-match-scoreboard__support-col--home {
    display: flex !important;
    justify-content: flex-end !important;
    justify-items: end !important;
    text-align: right !important;
}

.article-match-scoreboard .article-match-scoreboard__support-col--away,
.article-match-scoreboard--match-page .article-match-scoreboard__support-col--away {
    display: flex !important;
    justify-content: flex-start !important;
    justify-items: start !important;
    text-align: left !important;
}

.article-match-scoreboard .article-match-scoreboard__support-col--home strong,
.article-match-scoreboard--match-page .article-match-scoreboard__support-col--home strong {
    display: grid !important;
    justify-items: end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    text-align: right !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
}

.article-match-scoreboard .article-match-scoreboard__support-col--away strong,
.article-match-scoreboard--match-page .article-match-scoreboard__support-col--away strong {
    display: grid !important;
    justify-items: start !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    max-width: 100% !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
}

.article-match-scoreboard .article-match-scoreboard__support-col--home strong span,
.article-match-scoreboard--match-page .article-match-scoreboard__support-col--home strong span {
    display: block !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    text-align: right !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
}

.article-match-scoreboard .article-match-scoreboard__support-col--away strong span,
.article-match-scoreboard--match-page .article-match-scoreboard__support-col--away strong span {
    display: block !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    max-width: 100% !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
}

@media (max-width: 900px) {
    .article-match-scoreboard .article-match-scoreboard__support--goals,
    .article-match-scoreboard .article-match-scoreboard__support--penalties,
    .article-match-scoreboard .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single),
    .article-match-scoreboard--match-page .article-match-scoreboard__support--goals,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--penalties,
    .article-match-scoreboard--match-page .article-match-scoreboard__support--assists:not(.article-match-scoreboard__support--single) {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        grid-template-areas:
            "event-title event-title"
            "home-events away-events" !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--home,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--home {
        grid-area: home-events !important;
        grid-column: 1 !important;
        justify-content: flex-end !important;
        text-align: right !important;
    }

    .article-match-scoreboard .article-match-scoreboard__support-col--away,
    .article-match-scoreboard--match-page .article-match-scoreboard__support-col--away {
        grid-area: away-events !important;
        grid-column: 2 !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }
}

/* v300: Kisure Newsroom Editor admin panel */
.newsroom-editor-panel {
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .08);
}
.newsroom-editor-score-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.newsroom-editor-score-card {
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 18px;
    background: rgba(255, 255, 255, .96);
    padding: 16px;
    display: grid;
    gap: 6px;
}
.newsroom-editor-score-card span {
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #0e7d79;
}
.newsroom-editor-score-card strong {
    font-size: 1.45rem;
    color: #0f172a;
}
.newsroom-editor-score-card small {
    color: #64748b;
    line-height: 1.45;
}
.newsroom-editor-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}
.newsroom-editor-notes {
    white-space: pre-wrap;
    background: #0f172a;
    color: #e2e8f0;
    border-radius: 16px;
    padding: 14px 16px;
    font-size: .86rem;
    line-height: 1.55;
}
.newsroom-editor-preview,
.newsroom-editor-signals {
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 18px;
    padding: 14px 16px;
    background: #fff;
}
.newsroom-editor-preview summary,
.newsroom-editor-signals summary {
    cursor: pointer;
    font-weight: 900;
    color: #0e7d79;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: .78rem;
}
.newsroom-editor-preview-grid {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 18px;
}
.newsroom-editor-preview-grid h5 {
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 900;
    color: #0f172a;
    margin-bottom: 6px;
}
.newsroom-editor-article-preview {
    max-height: 360px;
    overflow: auto;
    border-radius: 14px;
    background: #f8fafc;
    padding: 14px;
    color: #1f2937;
    line-height: 1.65;
}
.newsroom-editor-signal-list {
    display: grid;
    gap: 10px;
}
.newsroom-editor-signal {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 12px;
    border-radius: 14px;
    background: #f8fafc;
    padding: 12px;
}
.newsroom-editor-signal strong {
    color: #0f172a;
}
.newsroom-editor-signal span {
    font-weight: 900;
    color: #0e7d79;
}
.newsroom-editor-signal p {
    grid-column: 1 / -1;
    margin: 0;
    color: #64748b;
}
@media (max-width: 860px) {
    .newsroom-editor-score-grid,
    .newsroom-editor-preview-grid {
        grid-template-columns: 1fr;
    }
}

/* v303 Sports Desk hero dark-mode readability fallback. */
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__content--showcase,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__content--showcase {
    background: rgba(3, 10, 24, .54) !important;
}
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero.hero-grid--showcase,
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-tile--showcase {
    background:#1c1c1c!important;
    border-color: rgba(148, 163, 184, .24) !important;
    color: #e5edf8 !important;
}
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-title--sm {
    color: #f8fafc !important;
}
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-meta,
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-meta span {
    color: #cbd5e1 !important;
}


/* v304 Sports Desk hero image clarity and brand-uniform text panel.
   Keep the photo clear. Only the copy block gets the dark/teal readability tint. */
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__content--showcase,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__content--showcase {
    background: transparent !important;
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase::before,
.sports-desk-page .sports-desk-home-hero .hero-story--feature::before,
.sports-desk-page .sports-desk-home-hero .hero-story--showcase::after,
.sports-desk-page .sports-desk-home-hero .hero-story--feature::after {
    opacity: 0 !important;
    background: transparent !important;
    pointer-events: none !important;
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__media img {
    filter: none !important;
    opacity: 1 !important;
    transform: scale(1.01);
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__copy,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__copy {
    position: relative;
    isolation: isolate;
    width: min(620px, 68%);
    max-width: 620px;
    padding: clamp(1.5rem, 3vw, 2.35rem) clamp(1.4rem, 3vw, 2.55rem);
    margin-left: clamp(1.25rem, 3vw, 2.65rem);
    border-radius: 28px;
    overflow: hidden;
    background: rgba(14, 125, 121, .74) !important;
    border: 1px solid rgba(255, 255, 255, .14);
    box-shadow: 0 28px 70px rgba(2, 12, 18, .38);
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__copy::before,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__copy::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(255, 255, 255, .02);
    transform: skewX(-7deg) translateX(-22px);
    transform-origin: left center;
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-kicker,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-kicker,
.sports-desk-page .sports-desk-home-hero .story-tile__eyebrow {
    background: rgba(14, 125, 121, .14) !important;
    color: #0e7d79 !important;
    border: 1px solid rgba(14, 125, 121, .22) !important;
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-kicker,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-kicker {
    background: rgba(14, 125, 121, .92) !important;
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, .18) !important;
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .story-title,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .story-title,
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__meta,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__meta,
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__meta span,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__meta span {
    color: #ffffff !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .34);
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__meta,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__meta {
    opacity: .94;
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__cta,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__cta {
    background: #ffffff !important;
    color: #07191c !important;
    border: 1px solid rgba(255, 255, 255, .28) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .18);
}
.sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__cta:hover,
.sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__cta:hover {
    background: #0e7d79 !important;
    color: #ffffff !important;
}
.sports-desk-page .sports-desk-home-hero.hero-grid--showcase,
.sports-desk-page .sports-desk-home-hero .story-tile--showcase {
    background: var(--surface-card, #ffffff) !important;
    border-color: var(--border-subtle, rgba(15, 23, 42, .10)) !important;
    color: var(--text-main, #0f172a) !important;
}
.sports-desk-page .sports-desk-home-hero .story-tile--showcase .story-title--sm {
    color: var(--text-main, #0f172a) !important;
}
.sports-desk-page .sports-desk-home-hero .story-tile--showcase .story-meta,
.sports-desk-page .sports-desk-home-hero .story-tile--showcase .story-meta span {
    color: var(--text-muted, #64748b) !important;
}
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero.hero-grid--showcase,
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-tile--showcase {
    background: var(--surface-card, #101820) !important;
    border-color: var(--border-subtle, rgba(148, 163, 184, .24)) !important;
    color: var(--text-main, #f8fafc) !important;
}
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-tile--showcase .story-title--sm {
    color: var(--text-main, #f8fafc) !important;
}
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-tile--showcase .story-meta,
html[data-theme="dark"] .sports-desk-page .sports-desk-home-hero .story-tile--showcase .story-meta span {
    color: var(--text-muted, #cbd5e1) !important;
}
@media (max-width: 991px) {
    .sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__content--showcase,
    .sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__content--showcase {
        align-items: flex-end !important;
    }
    .sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__copy,
    .sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__copy {
        width: calc(100% - 2rem);
        max-width: none;
        margin: 1rem;
        padding: 1.35rem;
        border-radius: 22px;
    }
}
@media (max-width: 560px) {
    .sports-desk-page .sports-desk-home-hero .hero-story--showcase .hero-story__copy,
    .sports-desk-page .sports-desk-home-hero .hero-story--feature .hero-story__copy {
        width: calc(100% - 1rem);
        margin: .5rem;
        padding: 1.1rem;
    }
}

/* v305 Sports Desk rebuild: clean newsroom showcase, clear hero image, brand colours and full dark-mode support. */
.sports-desk-page {
    --sportsdesk-brand: #0e7d79;
    --sportsdesk-brand-strong: #08716d;
    --sportsdesk-blue: #0D8AFA;
    --sportsdesk-mint: rgba(14, 125, 121, .10);
    --sportsdesk-card: var(--surface-card, #ffffff);
    --sportsdesk-card-soft: var(--surface-soft, #f8fafc);
    --sportsdesk-border: var(--border-subtle, rgba(15, 23, 42, .10));
    --sportsdesk-text: var(--text-main, #0f172a);
    --sportsdesk-muted: var(--text-muted, #64748b);
}
.sports-desk-page .sports-desk-intro,
.sports-desk-page .sports-desk-data-strip,
.sports-desk-showcase-v305,
.sports-desk-page .football-section,
.sports-desk-page .football-side-panel {
    background: var(--sportsdesk-card) !important;
    border: 1px solid var(--sportsdesk-border) !important;
    color: var(--sportsdesk-text) !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .08) !important;
}
.sports-desk-page .sports-desk-intro,
.sports-desk-page .sports-desk-data-strip {
    background: var(--sportsdesk-card) rgba(14, 125, 121, .12) !important;
}
.sports-desk-page .site-kicker,
.sports-desk-page .section-heading .site-kicker {
    color: var(--sportsdesk-brand) !important;
}
.sports-desk-showcase-v305 {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(330px, .92fr);
    gap: clamp(1rem, 2vw, 1.4rem);
    padding: clamp(.95rem, 1.8vw, 1.35rem);
    border-radius: 30px;
    overflow: hidden;
}
.sports-desk-lead-v305 {
    position: relative;
    min-height: clamp(430px, 42vw, 620px);
    border-radius: 24px;
    overflow: hidden;
    background: #081116;
    border: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 18px 36px rgba(15, 23, 42, .16);
    isolation: isolate;
}
.sports-desk-lead-v305__media {
    position: absolute;
    inset: 0;
    display: block;
    z-index: 1;
}
.sports-desk-lead-v305__media picture,
.sports-desk-lead-v305__media img {
    width: 100%;
    height: 100%;
    display: block;
}
.sports-desk-lead-v305__media img {
    object-fit: cover;
    filter: none !important;
    opacity: 1 !important;
    transform: scale(1.01);
}
.sports-desk-lead-v305::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 44%;
    z-index: 2;
    pointer-events: none;
    background: rgba(2, 6, 23, .38);
}
.sports-desk-lead-v305__copy {
    position: absolute;
    left: clamp(1rem, 3vw, 2rem);
    bottom: clamp(1rem, 3vw, 2rem);
    z-index: 3;
    width: min(530px, calc(100% - 2rem));
    display: grid;
    gap: .9rem;
    padding: clamp(1.1rem, 2.3vw, 1.65rem);
    border-radius: 24px;
    background: rgba(14, 125, 121, .46);
    border: 1px solid rgba(255, 255, 255, .17);
    box-shadow: 0 20px 44px rgba(2, 6, 23, .32);
    backdrop-filter: blur(8px) saturate(125%);
    -webkit-backdrop-filter: blur(8px) saturate(125%);
}
.sports-desk-lead-v305__copy::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background: rgba(255, 255, 255, .12);
}
.sports-desk-kicker-v305,
.sports-desk-mini-v305__kicker {
    width: max-content;
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: .35rem .82rem;
    border-radius: 999px;
    color: #ffffff;
    background: var(--sportsdesk-brand);
    border: 1px solid rgba(255, 255, 255, .22);
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-size: .78rem;
    line-height: 1;
}
.sports-desk-lead-v305__copy h1 {
    margin: 0;
    max-width: 12.5ch;
    color: #ffffff;
    font-size: clamp(2rem, 4.4vw, 4.1rem);
    line-height: .98;
    letter-spacing: -.05em;
    text-wrap: balance;
}
.sports-desk-lead-v305__copy h1 a {
    color: inherit;
    text-decoration: none;
}
.sports-desk-meta-v305 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem .85rem;
    color: rgba(255, 255, 255, .92);
    font-weight: 750;
    font-size: clamp(.93rem, 1.2vw, 1.05rem);
}
.sports-desk-meta-v305 .dot {
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .48);
}
.sports-desk-cta-v305 {
    width: max-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 46px;
    padding: .72rem 1.2rem;
    border-radius: 999px;
    background: #ffffff;
    color: #07191c;
    text-decoration: none;
    font-weight: 900;
    box-shadow: 0 12px 28px rgba(2, 6, 23, .26);
    transition: transform .2s ease, background .2s ease, color .2s ease;
}
.sports-desk-cta-v305:hover {
    transform: translateY(-1px);
    background: var(--sportsdesk-brand);
    color: #ffffff;
}
.sports-desk-rail-v305 {
    display: grid;
    gap: clamp(.85rem, 1.5vw, 1rem);
    align-content: stretch;
}
.sports-desk-mini-v305 {
    display: grid;
    grid-template-columns: minmax(120px, 34%) minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    min-height: 156px;
    padding: clamp(.75rem, 1.4vw, 1rem);
    border-radius: 24px;
    background: var(--sportsdesk-card-soft);
    border: 1px solid var(--sportsdesk-border);
    color: var(--sportsdesk-text);
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.sports-desk-mini-v305:hover {
    transform: translateY(-2px);
    border-color: rgba(14, 125, 121, .26);
    box-shadow: 0 18px 34px rgba(14, 125, 121, .13);
}
.sports-desk-mini-v305__media {
    display: block;
    aspect-ratio: 1.35 / 1;
    overflow: hidden;
    border-radius: 16px;
    background: #e2e8f0;
}
.sports-desk-mini-v305__media picture,
.sports-desk-mini-v305__media img {
    width: 100%;
    height: 100%;
    display: block;
}
.sports-desk-mini-v305__media img {
    object-fit: cover;
    transform: scale(1.01);
}
.sports-desk-mini-v305__body {
    min-width: 0;
    display: grid;
    gap: .55rem;
}
.sports-desk-mini-v305__kicker {
    min-height: 24px;
    padding: .28rem .56rem;
    color: var(--sportsdesk-brand);
    background: var(--sportsdesk-mint);
    border: 1px solid rgba(14, 125, 121, .16);
    font-size: .68rem;
    letter-spacing: .16em;
}
.sports-desk-mini-v305 strong {
    color: var(--sportsdesk-text);
    font-size: clamp(1.02rem, 1.25vw, 1.25rem);
    line-height: 1.18;
    letter-spacing: -.025em;
    text-wrap: balance;
}
.sports-desk-mini-v305 small {
    color: var(--sportsdesk-muted);
    font-size: .96rem;
    font-weight: 700;
}
.sports-desk-page .football-sidebar-stack {
    align-self: start;
}
html[data-theme="dark"] .sports-desk-page {
    --sportsdesk-card: var(--surface-card, #101820);
    --sportsdesk-card-soft:#1c1c1c;
    --sportsdesk-border: rgba(148, 163, 184, .20);
    --sportsdesk-text: #f8fafc;
    --sportsdesk-muted: #cbd5e1;
    --sportsdesk-mint: rgba(20, 184, 166, .16);
}
html[data-theme="dark"] .sports-desk-page .sports-desk-intro,
html[data-theme="dark"] .sports-desk-page .sports-desk-data-strip,
html[data-theme="dark"] .sports-desk-showcase-v305,
html[data-theme="dark"] .sports-desk-page .football-section,
html[data-theme="dark"] .sports-desk-page .football-side-panel {
    box-shadow:none!important;
}
html[data-theme="dark"] .sports-desk-mini-v305 {
    background:#1c1c1c;
}
html[data-theme="dark"] .sports-desk-mini-v305__media {
    background: #0b1120;
}
html[data-theme="dark"] .sports-desk-mini-v305 strong {
    color: #f8fafc;
}
html[data-theme="dark"] .sports-desk-mini-v305 small {
    color: #cbd5e1;
}
@media (max-width: 1180px) {
    .sports-desk-showcase-v305 {
        grid-template-columns: 1fr;
    }
    .sports-desk-rail-v305 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .sports-desk-mini-v305 {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .sports-desk-mini-v305__media {
        aspect-ratio: 16 / 9;
    }
}
@media (max-width: 760px) {
    .sports-desk-showcase-v305 {
        border-radius: 22px;
        padding: .75rem;
    }
    .sports-desk-lead-v305 {
        min-height: clamp(420px, 112vw, 560px);
        border-radius: 20px;
    }
    .sports-desk-lead-v305__copy {
        left: .75rem;
        right: .75rem;
        bottom: .75rem;
        width: auto;
        padding: 1rem;
        border-radius: 20px;
    }
    .sports-desk-lead-v305__copy h1 {
        max-width: 100%;
        font-size: clamp(1.85rem, 10vw, 3rem);
    }
    .sports-desk-rail-v305 {
        grid-template-columns: 1fr;
    }
    .sports-desk-mini-v305 {
        grid-template-columns: 112px minmax(0, 1fr);
        border-radius: 20px;
    }
    .sports-desk-mini-v305__media {
        aspect-ratio: 1.12 / 1;
    }
}
@media (max-width: 460px) {
    .sports-desk-mini-v305 {
        grid-template-columns: 92px minmax(0, 1fr);
        gap: .75rem;
    }
    .sports-desk-kicker-v305,
    .sports-desk-mini-v305__kicker {
        letter-spacing: .1em;
    }
    .sports-desk-cta-v305 {
        width: 100%;
    }
}

/* v318: prediction/result buttons also cover cancelled, postponed, suspended and other terminal fixture states. */
.football-schedule-row__prediction--postponed,
.football-schedule-row__prediction--suspended,
.football-schedule-row__prediction--interrupted,
.football-schedule-row__prediction--sync {
    background: rgba(254, 243, 199, .95) !important;
    border-color: rgba(245, 158, 11, .34) !important;
    color: #92400e !important;
}
.football-schedule-row__prediction--cancelled,
.football-schedule-row__prediction--abandoned {
    background: rgba(254, 226, 226, .92) !important;
    border-color: rgba(220, 38, 38, .24) !important;
    color: #991b1b !important;
}
.football-schedule-row__prediction--awarded,
.football-schedule-row__prediction--walkover {
    background: rgba(237, 233, 254, .95) !important;
    border-color: rgba(124, 58, 237, .28) !important;
    color: #5b21b6 !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--postponed,
html[data-theme="dark"] .football-schedule-row__prediction--suspended,
html[data-theme="dark"] .football-schedule-row__prediction--interrupted,
html[data-theme="dark"] .football-schedule-row__prediction--sync {
    background: rgba(69, 45, 10, .82) !important;
    border-color: rgba(251, 191, 36, .30) !important;
    color: #fde68a !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--cancelled,
html[data-theme="dark"] .football-schedule-row__prediction--abandoned {
    background: rgba(127, 29, 29, .48) !important;
    border-color: rgba(248, 113, 113, .24) !important;
    color: #fecaca !important;
}
html[data-theme="dark"] .football-schedule-row__prediction--awarded,
html[data-theme="dark"] .football-schedule-row__prediction--walkover {
    background:#242424!important;
    border-color: rgba(167, 139, 250, .25) !important;
    color: #ddd6fe !important;
}

/* v326 archive/card balance: keep odd fallback rows from leaving an obvious empty slot. */
.news-grid > .news-card--balance-last,
.news-grid--cards > .news-card--balance-last,
.content-grid .news-grid > .news-card--balance-last,
.content-grid .news-grid--cards > .news-card--balance-last,
.stack-grid .news-grid > .news-card--balance-last,
.stack-grid .news-grid--cards > .news-card--balance-last {
    grid-column: 1 / -1 !important;
}

@media (max-width: 520px) {
    .news-grid > .news-card--balance-last,
    .news-grid--cards > .news-card--balance-last,
    .content-grid .news-grid > .news-card--balance-last,
    .content-grid .news-grid--cards > .news-card--balance-last,
    .stack-grid .news-grid > .news-card--balance-last,
    .stack-grid .news-grid--cards > .news-card--balance-last {
        grid-column: auto !important;
    }
}

/* v331 homepage fixture prediction outcome buttons */
.football-home-board .football-fixture-tile__actions {
    justify-content: center;
    padding: .7rem 1rem .95rem;
}

.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction {
    justify-content: center;
    min-width: 142px;
    width: auto;
}

.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--won {
    background: rgba(34, 197, 94, .12) !important;
    border-color: rgba(34, 197, 94, .28) !important;
    color: #15803d !important;
}

.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--lost {
    background: rgba(239, 68, 68, .10) !important;
    border-color: rgba(239, 68, 68, .24) !important;
    color: #dc2626 !important;
}

.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--void,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--settled,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--sync {
    background: rgba(100, 116, 139, .12) !important;
    border-color: rgba(100, 116, 139, .26) !important;
    color: #475569 !important;
}

.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--cancelled,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--postponed,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--suspended,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--interrupted,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--abandoned,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--awarded,
.football-home-board .football-fixture-tile__actions .football-schedule-row__prediction--walkover {
    background: rgba(245, 158, 11, .12) !important;
    border-color: rgba(245, 158, 11, .30) !important;
    color: #b45309 !important;
}

/* v335 club/player football profile rebuild */
.football-club-page-v335,
.football-club-page-v337,
.football-player-page-v335 {
    display: grid;
    gap: 1.15rem;
}

.football-club-hero--v335,
.football-club-hero--v337,
.football-player-hero--v335 {
    position: relative;
    overflow: hidden;
}

.football-club-hero__quick,
.football-player-hero__quick {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .65rem;
    margin: 1rem 0 .25rem;
    max-width: 760px;
}

.football-club-hero__quick span,
.football-player-hero__quick span {
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 16px;
    box-shadow: 0 10px 24px rgba(15,23,42,.06);
    display: grid;
    gap: .15rem;
    padding: .72rem .85rem;
}

.football-club-hero__quick strong,
.football-player-hero__quick strong {
    color: #0b1632;
    font-size: 1.2rem;
    font-weight: 950;
    line-height: 1;
}

.football-club-hero__quick small,
.football-player-hero__quick small {
    color: #52637c;
    font-size: .72rem;
    font-weight: 900;
    line-height: 1.18;
    text-transform: uppercase;
}

.football-layout--club-overview,
.football-layout--player-profile {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) minmax(310px, 380px);
}

.football-club-main-stack,
.football-player-main-stack,
.football-sidebar-stack--club,
.football-sidebar-stack--player {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.football-sidebar-stack--club,
.football-sidebar-stack--player {
    align-self: start;
    position: sticky;
    top: calc(var(--sticky-offset, 96px) + 12px);
}

.football-player-grid--compact-first {
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
}

.football-player-card--profile {
    align-content: start;
    min-height: 188px;
}

.football-player-card--profile img,
.football-player-card--profile b {
    height: 74px;
    width: 74px;
}

.football-player-card--profile span {
    line-height: 1.12;
}

.football-club-split {
    display: grid;
    grid-template-columns: minmax(0, .98fr) minmax(280px, .82fr);
    gap: 1rem;
}

.football-data-grid--club-notes,
.football-data-grid--sidebar {
    grid-template-columns: 1fr;
}

.football-transfer-list--compact {
    display: grid;
    gap: .7rem;
}

.football-mini-table--team-default {
    gap: .48rem;
}

.football-mini-table__group-label {
    display: inline-flex;
    align-items: center;
    gap: .48rem;
    width: fit-content;
    max-width: 100%;
    margin: .2rem 0 .75rem;
    padding: .45rem .7rem;
    border: 1px solid rgba(14,165,164,.18);
    border-radius: 999px;
    background: rgba(14,165,164,.08);
    color: #0f766e;
    font-size: .76rem;
    font-weight: 900;
    line-height: 1.1;
}

.football-mini-table__group-label span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.football-mini-table--team-default .football-mini-table__header,
.football-mini-table--team-default a {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 28px 38px;
    align-items: center;
    justify-content: stretch;
    gap: .55rem;
}

.football-mini-table--team-default .football-mini-table__header {
    padding: .2rem .78rem .05rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--text-soft);
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.football-mini-table--team-default .football-mini-table__header span:nth-child(3),
.football-mini-table--team-default .football-mini-table__header span:nth-child(4) {
    text-align: center;
}

.football-mini-table--team-default a {
    gap: .55rem;
    padding: .7rem .78rem;
}

.football-mini-table--team-default a > span,
.football-mini-table--team-default a > em {
    text-align: center;
}

.football-mini-table--team-default a strong {
    min-width: 0;
    overflow: hidden;
}

.football-mini-table--team-default a strong > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.football-mini-table--team-default a em {
    color: var(--text);
    font-style: normal;
    font-weight: 950;
}

.football-mini-table--team-default .football-mini-table__played {
    color: var(--text-soft);
    font-size: .78rem;
    font-weight: 850;
}

.football-mini-table--team-default .football-mini-table__empty {
    display: block;
    text-align: center;
}

.football-mini-table--team-default a.is-active {
    background: rgba(255,255,255,.94);
}

.football-profile-history--grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
    gap: .75rem;
}

.football-profile-history--grid .football-profile-history__row {
    margin: 0;
}

.football-article-list--grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

@media (max-width: 1180px) {
    .football-layout--club-overview,
    .football-layout--player-profile {
        grid-template-columns: 1fr;
    }

    .football-sidebar-stack--club,
    .football-sidebar-stack--player {
        position: static;
    }
}

@media (max-width: 760px) {
    .football-club-hero__quick,
    .football-player-hero__quick {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .football-club-split {
        grid-template-columns: 1fr;
    }

    .football-player-grid--compact-first {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .football-player-card--profile {
        min-height: 164px;
        padding: .75rem;
    }

    .football-player-card--profile img,
    .football-player-card--profile b {
        height: 60px;
        width: 60px;
    }
}

@media (max-width: 480px) {
    .football-mini-table--team-default .football-mini-table__header,
    .football-mini-table--team-default a {
        grid-template-columns: 28px minmax(0, 1fr) 25px 34px;
        gap: .4rem;
    }

    .football-mini-table--team-default a {
        padding-inline: .65rem;
    }

    .football-mini-table--team-default img {
        width: 24px;
        height: 24px;
    }

    .football-player-grid--compact-first {
        grid-template-columns: 1fr;
    }

    .football-club-hero__quick,
    .football-player-hero__quick {
        grid-template-columns: 1fr;
    }
}

html[data-theme="dark"] .football-club-hero__quick span,
html[data-theme="dark"] .football-player-hero__quick span {
    background:#1c1c1c;
    border-color: rgba(255,255,255,.08);
}

html[data-theme="dark"] .football-club-hero__quick strong,
html[data-theme="dark"] .football-player-hero__quick strong {
    color: #f8fafc;
}

html[data-theme="dark"] .football-club-hero__quick small,
html[data-theme="dark"] .football-player-hero__quick small {
    color: #cbd5e1;
}


/* v337: club pages must favour the team's default domestic league over temporary cups. */
.football-club-page-v337 .football-club-hero__content > p {
    text-transform: none;
}
.football-mini-table--team-default a.is-active {
    outline: 1px solid color-mix(in srgb, var(--site-primary, #0ea5a4) 45%, transparent);
}

/* v345 club profile context placement and resilient fallback pages */
.football-club-context-section {
    scroll-margin-top: calc(var(--sticky-offset, 96px) + 18px);
}

.football-club-context-section .football-data-grid--club-notes {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.football-club-context-section .football-data-card {
    min-width: 0;
}

.football-club-context-section .football-data-card p,
.football-transfer-section .football-transfer-card p,
.football-transfer-section .football-transfer-card strong,
.football-transfer-section .football-transfer-card span {
    overflow-wrap: anywhere;
    word-break: normal;
}

.football-transfer-section {
    min-width: 0;
}

@media (max-width: 640px) {
    .football-club-context-section .football-data-grid--club-notes {
        grid-template-columns: 1fr;
    }
}


/* v354: balanced aggregate summary and group-aware club mini tables. */
html[data-theme="dark"] .football-two-leg-modal__aggregate-label {
    background: #14b8a6;
    color: #021a18;
}

html[data-theme="dark"] .football-club-page-v337 .football-mini-table__group-label {
    border-color: rgba(45,212,191,.22);
    background: rgba(13,148,136,.16);
    color: #5eead4;
}

html[data-theme="dark"] .football-club-page-v337 .football-mini-table--team-default .football-mini-table__header {
    color: #94a3b8;
}

html[data-theme="dark"] .football-club-page-v337 .football-mini-table--team-default .football-mini-table__played {
    color: #94a3b8;
}

/* v356: article gallery showcase, viewport-level lightbox, and final overlay isolation. */
.article-gallery-showcase {
    display: grid;
    gap: 1rem;
    padding: clamp(1rem, 2vw, 1.4rem);
    border: 1px solid rgba(15, 23, 42, .09);
    border-radius: 28px;
    background: #f4f9fb;
    box-shadow: 0 20px 50px rgba(15, 23, 42, .08);
    overflow: hidden;
}

.article-gallery-showcase__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.article-gallery-showcase__header > div {
    min-width: 0;
}

.article-gallery-showcase__header h2 {
    margin: .22rem 0 0;
    color: var(--text, #0f172a);
    font-family: var(--font-display);
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    line-height: 1.08;
    text-wrap: balance;
}

.article-gallery-showcase__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .48rem;
    flex: 0 0 auto;
    min-height: 2.55rem;
    padding: .58rem .9rem;
    border: 1px solid rgba(14, 125, 121, .18);
    border-radius: 999px;
    background: rgba(14, 125, 121, .09);
    color: #0f766e;
    font-size: .82rem;
    font-weight: 900;
}

.article-gallery-showcase__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 28%);
    gap: .85rem;
    min-width: 0;
}

.article-gallery-showcase__grid.is-single {
    grid-template-columns: minmax(0, 1fr);
}

.article-gallery-showcase button {
    appearance: none;
    border: 0;
    cursor: pointer;
    font: inherit;
}

.article-gallery-showcase__lead,
.article-gallery-showcase__thumb {
    position: relative;
    display: block;
    min-width: 0;
    overflow: hidden;
    background: #07111f;
}

.article-gallery-showcase__lead {
    min-height: clamp(330px, 43vw, 560px);
    border-radius: 22px;
}

.article-gallery-showcase__lead picture,
.article-gallery-showcase__lead img,
.article-gallery-showcase__thumb picture,
.article-gallery-showcase__thumb img {
    display: block;
    width: 100%;
    height: 100%;
}

.article-gallery-showcase__lead img,
.article-gallery-showcase__thumb img {
    object-fit: cover;
    transition: transform .28s ease, filter .28s ease;
}

.article-gallery-showcase__lead:hover img,
.article-gallery-showcase__thumb:hover img {
    transform: scale(1.025);
    filter: saturate(1.04);
}

.article-gallery-showcase__lead:focus-visible,
.article-gallery-showcase__thumb:focus-visible {
    outline: 3px solid #14b8a6;
    outline-offset: 3px;
}

.article-gallery-showcase__lead-overlay {
    position: absolute;
    inset: auto 0 0;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    padding: clamp(1rem, 2.2vw, 1.55rem);
    background: rgba(3, 10, 24, .88);
    color: #fff;
    text-align: left;
}

.article-gallery-showcase__caption {
    max-width: 68ch;
    font-size: clamp(.92rem, 1.15vw, 1.08rem);
    font-weight: 750;
    line-height: 1.35;
}

.article-gallery-showcase__open {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    flex: 0 0 auto;
    min-height: 2.7rem;
    padding: .65rem .9rem;
    border: 1px solid rgba(255, 255, 255, .26);
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    backdrop-filter: blur(10px);
    font-size: .82rem;
    font-weight: 900;
}

.article-gallery-showcase__rail {
    display: grid;
    grid-template-rows: repeat(3, minmax(0, 1fr));
    gap: .85rem;
    min-height: 0;
}

.article-gallery-showcase__thumb {
    min-height: 0;
    border-radius: 18px;
}

.article-gallery-showcase__thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: inherit;
}

.article-gallery-showcase__more {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: grid;
    place-items: center;
    background: rgba(3, 10, 24, .62);
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(1.05rem, 1.8vw, 1.45rem);
    font-weight: 950;
}

html[data-theme="dark"] .article-gallery-showcase {
    border-color: rgba(148, 163, 184, .14);
    background:#1c1c1c;
    box-shadow:none;
}

html[data-theme="dark"] .article-gallery-showcase__count {
    border-color: rgba(45, 212, 191, .22);
    background: rgba(13, 148, 136, .16);
    color: #7cf1e7;
}

body.gallery-lightbox-open {
    overflow: hidden !important;
    overscroll-behavior: none !important;
    touch-action: none;
}

body > .gallery-lightbox[hidden] {
    display: none !important;
}

body > .gallery-lightbox {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483647 !important;
    display: grid !important;
    place-items: center !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    padding: 1rem !important;
    isolation: isolate !important;
    overflow: hidden !important;
}

body > .gallery-lightbox__placeholder {
    display: none !important;
}

body > .gallery-lightbox .gallery-lightbox__backdrop {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    background: rgba(2, 8, 20, .88) !important;
    backdrop-filter: blur(14px) !important;
}

body > .gallery-lightbox .gallery-lightbox__dialog {
    position: relative !important;
    z-index: 2 !important;
    width: min(1480px, calc(100vw - 2rem)) !important;
    height: min(880px, calc(100vh - 2rem)) !important;
    height: min(880px, calc(100dvh - 2rem)) !important;
    margin: 0 !important;
    filter: none !important;
}

body > .gallery-lightbox .gallery-lightbox__frame {
    display: grid !important;
    grid-template-columns: minmax(0, 1.62fr) minmax(340px, .72fr) !important;
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 28px !important;
    background: #07111f !important;
    box-shadow: 0 34px 90px rgba(0, 0, 0, .48) !important;
}

body > .gallery-lightbox .gallery-lightbox__viewer {
    position: relative !important;
    display: grid !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #06101d !important;
}

body > .gallery-lightbox .gallery-lightbox__stage {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 4.6rem 5.7rem 2rem !important;
    overflow: hidden !important;
}

body > .gallery-lightbox .gallery-lightbox__slide,
body > .gallery-lightbox .gallery-lightbox__slide[data-gallery-active-slide] {
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 1rem !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
}

body > .gallery-lightbox .gallery-lightbox__slide img,
body > .gallery-lightbox .gallery-lightbox__slide[data-gallery-active-slide] img {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    border: 1px solid rgba(255, 255, 255, .09) !important;
    border-radius: 18px !important;
    background: #020817 !important;
    box-shadow: 0 22px 60px rgba(0, 0, 0, .34) !important;
}

body > .gallery-lightbox .gallery-lightbox__image-caption {
    width: min(760px, 100%) !important;
    margin: 0 !important;
    padding: .72rem .95rem !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    border-radius: 14px !important;
    background: rgba(15, 23, 42, .82) !important;
    color: #f8fafc !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    line-height: 1.42 !important;
    text-align: center !important;
}

body > .gallery-lightbox .gallery-lightbox__meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 1rem !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 1.55rem !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    border-left: 1px solid rgba(15, 23, 42, .08) !important;
    background: #f5f8fb !important;
}

body > .gallery-lightbox .gallery-lightbox__meta-head {
    display: grid !important;
    gap: .8rem !important;
    align-content: start !important;
}

body > .gallery-lightbox .gallery-lightbox__counter {
    width: fit-content !important;
    margin: 0 !important;
}

body > .gallery-lightbox .gallery-lightbox__meta h2 {
    margin: 0 !important;
    color: #07111f !important;
    font-size: clamp(1.55rem, 2.15vw, 2.35rem) !important;
    line-height: 1.08 !important;
    text-wrap: balance !important;
}

body > .gallery-lightbox .gallery-lightbox__full {
    width: fit-content !important;
    min-height: 2.8rem !important;
    margin: 0 !important;
}

body > .gallery-lightbox .gallery-lightbox__article-card {
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(14, 125, 121, .15) !important;
    border-left: 4px solid #0e7d79 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .07) !important;
}

body > .gallery-lightbox .gallery-lightbox__article-excerpt {
    margin: 0 !important;
    padding: 1rem !important;
    color: #26384b !important;
    font-size: .98rem !important;
    font-weight: 650 !important;
    line-height: 1.55 !important;
}

body > .gallery-lightbox .gallery-lightbox__thumbs-wrap {
    margin-top: auto !important;
}

body > .gallery-lightbox .gallery-lightbox__thumbs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .65rem !important;
    overflow: visible !important;
}

body > .gallery-lightbox .gallery-lightbox__thumbs button {
    min-width: 0 !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 12px !important;
}

body > .gallery-lightbox .gallery-lightbox__close {
    position: absolute !important;
    top: 1rem !important;
    right: 1rem !important;
    z-index: 8 !important;
    width: 3rem !important;
    height: 3rem !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .94) !important;
    color: #07111f !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .22) !important;
}

body > .gallery-lightbox .gallery-lightbox__nav {
    z-index: 7 !important;
    width: 3.4rem !important;
    height: 3.4rem !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    border-radius: 50% !important;
    background: rgba(2, 8, 23, .72) !important;
    color: #fff !important;
    backdrop-filter: blur(10px) !important;
}

body > .gallery-lightbox .gallery-lightbox__nav--prev {
    left: 1.25rem !important;
}

body > .gallery-lightbox .gallery-lightbox__nav--next {
    right: 1.25rem !important;
}

html[data-theme="dark"] body > .gallery-lightbox .gallery-lightbox__meta {
    border-left-color: rgba(148, 163, 184, .14) !important;
    background:#1c1c1c!important;
}

html[data-theme="dark"] body > .gallery-lightbox .gallery-lightbox__meta h2 {
    color: #f8fafc !important;
}

html[data-theme="dark"] body > .gallery-lightbox .gallery-lightbox__article-card {
    border-color: rgba(45, 212, 191, .16) !important;
    border-left-color: #2dd4bf !important;
    background: rgba(255, 255, 255, .055) !important;
}

html[data-theme="dark"] body > .gallery-lightbox .gallery-lightbox__article-excerpt {
    color: #dbe7f3 !important;
}

@media (max-width: 960px) {
    .article-gallery-showcase__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .article-gallery-showcase__lead {
        min-height: clamp(300px, 58vw, 500px);
    }

    .article-gallery-showcase__rail {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: none;
    }

    .article-gallery-showcase__thumb {
        aspect-ratio: 4 / 3;
    }

    body > .gallery-lightbox .gallery-lightbox__frame {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-rows: minmax(0, 57%) minmax(0, 43%) !important;
    }

    body > .gallery-lightbox .gallery-lightbox__stage {
        padding: 4.4rem 4.7rem 1rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__meta {
        border-top: 1px solid rgba(15, 23, 42, .08) !important;
        border-left: 0 !important;
        padding: 1rem 1.15rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__meta-head {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        align-items: center !important;
    }

    body > .gallery-lightbox .gallery-lightbox__meta h2 {
        font-size: clamp(1.18rem, 3.8vw, 1.7rem) !important;
    }

    body > .gallery-lightbox .gallery-lightbox__article-card {
        display: none !important;
    }

    body > .gallery-lightbox .gallery-lightbox__thumbs-wrap {
        margin-top: 0 !important;
    }

    body > .gallery-lightbox .gallery-lightbox__thumbs {
        display: flex !important;
        gap: .6rem !important;
        overflow-x: auto !important;
        padding-bottom: .2rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__thumbs button {
        flex: 0 0 88px !important;
    }
}

@media (max-width: 640px) {
    .article-gallery-showcase {
        gap: .8rem;
        padding: .85rem;
        border-radius: 22px;
    }

    .article-gallery-showcase__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .article-gallery-showcase__header h2 {
        font-size: 1.28rem;
    }

    .article-gallery-showcase__count {
        min-height: 2.25rem;
        padding: .48rem .72rem;
    }

    .article-gallery-showcase__lead {
        min-height: 270px;
        border-radius: 17px;
    }

    .article-gallery-showcase__lead-overlay {
        align-items: flex-start;
        flex-direction: column;
        gap: .7rem;
        padding: .9rem;
    }

    .article-gallery-showcase__open {
        min-height: 2.35rem;
        padding: .5rem .72rem;
    }

    .article-gallery-showcase__rail {
        gap: .55rem;
    }

    .article-gallery-showcase__thumb {
        border-radius: 13px;
    }

    body > .gallery-lightbox {
        padding: 0 !important;
    }

    body > .gallery-lightbox .gallery-lightbox__dialog {
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
    }

    body > .gallery-lightbox .gallery-lightbox__frame {
        grid-template-rows: minmax(0, 55%) minmax(0, 45%) !important;
        border: 0 !important;
        border-radius: 0 !important;
    }

    body > .gallery-lightbox .gallery-lightbox__stage {
        padding: 4.25rem 3.6rem .8rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__slide img,
    body > .gallery-lightbox .gallery-lightbox__slide[data-gallery-active-slide] img {
        border-radius: 12px !important;
    }

    body > .gallery-lightbox .gallery-lightbox__image-caption {
        max-height: 3.9rem !important;
        overflow: auto !important;
        padding: .6rem .72rem !important;
        font-size: .82rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__meta {
        gap: .7rem !important;
        padding: .85rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__meta-head {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: .55rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__counter {
        grid-column: 1 / -1 !important;
    }

    body > .gallery-lightbox .gallery-lightbox__meta h2 {
        font-size: 1.08rem !important;
        line-height: 1.18 !important;
    }

    body > .gallery-lightbox .gallery-lightbox__full {
        min-height: 2.45rem !important;
        padding: .5rem .7rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__full span {
        display: none !important;
    }

    body > .gallery-lightbox .gallery-lightbox__close {
        top: .75rem !important;
        right: .75rem !important;
        width: 2.75rem !important;
        height: 2.75rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__nav {
        top: 50% !important;
        bottom: auto !important;
        width: 2.8rem !important;
        height: 2.8rem !important;
        transform: translateY(-50%) !important;
    }

    body > .gallery-lightbox .gallery-lightbox__nav--prev {
        left: .45rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__nav--next {
        right: .45rem !important;
    }

    body > .gallery-lightbox .gallery-lightbox__thumbs button {
        flex-basis: 76px !important;
    }
}

/* v356 gallery image fill correction. */
.article-gallery-showcase__lead picture,
.article-gallery-showcase__lead > img,
.article-gallery-showcase__thumb picture,
.article-gallery-showcase__thumb > img {
    position: absolute !important;
    inset: 0 !important;
}

.article-gallery-showcase__lead picture > img,
.article-gallery-showcase__thumb picture > img {
    position: absolute !important;
    inset: 0 !important;
}

/* v367: local competition leaderboards and responsive match section navigation */
.football-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}.football-section-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.55rem .8rem;border:1px solid rgba(14,125,121,.18);border-radius:999px;background:rgba(14,170,167,.08);color:#087c80;font-size:.78rem;font-weight:900;text-decoration:none;white-space:nowrap}.football-section-actions a:hover{background:rgba(14,170,167,.15)}.football-league-two-col--leaderboards{grid-template-columns:repeat(3,minmax(0,1fr))}.football-side-panel--discipline .football-mini-list a{grid-template-columns:auto minmax(0,1fr) auto}.football-side-panel--discipline .football-mini-list img{width:38px;height:38px;object-fit:contain;border-radius:999px;background:#fff;border:1px solid rgba(15,23,42,.08)}html[data-theme="dark"] .football-section-actions a{background:rgba(45,212,191,.09);border-color:rgba(45,212,191,.2);color:#79e4d7}@media(max-width:1100px){.football-league-two-col--leaderboards{grid-template-columns:repeat(2,minmax(0,1fr))}.football-side-panel--discipline{grid-column:1/-1}}@media(max-width:900px){.football-league-two-col--leaderboards{grid-template-columns:1fr}.football-side-panel--discipline{grid-column:auto}.football-section-actions{justify-content:flex-start;width:100%}}@media(min-width:992px){.football-section-tabs--match{display:none!important}}@media(max-width:991px){.football-section-tabs--match{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 0 .9rem;padding:.15rem 0 .25rem}.football-section-tabs--match::-webkit-scrollbar{display:none}.football-section-tabs--match a{flex:0 0 auto;scroll-snap-align:start}}



/* v416: mandatory pre-publish newsroom checkpoint */
.newsroom-editor-panel--prepublish {
    border: 2px solid rgba(14, 125, 121, .28);
    box-shadow: 0 18px 48px rgba(15, 23, 42, .10);
}
.newsroom-editor-panel--prepublish .card-header {
    background: rgba(255, 255, 255, .98);
}
.newsroom-editor-kicker {
    display: block;
    margin-bottom: 4px;
    color: #0e7d79;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.newsroom-editor-gate-message {
    line-height: 1.55;
}
.news-editor-card > .col-12 > .newsroom-editor-panel {
    margin-left: 16px;
    margin-right: 16px;
}
@media (max-width: 767px) {
    .news-editor-card > .col-12 > .newsroom-editor-panel {
        margin-left: 8px;
        margin-right: 8px;
    }
}

/* v441: keep homepage hero/gallery cards content-sized on desktop.
   The two-column CSS grid previously stretched the featured card to the
   combined height of the right rail, creating large blank blocks beneath
   the image and excerpt. */
@media (min-width: 992px) {
    .home-gallery-showcase__grid,
    .video-showcase__grid {
        align-items: start;
    }

    .home-gallery-feature,
    .video-feature {
        align-self: start;
        height: auto;
        min-height: 0;
    }

    .home-gallery-feature__body,
    .video-feature__body {
        align-content: start;
        grid-auto-rows: max-content;
    }

    .home-gallery-feature__body .news-card__footer,
    .video-feature__body .story-meta {
        margin-top: 0;
    }
}


/* v442: stack homepage media rails below their feature cards on desktop and tablet.
   This removes the suspended empty grid area before pagination/advertising and
   gives all three supporting stories equal-width cards beneath the lead item. */
.home-gallery-showcase__grid,
.video-showcase__grid {
    align-items: start !important;
    grid-template-columns: minmax(0, 1fr) !important;
}
.home-gallery-feature,
.video-feature {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
    width: 100% !important;
}
.home-gallery-rail,
.video-rail {
    align-items: stretch !important;
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
}
.home-gallery-rail__item,
.video-rail__item {
    align-content: start !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    height: 100% !important;
    min-width: 0 !important;
}
.home-gallery-rail__media,
.video-rail__media {
    aspect-ratio: 16 / 9 !important;
    width: 100% !important;
}
.video-rail:empty {
    display: none !important;
}
@media (max-width: 767px) {
    .home-gallery-rail,
    .video-rail {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .home-gallery-rail__item {
        grid-template-columns: 7.5rem minmax(0, 1fr) !important;
    }
    .home-gallery-rail__media {
        aspect-ratio: 16 / 11 !important;
    }
}



/* v443: one unified Transfer Centre. Kenyan moves are filtered inside
   /football/transfers and embedded contextually on domestic-football pages. */
.ks-transfer-scope-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin: .8rem 0 1rem;
}
.ks-transfer-scope-tabs a {
    background: var(--surface);
    border: 1px solid var(--border-color);
    border-radius: 999px;
    color: var(--text-soft);
    font-size: .78rem;
    font-weight: 800;
    padding: .55rem .9rem;
    text-decoration: none;
}
.ks-transfer-scope-tabs a:hover,
.ks-transfer-scope-tabs a.is-active {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
}
.local-transfer-context-wrap {
    margin-top: .75rem;
}
.local-transfer-context {
    padding: .9rem;
}
.local-transfer-context__header {
    align-items: center;
    display: grid;
    gap: .75rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
}
.local-transfer-context__header h2 {
    font-size: 1rem;
    margin: .08rem 0;
}
.local-transfer-context__header p {
    color: var(--text-soft);
    font-size: .75rem;
    margin: 0;
}
.local-transfer-context__header > a {
    color: var(--accent);
    font-size: .78rem;
    font-weight: 800;
    text-decoration: none;
}
.local-transfer-context__icon {
    align-items: center;
    background: var(--accent);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    height: 2.4rem;
    justify-content: center;
    width: 2.4rem;
}
.local-transfer-context__list {
    display: grid;
    gap: .5rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: .8rem;
}
.local-transfer-context__item {
    background: color-mix(in srgb, var(--surface) 90%, var(--accent) 10%);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    color: var(--bg-contrast);
    display: grid;
    gap: .2rem;
    min-width: 0;
    padding: .65rem;
    text-decoration: none;
}
.local-transfer-context__item:hover {
    border-color: var(--accent);
    color: var(--bg-contrast);
}
.local-transfer-context__player {
    font-size: .78rem;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.local-transfer-context__move {
    align-items: center;
    color: var(--text-soft);
    display: flex;
    font-size: .68rem;
    gap: .3rem;
    min-width: 0;
}
.local-transfer-context__move i {
    color: var(--accent);
    flex: 0 0 auto;
}
.local-transfer-context__item small {
    color: var(--text-muted);
    font-size: .63rem;
}
.local-transfer-context__empty {
    align-items: center;
    background: rgba(249, 115, 22, .07);
    border-radius: 12px;
    color: var(--text-soft);
    display: flex;
    font-size: .75rem;
    gap: .45rem;
    justify-content: center;
    margin-top: .75rem;
    padding: .7rem;
    text-decoration: none;
}
@media (max-width: 991px) {
    .local-transfer-context__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
    .local-transfer-context__header { grid-template-columns: auto minmax(0, 1fr); }
    .local-transfer-context__header > a { grid-column: 1 / -1; }
    .local-transfer-context__list { grid-template-columns: minmax(0, 1fr); }
}


/* v444: media rails are structural siblings below the lead card. The new
   --below classes are intentionally block-level so older grid declarations
   cannot place the rail beside the feature again. */
.home-gallery-showcase__grid,
.video-showcase__grid {
    display: block !important;
    width: 100% !important;
}
.home-gallery-rail--below,
.video-rail--below {
    display: grid !important;
    gap: 1rem !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-top: 1rem !important;
    position: static !important;
    width: 100% !important;
}
.home-gallery-rail--below .home-gallery-rail__item,
.video-rail--below .video-rail__item {
    min-width: 0 !important;
    width: 100% !important;
}
@media (max-width: 991px) {
    .home-gallery-rail--below,
    .video-rail--below {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 575px) {
    .home-gallery-rail--below,
    .video-rail--below {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

/* v445 homepage media structural override */
.home-media-feature-stack{display:block!important;min-width:0!important;width:100%!important}
.home-media-feature-stack>.home-gallery-feature,.home-media-feature-stack>.video-feature{display:block!important;height:auto!important;min-height:0!important;width:100%!important}
.home-media-support-grid{align-items:stretch!important;display:grid!important;gap:1rem!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:1rem!important;position:static!important;width:100%!important}
.home-media-support-grid>*{display:grid!important;grid-template-columns:minmax(0,1fr)!important;min-width:0!important;width:100%!important}
.home-media-support-grid .home-gallery-rail__media,.home-media-support-grid .video-rail__media{aspect-ratio:16/9!important;width:100%!important}
@media(max-width:991px){.home-media-support-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:575px){.home-media-support-grid{grid-template-columns:minmax(0,1fr)!important}}


/* FE764: source-level visual QA repair after gradient retirement.
   Keep dark mode truly dark and keep headings readable on public surfaces. */
body.site-body .section-heading h1,
body.site-body .section-heading h2,
body.site-body .section-heading h3,
body.site-body .football-match-hero h1,
body.site-body .football-match-hero h2 {
    color: var(--bg-contrast);
}
body.site-body .section-heading p,
body.site-body .football-match-hero p {
    color: var(--text-soft);
}
