
:root{--bg:#030303;--ink:#fff7e8;--muted:#aa9f8a;--gold:#d4a040;--gold2:#ffe0a0;--line:rgba(255,224,160,.2);--shadow:0 34px 110px rgba(0,0,0,.68)}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg);scroll-behavior:smooth}
body{min-height:100vh;color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden;background:radial-gradient(circle at 15% 8%,rgba(212,160,64,.18),transparent 28rem),radial-gradient(circle at 85% 10%,rgba(85,145,255,.1),transparent 28rem),linear-gradient(135deg,#020202,#090a0e 52%,#030201)}
body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(rgba(255,224,160,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,224,160,.012) 1px,transparent 1px);background-size:70px 70px;mask-image:radial-gradient(circle at center,black 0%,transparent 82%)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{position:relative;z-index:2}
.topbar{position:fixed;top:14px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 28px));z-index:20;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(3,3,3,.78);backdrop-filter:blur(22px);box-shadow:0 18px 55px rgba(0,0,0,.42)}
.brand{display:flex;align-items:center;gap:10px;font-weight:1000;letter-spacing:.08em}.brand-dot{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(from 25deg,#d9433c,var(--gold),#3b7fca,#d9433c)}.brand-dot:after{content:"FC";width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#050505;color:var(--gold2);font-size:12px;font-weight:1000}.actions{display:flex;gap:8px}.actions button,.actions a{border:1px solid rgba(255,224,160,.16);background:rgba(255,255,255,.06);color:#fff;padding:10px 13px;border-radius:999px;font-size:13px;font-weight:950;cursor:pointer}.actions .book{color:#080804;background:linear-gradient(135deg,#fff7df,#d4a040 55%,#ffe0a0)}
.hero{min-height:100vh;display:grid;place-items:center;position:relative;padding:86px 18px 34px}.title{position:absolute;top:86px;z-index:8;text-align:center;width:min(820px,calc(100% - 32px))}.title h1{font-size:clamp(22px,2.65vw,42px);line-height:1;font-weight:1000;letter-spacing:-.045em}.title .transform{background:linear-gradient(90deg,#ffe0a0,#75ffc7,#7fb7ff,#ffe0a0);-webkit-background-clip:text;color:transparent}.title p{margin-top:8px;color:var(--muted);font-size:13px;font-weight:760}
.scene{--sceneA:rgba(212,160,64,.075);width:min(1380px,100%);height:min(820px,calc(100vh - 118px));min-height:640px;position:relative;perspective:1650px;border-radius:42px;overflow:hidden;border:1px solid rgba(255,224,160,.12);background:radial-gradient(circle at 38% 30%,var(--sceneA),transparent 36%),radial-gradient(circle at 68% 70%,rgba(59,127,202,.045),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012));box-shadow:var(--shadow)}
.scene:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.28));pointer-events:none}.spine{position:absolute;left:50%;top:52%;height:70%;width:2px;transform:translate(-50%,-50%);z-index:2;background:linear-gradient(transparent,rgba(255,224,160,.42),rgba(59,127,202,.13),transparent);box-shadow:0 0 28px rgba(212,160,64,.22)}
.stage{position:absolute;left:24px;right:24px;top:24px;z-index:6;display:flex;justify-content:space-between;gap:10px}.counter,.stage button{border:1px solid var(--line);background:rgba(4,4,6,.72);color:#fff;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:1000}.stage div:last-child{display:flex;gap:7px}
.track{position:absolute;inset:82px 16px 86px;z-index:3;transform-style:preserve-3d}.panel{position:absolute;left:50%;top:50%;width:min(38vw,460px);height:min(44vh,340px);min-height:260px;border-radius:26px;border:1px solid var(--edge,rgba(255,224,160,.22));box-shadow:0 28px 90px rgba(0,0,0,.6);overflow:hidden;transform-origin:center;backface-visibility:hidden;background:linear-gradient(145deg,#15100a,#060708);cursor:pointer}.panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 10%,rgba(255,255,255,.14),transparent 24%),radial-gradient(circle at 86% 84%,var(--accent),transparent 40%);opacity:.72}.panel-inner{position:relative;z-index:2;height:100%;padding:18px;display:flex;flex-direction:column;justify-content:space-between;animation:idle 4.5s ease-in-out infinite}@keyframes idle{50%{transform:translateY(-5px)}}.panel-top{display:flex;justify-content:space-between;color:rgba(255,246,230,.75);font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.12em}.panel h2{font-size:clamp(22px,2.3vw,34px);line-height:.96;letter-spacing:-.045em;font-weight:1000}.panel p{color:#eee0c4;font-size:13.5px;line-height:1.45;font-weight:720;margin-top:8px}.tag{display:inline-block;border:1px solid rgba(255,224,160,.16);background:rgba(0,0,0,.27);border-radius:999px;padding:7px 9px;color:#fff;font-weight:920;font-size:11px;margin:10px 5px 0 0}.open-note{margin-top:10px;color:rgba(255,224,160,.86);font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.07em}.hero-panel{display:grid;grid-template-columns:1fr 1.05fr;gap:12px;align-items:center}.hero-img{height:100%;min-height:210px;border-radius:18px;border:1px solid rgba(255,224,160,.13);background:#050505;overflow:hidden}.hero-img img{width:100%;height:100%;object-fit:contain}.symbol{position:absolute;right:18px;bottom:14px;font-size:50px;color:var(--gold2)}
.is-focus{filter:blur(0) saturate(1.08);z-index:30;box-shadow:0 36px 120px rgba(0,0,0,.7),0 0 0 1px var(--edge)}.is-near{filter:blur(.35px) saturate(.84);z-index:12}.is-far{filter:blur(1.2px) saturate(.65);z-index:4}.is-hidden{filter:blur(2px);pointer-events:none;z-index:1}.progress-wrap{position:absolute;left:24px;right:24px;bottom:72px;height:3px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;z-index:5}.progress{height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2))}.dots{position:absolute;bottom:22px;left:0;right:0;z-index:5;display:flex;justify-content:center;gap:8px}.dot{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,246,230,.26)}.dot.active{width:34px;border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--gold2))}
.wrap{width:min(1120px,100%);margin:0 auto}.sections{padding:54px 20px 100px}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card,.booking-shell{border:1px solid var(--line);border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.024));box-shadow:var(--shadow);padding:24px}.kicker{color:var(--gold2);font-weight:1000;letter-spacing:.15em;font-size:12px;text-transform:uppercase;margin-bottom:10px}.card h3,.booking h3{font-size:clamp(28px,4vw,54px);line-height:.96;letter-spacing:-.055em}.card p,.booking p{color:var(--muted);line-height:1.65;margin-top:14px;font-weight:720}.story-text{white-space:pre-line}.service-list,.gallery-grid,.reel-grid{display:grid;gap:10px;margin-top:20px}.policy{display:grid;gap:9px;margin-top:18px}.policy div,.service-row,.gallery-box,.reel-card{border:1px solid rgba(255,224,160,.14);background:rgba(0,0,0,.2);border-radius:16px;padding:13px;color:#eadfc8;font-weight:760}.service-row{display:flex;justify-content:space-between;cursor:pointer}.service-row span{display:block;color:var(--muted);font-size:13px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-box{min-height:180px;display:grid;place-items:center;text-align:center;overflow:hidden}.gallery-box img,.gallery-box video,.reel-card img,.reel-card video{width:100%;height:100%;object-fit:cover;border-radius:12px}.reel-grid{grid-template-columns:repeat(3,1fr)}.reel-card{min-height:220px}.reel-card b{display:block;margin-top:10px;color:#ffe0a0}
.booking{padding:0 20px 96px}.booking-shell{display:grid;grid-template-columns:.75fr 1.25fr;gap:18px}.booking-copy{padding:18px}.form-panel{border:1px solid rgba(255,224,160,.16);background:rgba(0,0,0,.3);border-radius:30px;padding:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:8px}label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,248,233,.64);font-weight:1000}input,select,textarea{width:100%;border-radius:16px;border:1px solid rgba(255,224,160,.18);color:white;background:#0a0a0c;padding:14px;outline:none}textarea{min-height:104px;resize:vertical;grid-column:1/-1}.full{grid-column:1/-1}.notice{margin-top:12px;border:1px solid rgba(255,224,160,.2);background:rgba(212,160,64,.09);border-radius:18px;padding:13px;color:#eadfc8;line-height:1.5;font-weight:750}.submit{width:100%;margin-top:14px;border:0;cursor:pointer;padding:16px;border-radius:20px;font-weight:1000;color:#090805;background:linear-gradient(135deg,#fff7df,#d4a040 48%,#ff675f 130%)}.success{margin-top:12px;display:none;color:#dcfff4;border:1px solid rgba(125,255,202,.22);background:rgba(125,255,202,.08);padding:13px;border-radius:16px}
.modal{position:fixed;inset:0;z-index:50;display:none;place-items:center;padding:20px;background:rgba(0,0,0,.62);backdrop-filter:blur(16px)}.modal.show{display:grid}.modal-card{width:min(760px,100%);border:1px solid rgba(255,224,160,.24);border-radius:34px;background:linear-gradient(145deg,rgba(22,22,28,.98),rgba(5,5,7,.98));box-shadow:0 40px 140px rgba(0,0,0,.72);padding:24px}.modal-top{display:flex;justify-content:space-between}.modal h2{font-size:clamp(32px,5vw,64px);line-height:.92;margin-top:18px}.modal p{color:#eadfc8;line-height:1.65;margin-top:16px;white-space:pre-line}.modal button,.modal a{border:1px solid rgba(255,224,160,.18);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:12px 15px;font-weight:1000;cursor:pointer}.modal .primary{background:linear-gradient(135deg,#fff7df,#d4a040);color:#090805}.mobile-bar{display:none}
@media(max-width:900px){.split,.booking-shell,.reel-grid{grid-template-columns:1fr}.panel{width:min(50vw,410px)}.hero-panel{grid-template-columns:1fr}.hero-img{display:none}}@media(max-width:720px){.actions button:not(#soundBtn),.actions a:not(.book){display:none}.scene{height:590px;min-height:590px;border-radius:30px}.title h1{font-size:22px}.title p{display:none}.track{inset:92px 4px 100px}.panel{width:min(80vw,300px);height:224px;min-height:224px}.panel h2{font-size:21px}.panel p{font-size:12px}.form-grid,.gallery-grid{grid-template-columns:1fr}.mobile-bar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:15;gap:10px;padding:10px;border-radius:24px;background:rgba(3,3,3,.82);border:1px solid var(--line)}.mobile-bar button,.mobile-bar a{flex:1;text-align:center;border:0;border-radius:17px;padding:14px 10px;background:rgba(255,255,255,.09);color:white;font-weight:1000}.mobile-bar button{background:linear-gradient(135deg,#fff7df,#d4a040);color:#050504}}


.site-footer{padding:34px 20px 58px;color:#aa9f8a}
.footer-inner{width:min(1120px,100%);margin:0 auto;border:1px solid rgba(255,224,160,.16);border-radius:24px;background:rgba(255,255,255,.035);padding:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.site-footer strong{color:#ffe0a0;letter-spacing:.08em}
.site-footer nav{display:flex;gap:10px;flex-wrap:wrap}
.site-footer a{color:#fff7e8;border:1px solid rgba(255,224,160,.16);padding:8px 11px;border-radius:999px;text-decoration:none}
@media(max-width:720px){.footer-inner{align-items:flex-start;flex-direction:column}.site-footer nav{width:100%}.site-footer a{flex:1;text-align:center}}


.slot-wrap{grid-column:1/-1;border:1px solid rgba(255,224,160,.16);background:rgba(0,0,0,.24);border-radius:22px;padding:14px}
.slot-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px;color:#fff7e8}
.slot-head strong{font-weight:1000}.slot-head span{font-size:12px;color:#cfc5b2;font-weight:800}
.green-dot,.red-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 5px 0 10px}.green-dot{background:#74f0b3}.red-dot{background:#ef5555}
.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot-btn{border:1px solid rgba(255,224,160,.14);border-radius:16px;min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:1000}
.slot-btn span{font-size:15px}.slot-btn small{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.slot-btn.open{background:rgba(116,240,179,.16);color:#dffff0;border-color:rgba(116,240,179,.42)}.slot-btn.taken{background:rgba(239,85,85,.17);color:#ffd0d0;border-color:rgba(239,85,85,.42);opacity:.78}
.slot-btn.selected{outline:3px solid #ffe0a0;background:linear-gradient(135deg,#fff7df,#d4a040);color:#080808}.slot-help,.slot-empty{grid-column:1/-1;color:#cfc5b2;line-height:1.45}.slot-empty strong{display:block;color:#ffe0a0;margin-bottom:4px}
@media(max-width:720px){.slot-grid{grid-template-columns:repeat(3,1fr)}.slot-btn{min-height:58px}.slot-btn span{font-size:14px}}


.gallery-box video,.reel-card video{width:100%;height:auto;min-height:160px;object-fit:cover;border-radius:12px;display:block;background:#050505}
.gallery-box img,.reel-card img,.hero-img img{max-width:100%;height:auto}
@media(max-width:720px){
  .reel-card video,.gallery-box video{min-height:140px}
  .gallery-box video:not(:focus),.reel-card video:not(:focus){max-height:260px}
}


.contact-strip{margin:24px 0;border:1px solid rgba(255,224,160,.18);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));padding:22px;display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:center}
.contact-strip h2{font-size:clamp(32px,6vw,56px);line-height:.92;letter-spacing:-.055em;margin:6px 0 8px;color:#fff7e8}
.contact-strip p{margin:0;color:#d6ccb9;font-weight:800}
.contact-actions{display:grid;grid-template-columns:1fr;gap:10px}
.contact-actions a{display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(255,224,160,.22);border-radius:16px;padding:13px 14px;color:#fff7e8;text-decoration:none;font-weight:1000;background:rgba(255,255,255,.06)}
.contact-actions a:first-child{background:linear-gradient(135deg,#fff2bf,#d4a040);color:#070707}
@media(max-width:760px){.contact-strip{grid-template-columns:1fr;padding:18px}}
