:root{--bg:#0a0b09;--panel:#11130f;--panel2:#17170f;--gold:#c9953b;--gold2:#e3bd72;--text:#efe7d7;--muted:#b9b0a0;--line:#6e4c20;--shadow:0 18px 55px rgba(0,0,0,.5);--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Georgia,'Times New Roman',serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.11;background-image:radial-gradient(#fff 0.5px,transparent .6px);background-size:6px 6px;mix-blend-mode:soft-light;z-index:20}
.site{min-height:100vh;background:linear-gradient(180deg,#080907 0%,#10110e 35%,#080907 100%)}
.frame{width:100%;margin:0;border:0;box-shadow:none;position:relative;overflow:hidden;background:#0b0d0a}
.frame:before,.frame:after{content:"✦";position:absolute;color:var(--gold);font-size:18px;z-index:5}.frame:before{top:5px;left:10px}.frame:after{bottom:5px;right:10px}
header{height:112px;display:flex;align-items:center;gap:22px;padding:14px 28px;border-bottom:1px solid #533b1e;background:rgba(8,9,7,.92);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:14px;min-width:350px}.brand img{width:82px;height:82px;object-fit:contain;border:0;box-shadow:none;border-radius:50%;background:transparent}.brand-title{font-size:24px;letter-spacing:.04em}.brand-sub{font-size:15px;color:#cfc5b5}.nav{margin-left:auto;display:flex;gap:28px;align-items:center;font-size:15px;white-space:nowrap}.nav a{padding:34px 0 20px;color:#d7cfbf;position:relative}.nav a:hover,.nav a.active{color:var(--gold2)}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--gold);box-shadow:0 0 12px rgba(201,149,59,.4)}.mobile-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--gold);color:var(--gold2);padding:8px 11px;border-radius:8px}
main{position:relative}.page-bg{position:absolute;inset:0;background-size:cover;background-position:center top;opacity:.24;filter:saturate(.9);z-index:0}.content{position:relative;z-index:1}.gold{color:var(--gold2)}.eyebrow{font-size:18px;letter-spacing:.08em;text-transform:uppercase;color:#d4c6ac}.title{font-size:clamp(42px,5vw,72px);line-height:.98;margin:12px 0 18px;color:#d9a653;font-weight:500}.section-title{font-size:34px;color:var(--gold2);margin:0 0 10px}.section-title.center{text-align:center}.lead{font-family:Georgia,serif;font-size:17px;color:#ddd4c4;max-width:690px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(#d7ad60,#a8752d);color:#1b1309;border:1px solid #e2bd74;padding:13px 26px;border-radius:7px;box-shadow:inset 0 0 0 1px rgba(80,47,10,.55),0 7px 18px rgba(0,0,0,.3);font-weight:700}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn.ghost{background:transparent;color:var(--gold2);box-shadow:none}.orn{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:20px 0 24px}
.panel{background:rgba(11,13,10,.82);border:1px solid #65461d;box-shadow:inset 0 0 0 1px rgba(201,149,59,.06),var(--shadow);border-radius:12px}.icon{width:60px;height:60px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font-size:27px;margin-bottom:14px}.feature-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #65461d;background:rgba(15,16,12,.88);border-radius:12px;overflow:hidden}.feature{padding:26px 22px;text-align:center;min-height:220px;border-right:1px solid #65461d}.feature:last-child{border-right:0}.feature h3{margin:4px 0 8px;color:var(--gold2);font-size:18px;text-transform:uppercase}.feature p{margin:0;color:#cfc6b6;font-size:14px}
/* club */
.club-hero{min-height:610px;display:grid;grid-template-columns:42% 58%;padding:58px 44px 40px;align-items:end;background:linear-gradient(90deg,rgba(7,9,7,.96) 0%,rgba(7,9,7,.78) 36%,rgba(7,9,7,.08) 75%),url('../assets/club-bg.jpg') center 18%/cover no-repeat}.club-copy{align-self:center;padding-right:35px}.club-copy h2{font-size:27px;color:#ead39e;margin:0 0 20px;text-transform:uppercase;letter-spacing:.04em}.club-copy p{font-size:17px;color:#ddd4c6}.club-features{padding:0 22px;margin-top:-10px;position:relative;z-index:2}.club-lower{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;padding:18px 22px}.goal{padding:30px}.goal p{color:#d1c8b8;font-size:16px}.quote{margin-top:24px;padding:18px 20px;border:1px solid #6d4a1c;border-radius:10px;color:#e1c27e;background:rgba(38,28,14,.45)}.gallery{padding:20px}.gallery-grid{display:grid;grid-template-columns:1.3fr .85fr;grid-template-rows:repeat(3,1fr);gap:8px;height:300px;overflow:hidden;border-radius:8px}.gallery-grid img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:center;border:1px solid #6d4a1c;border-radius:7px;overflow:hidden}.gallery-grid img:first-child{grid-row:1/4}.bottom-cta{margin:0 22px 22px;padding:28px 36px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,rgba(11,13,10,.92),rgba(25,20,11,.82));border:1px solid #6d4a1c;border-radius:12px}.bottom-cta h2{margin:0;color:var(--gold2);font-size:28px}
/* schedule */
.schedule-top{padding:48px 38px 18px;background:linear-gradient(90deg,rgba(8,9,7,.96),rgba(8,9,7,.78),rgba(8,9,7,.25)),url('../assets/schedule-bg.jpg') center/cover no-repeat}.schedule-head{display:grid;grid-template-columns:1fr 300px;gap:26px;align-items:start}.notice{padding:24px;background:#d9c29c;color:#2a1c0b;border:2px solid #775321;border-radius:8px;box-shadow:var(--shadow);text-align:center}.notice h3{font-size:23px;margin:0 0 10px}.notice p{font-family:Georgia,serif;margin:0 0 18px}.legend{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 14px}.legend-item{padding:10px 14px;border:1px solid #735126;border-radius:9px;background:rgba(16,18,14,.92);font-size:14px}.legend-item.available{border-color:#c4933e;color:#e5bf72;border-style:dashed}.legend-item.green{border-color:#6d8e39}.legend-item.blue{border-color:#4a86a4}.legend-item.purple{border-color:#85527d}.calendar-wrap{padding:0 22px 22px}.calendar{display:grid;grid-template-columns:170px repeat(12,1fr);border:1px solid #68491f;border-radius:10px;overflow:hidden;background:rgba(10,12,9,.93);min-width:980px}.calendar-scroll{overflow-x:auto}.cell{min-height:78px;border-right:1px solid #3e321f;border-bottom:1px solid #3e321f;padding:8px;position:relative}.time{font-size:14px;text-align:center;color:#d6ad60;min-height:42px;background:#13140f}.day{display:flex;gap:12px;align-items:center;color:#d8ad5b;font-size:18px}.day span{font-size:13px;color:#aaa08e}.slot{border:1px dashed #8d672e;color:#d5ad60;display:flex;align-items:center;justify-content:center;border-radius:8px;margin:7px;min-height:62px;background:rgba(74,52,18,.14);font-size:13px}.game{position:absolute;inset:7px;border-radius:9px;padding:9px 11px;border:1px solid;box-shadow:0 6px 12px rgba(0,0,0,.3);cursor:pointer;overflow:hidden}.game h4{font-size:14px;margin:2px 0 4px}.game.span3{width:calc(300% + 14px)}.game.span4{width:calc(400% + 20px)}.game.span5{width:calc(500% + 26px)}.game small{font-size:11px}.g-blue{background:rgba(22,65,82,.88);border-color:#3e82a1;color:#d8f1fb}.g-green{background:rgba(49,74,25,.9);border-color:#70973c;color:#e6f2c9}.g-purple{background:rgba(69,39,68,.9);border-color:#9b61a0;color:#f0d9ef}.g-gold{background:rgba(82,57,20,.9);border-color:#c49138;color:#f3dfad}.schedule-features{padding:0 22px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #65461d;background:rgba(15,16,12,.88);border-radius:12px;overflow:hidden}.schedule-feature{padding:25px 18px;border-right:1px solid #65461d;text-align:center}.schedule-feature:last-child{border-right:0}.schedule-feature h3{font-size:17px;color:var(--gold2);margin:5px 0}.schedule-feature p{font-size:13px;color:#cfc6b6}.gm-cta{margin:18px 22px 22px;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;border:1px solid #65461d;border-radius:12px;background:rgba(14,15,11,.9)}
/* loyalty */
.loyalty-main{padding-bottom:22px;background:linear-gradient(90deg,rgba(7,8,7,.96),rgba(7,8,7,.72),rgba(7,8,7,.35)),url('../assets/loyalty-bg.jpg') center/cover fixed}.loyalty-hero{display:grid;grid-template-columns:42% 58%;min-height:480px;padding:55px 42px 30px;align-items:center}.hero-tokens{position:relative;height:430px}.hero-token{position:absolute;width:175px;filter:drop-shadow(0 18px 16px rgba(0,0,0,.5))}.hero-token.s{top:0;left:38%}.hero-token.a{top:125px;left:18%}.hero-token.b{top:110px;right:8%}.hero-token.c{top:260px;left:33%}.hero-token.d{top:250px;right:26%}.hero-token.e{top:280px;right:2%}.loyalty-ranks{padding:10px 22px}.rank-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.rank-card{padding:14px 10px 16px;border:1px solid var(--rank);border-radius:9px;background:linear-gradient(180deg,rgba(18,19,15,.96),rgba(14,15,12,.96));box-shadow:inset 0 0 20px color-mix(in srgb,var(--rank) 10%,transparent)}.rank-card h3{margin:0;text-align:center;font-size:21px;color:var(--rank)}.rank-sub{text-align:center;color:#d9d0c0;font-size:13px;min-height:35px}.rank-card img{width:100px;height:100px;display:block;margin:8px auto 8px;object-fit:contain;filter:drop-shadow(0 8px 7px rgba(0,0,0,.5))}.discount{text-align:center;color:var(--rank);font-size:16px}.discount strong{display:block;font-size:35px}.threshold{text-align:center;color:#e0d6c6;font-size:13px;min-height:42px;border-top:1px solid color-mix(in srgb,var(--rank) 60%,#332718);padding-top:8px}.perks-title{text-align:center;color:var(--rank);font-size:13px;margin:8px 0 5px}.perks{margin:0;padding:0 0 0 18px;color:#cfc6b6;font-size:12px;min-height:78px}.priv-table{margin:20px 22px;border:1px solid #65461d;border-radius:10px;overflow:hidden;background:rgba(10,12,9,.9)}.priv-row{display:grid;grid-template-columns:2fr repeat(6,1fr);border-bottom:1px solid #493820}.priv-row:last-child{border-bottom:0}.priv-row>div{padding:10px 8px;border-right:1px solid #493820;text-align:center}.priv-row>div:first-child{text-align:left}.priv-head{color:#d8c3a0;background:#17150f}.yes{color:var(--gold2);font-weight:700}.no{color:#695e4f}.info-two{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;padding:0 22px}.how,.token-info{padding:25px}.steps{display:grid;gap:14px}.step{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start}.step-num{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold2)}.step h4{margin:0;color:var(--gold2);font-size:16px}.step p{margin:2px 0 0;color:#cfc6b6;font-size:13px}.token-info{display:grid;grid-template-columns:1fr 210px;align-items:center}.token-info img{width:190px;justify-self:end;filter:drop-shadow(0 16px 10px rgba(0,0,0,.5))}.token-bullets{padding-left:18px;color:#cfc6b6;font-size:14px}.loyalty-cta{margin:18px 22px 0;padding:24px 30px;border:1px solid #65461d;border-radius:12px;display:flex;justify-content:space-between;align-items:center;background:rgba(12,14,10,.92)}.loyalty-cta h2{margin:0;color:var(--gold2);font-size:26px}
/* feedback */
.feedback-main{background:linear-gradient(90deg,rgba(7,8,7,.96) 0%,rgba(7,8,7,.75) 45%,rgba(7,8,7,.2) 100%),url('../assets/feedback-bg.jpg') center/cover fixed}.feedback-grid{display:grid;grid-template-columns:43% 57%;padding:35px 28px 22px;gap:24px}.feedback-copy{padding:35px 10px 0 10px}.feedback-copy h1{font-size:56px;line-height:1;color:#d6a552;margin:0 0 22px}.feedback-copy h2{font-size:26px;color:#e4c37c}.feedback-copy p{font-size:16px;color:#d6cdbd;max-width:600px}.small-callout{margin-top:330px;padding:22px;border:1px solid #65461d;border-radius:10px;background:rgba(8,10,8,.78)}.form-paper{background:linear-gradient(180deg,#d9c6a3,#cdb38b);color:#2b2114;border:2px solid #7d5a2d;border-radius:10px;padding:27px 34px;box-shadow:var(--shadow);position:relative}.form-paper:before{content:"";position:absolute;inset:7px;border:1px solid rgba(92,62,28,.4);pointer-events:none;border-radius:6px}.form-paper h2{text-align:center;font-size:28px;margin:0 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 18px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:14px;font-weight:700}.field input,.field select,.field textarea{border:1px solid #5b3f20;background:#241a0f;color:#f2e5cc;border-radius:5px;padding:11px 12px;outline:none}.field textarea{min-height:90px;resize:vertical}.type-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.type{padding:13px 10px;border:1px solid #6a4920;background:#261a0d;color:#d9c29b;border-radius:6px;text-align:center}.type.active{border-color:#d4a44f;box-shadow:inset 0 0 0 1px #d4a44f;color:#efc46e}.agree{display:flex;gap:9px;align-items:flex-start;font-size:12px;margin-top:10px}.form-submit{margin-top:18px;text-align:center}.below-features{padding:0 22px 20px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #65461d;border-radius:12px;background:rgba(12,14,10,.9);margin:0 22px}.below-feature{text-align:center;padding:23px 16px;border-right:1px solid #65461d}.below-feature:last-child{border-right:0}.below-feature h3{color:var(--gold2);font-size:16px;margin:6px 0}.below-feature p{color:#cfc6b6;font-size:13px;margin:0}.feedback-cta{margin:18px 22px 22px;padding:25px;border:1px solid #65461d;border-radius:12px;text-align:center;background:rgba(11,13,10,.9)}.feedback-cta h2{margin:0;color:var(--gold2);font-size:26px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;z-index:50;padding:20px}.modal.open{display:flex}.modal-card{width:min(560px,100%);background:#12140f;border:1px solid #765323;border-radius:12px;padding:25px;box-shadow:var(--shadow)}.modal-card h3{color:var(--gold2);font-size:25px;margin-top:0}.close{float:right;background:none;border:0;color:#d7c7ae;font-size:24px}.toast{position:fixed;bottom:22px;right:22px;background:#1c1d15;color:#ead5a5;border:1px solid #775323;padding:12px 16px;border-radius:8px;transform:translateY(20px);opacity:0;transition:.25s;z-index:60}.toast.show{transform:none;opacity:1}
@media(max-width:1100px){.brand{min-width:0}.brand-title{font-size:20px}.brand-sub{font-size:12px}.nav{gap:15px;font-size:13px}.rank-grid{grid-template-columns:repeat(3,1fr)}.loyalty-hero,.club-hero,.feedback-grid{grid-template-columns:1fr}.hero-tokens{margin-top:20px}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature:nth-child(2n){border-right:0}.feature:nth-child(n+3){border-top:1px solid #65461d}.schedule-features,.below-features{grid-template-columns:repeat(2,1fr)}.schedule-feature:nth-child(2n),.below-feature:nth-child(2n){border-right:0}.schedule-feature:nth-child(n+3),.below-feature:nth-child(n+3){border-top:1px solid #65461d}.small-callout{margin-top:30px}}
@media(max-width:760px){.frame{width:100%;margin:0;border-left:0;border-right:0}.nav{display:none}.mobile-toggle{display:block}header{height:auto;min-height:90px;padding:10px 15px}.brand img{width:62px;height:62px}.brand-title{font-size:18px}.brand-sub{font-size:11px}.club-hero{padding:35px 22px;min-height:540px}.title{font-size:44px}.feature-grid,.schedule-features,.below-features,.rank-grid,.info-two{grid-template-columns:1fr}.feature,.schedule-feature,.below-feature{border-right:0}.feature:nth-child(n+2),.schedule-feature:nth-child(n+2),.below-feature:nth-child(n+2){border-top:1px solid #65461d}.calendar{min-width:980px}.calendar-wrap{padding:0 10px 18px}.schedule-head{grid-template-columns:1fr}.loyalty-hero{padding:35px 20px}.hero-tokens{height:360px;transform:scale(.85);transform-origin:top center}.priv-table{margin:15px 10px;overflow-x:auto}.priv-row{min-width:760px}.token-info{grid-template-columns:1fr}.token-info img{justify-self:center}.loyalty-cta,.bottom-cta,.gm-cta{flex-direction:column;gap:18px;text-align:center}.feedback-grid{padding:25px 15px}.form-paper{padding:22px 16px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.feedback-copy h1{font-size:46px}}

/* V4: stable schedule calendar retained from V1, with only cosmetic refinements. */
.v1-schedule-layout{overflow:auto;padding:0 22px 22px}
.v1-calendar{min-width:1060px;border:1px solid var(--line);background:#0e0e0c;box-shadow:var(--shadow);border-radius:10px;overflow:hidden}
.v1-time-head,.v1-day-row{display:grid;grid-template-columns:130px repeat(12,minmax(72px,1fr)) 92px}
.v1-time-head>div,.v1-day-row>div{border-right:1px solid rgba(199,149,66,.22);border-bottom:1px solid rgba(199,149,66,.22);min-height:56px}
.v1-time-head>div{padding:15px 6px;text-align:center;font:600 12px Cinzel,serif;color:var(--gold2);white-space:nowrap}
.v1-day-label{padding:10px 12px!important;background:#12110e;color:var(--gold2);font:600 13px Cinzel,serif;white-space:nowrap}
.v1-day-label b{display:block;font-size:18px}
.v1-day-row>div.v1-slot{position:relative;background:repeating-linear-gradient(135deg,rgba(255,255,255,.015) 0 2px,transparent 2px 8px);min-width:0}
.v1-day-row>div.v1-slot:hover{background:rgba(199,149,66,.07)}
.v1-game{grid-row:1;z-index:2;margin:7px 5px;padding:9px 11px;border:1px solid currentColor;border-radius:8px;min-height:40px;align-self:stretch;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.25);overflow:hidden;min-width:0}
.v1-game strong{display:block;font-size:12px;line-height:1.35}.v1-game small{display:block;margin-top:2px;color:#d7cbb9;font-size:11px;line-height:1.3}
.v1-game.green{background:rgba(72,99,25,.55);color:#9fbd62}.v1-game.blue{background:rgba(25,73,98,.62);color:#78b5d3}.v1-game.purple{background:rgba(82,44,79,.62);color:#c38ab9}.v1-game.orange{background:rgba(116,61,20,.6);color:#df9b5e}
.v1-free-slot{grid-row:1;z-index:1;margin:9px;border:1px dashed rgba(199,149,66,.65);color:var(--gold2);display:grid;place-items:center;border-radius:8px;cursor:pointer;font:600 10px Cinzel,serif;text-align:center;background:rgba(199,149,66,.035);line-height:1.25}
.v1-schedule-note{margin:0 22px 22px;padding:28px 36px}.v1-info-strip{margin:0 22px 22px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#12110e;border-radius:10px;overflow:hidden}.v1-info-strip .mini{padding:24px 18px;border-right:1px solid var(--line)}.v1-info-strip .mini:last-child{border-right:0}.v1-info-strip .mini h4{font:600 14px Cinzel,serif;color:var(--gold2);margin:0 0 7px}.v1-info-strip .mini p{font-size:12px;color:var(--muted);margin:0}
@media(max-width:760px){.v1-schedule-layout{padding:0 10px 18px}.v1-calendar{min-width:1060px}.v1-info-strip{grid-template-columns:1fr;margin:0 10px 18px}.v1-info-strip .mini{border-right:0;border-bottom:1px solid var(--line)}.v1-info-strip .mini:last-child{border-bottom:0}.v1-schedule-note{margin:0 10px 18px}}

/* V5 refinements */
.v1-own-slot{grid-row:1;grid-column:14;margin:7px 6px;border:1px dashed rgba(199,149,66,.78);color:var(--gold2);background:rgba(74,52,18,.12);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:600 12px Cinzel,Georgia,serif;line-height:1.1;min-width:0}.v1-own-slot span{font-size:9px;letter-spacing:.02em}.v1-own-slot:hover{background:rgba(199,149,66,.11);border-color:#e2bd74}.v1-time-head>div:last-child{background:#15130e}.v1-calendar{min-width:1180px}
.gallery-grid img:nth-child(2),.gallery-grid img:nth-child(3),.gallery-grid img:nth-child(4){grid-row:auto}
@media(max-width:760px){.v1-calendar{min-width:1180px}.feedback-grid{grid-template-columns:1fr}.form-paper{width:min(720px,94vw);justify-self:center}.gallery-grid{height:250px}}
@media(min-width:1101px){.feedback-grid{grid-template-columns:minmax(0,46%) minmax(0,54%)}.form-paper{width:min(860px,94%);justify-self:end}}

/* V6 — Stage 1 exact requested changes. Everything else remains based on user-supplied V5. */
.club-hero .orn{max-width:100%;}
.gallery-grid{display:block;height:300px;overflow:hidden;border-radius:8px;}
.gallery-grid img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;border:1px solid #6d4a1c;border-radius:7px;}
.schedule-top{padding-top:0;}
.schedule-head{min-height:610px;grid-template-columns:1fr;align-items:center;}
.schedule-head .lead{max-width:690px;}
.schedule-head .orn{max-width:100%;}
.v1-info-strip{grid-template-columns:repeat(3,1fr);}
.v1-info-strip .mini h4{font-size:18px;line-height:1.25;}
.v1-info-strip .mini p{font-size:14px;line-height:1.55;}
.loyalty-hero>.loyalty-copy .orn{max-width:100%;}
.loyalty-hero>div:first-child .orn{max-width:100%;}
@media(max-width:1100px){.schedule-head{min-height:610px;}.v1-info-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:760px){.schedule-head{min-height:610px;align-items:center;}.v1-info-strip{grid-template-columns:1fr;}.v1-info-strip .mini{border-right:0;border-bottom:1px solid var(--line);}.v1-info-strip .mini:last-child{border-bottom:0;}.gallery-grid{height:250px;}}

/* Stage 1 final pass: requested-only visual changes. */
.schedule-top{height:610px;padding-top:0;}
.schedule-head{height:520px;min-height:0;grid-template-columns:1fr;align-items:center;}
.schedule-head>div{max-width:690px;}
.schedule-head .orn{max-width:650px;}
.loyalty-hero>div:first-child .orn{max-width:650px;}
.v1-info-strip{grid-template-columns:repeat(3,1fr);}
.v1-info-strip .mini h4{font:600 18px/1.25 Cinzel,Georgia,serif;color:var(--gold2);margin:0 0 8px;}
.v1-info-strip .mini p{font-size:14px;line-height:1.55;color:#cfc6b6;margin:0;}
@media(max-width:1100px){
  .schedule-top{height:610px;}
  .schedule-head{height:520px;}
}
@media(max-width:760px){
  .schedule-top{height:auto;min-height:610px;padding-bottom:18px;}
  .schedule-head{height:auto;min-height:500px;}
  .v1-info-strip{grid-template-columns:1fr;}
  .v1-info-strip .mini{border-right:0;border-bottom:1px solid var(--line);}
  .v1-info-strip .mini:last-child{border-bottom:0;}
}

/* Stage 2 — dynamic Google Sheets calendar */
.schedule-calendar-main{padding:0 0 25px;background:#0b0d0a}
.schedule-toolbar{margin:0 22px 12px;padding:15px 18px;border:1px solid var(--line);border-radius:10px;background:#12110e;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;box-shadow:var(--shadow)}
.schedule-legend{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}.legend-key{display:inline-flex;align-items:center;gap:7px;font:600 11px Cinzel,Georgia,serif;color:#d8ccb9;white-space:nowrap}.legend-key i{width:10px;height:10px;border-radius:50%;display:inline-block;border:1px solid rgba(255,255,255,.18)}.free-red i{background:#9a3b3b}.free-yellow i{background:#b28a35}.free-green i{background:#5e873e}
.month-switcher{display:flex;align-items:center;justify-content:center;gap:13px}.month-title{min-width:210px;text-align:center;color:var(--gold2);font:600 21px Cinzel,Georgia,serif;text-transform:uppercase}.month-btn{width:38px;height:38px;border:1px solid #755122;border-radius:7px;background:#1a160e;color:var(--gold2);font-size:30px;line-height:30px;cursor:pointer}.month-btn:hover{background:#29200f;border-color:#c09245}
.schedule-status{min-height:20px;margin:0 22px 8px;text-align:center;color:#bda77f;font-size:12px}.calendar-shell{margin:0 22px;transition:opacity .2s}.calendar-shell.is-loading{opacity:.55;pointer-events:none}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#10100d;box-shadow:var(--shadow)}.calendar-weekday{padding:12px 8px;text-align:center;border-right:1px solid rgba(199,149,66,.22);border-bottom:1px solid rgba(199,149,66,.28);background:#15130e;color:var(--gold2);font:600 12px Cinzel,Georgia,serif;text-transform:uppercase}.calendar-weekday:nth-child(7){border-right:0}.calendar-day{min-height:185px;padding:8px;display:flex;flex-direction:column;border-right:1px solid rgba(199,149,66,.18);border-bottom:1px solid rgba(199,149,66,.18);background:#0f100d}.calendar-day:nth-child(7n){border-right:0}.calendar-day.empty{background:#0c0d0b}.calendar-day.is-past{background:#0d0e0c}.calendar-day.is-past .day-games,.calendar-day.is-past .day-empty{opacity:.48}.calendar-day-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;color:#cdb888}.calendar-day-head b{font:600 18px Cinzel,Georgia,serif}.calendar-day-head span{font-size:10px;color:#88775c;text-transform:uppercase}.day-games{display:grid;gap:6px}.calendar-game{width:100%;border:1px solid currentColor;border-radius:7px;padding:8px 9px;text-align:left;cursor:pointer;color:#ddd;background:#171813;box-shadow:0 4px 10px rgba(0,0,0,.2);transition:transform .12s,filter .12s}.calendar-game:hover{transform:translateY(-1px);filter:brightness(1.08)}.calendar-game strong{display:block;font-size:11px;line-height:1.3;color:inherit}.calendar-game small{display:block;margin-top:3px;font-size:10px;color:#d0c6b6;line-height:1.2}.calendar-game.status-red{background:rgba(115,43,43,.58);color:#e28b82}.calendar-game.status-yellow{background:rgba(119,91,29,.55);color:#e0bd61}.calendar-game.status-green{background:rgba(56,91,38,.55);color:#a9c986}.day-empty{padding:9px 5px;color:#776d5d;font-size:11px;font-style:italic}.own-slot{margin-top:auto;padding:7px 6px;border:1px dashed rgba(199,149,66,.65);border-radius:7px;background:rgba(199,149,66,.035);color:var(--gold2);font:600 10px Cinzel,Georgia,serif;cursor:pointer}.own-slot:hover{background:rgba(199,149,66,.11);border-color:#e2bd74}.own-slot span{font-size:13px;margin-right:3px}
.schedule-modal-card{position:relative;padding:30px;overflow:hidden}.modal-status{margin:-30px -30px 22px;padding:10px 30px;font:600 11px Cinzel,Georgia,serif;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.08)}.modal-status.status-red{background:#6f2929;color:#f0a09a}.modal-status.status-yellow{background:#70551d;color:#eed07a}.modal-status.status-green{background:#3b5d2d;color:#bddd9d}.schedule-modal-card h3{margin:0 0 20px;color:var(--gold2);font:600 27px Cinzel,Georgia,serif}.game-modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:18px}.game-modal-grid>div{padding:11px 12px;border:1px solid rgba(199,149,66,.2);border-radius:7px;background:#171712}.game-modal-grid span{display:block;color:#8f816b;font:600 9px Cinzel,Georgia,serif;margin-bottom:4px}.game-modal-grid strong{display:block;color:#e5d9c2;font-size:13px}.modal-description{padding:15px 16px;border-left:2px solid #9b6b27;background:rgba(199,149,66,.045);color:#d4c9b6;font-size:13px;line-height:1.6;margin-bottom:20px}.schedule-modal-card .btn{display:inline-block}.schedule-modal-card .modal-close{position:absolute;right:13px;top:9px;z-index:2}
@media(max-width:900px){.schedule-toolbar{grid-template-columns:1fr}.schedule-legend{justify-content:center}.month-switcher{order:-1}.calendar-day{min-height:170px}}
@media(max-width:760px){.schedule-calendar-main{padding-bottom:18px}.schedule-toolbar{margin:0 10px 10px;padding:12px}.calendar-shell{margin:0 10px}.calendar-grid{display:block;border-radius:9px}.calendar-weekday{display:none}.calendar-day{min-height:0;padding:12px 11px;border-right:0;border-bottom:1px solid rgba(199,149,66,.2)}.calendar-day.empty{display:none}.calendar-day-head{margin-bottom:9px}.calendar-day-head b{font-size:19px}.calendar-day-head span{font-size:11px}.day-games{gap:7px}.calendar-game{padding:10px 11px}.calendar-game strong{font-size:12px}.calendar-game small{font-size:10px}.own-slot{margin-top:10px;padding:9px}.v1-schedule-note{margin:0 10px 18px;padding:24px 22px}.v1-info-strip{margin:0 10px 18px}.game-modal-grid{grid-template-columns:1fr}.schedule-modal-card{padding:25px 20px}.modal-status{margin:-25px -20px 20px;padding:9px 20px}.month-title{min-width:175px;font-size:17px}}


/* V8 — точечная доработка расписания: читаемость, светлая палитра и карточка игры. */
.schedule-calendar-main{background:linear-gradient(180deg,#15140f 0%,#0e100c 52%,#0b0d0a 100%)}
.schedule-toolbar{background:rgba(217,194,156,.12);border-color:#806033}
.calendar-grid{background:#171711;border-color:#806033}
.calendar-weekday{background:#d9c29c;color:#2c210f;border-right-color:rgba(76,54,24,.28);border-bottom-color:#806033}
.calendar-day{background:#151611;border-right-color:rgba(199,149,66,.24);border-bottom-color:rgba(199,149,66,.24)}
.calendar-day:nth-child(7n){border-right:0}
.calendar-day.empty{background:#11120f}
.calendar-day.is-past{background:#12130f}
.calendar-game{background:#211f18}
.day-empty{font-size:14px;color:#b9ad99;font-style:italic;padding:11px 6px}
.schedule-modal-card{background:#d9c8a7;border:2px solid #806033;box-shadow:0 22px 65px rgba(0,0,0,.62);color:#302414}
.schedule-modal-card h3{color:#4a3214;font-size:29px;line-height:1.2}
.schedule-modal-card .modal-close{position:absolute;right:10px;top:3px;width:34px;height:34px;padding:0;background:transparent!important;border:0!important;color:#f2e6cf;font-size:34px;font-weight:800;line-height:30px;text-shadow:0 2px 5px rgba(0,0,0,.85);opacity:1;z-index:5}
.schedule-modal-card .modal-close:hover{color:#fff2d5;transform:scale(1.08)}
.modal-status{margin:-30px -30px 22px;padding:10px 30px;font-size:12px}
.game-modal-grid>div{background:rgba(248,238,214,.72);border-color:rgba(93,67,29,.25)}
.game-modal-grid span{color:#725d3e;font-size:10px}
.game-modal-grid strong{color:#3d2e19;font-size:15px;line-height:1.35}
.modal-description{background:rgba(248,238,214,.58);color:#4b3b25;border-left-color:#9b6b27;font-size:15px;line-height:1.65}
.schedule-modal-card .btn{box-shadow:0 7px 18px rgba(62,42,16,.25)}
@media(max-width:760px){
  .calendar-weekday{background:#d9c29c}
  .day-empty{font-size:15px}
  .schedule-modal-card{background:#d9c8a7}
  .schedule-modal-card h3{font-size:25px}
  .schedule-modal-card .modal-close{right:7px;top:2px;font-size:32px}
  .game-modal-grid strong{font-size:15px}
  .modal-description{font-size:15px}
}

/* V9: точечные правки модального окна и заголовков календаря. */
.calendar-weekday{
  background:linear-gradient(#d7ad60,#a8752d);
  color:#1b1309;
  border-right-color:rgba(80,47,10,.28);
  border-bottom-color:#8d6125;
}
.schedule-modal-card{
  background-color:#c8bba3;
  background-image:url('../assets/modal-logo.png');
  background-repeat:no-repeat;
  background-position:center 57%;
  background-size:285px auto;
}
.schedule-modal-card .modal-close{
  top:0;
  right:9px;
}
@media(max-width:760px){
  .calendar-weekday{background:linear-gradient(#d7ad60,#a8752d);}
  .schedule-modal-card{
    background-color:#c8bba3;
    background-position:center 58%;
    background-size:245px auto;
  }
  .schedule-modal-card .modal-close{
    top:0;
    right:6px;
  }
}


/* V13 — стабильный закреплённый фон для «О клубе» и «Расписание игр». */
body.club-page,
body.schedule-page{
  min-height:100vh;
  background:#0b0d0a;
}
body.club-page .site,
body.schedule-page .site{
  position:relative;
  min-height:100vh;
  background:transparent;
}
/* V16: прозрачный каркас, чтобы закреплённый фон body был виден сразу и при прокрутке. */
body.club-page .frame,
body.schedule-page .frame{background:transparent;}
/* V15: фон закреплён на самом body, чтобы одинаково работать при первом открытии и после переходов между страницами. */
body.club-page{
  background:linear-gradient(90deg,rgba(7,9,7,.72) 0%,rgba(7,9,7,.56) 36%,rgba(7,9,7,.12) 75%),url('../assets/club-bg.jpg') center top/cover fixed no-repeat;
}
body.schedule-page{
  background:linear-gradient(90deg,rgba(7,9,7,.78) 0%,rgba(7,9,7,.62) 36%,rgba(7,9,7,.18) 75%),url('../assets/schedule-bg.jpg') center top/cover fixed no-repeat;
}
body.club-page main,
body.schedule-page main,
body.club-page .club-hero,
body.schedule-page .schedule-top{
  background:transparent;
}

/* Плашки «О клуба» сделаны плотнее, на уровне визуальной плотности «Формы обратной связи». */
body.club-page .feature-grid,body.club-page .feature,body.club-page .panel,body.club-page .bottom-cta{background:rgba(11,13,10,.82);} 

body.schedule-page .schedule-calendar-main{background:linear-gradient(180deg,rgba(21,20,15,.90) 0%,rgba(14,16,12,.88) 52%,rgba(11,13,10,.88) 100%);}
body.schedule-page .schedule-toolbar{background:rgba(217,194,156,.30);}
body.schedule-page .calendar-grid{background:rgba(23,23,17,.90);}
body.schedule-page .calendar-day{background:rgba(21,22,17,.88);}
body.schedule-page .calendar-day.empty{background:rgba(17,18,15,.84);}
body.schedule-page .calendar-day.is-past{background:rgba(18,19,15,.84);}
body.schedule-page .calendar-game{background:rgba(33,31,24,.88);}
body.schedule-page .v1-schedule-note{background:rgba(11,13,10,.90);}
body.schedule-page .v1-info-strip{background:rgba(15,16,12,.90);}

/* Крестик карточки игры — ещё немного выше. */
.schedule-modal-card .modal-close{top:-3px;}
@media(max-width:760px){
  .schedule-modal-card .modal-close{top:-3px;}
}

/* V14 — точечная правка поведения фиксированного фона и плотности плашек. */
@media(max-width:760px){
  body.club-page,body.schedule-page{
    background-position:center top;
  }
}


/* V16 — нативный календарь и запрет записи на прошедшее. */
#date::-webkit-calendar-picker-indicator{background:transparent;border:0;padding:5px;cursor:pointer;opacity:1;filter:brightness(0) saturate(100%) invert(72%) sepia(23%) saturate(725%) hue-rotate(6deg) brightness(92%) contrast(91%)}
#date::-webkit-calendar-picker-indicator:hover{filter:brightness(0) saturate(100%) invert(79%) sepia(24%) saturate(780%) hue-rotate(6deg) brightness(100%) contrast(92%)}
.date-input-wrap{position:relative;display:flex;align-items:center}
.date-input-wrap #date{padding-right:44px;width:100%}
.date-picker-button{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;background:transparent;color:#d9c29c;padding:3px;display:none;cursor:pointer}.date-picker-button svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.date-picker-button:hover{color:#e8d0a4}.date-picker-button:focus-visible{outline:1px solid #d9c29c;border-radius:4px}
.date-input-wrap .date-picker-native{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.calendar-day.is-past .own-slot{display:none}
.modal-apply-hidden{display:none!important}
