:root{--bk:#090a0d;--bp:#15120d;--bt:#f7f3eb;--bm:#aca89d;--bgold:#e6c57d;--bline:#4a402b;--sans:Manrope,sans-serif;--mono:'DM Mono',monospace;--serif:'Playfair Display',serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 12%,#3a2b18,transparent 28%),var(--bk);color:var(--bt);font-family:var(--sans)}.booking-nav{max-width:1270px;margin:auto;padding:21px 27px;display:flex;justify-content:space-between;align-items:center}.booking-brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font:800 15px var(--sans);letter-spacing:.1em}.booking-brand img{width:35px;height:35px}.booking-shell{display:grid;grid-template-columns:310px 1fr;max-width:1100px;margin:0 auto 35px;border:1px solid #57452b;background:linear-gradient(145deg,#1a1712,#080909);box-shadow:0 25px 70px #000b}.booking-intro{padding:48px 35px;border-right:1px solid var(--bline);background:linear-gradient(145deg,#282016,#12110e)}.booking-kicker{color:#d0b77c;font:9px var(--mono);letter-spacing:.2em}.booking-intro h1{margin:34px 0 23px;font:600 clamp(42px,5vw,66px)/.93 var(--serif);letter-spacing:-.07em}.booking-intro h1 em{color:var(--bgold);font-style:normal}.booking-intro>p{color:#bab5a8;line-height:1.7;font-size:12px}.booking-intro dl{margin:38px 0}.booking-intro dl div{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid #4d4435}.booking-intro dt{color:#999386;font-size:11px}.booking-intro dd{margin:0;color:var(--bgold);font-size:11px}.planner-list{display:grid;gap:7px}.planner-list span{padding:12px;border:1px solid #423a2e;background:#171613;color:#c7c0b2;font:10px var(--mono)}.booking-panel{position:relative;padding:40px 40px 45px;background:#090a09}.booking-panel h2{margin:10px 0 22px;font:600 38px var(--serif);color:#f4eee2}.month-controls{position:absolute;top:42px;right:40px;display:flex;gap:8px}.month-controls button{width:37px;height:37px;background:#11120f;border:1px solid #5b4e36;color:#e4c983;cursor:pointer}.weekdays,.booking-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.weekdays{margin-bottom:9px;color:#8d8777;font:9px var(--mono);text-transform:uppercase}.booking-calendar button{min-height:63px;padding:9px;text-align:left;background:#10110f;border:1px solid #302e27;color:#c7c0b2;font:11px var(--mono);cursor:pointer}.booking-calendar button:hover,.booking-calendar button.selected{border-color:var(--bgold);background:#292317;color:#fff;box-shadow:0 0 15px #d4af5d36}.booking-calendar button small{display:block;margin-top:9px;color:var(--bgold);font-size:8px}.booking-panel hr{border:0;border-top:1px solid #39352b;margin:31px 0}.booking-panel h3{margin:9px 0 4px;font:600 27px var(--serif)}.panel-hint{color:#99968d;font-size:11px}.slot-grid{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 22px}.slot-grid button{padding:10px 14px;background:#151511;border:1px solid #4b402c;color:#d9c084;cursor:pointer;font:10px var(--mono)}.slot-grid button.selected{background:#d5b66f;color:#1b160c}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.booking-fields label{display:block;color:#9d978a;font:9px var(--mono);letter-spacing:.08em;margin:10px 0}.booking-fields input{width:100%;margin-top:5px;padding:10px;border:1px solid #3f3a2e;background:#11120f;color:#fff;outline:0}.booking-fields input:focus{border-color:var(--bgold);box-shadow:0 0 14px #d8b96d2e}.booking-note{padding:11px;color:#bdb49f;background:#17140d;border:1px solid #51432b;font-size:10px}.booking-submit{width:100%;padding:15px;border:0;background:linear-gradient(145deg,#f0d893,#b89041);color:#221a0c;font:800 11px var(--sans);letter-spacing:.15em;cursor:pointer;box-shadow:0 5px #715329,0 0 22px #d8b96d4d}.booking-status{min-height:18px;color:var(--bgold);font-size:10px;text-align:center}.booking-footer{max-width:1100px;margin:10px auto 40px;padding:24px 20px;border-top:1px solid rgba(212,169,67,0.2);display:flex;flex-direction:column;gap:20px}
.footer-actions-dock{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.btn-footer-action{display:inline-flex;align-items:center;gap:14px;padding:12px 22px;border-radius:12px;text-decoration:none;transition:all .25s cubic-bezier(.16,1,.3,1);background:linear-gradient(135deg,rgba(26,22,15,0.9),rgba(14,13,10,0.95));border:1px solid rgba(212,169,67,0.3);box-shadow:0 8px 24px rgba(0,0,0,0.4),inset 0 1px 0 rgba(240,213,141,0.15)}
.btn-footer-action:hover{transform:translateY(-3px);border-color:#e6c57d;box-shadow:0 12px 30px rgba(0,0,0,0.6),0 0 20px rgba(230,197,125,0.25)}
.btn-footer-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:rgba(230,197,125,0.12);border:1px solid rgba(230,197,125,0.25);color:#e6c57d;font-size:16px;font-weight:700}
.btn-footer-text{display:flex;flex-direction:column;gap:3px;text-align:left}
.btn-footer-label{color:#e6c57d;font:700 9px var(--mono);letter-spacing:.14em;text-transform:uppercase}
.btn-footer-val{color:#f7f3eb;font:600 13px var(--sans);letter-spacing:-.01em}
.btn-back{background:linear-gradient(135deg,#231c12,#14120e);border-color:rgba(212,169,67,0.4)}
.btn-back .btn-footer-icon{background:linear-gradient(135deg,#e6c57d,#b89041);color:#1a1408;font-size:18px}
.btn-back:hover .btn-footer-icon{transform:translateX(-3px);transition:transform .2s ease}
.footer-legal{text-align:center;color:#8a8374;font:11px var(--mono);padding-top:10px;border-top:1px dashed rgba(255,255,255,0.06)}
@media(max-width:780px){.booking-shell{display:block;margin:0 12px 28px}.booking-intro{padding:31px 23px;border-right:0;border-bottom:1px solid var(--bline)}.booking-intro h1{font-size:48px}.booking-panel{padding:29px 18px}.month-controls{top:28px;right:18px}.booking-calendar button{min-height:52px;padding:6px;font-size:9px}.booking-fields{grid-template-columns:1fr}.footer-actions-dock{flex-direction:column;align-items:stretch}.btn-footer-action{justify-content:flex-start}}
