:root{--bg:#0c1110;--panel:#151c1a;--line:#2c3833;--text:#f8faf7;--muted:#a8b5af;--orange:#ef3543;--green:#149d65;background:var(--bg)}
.nav{background:#0c1110;border-top:3px solid #ed303d}.nav-inner{gap:18px}.nav .logo{flex-shrink:0}.flb-logo{gap:10px;letter-spacing:0}.flb-mark{position:relative;display:block;width:40px;height:40px;flex-shrink:0;overflow:hidden}.flb-mark img{position:absolute;width:157.23px;max-width:none;height:62.04px;left:-28.9px;top:-10.5px}.brand-wordmark{display:flex;flex-direction:column;gap:4px}.brand-wordmark strong{font-size:18px;letter-spacing:-.3px;font-weight:800}.brand-wordmark strong>span{font-weight:600}.brand-wordmark small{font-size:8px;letter-spacing:.17em;color:#8ea39a}.version-badge{align-self:flex-start;margin-top:7px;border:1px solid #ab2935;border-radius:4px;padding:2px 4px;font-size:8px;letter-spacing:.05em;color:#ff6571}
.demo-strip{background:#10261c;color:#bed1c6}.demo-dot{background:#35b875}.primary{background:#da2435;color:#fff}.primary:hover:not(:disabled){background:#ef3543}.nav-link.active:after{background:#ed303d}.secondary,.filter{background:#18221d;border-color:#35493e}.secondary:hover{background:#22352b}.hero{min-height:435px}.hero-copy{padding:46px 0}.hero h1{font-size:clamp(54px,5.15vw,75px)}.hero h1 span{color:#ed3946}.cedar-mini{display:inline-flex;width:18px;height:20px;color:#16a364;vertical-align:middle;margin-right:7px}.cedar-mini svg{height:100%;width:100%}.hero-location{display:flex;align-items:center;gap:8px;color:#d5e1da;font-size:12px;margin-top:18px}.hero-location svg{color:#2bb473}.hero-badges{margin-top:23px}.hero-art{background:radial-gradient(ellipse,#17492b45,transparent 70%)}.hero-watermark{position:absolute;inset:0;display:grid;place-items:center;opacity:.035;color:#d8f8e6;pointer-events:none}.hero-watermark svg{width:80%;height:80%}.hero-caption{bottom:14px;right:0}.pill.live{color:#aee1c6;background:#103224;border-color:#246343}
.match-card{background:#151c1a;border-color:#2b3a32}.match-card:hover{border-color:#a83742}.match-top{height:165px;background:radial-gradient(ellipse at 80% 100%,color-mix(in srgb,var(--team-color) 25%,transparent),transparent 80%),linear-gradient(130deg,#172e22,#121c17);gap:31px}.match-top:before{border-color:#ffffff09;transform:rotate(-30deg) scaleX(2.5);width:160px;height:160px}.match-label{color:#c0d2c5;font-size:9px;top:14px}.match-date{color:#ff6370;display:flex;align-items:center;gap:8px;font-size:10px;flex-wrap:wrap}.trial-tag{font-size:8px;color:#9fb4a7;border-left:1px solid #415a4b;padding-left:8px}.country-badge{width:82px;height:87px;background:#f7f8f3;border:1px solid #ffffff70;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;box-shadow:0 6px 25px #0003;margin-top:12px}.country-badge.lebanon{border-top:10px solid #ed303d;border-bottom:10px solid #ed303d;color:#00864a}.country-badge.lebanon svg{width:38px;height:38px}.country-badge.lebanon b{font-size:10px;letter-spacing:.12em}.country-badge.opponent{background:#f2f4ec;color:#18382c;border-top:5px solid #aac4b2}.country-badge.opponent b{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:31px;letter-spacing:.04em}.country-badge.opponent small{font-size:8px;letter-spacing:.08em;margin-top:3px}.country-badge.qatar{border-top-color:#8d1b3d;color:#8d1b3d}.country-badge.egypt{border-top-color:#d32b38;color:#8b6f28}.country-badge.australia{border-top-color:#1f448c;color:#1f448c}.match-body h3{font-size:30px}.match-foot .primary{padding:11px 12px}.trial-note{display:flex;align-items:center;gap:9px;font-size:11px;line-height:1.6;color:#9eafa5;padding:0 0 30px}
.atmosphere{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:4px 0 42px;background:#17241c;border:1px solid #2e4437;border-radius:14px;overflow:hidden}.atmosphere img{width:100%;height:290px;object-fit:cover}.atmosphere-copy{padding:35px;display:flex;justify-content:center;flex-direction:column;align-items:flex-start}.atmosphere h2{font-size:43px;line-height:1.05;margin:12px 0}.atmosphere p{font-size:12px;color:#a9bbb0;max-width:315px}.atmosphere .secondary{margin-top:22px}
.viewport-card{background:radial-gradient(ellipse,#26342c66,#131c17 75%)}.swatch.selected{background:#ed303d}.seat-chip.selected{background:#ed303d;border-color:#ed303d;color:#fff}.seat-chip{background:#193529;border-color:#325f46;color:#bfe5d0}.view-banner{background:#0c251bdc;border-color:#3e7452}.preview-empty{background:radial-gradient(ellipse,#244333,#12261b);color:#b2cfbd}.success-mark{background:#174e31;color:#b9edcf}.tabs button.active{background:#1e5b3b}.demo-info{background:#123624;border-color:#28543a;color:#c3dfcc}.ticket{background:#f2f6ee;color:#14351f}.ticket-stub{background:#e5efdf;border-color:#8dac91}.ticket-seat-tags span{background:#cee5ce}.footer{background:#0b100e}.footer .flb-mark{width:30px;height:30px}.footer .flb-mark img{width:117.92px;height:46.53px;left:-21.68px;top:-7.88px}.footer .brand-wordmark strong{font-size:13px}.footer .brand-wordmark small{font-size:7px}.footer .version-badge{font-size:7px;margin-top:2px}.demo-card{background:linear-gradient(130deg,#095734,#141b16);border-color:#35684b}.card-number{color:#fff}
.stadium-detail{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;margin:10px 0 25px}.stadium-identity{min-height:390px;position:relative;border-radius:14px;overflow:hidden;background:#131c17;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:30px}.stadium-identity:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,#06170ee8);pointer-events:none}.stadium-identity>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.stadium-identity h2,.stadium-identity p,.stadium-identity button{position:relative;z-index:1}.stadium-identity h2{font-size:48px;line-height:1;margin-bottom:12px}.stadium-identity p{font-size:12px;color:#d5e4d9;margin-bottom:22px;max-width:340px}.stadium-cedar{display:none}.stadium-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:40px}.stadium-gallery figure{margin:0;border:1px solid #2a4232;border-radius:10px;overflow:hidden;background:#15231a}.stadium-gallery img{width:100%;height:180px;object-fit:cover;display:block}.stadium-gallery figcaption{padding:12px 15px;font-size:11px;color:#b6c9bc}.venue-card h2{font-size:32px}.venue-card{background:#16211a}.stadium-gallery-note{font-size:11px;color:#91aa9a;margin:5px 0 18px}
@media(max-width:1100px){.brand-wordmark strong{font-size:16px}.nav-links{gap:20px}.hero h1{font-size:62px}.match-top{gap:23px}.match-body h3{font-size:27px}.match-foot .primary{font-size:11px;padding:10px}.country-badge{width:73px;height:82px}}
@media(max-width:800px){.brand-wordmark strong{font-size:14px}.brand-wordmark small{font-size:7px}.version-badge{display:none}.flb-mark{width:34px;height:34px}.flb-mark img{width:133.65px;height:52.74px;left:-24.57px;top:-8.93px}.nav-links{gap:14px}.hero h1{font-size:51px}.atmosphere-copy{padding:25px}.atmosphere h2{font-size:36px}.stadium-detail{grid-template-columns:1fr}.stadium-gallery{grid-template-columns:1fr 1fr}.hero-caption .pill{font-size:8px}.hero-caption .ghost{font-size:10px}}
@media(max-width:570px){.nav-inner{gap:9px}.flb-logo{gap:7px}.brand-wordmark strong{font-size:13px;display:flex;flex-direction:column;line-height:1.1}.brand-wordmark small{display:none}.nav-links{gap:13px}.nav-link{font-size:11px}.nav-account{font-size:10px;padding:7px;max-width:88px}.nav-account svg{width:13px}.hero{padding-bottom:16px}.hero-copy{padding:31px 0 0}.hero h1{font-size:57px}.hero-copy p{max-width:320px}.hero-location{font-size:12px}.hero-badges{font-size:10px}.hero-art{height:285px}.hero-caption .pill{font-size:9px}.hero-caption .ghost{font-size:11px}.match-top{height:170px;gap:47px}.country-badge{width:80px;height:87px}.match-body h3{font-size:32px}.match-foot .primary{font-size:12px;padding:11px 14px}.trial-note{align-items:flex-start;font-size:10px}.trial-note svg{flex-shrink:0;margin-top:3px}.atmosphere{grid-template-columns:1fr}.atmosphere img{height:225px}.atmosphere-copy{padding:25px}.atmosphere h2{font-size:39px}.stadium-identity{min-height:350px;padding:22px}.stadium-identity h2{font-size:42px}.stadium-gallery{grid-template-columns:1fr}.stadium-gallery img{height:210px}.footer .brand-wordmark strong{display:block}.page-top h1{font-size:36px}.event-meta{font-size:10px}.view-bottom .camera-buttons{margin-left:auto}.section-heading .filters{width:auto}}

/* Seated-view controls remain usable on narrow screens. */
.viewport canvas:focus-visible{outline:2px solid #ed303d;outline-offset:-3px}
.view-banner{flex-wrap:wrap;gap:8px;max-width:calc(100% - 24px)}
.view-banner .secondary{min-height:36px;padding:7px 11px;white-space:nowrap}
@media(max-width:600px){.view-banner{font-size:12px;left:12px;right:12px;justify-content:center}.viewport-hint{font-size:10px;max-width:calc(100% - 24px)}.camera-buttons{flex-wrap:wrap;justify-content:flex-end}}
