@font-face{font-family:Bangers;src:url('/site-assets/bangers.woff2')}*{box-sizing:border-box}body{margin:0;background:#151619;color:#faf8f2;font-family:Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid #e9bc66;outline-offset:5px}img{max-width:100%;height:auto}h1,h2{font-family:Bangers,Impact,sans-serif;font-weight:400;line-height:1.06;margin:0 0 22px}h1{font-size:clamp(64px,8vw,116px)}h2{font-size:clamp(38px,5vw,64px)}h3{font-size:22px;margin-top:0}.preview-bar{background:#26252a;font-size:12px;text-align:center;padding:6px;color:#c9c6bc}.preview-bar a{margin-left:24px;color:#e9bc66}header{max-width:1240px;margin:24px auto;display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:#1c1d21;border:1px solid #ffffff18;border-radius:80px}.brand{width:260px;display:flex}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav .nav-book{background:#e7b867;color:#17171a;padding:10px 20px;border-radius:30px}.hero{position:relative;max-width:1440px;min-height:640px;margin:auto;padding:68px max(6vw,24px) 0;overflow:hidden;background:linear-gradient(90deg,#15161928,#15161908),url('/site-assets/hero.jpg') center/cover}.hero-copy{position:relative;z-index:2;width:58%;padding-bottom:70px}.hero h2{font-size:34px;color:#e7b867}.eyebrow{font-size:12px;font-weight:700;letter-spacing:3px;color:#e7b867;margin-bottom:24px}.hours{font-size:19px}.singer{position:absolute;right:3%;bottom:0;width:44%;max-height:610px;object-fit:contain;object-position:bottom}.actions{display:flex;align-items:center;gap:28px;margin-top:36px}.button{display:inline-block;background:#e7b867;color:#17171a;border:0;padding:15px 25px;border-radius:6px;font-size:15px;font-weight:700;cursor:pointer}.text-link{color:#e7b867;font-weight:700}.location{max-width:1180px;margin:100px auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:0 24px}.location img{border-radius:18px}.location p{color:#c9c6bc;max-width:440px}.booking-callout{text-align:center;padding:80px 24px;background:linear-gradient(100deg,#9e652618,#d9af5615);border-top:1px solid #c6a86a22;border-bottom:1px solid #c6a86a22}.booking-callout p{max-width:560px;margin:20px auto}.subtle{font-size:13px;color:#b1aea6}footer{padding:70px max(5vw,24px);display:grid;grid-template-columns:1.1fr 1.3fr 1fr 1fr;gap:36px;background:linear-gradient(#151619bb,#151619dd),url('/site-assets/footer.jpg') center/cover}footer h3{font-size:17px;color:#e7b867}footer a{display:block;font-size:14px;margin:8px 0}footer p{font-size:14px}.footer-logo{width:220px}.page-heading{max-width:1180px;margin:70px auto 50px;padding:0 24px}.contact-grid{max-width:1180px;margin:0 auto 90px;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#202126;border:1px solid #ffffff16;border-radius:14px;padding:30px}.card a:not(.button){display:block;margin:12px 0}.contact-map{grid-column:span 2;width:100%;max-height:350px;object-fit:cover;border-radius:14px}.booking-content{max-width:1180px;margin:0 auto 90px;padding:0 24px}.notice{background:#e7b86712;border-left:3px solid #e7b867;padding:18px;font-size:14px}.availability{display:flex;align-items:end;gap:24px;flex-wrap:wrap;margin:30px 0}.availability p{flex:1;margin:0}label{display:block;font-size:14px;margin-bottom:8px}input,select,textarea{background:#151619;border:1px solid #ffffff38;border-radius:6px;color:#fff;padding:12px;font:inherit;max-width:100%;width:100%;color-scheme:dark}.table-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.reserve-form{max-width:640px}.errorlist{color:#ffbdaf}@media(max-width:760px){header{margin:12px;border-radius:20px;padding:18px;gap:20px;flex-wrap:wrap}.brand{width:200px}nav{gap:20px;font-size:13px;flex-wrap:wrap}.hero{min-height:730px;padding-top:40px}.hero-copy{width:100%}.hero h1{font-size:76px}.singer{width:62%;right:0;max-height:330px}.hero-copy .actions{margin-top:20px}.location{grid-template-columns:1fr;gap:32px;margin:55px auto}footer{grid-template-columns:1fr 1fr;gap:30px}.contact-grid,.table-grid{grid-template-columns:1fr}.contact-map{grid-column:auto}.page-heading{margin:45px auto}.availability{display:block}.availability p{margin-bottom:20px}}@media(max-width:430px){footer{grid-template-columns:1fr}.hero h1{font-size:66px}.hero h2{font-size:28px}.actions{gap:18px}}
.social-icons{display:flex;gap:9px;align-items:center}.social-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;transition:transform .15s}.social-icon:hover{transform:translateY(-2px)}.social-icon svg{width:21px;height:21px;fill:currentColor}.social-facebook{background:#3b5998;color:white}.social-instagram{background:#dc2867;color:white}.social-snapchat{background:#fffc00;color:#161619}.social-tiktok{background:#050505;color:white;border:1px solid #666}header{gap:24px}.brand{flex-shrink:0}nav{margin-left:auto}@media(max-width:1050px){header{flex-wrap:wrap}.social-icons{margin-left:auto}}@media(max-width:760px){.social-icons{margin-left:0}.social-icon{width:40px;height:40px}nav{margin-left:0}}

.assistant-layout{display:grid;grid-template-columns:2fr 1fr;gap:24px}.assistant-panel{padding:48px}.assistant-avatar{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:50%;background:#e7b867;color:#161619;font-size:42px;margin-bottom:25px}.assistant-options{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.contact-grid form+form{margin-top:15px}nav{gap:22px}.brand{width:230px}@media(max-width:760px){.assistant-layout{grid-template-columns:1fr}.assistant-panel{padding:28px}}

.chat-transcript{max-height:460px;overflow:auto;padding:12px 0}.chat-message{border-radius:14px;padding:14px 20px;margin:12px 0;border:1px solid #ffffff15}.chat-message p{white-space:normal;overflow-wrap:anywhere;margin:6px 0}.chat-user{background:#e7b86718;margin-left:28px}.chat-assistant{background:#151619;margin-right:28px}.chat-status{color:#c7e7bc;font-size:14px}.chat-form{margin-top:24px}.chat-clear{margin:18px 0}.chat-clear button{background:none;border:0;color:#e7b867;text-decoration:underline;cursor:pointer}.assistant-options{margin-top:30px}.chat-form textarea{min-height:100px}

.language-switch{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.language-switch a{padding:7px 10px;border:1px solid #7b633f;border-radius:8px;color:#eee}.language-switch a[aria-current]{background:#e4b15f;color:#171717}

.guest-cancel-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin:24px 0}.guest-cancel-confirm{display:flex;align-items:center;gap:14px;padding:16px 20px;margin:0;min-height:64px;border:2px solid #e7b867;border-radius:10px;background:#e7b86714;font-size:16px;font-weight:700;cursor:pointer;max-width:100%}.guest-cancel-confirm input[type=checkbox]{appearance:auto;flex:0 0 30px;width:30px;height:30px;padding:0;margin:0;accent-color:#e7b867;cursor:pointer}.guest-cancel-confirm input:focus-visible{outline:3px solid #e7b867;outline-offset:4px}.guest-cancel-confirm:has(input:checked){background:#e7b8672b}

/* Screen width and input capability determine layout, not device identity. */
.mobile-navigation{display:none}main,header,footer,.card{min-width:0}p,li,.card{overflow-wrap:break-word}button,input,select,textarea{font-size:16px}button,.button{min-height:48px}input:not([type=checkbox]),select,textarea{min-height:48px}input[type=checkbox]{width:auto}a,button,summary{-webkit-tap-highlight-color:transparent}summary:focus-visible{outline:3px solid #e9bc66;outline-offset:4px}.card img{max-width:100%}.language-switch a{min-height:44px;display:inline-flex;align-items:center}.social-icon{width:44px;height:44px}.availability p{min-width:160px}.booking-content form p{min-width:0}.guest-cancel-confirm{line-height:1.5}
@media(min-width:761px) and (max-width:1100px){.table-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-map{grid-column:1/-1}.hero-copy{width:65%}.hero h1{font-size:clamp(76px,10vw,120px)}.singer{width:38%;right:1%}.location{gap:32px;margin:65px auto}}
@media(max-width:1100px){header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand language' 'menu social';gap:16px;margin:16px;padding:20px;border-radius:20px}.brand{grid-area:brand;width:min(250px,100%)}.primary-navigation{display:none}.language-switch{grid-area:language;margin:0;gap:8px;flex-wrap:nowrap}.social-icons{grid-area:social;margin:0;gap:8px;justify-content:flex-end}.mobile-navigation{display:block;grid-area:menu;align-self:start;min-width:0}.mobile-navigation summary{cursor:pointer;padding:10px 16px;border:1px solid #e7b867;border-radius:8px;min-height:46px;width:fit-content;font-weight:700;color:#e7b867}.mobile-navigation nav{display:grid;margin:12px 0 0;gap:4px}.mobile-navigation nav a{padding:12px 14px;min-height:48px;border-radius:8px;background:#26272d}.mobile-navigation nav .nav-book{background:#e7b867;color:#151619}}
@media(max-width:760px){.page-heading{margin:36px auto 28px;padding:0 18px}h1{font-size:clamp(44px,12vw,72px)}h2{font-size:clamp(30px,8vw,44px)}.booking-content{padding:0 18px;margin-bottom:48px}.card{padding:20px}.availability{display:grid;gap:18px}.availability p{min-width:0;margin:0}.availability .button,.availability button{width:100%}.reserve-form{max-width:none}.table-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-grid{padding:0 18px;gap:18px;margin-bottom:48px}.contact-map{grid-column:auto}.hero{min-height:0;padding:38px 18px 0;display:flex;flex-direction:column}.hero-copy{width:100%;position:relative;z-index:1}.hero h1{font-size:clamp(56px,17vw,94px)}.hero h2{font-size:clamp(30px,8vw,44px)}.hero-copy .actions{margin:26px 0}.singer{position:relative;right:auto;bottom:auto;width:min(70%,340px);max-height:360px;object-fit:contain;align-self:flex-end;margin-top:12px}.actions{display:flex;flex-wrap:wrap;gap:12px}.actions a{min-height:48px;display:inline-flex;align-items:center}.location{padding:0 18px;margin:45px auto;gap:26px}.booking-callout{padding:46px 18px}footer{padding:42px 18px;gap:28px}.chat-user{margin-left:12px}.chat-assistant{margin-right:12px}.chat-message{padding:12px 16px}.guest-cancel-confirm{padding:14px;gap:12px;font-size:16px}.guest-cancel-actions,.guest-cancel-actions button{width:100%}.guest-cancel-confirm{width:100%}}
@media(max-width:430px){header{margin:10px;padding:14px;gap:12px}.brand{width:min(170px,100%)}.language-switch{gap:6px;font-size:12px}.language-switch a{padding:6px 8px}.social-icons{gap:6px}.social-icon{width:40px;height:44px}.mobile-navigation summary{padding:10px 12px}.guest-cancel-confirm{align-items:flex-start}footer{grid-template-columns:minmax(0,1fr)}}
@media(pointer:coarse){.button,button,summary{min-height:48px}.social-icon{min-width:40px;min-height:44px}input,select,textarea{font-size:16px}}

/* Compact phone header; social icons live in the footer. */
.mobile-footer-social{display:none}
@media(max-width:760px){header{grid-template-areas:'brand menu' 'language language';grid-template-columns:minmax(0,1fr) auto;margin:8px 10px;padding:10px 14px;gap:4px 12px;border-radius:12px}.brand{width:min(175px,100%)}header>.social-icons{display:none}.language-switch{justify-content:flex-start;gap:12px;font-size:12px}.language-switch a{border:0;background:transparent;padding:4px 0;min-height:32px}.language-switch a[aria-current]{background:transparent;color:#e7b867}.mobile-navigation{align-self:center}.mobile-navigation summary{border-color:#655235;padding:8px 10px;min-height:44px;font-size:14px}.mobile-navigation[open]{grid-column:1/-1;grid-row:2}.mobile-navigation[open]~.language-switch{grid-row:3}.mobile-navigation nav{margin:8px 0}.mobile-footer-social{display:block;margin:14px 0}.mobile-footer-social .social-icons{justify-content:flex-start;gap:12px}.mobile-footer-social .social-icon{width:44px;height:44px}}

.event-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:24px 0 36px}.event-day{border:1px solid #514936;border-radius:8px;padding:10px;min-height:100px;font-size:13px;overflow-wrap:anywhere}.event-day p{font-size:12px}.event-calendar .other-month{opacity:.5}@media(max-width:760px){.event-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:430px){.event-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}}

.event-calendar-thumb{display:block;width:100%;height:64px;object-fit:cover;object-position:66% 42%;border-radius:6px;margin-bottom:8px}.event-card-thumb{width:100px;height:80px;object-fit:cover;object-position:66% 42%;border-radius:8px;float:right;margin:0 0 12px 16px}@media(max-width:430px){.event-calendar-thumb{height:58px}}

.karaoke-title{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.karaoke-title a{display:flex;align-items:center;border:1px solid #e7b867;border-radius:0;padding:0;overflow:hidden}.karaoke-title .singa-logo{display:block;width:clamp(130px,20vw,230px);height:auto;margin:0}@media(max-width:430px){.karaoke-title{font-size:56px;gap:12px}.karaoke-title .singa-logo{width:130px}}

.karaoke-rules{margin-top:32px}.karaoke-rules h3{margin-top:32px;color:#e7b867}.karaoke-rules p{max-width:78ch}
