@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(fonts/barlow-condensed-400-italic-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(fonts/barlow-condensed-400-italic-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(fonts/barlow-condensed-400-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(fonts/barlow-condensed-400-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(fonts/barlow-condensed-600-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(fonts/barlow-condensed-600-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(fonts/barlow-condensed-700-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(fonts/barlow-condensed-700-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:800;font-display:swap;src:url(fonts/barlow-condensed-800-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:800;font-display:swap;src:url(fonts/barlow-condensed-800-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/dm-sans-var-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/dm-sans-var-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--phantom-purple:#522d8a;--phantom-purple-dark:#3c2166;--phantom-purple-deep:#1e0f33;--phantom-purple-light:#7b52b3;--phantom-purple-glow:#522d8a2e;--phantom-purple-subtle:#522d8a0f;--phantom-white:#fff;--phantom-bg:#fff;--phantom-bg-alt:#f7f5f9;--phantom-bg-subtle:#eee9f2;--phantom-border:#e2dde6;--phantom-border-light:#f0ecf3;--phantom-text:#1a1a2e;--phantom-text-mid:#4a4a5a;--phantom-text-muted:#6b6b7b;--phantom-green:#0d6b12;--phantom-green-glow:#1a9e1826;--phantom-red:#c9374b;--phantom-red-glow:#c9374b14;--phantom-gold:#f59e0b;--phantom-gold-text:#78350f;--section-padding:80px 0;--container-width:1200px;--radius:8px;--radius-lg:16px;--radius-xl:24px;--transition:.3s ease;--font-display:"Barlow Condensed", "Arial Narrow", sans-serif;--font-body:"DM Sans", -apple-system, BlinkMacSystemFont, sans-serif}html{scroll-behavior:smooth;scroll-padding-top:88px}body{font-family:var(--font-body);background:var(--phantom-bg);color:var(--phantom-text);-webkit-font-smoothing:antialiased;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);line-height:1.6}a{color:var(--phantom-purple);transition:color var(--transition);text-decoration:none}a:hover{color:var(--phantom-purple-dark)}img{max-width:100%;height:auto}.container{max-width:var(--container-width);margin:0 auto;padding:0 24px}.fade-up{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.fade-up.visible{opacity:1;transform:translateY(0)}.stagger-1{transition-delay:50ms}.stagger-2{transition-delay:.1s}.stagger-3{transition-delay:.15s}.stagger-4{transition-delay:.2s}.stagger-5{transition-delay:.25s}.stagger-6{transition-delay:.3s}.nav{z-index:1000;backdrop-filter:blur(12px);border-bottom:1px solid var(--phantom-border);transition:all var(--transition);padding-top:env(safe-area-inset-top);background:#fffffff7;position:fixed;top:0;left:0;right:0}.nav-inner{max-width:var(--container-width);justify-content:space-between;align-items:center;height:72px;margin:0 auto;padding:0 24px;display:flex}.nav-brand{align-items:center;gap:12px;display:flex}.nav-logo{flex-shrink:0;width:52px;height:52px;overflow:hidden}.footer .nav-logo{background:0 0;padding:0}.nav-logo img{object-fit:contain;width:100%;height:100%}.nav-title{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;font-size:20px;font-weight:700;line-height:1.1}.nav-title span{font-family:var(--font-body);color:var(--phantom-purple);text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:500;display:block}.nav-links{align-items:center;gap:4px;list-style:none;display:flex}.nav-links a{color:var(--phantom-text-muted);border-radius:var(--radius);transition:all var(--transition);padding:8px 16px;font-size:14px;font-weight:500}.nav-links a:hover,.nav-links a.active{color:var(--phantom-purple);background:var(--phantom-purple-subtle)}.nav-links a.nav-cta{background:var(--phantom-purple);color:var(--phantom-white);margin-left:4px;font-weight:600}.nav-links a.nav-cta:hover{background:var(--phantom-purple-dark)}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:44px;min-height:44px;padding:8px;display:none}.nav-toggle span{background:var(--phantom-text);width:24px;height:2px;transition:var(--transition);border-radius:2px}@media (width<=768px){.nav-toggle{display:flex}.nav-links{backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:all var(--transition);border-bottom:1px solid var(--phantom-border);background:#fffffffa;flex-direction:column;gap:2px;padding:16px 24px 24px;position:fixed;top:72px;left:0;right:0;transform:translateY(-100%)}.nav-links.open{opacity:1;pointer-events:all;transform:translateY(0)}.nav-links li{width:100%}.nav-links a{text-align:center;border-radius:var(--radius);width:100%;padding:12px 16px;font-size:16px;display:block}.nav-links a.nav-cta{margin-top:8px;margin-left:0}}.hero{text-align:center;justify-content:center;align-items:center;min-height:45vh;padding-top:72px;display:flex;position:relative;overflow:hidden}@media (width<=768px){.hero{min-height:auto;padding:100px 0 48px}}.hero-bg{background:linear-gradient(160deg, var(--phantom-purple-deep) 0%, var(--phantom-purple-dark) 40%, var(--phantom-purple) 70%, #c44de6 100%);z-index:0;position:absolute;inset:0}.hero-bg:before{content:"";z-index:1;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.hero-bg:after{content:"";z-index:1;background:radial-gradient(at 20%,#ffffff14,#0000 50%),radial-gradient(at 80% 20%,#ffffff0d,#0000 40%);position:absolute;inset:0}.hero-watermark{font-family:var(--font-display);opacity:.05;color:var(--phantom-white);z-index:1;user-select:none;letter-spacing:-6px;text-transform:uppercase;font-size:280px;font-weight:900;position:absolute}@media (width<=768px){.hero-watermark{letter-spacing:-3px;font-size:120px}}.hero-logo{filter:drop-shadow(0 4px 20px #00000040);width:180px;height:180px;margin:0 auto 16px}@media (width<=768px){.hero-logo{width:130px;height:130px}}.hero-logo img{object-fit:contain;width:100%;height:100%}.hero-content{z-index:2;max-width:800px;padding:24px 24px 32px;position:relative}.hero-badge{color:#ffffffe6;font-family:var(--font-body);text-transform:uppercase;letter-spacing:3px;background:#ffffff1f;border:1px solid #ffffff40;border-radius:50px;margin-bottom:20px;padding:8px 20px;font-size:11px;font-weight:600;display:inline-block}.hero h1{font-family:var(--font-display);color:var(--phantom-white);letter-spacing:-1px;text-transform:uppercase;margin-bottom:12px;font-size:clamp(48px,8vw,90px);font-weight:800;line-height:.95}.hero h1 .highlight{color:#ffffffbf;font-style:italic;font-weight:400}.hero-subtitle{color:#ffffffa6;letter-spacing:.5px;margin-bottom:24px;font-size:clamp(15px,2vw,19px);font-weight:400}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.hero .hero-actions .btn-primary{background:var(--phantom-white);color:var(--phantom-purple);border-color:var(--phantom-white)}.hero .hero-actions .btn-primary:hover{color:var(--phantom-purple-dark);background:#ffffffe0}.quick-info{background:var(--phantom-white);border-bottom:1px solid var(--phantom-border);z-index:10;padding:0;position:relative;box-shadow:0 4px 24px #0000000f}.quick-info-grid{grid-template-columns:repeat(3,1fr);display:grid}.quick-info-item{border-right:1px solid var(--phantom-border);color:inherit;transition:background var(--transition);align-items:center;gap:16px;padding:24px 32px;text-decoration:none;display:flex}.quick-info-text{flex-direction:column;min-width:0;display:flex}.quick-info-item:last-child{border-right:none}@media (hover:hover){.quick-info-item:hover{background:var(--phantom-purple-subtle)}}.quick-info-icon{background:var(--phantom-white);width:48px;height:48px;transition:background var(--transition);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex}@media (hover:hover){.quick-info-item:hover .quick-info-icon{background:var(--phantom-purple)}.quick-info-item:hover .quick-info-icon img{filter:brightness(0)invert()}}.quick-info-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--phantom-purple);margin-bottom:2px;font-size:11px;font-weight:600}.quick-info-value{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;white-space:nowrap;font-size:18px;font-weight:600}.quick-info-sub{color:#5c5c70;margin-top:1px;font-size:12px}@media (width<=768px){.quick-info-grid{grid-template-columns:1fr}.quick-info-item{border-right:none;border-bottom:1px solid var(--phantom-border);padding:16px 24px}.quick-info-item:last-child{border-bottom:none}}.btn{font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;border-radius:var(--radius);cursor:pointer;transition:all var(--transition);border:none;align-items:center;gap:8px;padding:13px 28px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--phantom-purple);color:var(--phantom-white);box-shadow:0 4px 16px var(--phantom-purple-glow)}.btn-primary:hover{background:var(--phantom-purple-dark);color:var(--phantom-white);transform:translateY(-2px);box-shadow:0 6px 24px #522d8a4d}.btn-outline{color:var(--phantom-purple);border:2px solid var(--phantom-border);background:0 0}.btn-outline:hover{border-color:var(--phantom-purple);color:var(--phantom-purple-dark);background:var(--phantom-purple-subtle)}.hero .btn-outline,.hero-actions .btn-outline,.cta-band .btn-outline{color:var(--phantom-white);border-color:#ffffff59}.hero .btn-outline:hover,.hero-actions .btn-outline:hover,.cta-band .btn-outline:hover{border-color:var(--phantom-white);color:var(--phantom-white);background:#ffffff1a}.btn-ghost{background:var(--phantom-bg-alt);color:var(--phantom-text-mid);border:1px solid #0000}.btn-ghost:hover{background:var(--phantom-bg-subtle);color:var(--phantom-text)}.btn-sm{min-height:44px;padding:9px 18px;font-size:12px}.btn-lg{padding:16px 36px;font-size:16px}@media (width<=480px){.btn-lg{padding:14px 24px;font-size:14px}.section{padding:32px 0}}.section{padding:var(--section-padding)}.section-white{background:var(--phantom-bg)}.section-alt,.section-dark{background:var(--phantom-bg-alt)}.section-darker{background:var(--phantom-bg)}.section-header{text-align:center;margin-bottom:48px}.section-label{font-family:var(--font-body);text-transform:uppercase;letter-spacing:3px;color:var(--phantom-purple);margin-bottom:10px;font-size:11px;font-weight:700}.section-header h2{font-family:var(--font-display);color:var(--phantom-text);letter-spacing:-.5px;text-transform:uppercase;margin-bottom:12px;font-size:clamp(32px,5vw,52px);font-weight:800;line-height:1}.section-header p{color:var(--phantom-text-muted);max-width:720px;margin:0 auto;font-size:16px}@media (width<=768px){.section{padding:48px 0}.section-header{margin-bottom:32px}}.cta-band{background:linear-gradient(135deg, var(--phantom-purple-deep), var(--phantom-purple));text-align:center;padding:56px 0;position:relative;overflow:hidden}.cta-band:before{content:"";background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.cta-band .container{z-index:1;position:relative}.cta-band h2{font-family:var(--font-display);color:var(--phantom-white);text-transform:uppercase;margin-bottom:8px;font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1}.cta-band p{color:#ffffffa6;max-width:500px;margin-bottom:24px;margin-left:auto;margin-right:auto;font-size:16px}.cta-band .hero-actions{justify-content:center}.grid{gap:24px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (width<=992px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card{background:var(--phantom-white);border-radius:var(--radius-lg);border:1px solid var(--phantom-border);transition:all var(--transition);padding:32px}.card:hover{border-color:var(--phantom-purple);transform:translateY(-3px);box-shadow:0 8px 32px #522d8a14}.card-icon{background:var(--phantom-white);border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:20px;font-size:24px;display:flex}.card-icon img,.quick-info-icon img,.contact-icon img{object-fit:contain;width:28px;height:28px}.card h3{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;font-size:22px;font-weight:700}.card p{color:var(--phantom-text-muted);font-size:14px;line-height:1.6}.stats-bar{grid-template-columns:repeat(var(--stat-count,4), 1fr);background:var(--phantom-border);border-radius:var(--radius-lg);border:1px solid var(--phantom-border);gap:1px;display:grid;overflow:hidden;box-shadow:0 4px 24px #0000000f}@media (width<=768px){.stats-bar{grid-template-columns:repeat(2,1fr)}}.stat{text-align:center;background:var(--phantom-white);padding:28px 20px}@media (width<=768px){.stat:last-child:nth-child(odd){grid-column:1/-1}}.stat-number{font-family:var(--font-display);color:var(--phantom-purple);text-transform:uppercase;margin-bottom:4px;font-size:36px;font-weight:800;line-height:1}.stat-label{color:var(--phantom-text-muted);text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:600}.fixture-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.fixture-table{border-collapse:separate;border-spacing:0 6px;width:100%;min-width:600px}.fixture-table th{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1.5px;color:var(--phantom-text-muted);text-align:left;padding:10px 16px;font-size:11px;font-weight:700}.fixture-table td{background:var(--phantom-white);color:var(--phantom-text);border-top:1px solid var(--phantom-border);border-bottom:1px solid var(--phantom-border);padding:14px 16px;font-size:14px}.fixture-table tr td:first-child{border-radius:var(--radius) 0 0 var(--radius);border-left:1px solid var(--phantom-border)}.fixture-table tr td:last-child{border-radius:0 var(--radius) var(--radius) 0;border-right:1px solid var(--phantom-border)}.fixture-round{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;letter-spacing:.5px;font-size:14px;font-weight:700}.fixture-teams{color:var(--phantom-text);font-weight:600}.fixture-teams .vs{color:var(--phantom-text-muted);margin:0 6px;font-weight:400}.fixture-venue{color:var(--phantom-text-muted);font-size:13px}.fixture-note{color:var(--phantom-text-muted);font-size:12px;font-weight:400;font-style:italic}.fixture-card-note{color:var(--phantom-text-muted);font-size:12px;font-style:italic;margin-top:6px;padding-top:6px;border-top:1px solid var(--phantom-border)}.round-placeholder{text-align:center;color:var(--phantom-text-muted);padding:24px 16px;font-size:14px;font-style:italic}.event-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--phantom-border) transparent;gap:20px;padding:4px 16px 16px;scroll-padding:0 16px;display:flex;overflow-x:auto}.event-scroll:after{content:"";flex:0 0 1px}.event-scroll::-webkit-scrollbar{height:6px}.event-scroll::-webkit-scrollbar-track{background:0 0}.event-scroll::-webkit-scrollbar-thumb{background:var(--phantom-border);border-radius:3px}.event-scroll::-webkit-scrollbar-thumb:hover{background:var(--phantom-text-muted)}.home-event-link{color:inherit;scroll-snap-align:start;flex:none;width:clamp(260px,30vw,340px);text-decoration:none;display:flex}.home-event-link .card{cursor:pointer;transition:transform .2s,box-shadow .2s}@media (hover:hover){.home-event-link:hover .card{transform:translateY(-3px);box-shadow:0 8px 24px #00000026}}.event-card{flex-direction:column;width:100%;display:flex}.event-card .home-event-desc{flex:1}.event-card-footer{margin-top:auto}.home-event-desc{color:var(--phantom-text-muted);margin:8px 0;font-size:14px;line-height:1.5}.home-event-cta{color:var(--phantom-purple);margin-top:8px;font-size:13px;font-weight:600;transition:transform .2s;display:inline-block}@media (hover:hover){.home-event-link:hover .home-event-cta{transform:translate(4px)}}@media (width<=600px){.home-event-link{width:clamp(240px,75vw,300px)}}.venue-directions{vertical-align:middle;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px;color:var(--phantom-purple);background:var(--phantom-purple-subtle);border:1px solid var(--phantom-border);border-radius:50px;padding:3px 10px;align-items:center;gap:6px;margin-left:8px;font-size:11px;font-weight:700;white-space:nowrap;text-decoration:none;transition:all .2s;display:inline-flex}.venue-directions:hover{background:var(--phantom-purple);color:var(--phantom-white);border-color:var(--phantom-purple);transform:translateY(-1px)}.venue-directions svg{flex-shrink:0;display:block}.venue-directions-label{line-height:1}.fixture-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:50px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-block}.badge-home{color:var(--phantom-purple);background:#522d8a1a}.badge-away{background:var(--phantom-bg-alt);color:var(--phantom-text-muted)}.badge-win{color:var(--phantom-green);background:#1a9e181a}.badge-loss{color:var(--phantom-red);background:#c9374b14}.round-header{background:var(--phantom-bg-alt);border-radius:var(--radius);border:1px solid var(--phantom-border);align-items:center;gap:16px;margin-bottom:16px;padding:14px 20px;transition:background .2s,border-color .2s;display:flex}.round-section:not(.collapsed) .round-header{background:var(--phantom-white);border-color:var(--phantom-border);border-left:3px solid var(--phantom-purple);box-shadow:0 2px 8px #0000000a}.round-section.collapsed .round-header:hover{background:var(--phantom-white);border-color:var(--phantom-border);border-left:3px solid var(--phantom-purple-light)}.round-section.collapsed .round-header:hover h3{color:var(--phantom-text)}.round-header h3{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:17px;font-weight:700}.round-section.collapsed .round-header h3{color:var(--phantom-text-muted);font-weight:600}.round-header .round-date{font-family:var(--font-body);color:var(--phantom-text-muted);font-size:13px;font-weight:500}.round-section.round-next:not(.collapsed) .round-header{background:linear-gradient(135deg, var(--phantom-purple-deep), var(--phantom-purple));border-color:#0000 #0000 #0000 currentColor;border-left-style:none;border-left-width:medium;box-shadow:0 4px 16px #522d8a40}.round-section.round-next:not(.collapsed) .round-header h3,.round-section.round-next:not(.collapsed) .round-header .round-date{color:var(--phantom-white)}.round-section.round-next:not(.collapsed) .round-header h3{font-weight:800}.round-section.round-next:not(.collapsed) .round-header .round-date{opacity:.75}@media (width<=768px){.round-header{text-align:left;flex-direction:column;align-items:flex-start;gap:4px}}.fixture-cards{display:none}@media (width<=768px){.fixture-table-wrapper{display:none}.fixture-cards{flex-direction:column;gap:10px;display:flex}.fixture-card{background:var(--phantom-white);border:1px solid var(--phantom-border);border-radius:var(--radius);padding:16px}.fixture-card-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.fixture-card-age{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;font-size:14px;font-weight:700}.fixture-card-teams{color:var(--phantom-text);margin-bottom:8px;font-size:15px;font-weight:600}.fixture-card-teams .vs{color:var(--phantom-text-muted);font-weight:400}.fixture-card-meta{color:var(--phantom-text-muted);gap:16px;font-size:13px;display:flex}}.next-game{background:linear-gradient(135deg, var(--phantom-purple-deep), var(--phantom-purple));border-radius:var(--radius-xl);justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px;padding:32px;display:flex;position:relative;overflow:hidden}.next-game:before{content:"";background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.next-game-content{z-index:1;position:relative}.next-game-label{text-transform:uppercase;letter-spacing:2px;color:#ffffffa6;margin-bottom:8px;font-size:11px;font-weight:700}.next-game h3{font-family:var(--font-display);color:var(--phantom-white);text-transform:uppercase;margin-bottom:8px;font-size:clamp(24px,3vw,32px);font-weight:800;line-height:1.1}.next-game-details{color:#ffffffa6;flex-wrap:wrap;gap:20px;font-size:14px;display:flex}.next-game-details span{align-items:center;gap:6px;display:flex}.next-game-actions{z-index:1;flex-shrink:0;position:relative}@media (width<=768px){.next-game{flex-direction:column;align-items:flex-start;padding:24px}}.filter-tabs{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:32px;display:flex}.filter-tab{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px;border:1px solid var(--phantom-border);background:var(--phantom-white);color:var(--phantom-text-muted);cursor:pointer;transition:all var(--transition);border-radius:50px;padding:8px 18px;font-size:13px;font-weight:600}.filter-tab:hover,.filter-tab.active{border-color:var(--phantom-purple);color:var(--phantom-white);background:var(--phantom-purple)}.product-card{background:var(--phantom-white);border-radius:var(--radius-lg);border:1px solid var(--phantom-border);transition:all var(--transition);overflow:hidden}@media (hover:hover){.product-card:hover{border-color:var(--phantom-purple);transform:translateY(-3px);box-shadow:0 8px 32px #522d8a14}}.product-image{aspect-ratio:1;background:linear-gradient(145deg, var(--phantom-bg-alt) 0%, var(--phantom-bg-subtle) 100%);justify-content:center;align-items:center;width:100%;font-size:56px;display:flex;position:relative;overflow:hidden}.product-image-placeholder{color:var(--phantom-purple);opacity:.5;flex-direction:column;align-items:center;gap:8px;display:flex}.product-image-placeholder span{font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;color:var(--phantom-text-muted);font-size:12px;font-weight:700}.product-tag{background:var(--phantom-purple);color:var(--phantom-white);font-family:var(--font-display);z-index:1;text-transform:uppercase;letter-spacing:1px;border-radius:50px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;top:12px;right:12px}.product-info{padding:20px}.product-info h3{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;margin-bottom:4px;font-size:18px;font-weight:700}.product-info .product-desc{color:var(--phantom-text-muted);margin-bottom:16px;font-size:13px;line-height:1.5}.product-footer{justify-content:space-between;align-items:center;display:flex}.product-price{font-family:var(--font-display);color:var(--phantom-purple);font-size:24px;font-weight:800}.product-price .currency{vertical-align:top;margin-right:1px;font-size:14px;font-weight:600}.featured-product{background:linear-gradient(135deg, var(--phantom-purple-deep) 0%, var(--phantom-purple) 100%);border-radius:var(--radius-xl);grid-template-columns:1fr 1fr;align-items:center;gap:40px;margin-bottom:48px;padding:48px;display:grid;position:relative;overflow:hidden}.featured-product:before{content:"";background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.featured-product-image{border-radius:var(--radius-lg);aspect-ratio:4/3;z-index:1;background:#ffffff14;justify-content:center;align-items:center;font-size:80px;display:flex;position:relative}.featured-product-content{z-index:1;position:relative}.featured-product-content .section-label{color:#ffffffd9}.featured-product-content h2{font-family:var(--font-display);color:var(--phantom-white);text-transform:uppercase;margin-bottom:12px;font-size:clamp(28px,3vw,40px);font-weight:800;line-height:1}.featured-product-content p{color:#fff9;margin-bottom:8px;font-size:15px;line-height:1.6}.featured-product-price{font-family:var(--font-display);color:var(--phantom-white);margin:20px 0;font-size:36px;font-weight:800}.featured-product-price .from{opacity:.6;font-size:14px;font-weight:500;font-family:var(--font-body);text-transform:none}@media (width<=768px){.featured-product{grid-template-columns:1fr;gap:24px;padding:32px}.featured-product-image{aspect-ratio:16/9;font-size:56px}}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}@media (width<=768px){.about-grid{grid-template-columns:1fr;gap:32px}.about-image{aspect-ratio:16/9;max-height:160px;font-size:60px}}.about-image{background:linear-gradient(135deg, var(--phantom-purple), var(--phantom-purple-dark));border-radius:var(--radius-xl);aspect-ratio:4/3;color:#ffffff26;justify-content:center;align-items:center;font-size:100px;display:flex;position:relative;overflow:hidden}.about-image img{object-fit:cover;width:100%;height:100%}.about-image:before{content:"";background:radial-gradient(circle at 30% 40%,#ffffff14,#0000 60%);position:absolute;inset:0}.about-text h2{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;margin-bottom:16px;font-size:clamp(28px,4vw,40px);font-weight:800;line-height:1.05}.about-text p{color:var(--phantom-text-muted);margin-bottom:14px;font-size:15px;line-height:1.7}.about-text ul{margin:20px 0;list-style:none}.about-text ul li{color:var(--phantom-text-mid);padding:6px 0 6px 24px;font-size:14px;position:relative}.about-text ul li:before{content:"";background:var(--phantom-purple);border-radius:2px;width:8px;height:8px;position:absolute;top:14px;left:0;transform:rotate(45deg)}.timeline{max-width:700px;margin:0 auto;position:relative}.timeline:before{content:"";background:var(--phantom-border);width:2px;position:absolute;top:0;bottom:0;left:20px}.timeline-item{padding-bottom:40px;padding-left:56px;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-dot{background:var(--phantom-purple);border:3px solid var(--phantom-bg);border-radius:50%;width:18px;height:18px;position:absolute;top:4px;left:12px}.timeline-year{font-family:var(--font-display);color:var(--phantom-purple);text-transform:uppercase;letter-spacing:2px;margin-bottom:4px;font-size:14px;font-weight:700}.timeline-item h3{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;margin-bottom:4px;font-size:20px;font-weight:700}.timeline-item p{color:var(--phantom-text-muted);font-size:14px;line-height:1.6}.contact-grid{grid-template-columns:1fr 1fr;gap:32px;display:grid}@media (width<=768px){.contact-grid{grid-template-columns:1fr}}.contact-card{background:var(--phantom-white);border-radius:var(--radius-lg);border:1px solid var(--phantom-border);padding:32px}.contact-card h3{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;margin-bottom:20px;font-size:22px;font-weight:700}.contact-item{border-bottom:1px solid var(--phantom-border-light);align-items:flex-start;gap:16px;padding:12px 0;display:flex}.contact-item:last-child{border-bottom:none}.contact-icon{background:var(--phantom-white);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.contact-detail label{text-transform:uppercase;letter-spacing:1.5px;color:var(--phantom-text-muted);margin-bottom:2px;font-size:10px;font-weight:600;display:block}.contact-detail span{color:var(--phantom-text);font-size:14px;font-weight:500}.form-group{margin-bottom:16px}.form-group label{color:var(--phantom-text);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{background:var(--phantom-bg-alt);border:1px solid var(--phantom-border);border-radius:var(--radius);width:100%;color:var(--phantom-text);font-size:15px;font-family:var(--font-body);transition:border-color var(--transition);padding:12px 16px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--phantom-purple);box-shadow:0 0 0 3px var(--phantom-purple-glow);outline:none}.form-group textarea{resize:vertical;min-height:120px}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--phantom-text-muted)}.footer{background:var(--phantom-purple-deep);color:#fffc;border-top:3px solid var(--phantom-purple);padding:48px 0 24px}.footer .nav-title{color:var(--phantom-white)}.footer .nav-title span{color:#ffffff8c}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px;display:grid}@media (width<=768px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}}@media (width<=480px){.footer-grid{grid-template-columns:1fr}}.footer-brand p{color:#ffffff8c;margin-top:12px;font-size:13px;line-height:1.6}.footer h3{font-family:var(--font-display);color:var(--phantom-white);text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;font-size:14px;font-weight:700}.footer-links{list-style:none}.footer-links li{margin-bottom:8px}.footer-links a{color:#ffffff8c;padding:8px 4px;font-size:13px;display:inline-block}@media (hover:hover){.footer-links a:hover{color:var(--phantom-white)}}.footer-bottom{border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;display:flex}.footer-bottom p{color:#ffffff80;font-size:12px}.footer-social{gap:10px;display:flex}.footer-social a{color:#ffffff8c;width:36px;height:36px;transition:all var(--transition);background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.footer-social a svg{fill:currentColor}.footer-social a:hover{background:var(--phantom-purple);color:var(--phantom-white)}.sponsors{background:var(--phantom-bg-alt);border-top:1px solid var(--phantom-border);border-bottom:1px solid var(--phantom-border);padding:40px 0}.sponsor-major-row{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:48px;margin-bottom:24px;display:flex}.sponsor-major-item{transition:opacity var(--transition);flex-direction:column;justify-content:center;align-items:center;gap:8px;text-decoration:none;display:flex}.sponsor-major-item:hover{opacity:.8}.sponsor-major-item img{object-fit:contain;max-width:200px;max-height:120px}.sponsor-scroll{position:relative;overflow:hidden}.sponsor-scroll:before,.sponsor-scroll:after{content:"";z-index:2;pointer-events:none;width:80px;position:absolute;top:0;bottom:0}.sponsor-scroll:before{background:linear-gradient(to right, var(--phantom-bg-alt), transparent);left:0}.sponsor-scroll:after{background:linear-gradient(to left, var(--phantom-bg-alt), transparent);right:0}.sponsor-scroll:hover .sponsor-scroll-track{animation-play-state:paused}.sponsor-scroll-track{align-items:center;gap:48px;width:max-content;animation:linear infinite scroll-sponsors;display:flex}@media (prefers-reduced-motion:reduce){.sponsor-scroll-track{flex-wrap:wrap;justify-content:center;width:auto;animation:none}}@keyframes scroll-sponsors{0%{transform:translate(0)}to{transform:translateX(var(--scroll-dist,-50%))}}.sponsor-scroll-item{transition:opacity var(--transition);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;text-decoration:none;display:flex}.sponsor-scroll-item:hover{opacity:.7}.sponsor-scroll-item img{object-fit:contain;max-width:120px;max-height:48px}.sponsor-name{font-family:var(--font-display);text-transform:uppercase;color:var(--phantom-text-mid);white-space:nowrap;font-size:16px;font-weight:700}.sponsor-major-item .sponsor-name{font-size:20px}.sponsor-name-sub{letter-spacing:.5px;color:var(--phantom-text-mid);font-size:11px}.sponsor-name-promoted{border:1px solid var(--phantom-border);background:#522d8a0f;border-radius:8px;padding:20px 24px;font-size:22px}@media (width<=640px){.sponsors{padding:28px 0}.sponsor-scroll:before,.sponsor-scroll:after{width:40px}}@media (width<=480px){.sponsor-major-row{gap:24px 20px}.sponsor-name-promoted{padding:14px 16px;font-size:18px}}.announcement{z-index:900;background:var(--phantom-purple-deep);color:var(--phantom-white);text-align:center;font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;border-bottom:5px solid var(--phantom-white);margin-top:72px;padding:28px clamp(28px,6vw,72px);font-size:26px;font-weight:700;position:relative;overflow:hidden;box-shadow:0 6px 18px #2d0a3a59}.announcement a{color:var(--phantom-white);text-underline-offset:3px;transition:opacity var(--transition);text-decoration:underline 1.5px}.announcement a:hover{opacity:.8}.announcement-track{white-space:nowrap;justify-content:center;align-items:center;gap:32px;display:flex}.announcement-track.scrolling{justify-content:flex-start;animation:20s linear infinite ticker}.announcement-item{white-space:nowrap}.announcement-divider{color:#ffffff80;font-size:14px}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(var(--scroll-dist,-50%))}}.committee-member{text-align:center;background:var(--phantom-white);border:1px solid var(--phantom-border);border-radius:var(--radius-lg);flex-direction:column;align-items:center;padding:24px;display:flex}.committee-member strong{font-family:var(--font-display);text-transform:uppercase;color:var(--phantom-purple);margin-bottom:4px;font-size:16px;font-weight:700}.committee-member span{color:var(--phantom-text);font-size:14px}.committee-contact{color:var(--phantom-text-muted);font-size:13px}.key-date{border-bottom:1px solid var(--phantom-border-light);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.key-date:last-child{border-bottom:none}.key-date strong{font-family:var(--font-display);text-transform:uppercase;color:var(--phantom-purple);font-size:14px;font-weight:700}.key-date span{color:var(--phantom-text);font-size:14px}.key-date small{color:var(--phantom-text-muted);font-size:11px}.reg-paths{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:48px;display:grid}.reg-path{border-radius:var(--radius-lg);border:2px solid var(--phantom-border);text-align:center;transition:all var(--transition);padding:32px}.reg-path:hover{border-color:var(--phantom-purple)}.reg-path h3{font-family:var(--font-display);text-transform:uppercase;color:var(--phantom-text);margin-bottom:8px;font-size:24px;font-weight:700}.reg-path p{color:var(--phantom-text-muted);margin-bottom:20px;font-size:14px;line-height:1.6}@media (width<=600px){.reg-paths{grid-template-columns:1fr}}.fee-table-wrapper{max-width:700px;margin:0 auto}.fee-table{border-collapse:separate;border-spacing:0 6px;width:100%}.fee-table th{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1.5px;color:var(--phantom-text-muted);text-align:left;padding:10px 16px;font-size:11px;font-weight:700}.fee-table td{background:var(--phantom-white);color:var(--phantom-text);border-top:1px solid var(--phantom-border);border-bottom:1px solid var(--phantom-border);padding:14px 16px;font-size:14px}.fee-table tr td:first-child{border-radius:var(--radius) 0 0 var(--radius);border-left:1px solid var(--phantom-border);font-weight:600}.fee-table tr td:last-child{border-radius:0 var(--radius) var(--radius) 0;border-right:1px solid var(--phantom-border);color:var(--phantom-text-muted);font-size:13px}@media (width<=600px){.fee-table thead{display:none}.fee-table tr{background:var(--phantom-white);border:1px solid var(--phantom-border);border-radius:var(--radius);margin-bottom:10px;padding:12px 16px;display:block}.fee-table td{background:0 0;border:none;padding:4px 0;display:block}.fee-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:1px;color:var(--phantom-text-muted);margin-bottom:2px;font-size:10px;font-weight:700;display:block}.fee-table tr td:first-child,.fee-table tr td:last-child{border:none;border-radius:0}}.text-center{text-align:center}.text-purple{color:var(--phantom-purple)}.text-muted{color:var(--phantom-text-muted)}.mb-0{margin-bottom:0}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}.mb-48{margin-bottom:48px}.mt-32{margin-top:32px}.mt-48{margin-top:48px}.divider{background:var(--phantom-purple);border-radius:2px;width:60px;height:3px;margin:0 auto 24px}.gallery-carousel{border-radius:var(--radius-xl);background:var(--phantom-purple-deep);border:1px solid #522d8a33;position:relative;overflow:hidden}.gallery-carousel-track{will-change:transform;transition:transform .5s cubic-bezier(.25,.46,.45,.94);display:flex}.gallery-carousel-slide{box-sizing:border-box;flex:0 0 25%;padding:6px}.gallery-carousel-slide img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);cursor:pointer;width:100%;transition:transform .4s,box-shadow .4s;display:block}@media (hover:hover){.gallery-carousel-slide img:hover{transform:scale(1.03);box-shadow:0 8px 32px #0000004d}}.gallery-carousel-slide .gallery-slide-caption{color:#ffffffa6;text-align:center;white-space:nowrap;text-overflow:ellipsis;margin-top:8px;padding:0 4px;font-size:12px;font-weight:500;overflow:hidden}.gallery-arrow{backdrop-filter:blur(8px);width:44px;height:44px;color:var(--phantom-white);cursor:pointer;transition:all var(--transition);z-index:5;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:24px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}@media (hover:hover){.gallery-arrow:hover{background:var(--phantom-purple);transform:translateY(-50%)scale(1.1)}}.gallery-arrow-prev{left:12px}.gallery-arrow-next{right:12px}.gallery-progress{justify-content:center;gap:6px;padding:12px 0 16px;display:flex}.gallery-progress-dot{cursor:pointer;width:8px;height:8px;transition:all var(--transition);background:#fff3 padding-box content-box;border:none;border-radius:50%;padding:10px}.gallery-progress-dot.active{background:var(--phantom-purple-light);background-clip:content-box;transform:scale(1.3)}@media (width<=992px){.gallery-carousel-slide{flex:0 0 33.333%}}@media (width<=600px){.gallery-carousel-slide{flex:0 0 50%}.gallery-arrow{width:44px;height:44px;font-size:20px}.gallery-arrow-prev{left:6px}.gallery-arrow-next{right:6px}}.fb-feed-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}@media (width<=700px){.fb-feed-grid{grid-template-columns:1fr}}.fb-post-card{background:var(--phantom-white);border:1px solid var(--phantom-border);border-radius:var(--radius-lg);transition:all var(--transition);flex-direction:column;display:flex;overflow:hidden}.fb-post-card:hover{border-color:var(--phantom-purple);transform:translateY(-2px);box-shadow:0 8px 32px #522d8a14}.fb-post-image{aspect-ratio:16/9;background:linear-gradient(145deg, var(--phantom-bg-alt), var(--phantom-bg-subtle));width:100%;overflow:hidden}.fb-post-image img{object-fit:cover;width:100%;height:100%;display:block}.fb-post-body{flex:1;padding:20px 20px 12px}.fb-post-body p{color:var(--phantom-text-mid);white-space:pre-line;font-size:14px;line-height:1.65}.fb-post-footer{justify-content:space-between;align-items:center;gap:12px;padding:0 20px 16px;display:flex}.fb-post-time{color:var(--phantom-text-muted);font-size:12px;font-weight:500}.fb-post-link{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px;color:var(--phantom-purple);transition:color var(--transition);font-size:12px;font-weight:700}.fb-post-link:hover{color:var(--phantom-purple-dark)}.fb-feed-empty{text-align:center;padding:32px 16px}.fb-feed-empty p{color:var(--phantom-text-muted);margin-bottom:16px;font-size:15px}.fb-skeleton-card{padding:20px}.fb-skeleton-body{background:linear-gradient(90deg, var(--phantom-bg-alt) 25%, var(--phantom-bg-subtle) 50%, var(--phantom-bg-alt) 75%);border-radius:var(--radius);background-size:200% 100%;height:80px;margin-bottom:12px;animation:1.5s infinite skeleton-shimmer}.fb-skeleton-line{background:linear-gradient(90deg, var(--phantom-bg-alt) 25%, var(--phantom-bg-subtle) 50%, var(--phantom-bg-alt) 75%);background-size:200% 100%;border-radius:4px;height:12px;margin-bottom:8px;animation:1.5s infinite skeleton-shimmer}.fb-skeleton-line.short{width:60%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.round-photos-btn{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px;border:1px solid var(--phantom-border);background:var(--phantom-white);color:var(--phantom-purple);cursor:pointer;transition:all var(--transition);white-space:nowrap;border-radius:50px;flex-shrink:0;margin-left:auto;padding:5px 14px;font-size:12px;font-weight:700}.round-photos-btn:hover{background:var(--phantom-purple);color:var(--phantom-white);border-color:var(--phantom-purple)}.round-section.round-next:not(.collapsed) .round-header .round-photos-btn{color:var(--phantom-white);background:#ffffff26;border-color:#ffffff4d}.round-section.round-next:not(.collapsed) .round-header .round-photos-btn:hover{background:#ffffff40}.round-gallery{margin-bottom:32px;display:none}.round-gallery.visible{display:block}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:12px;padding:4px 0;display:grid}@media (width<=992px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=600px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.gallery-thumb{border-radius:var(--radius);border:1px solid var(--phantom-border);cursor:pointer;transition:all var(--transition);position:relative;overflow:hidden}@media (hover:hover){.gallery-thumb:hover{border-color:var(--phantom-purple);transform:translateY(-2px);box-shadow:0 6px 20px #522d8a1a}}.gallery-thumb img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .4s;display:block}@media (hover:hover){.gallery-thumb:hover img{transform:scale(1.05)}}.gallery-thumb-badges{flex-wrap:wrap;gap:4px;display:flex;position:absolute;bottom:6px;left:6px}.gallery-thumb-badge{text-transform:uppercase;letter-spacing:.5px;color:var(--phantom-white);backdrop-filter:blur(4px);background:#0009;border-radius:50px;padding:2px 8px;font-size:9px;font-weight:700}.lightbox-overlay{z-index:9999;opacity:0;visibility:hidden;background:#000000eb;flex-direction:column;justify-content:center;align-items:center;padding:24px;transition:opacity .3s,visibility .3s;display:flex;position:fixed;inset:0}.lightbox-overlay.active{opacity:1;visibility:visible}.lightbox-overlay img{object-fit:contain;border-radius:var(--radius-lg);max-width:min(90vw,1200px);max-height:80vh;box-shadow:0 16px 64px #00000080}.lightbox-caption{color:#ffffffb3;text-align:center;max-width:600px;margin-top:16px;font-size:14px}.lightbox-close{width:44px;height:44px;color:var(--phantom-white);cursor:pointer;transition:background var(--transition);background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:24px;display:flex;position:absolute;top:16px;right:20px}.lightbox-close:hover{background:#ffffff40}@media (width<=768px){.fixture-table{min-width:500px}.fixture-table th,.fixture-table td{padding:10px 12px;font-size:13px}}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.skeleton-round-header{background:var(--phantom-bg-alt);border-radius:var(--radius);height:56px;margin-bottom:16px;animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton-table{background:var(--phantom-bg-alt);border-radius:var(--radius);height:200px;margin-bottom:48px;animation:1.5s ease-in-out .2s infinite skeleton-pulse}.fixture-score{font-family:var(--font-display);color:var(--phantom-text);letter-spacing:1px;font-size:16px;font-weight:800}.fixture-card-score{font-family:var(--font-display);color:var(--phantom-text);text-align:center;letter-spacing:1px;margin-bottom:8px;font-size:18px;font-weight:800}.badge-played{background:var(--phantom-bg-alt);color:var(--phantom-text-muted)}.badge-tbc{color:var(--phantom-red);background:#c9374b14}.round-venue-note{font-family:var(--font-body);color:var(--phantom-text-muted);font-size:12px;font-style:italic;font-weight:400}.round-section.round-next:not(.collapsed) .round-header .round-venue-note{color:#ffffffa6}.round-venues{font-family:var(--font-body);color:var(--phantom-text-muted);font-size:13px;font-weight:500}.round-section.round-next:not(.collapsed) .round-header .round-venues{color:#ffffffb3}.round-section{margin-bottom:4px}.round-section .round-header{cursor:pointer;user-select:none;margin-bottom:0;padding-right:48px;transition:margin-bottom .2s;position:relative}.round-section:not(.collapsed) .round-header{margin-bottom:16px}.round-section .round-header:after{content:"";border-right:2px solid var(--phantom-text-muted);border-bottom:2px solid var(--phantom-text-muted);width:9px;height:9px;transition:transform .25s,border-color .25s;position:absolute;top:50%;right:20px;transform:translateY(-50%)rotate(0)}.round-section:not(.collapsed) .round-header:after{border-color:var(--phantom-text);transform:translateY(-50%)rotate(45deg)}.round-section.collapsed .round-header:after{transform:translateY(-50%)rotate(-45deg)}.round-section.round-next:not(.collapsed) .round-header:after{border-color:#fff9}.round-body{opacity:1;max-height:5000px;transition:max-height .35s,opacity .25s;overflow:hidden}.round-section.collapsed .round-body{opacity:0;max-height:0}.season-cal-value{color:var(--phantom-text);margin:12px 0;font-size:28px;font-weight:800}.season-cal-label{text-transform:uppercase;letter-spacing:2px;color:var(--phantom-purple);font-size:14px;font-weight:700}.home-game-date{color:var(--phantom-purple);margin-top:16px;font-weight:700}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{background:var(--phantom-white);border-radius:var(--radius-lg);border:1px solid var(--phantom-border);overflow:hidden}.skeleton-image{aspect-ratio:1;background:linear-gradient(90deg, var(--phantom-bg-alt) 25%, var(--phantom-bg-subtle) 50%, var(--phantom-bg-alt) 75%);background-size:200% 100%;width:100%;animation:1.5s infinite shimmer}.skeleton-info{padding:20px}.skeleton-line{background:linear-gradient(90deg, var(--phantom-bg-alt) 25%, var(--phantom-bg-subtle) 50%, var(--phantom-bg-alt) 75%);background-size:200% 100%;border-radius:4px;height:14px;margin-bottom:10px;animation:1.5s infinite shimmer}.skeleton-line.short{width:60%}.skeleton-line.medium{width:80%}.skeleton-line.title{width:70%;height:20px;margin-bottom:12px}.skeleton-line.price{width:40%;height:24px;margin-bottom:0}.shop-error{text-align:center;background:var(--phantom-white);border-radius:var(--radius-lg);border:1px solid var(--phantom-border);padding:48px 24px}.shop-error-icon{margin-bottom:16px;font-size:48px}.shop-error h3{font-family:var(--font-display);color:var(--phantom-text);text-transform:uppercase;margin-bottom:8px;font-size:22px;font-weight:700}.shop-error p{color:var(--phantom-text-muted);margin-bottom:24px;font-size:15px;line-height:1.6}
/* ── Legal Pages ──────────────────────────────── */
.legal-content {
  max-width: 800px;
  margin: 0 auto;
  padding: 48px 24px 64px;
}
.legal-content h2 {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 800;
  font-size: 1.5rem;
  text-transform: uppercase;
  color: var(--text-purple);
  margin-top: 40px;
  margin-bottom: 12px;
}
.legal-content h2:first-of-type {
  margin-top: 0;
}
.legal-content h3 {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 600;
  font-size: 1.1rem;
  text-transform: uppercase;
  color: var(--phantom-text);
  margin-top: 24px;
  margin-bottom: 8px;
}
.legal-content p {
  color: var(--phantom-text-muted);
  line-height: 1.7;
  margin-bottom: 12px;
}
.legal-content ul {
  color: var(--phantom-text-muted);
  line-height: 1.7;
  margin: 0 0 16px 24px;
  padding: 0;
}
.legal-content li {
  margin-bottom: 6px;
}
.legal-content a {
  color: var(--text-purple);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.legal-content a:hover {
  color: var(--phantom-purple-light);
}
.legal-content code {
  background: var(--phantom-bg-alt);
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 0.9em;
}
.legal-updated {
  font-size: 0.85rem;
  color: var(--phantom-text-muted);
  margin-bottom: 32px;
  font-style: italic;
}

/* ── Footer Legal Links ───────────────────────── */
.footer-legal {
  display: flex;
  gap: 16px;
  justify-content: center;
  margin-top: 8px;
}
.footer-legal a {
  font-size: 0.8rem;
  color: var(--phantom-text-muted);
  text-decoration: none;
  transition: color 0.2s;
}
.footer-legal a:hover {
  color: var(--text-purple);
}

/* ── Cookie Consent Banner ────────────────────── */
.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--phantom-purple-deep);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 16px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  z-index: 9999;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.85);
}
.cookie-banner p {
  margin: 0;
  line-height: 1.5;
}
.cookie-banner a {
  color: var(--phantom-purple-light);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.cookie-banner button {
  background: var(--phantom-purple);
  color: #fff;
  border: none;
  padding: 8px 20px;
  border-radius: 6px;
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 600;
  font-size: 0.875rem;
  text-transform: uppercase;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s;
}
.cookie-banner button:hover {
  background: var(--phantom-purple-light);
}
@media (max-width: 600px) {
  .cookie-banner {
    flex-direction: column;
    text-align: center;
    gap: 12px;
    padding: 16px;
  }
}
.skip-link{position:absolute;top:-40px;left:0;background:var(--phantom-primary,#7b52b3);color:#fff;padding:8px 16px;z-index:9999;font-size:14px;text-decoration:none;transition:top .2s}.skip-link:focus{top:0}

/* ── Accessibility tokens ─────────────────────────
   --text-purple is referenced in the legal pages and footer-legal,
   --phantom-primary in the skip-link. Both alias to the canonical
   brand purple so the cascade has a real value to resolve. */
:root {
  --text-purple: var(--phantom-purple);
  --phantom-primary: var(--phantom-purple);
}

/* Visible keyboard focus ring across the site. The form-group rule
   on inputs/textarea/select keeps its custom box-shadow ring; this
   covers buttons, links, the hamburger, gallery arrows, filter tabs,
   and the skip-link, which previously fell back to the UA default. */
:focus-visible {
  outline: 2px solid var(--phantom-purple);
  outline-offset: 2px;
  border-radius: 2px;
}
.form-group input:focus-visible,
.form-group textarea:focus-visible,
.form-group select:focus-visible {
  outline: none;
}

/* Honour prefers-reduced-motion across the site. The fade-up reveal
   stays on (the IntersectionObserver still adds .visible) but the
   transition is muted so vestibular-sensitive users get the result
   without the motion. Existing rule on .sponsor-scroll-track is
   preserved by being more specific. */
@media (prefers-reduced-motion: reduce) {
  .fade-up,
  .fade-up.visible {
    transition: none;
    opacity: 1;
    transform: none;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.round-field-maps{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding:10px 16px;background:var(--phantom-surface);border-left:3px solid var(--phantom-purple);border-radius:0 6px 6px 0;margin-bottom:12px}.field-maps-label{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--phantom-purple);white-space:nowrap}.field-maps-links{display:flex;flex-wrap:wrap;gap:6px 12px}.field-map-download{font-size:13px;color:var(--phantom-purple);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.field-map-download:hover{opacity:.75}.field-maps-list{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.field-map-item{display:flex;align-items:center;gap:8px}.field-map-link{font-size:13px;color:var(--phantom-purple);text-decoration:underline;text-underline-offset:2px}
.round-forecast{display:none;font-family:var(--font-body);font-size:12px;color:var(--phantom-text-muted);align-items:center;gap:8px;flex-wrap:wrap}.round-forecast.has-forecast{display:inline-flex}.round-forecast-venue{display:inline-flex;align-items:center;gap:4px;background:var(--phantom-bg-alt);border:1px solid var(--phantom-border);border-radius:50px;padding:3px 10px;white-space:nowrap}.round-forecast-venue-label{font-weight:600;color:var(--phantom-text)}.round-section.round-next:not(.collapsed) .round-forecast{color:#fff}.round-section.round-next:not(.collapsed) .round-forecast-venue{background:#ffffff1a;border-color:#ffffff33;color:#fff}.round-section.round-next:not(.collapsed) .round-forecast-venue-label{color:#fff}@media (max-width:600px){.round-forecast{font-size:11px;width:100%;order:99}.round-forecast-venue{padding:2px 8px}}
/* ── FAQ section (per-page Q&A surfaced via <section data-faqs="<page>">) ── */
.faq-section{
  max-width:880px;
  margin:48px auto;
  padding:0 20px;
}
.faq-section-heading{
  font-size:28px;
  margin:0 0 24px;
  text-align:center;
  color:var(--phantom-text);
}
.faq-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.faq-item{
  background:var(--phantom-bg-alt,#1a1128);
  border:1px solid var(--phantom-border,#ffffff14);
  border-radius:10px;
  overflow:hidden;
  transition:border-color .2s ease;
}
.faq-item[open]{
  border-color:var(--phantom-purple,#7c3aed);
}
.faq-question{
  cursor:pointer;
  list-style:none;
  padding:16px 48px 16px 20px;
  font-weight:600;
  font-size:16px;
  color:var(--phantom-text);
  position:relative;
  user-select:none;
}
.faq-question::-webkit-details-marker{display:none}
.faq-question::after{
  content:"+";
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  font-size:24px;
  font-weight:300;
  color:var(--phantom-purple,#7c3aed);
  transition:transform .2s ease;
  line-height:1;
}
.faq-item[open] .faq-question::after{
  content:"\2212";
}
.faq-question:hover{
  background:rgba(124,58,237,.06);
}
.faq-answer{
  padding:0 20px 18px;
  color:var(--phantom-text-muted,#cbd0d6);
  line-height:1.6;
}
.faq-answer p{margin:0 0 12px}
.faq-answer p:last-child{margin-bottom:0}
.faq-answer h3{
  font-size:16px;
  margin:14px 0 6px;
  color:var(--phantom-text);
}
.faq-answer ul,.faq-answer ol{margin:8px 0 12px 22px;padding:0}
.faq-answer li{margin:4px 0}
.faq-answer code{
  background:rgba(255,255,255,.08);
  padding:1px 6px;
  border-radius:4px;
  font-size:.92em;
}
.faq-answer a{
  color:var(--phantom-purple,#7c3aed);
  text-decoration:underline;
}
.faq-answer a:hover{color:var(--phantom-text)}
@media (max-width:600px){
  .faq-section{margin:32px auto;padding:0 16px}
  .faq-section-heading{font-size:22px;margin-bottom:16px}
  .faq-question{padding:14px 44px 14px 16px;font-size:15px}
  .faq-answer{padding:0 16px 14px}
}


/* ── Shop v2: category sections + cart drawer + picker modal ────────────── */
.shop-loading { grid-column: 1 / -1; text-align: center; padding: 64px 0; color: var(--phantom-text-muted, #888); font-size: 14px; }
.shop-section { margin-bottom: 48px; }
.shop-section:last-child { margin-bottom: 0; }
.shop-section-heading { font-family: var(--font-display, "Barlow Condensed"), sans-serif; font-size: 32px; text-transform: uppercase; letter-spacing: 0.04em; margin: 0 0 20px; color: var(--phantom-text, #fff); }
.product-image-placeholder { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; background: var(--phantom-bg-dark, #1a1424); color: var(--phantom-purple, #7c3aed); font-family: var(--font-display, "Barlow Condensed"), sans-serif; font-size: 64px; font-weight: 800; }
.product-card img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 1 / 1; display: block; }

/* Floating cart toggle */
.cart-toggle { position: fixed; bottom: 24px; right: 24px; z-index: 90; background: var(--phantom-purple, #7c3aed); color: #fff; border: none; padding: 14px 20px; border-radius: 999px; font-size: 14px; font-weight: 700; cursor: pointer; display: flex; align-items: center; gap: 10px; box-shadow: 0 6px 24px rgba(124, 58, 237, 0.45); transition: transform 0.15s ease, box-shadow 0.15s ease; }
.cart-toggle:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(124, 58, 237, 0.6); }
.cart-toggle-icon { font-size: 18px; line-height: 1; }
.cart-toggle-count { background: rgba(255, 255, 255, 0.2); padding: 2px 8px; border-radius: 999px; font-size: 12px; min-width: 22px; text-align: center; }
.cart-flash { animation: cart-flash 0.6s ease; }
@keyframes cart-flash { 0%,100% { transform: scale(1); } 50% { transform: scale(1.15); } }

/* Cart drawer + picker modal — both render on top of the page with their own
   dark surface and MUST use solid color values rather than --phantom-* vars.
   The site's --phantom-text var is configured for dark text on light page
   backgrounds; trusting it inside an overlay collapses the text into the
   background. Solid #fff / #1a1424 instead. */
.cart-drawer { position: fixed; top: 0; right: 0; bottom: 0; width: min(420px, 100%); background: #1a1424; color: #ffffff; z-index: 1100; transform: translateX(100%); transition: transform 0.3s ease; display: flex; flex-direction: column; box-shadow: -10px 0 40px rgba(0, 0, 0, 0.5); }
.cart-drawer * { color: #ffffff; }
.cart-drawer.is-open { transform: translateX(0); }
body.cart-open { overflow: hidden; }
.cart-drawer-header { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; border-bottom: 1px solid rgba(255, 255, 255, 0.15); background: #2a1f3a; }
.cart-drawer-header h3 { margin: 0; font-size: 22px; font-family: "Barlow Condensed", sans-serif; font-weight: 700; letter-spacing: 0.02em; }
.modal-close { background: none; border: none; color: #ffffff; font-size: 28px; cursor: pointer; line-height: 1; padding: 0 4px; }
.cart-drawer-body { padding: 20px 24px; overflow-y: auto; flex: 1; }
.cart-empty { color: #c8c0d8; font-size: 14px; }
.cart-line { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
.cart-line:last-of-type { border-bottom: none; }
.cart-line-info { flex: 1; }
.cart-line-name { font-weight: 600; font-size: 14px; line-height: 1.3; color: #ffffff; }
.cart-line-mods { font-size: 12px; color: #c8c0d8; margin-top: 2px; line-height: 1.4; }
.cart-line-controls { display: flex; align-items: center; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.cart-line-controls button { background: #2a1f3a; border: 1px solid rgba(255, 255, 255, 0.25); color: #ffffff; width: 28px; height: 28px; border-radius: 6px; cursor: pointer; font-size: 14px; line-height: 1; }
.cart-line-controls .cart-line-remove { width: auto; padding: 0 10px; font-size: 12px; }
.cart-line-controls .cart-line-remove:hover { background: rgba(255, 100, 100, 0.25); border-color: rgba(255, 100, 100, 0.6); }
.cart-qty { width: 44px; height: 28px; text-align: center; background: #2a1f3a; border: 1px solid rgba(255, 255, 255, 0.25); color: #ffffff; border-radius: 6px; font-size: 13px; }
.cart-line-price { font-weight: 700; font-size: 14px; white-space: nowrap; color: #ffffff; }
.cart-summary { display: flex; justify-content: space-between; align-items: center; padding: 16px 0; margin-top: 12px; border-top: 1px solid rgba(255, 255, 255, 0.2); font-size: 18px; font-weight: 700; color: #ffffff; }
.cart-customer { margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, 0.2); }
.cart-customer h4 { margin: 0 0 4px; font-size: 14px; text-transform: uppercase; letter-spacing: 0.05em; color: #ffffff; }
.cart-customer-help { color: #c8c0d8; font-size: 12px; margin: 0 0 16px; }
.cart-disclaimer { font-size: 11px; color: #c8c0d8; text-align: center; margin-top: 8px; }
#checkoutFeedback { color: #ffd0d0; background: rgba(255, 100, 100, 0.2); border: 1px solid rgba(255, 100, 100, 0.5); padding: 10px 12px; border-radius: 6px; font-size: 13px; margin: 8px 0; }

/* Cart drawer form inputs — solid backgrounds, solid borders, solid white text. */
.cart-drawer .form-group { margin-bottom: 12px; }
.cart-drawer .form-group label { color: #ffffff; font-size: 12px; font-weight: 700; display: block; margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.05em; }
.cart-drawer .form-group input,
.cart-drawer .form-group input[type="text"],
.cart-drawer .form-group input[type="tel"],
.cart-drawer .form-group input[type="email"] {
  width: 100%; padding: 10px 12px; background: #ffffff; border: 1px solid #ffffff; color: #1a1424; border-radius: 6px; font-size: 14px; font-family: inherit; box-sizing: border-box;
}
.cart-drawer .form-group input::placeholder { color: #6a5f7a; }
.cart-drawer .form-group input:focus { outline: 2px solid #a78bfa; outline-offset: 2px; }

/* Picker modal — same solid-colour treatment as the drawer. */
.modal { position: fixed; inset: 0; z-index: 1200; display: none; }
.modal.is-open { display: flex; align-items: center; justify-content: center; padding: 16px; }
.modal-backdrop { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.65); cursor: pointer; }
.modal-panel { position: relative; background: #1a1424; color: #ffffff; border-radius: 12px; max-width: 480px; width: 100%; max-height: 90vh; overflow-y: auto; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6); }
.modal-panel * { color: #ffffff; }
.modal-header { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; border-bottom: 1px solid rgba(255, 255, 255, 0.18); background: #2a1f3a; border-top-left-radius: 12px; border-top-right-radius: 12px; }
.modal-header h3 { margin: 0; font-size: 20px; font-family: "Barlow Condensed", sans-serif; font-weight: 700; color: #ffffff; }
.modal-body { padding: 20px 24px; }
.picker-fieldset { border: none; padding: 0; margin: 0 0 20px; }
.picker-fieldset legend { font-weight: 700; font-size: 13px; padding: 0; margin-bottom: 10px; color: #ffffff; text-transform: uppercase; letter-spacing: 0.04em; }
.picker-required { color: #ff9aa2; font-weight: 600; font-size: 12px; text-transform: uppercase; }
.picker-option { display: flex; align-items: center; gap: 10px; padding: 12px 14px; background: #2a1f3a; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 8px; margin-bottom: 8px; cursor: pointer; font-size: 14px; color: #ffffff; transition: background 0.1s ease, border-color 0.1s ease; }
.picker-option:hover { background: #3a2d4d; border-color: rgba(255, 255, 255, 0.4); }
.picker-option input { margin: 0; accent-color: #a78bfa; }
.picker-option span { flex: 1; display: flex; justify-content: space-between; align-items: baseline; gap: 8px; color: #ffffff; }
.picker-price { color: #c8c0d8; font-size: 13px; }
.picker-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 20px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, 0.15); }
.picker-actions .btn { color: #ffffff; }
.picker-actions .btn.btn-outline { color: #ffffff; border-color: #ffffff; background: transparent; }

@media (max-width: 600px) {
  .cart-drawer { width: 100%; }
  .cart-toggle { bottom: 16px; right: 16px; padding: 12px 18px; }
}

/* Cart drawer — close + checkout button affordances */
.cart-backdrop { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.5); z-index: 1090; opacity: 0; pointer-events: none; transition: opacity 0.3s ease; }
.cart-backdrop.is-open { opacity: 1; pointer-events: auto; }
.cart-close-btn { display: inline-flex; align-items: center; gap: 8px; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.3); color: #ffffff; padding: 6px 12px; border-radius: 6px; cursor: pointer; font-family: inherit; font-size: 14px; font-weight: 600; line-height: 1; }
.cart-close-btn:hover { background: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.5); }
.cart-close-btn span[aria-hidden] { font-size: 20px; line-height: 1; }
.cart-close-label { text-transform: uppercase; letter-spacing: 0.04em; }
.cart-checkout-btn { width: 100%; margin-top: 8px; justify-content: center; text-align: center; }
.cart-continue-btn { width: 100%; margin-top: 12px; justify-content: center; text-align: center; color: #ffffff; border-color: #ffffff; background: transparent; }
.cart-continue-btn:hover { background: rgba(255, 255, 255, 0.1); }
@media (max-width: 600px) {
  .cart-close-label { display: none; }
}

/* Fulfillment section in the cart drawer */
.cart-fulfillment { margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, 0.2); }
.cart-fulfillment h4 { margin: 0 0 12px; font-size: 14px; text-transform: uppercase; letter-spacing: 0.05em; color: #ffffff; }
.fulfillment-note { background: rgba(255, 200, 80, 0.12); border: 1px solid rgba(255, 200, 80, 0.4); color: #ffe9b8; padding: 12px 14px; border-radius: 8px; font-size: 13px; line-height: 1.5; }
.fulfillment-note strong { color: #ffd175; }
.fulfillment-toggle { display: flex; flex-direction: column; gap: 8px; }
.fulfillment-option { display: flex; align-items: flex-start; gap: 12px; padding: 12px 14px; background: #2a1f3a; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 8px; cursor: pointer; transition: background 0.1s ease, border-color 0.1s ease; }
.fulfillment-option:hover { background: #3a2d4d; border-color: rgba(255, 255, 255, 0.4); }
.fulfillment-option input { margin-top: 3px; accent-color: #a78bfa; }
.fulfillment-option-body { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.fulfillment-option-body strong { color: #ffffff; font-size: 14px; }
.fulfillment-option-body small { color: #c8c0d8; font-size: 12px; }

/* Shipping address fields in the drawer */
.cart-shipping { margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, 0.2); }
.cart-shipping h4 { margin: 0 0 4px; font-size: 14px; text-transform: uppercase; letter-spacing: 0.05em; color: #ffffff; }
.cart-drawer .form-group select { width: 100%; padding: 10px 12px; background: #ffffff; border: 1px solid #ffffff; color: #1a1424; border-radius: 6px; font-size: 14px; font-family: inherit; box-sizing: border-box; }
.cart-drawer .form-group select:focus { outline: 2px solid #a78bfa; outline-offset: 2px; }
