/* Mobile layout loaded after the base styles. */
html{scroll-padding-top:86px}img,video{max-width:100%}.wrap>*{min-width:0}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
.modalbox{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
body.modal-open{overflow:hidden}.x{flex-shrink:0;min-width:44px;min-height:44px}.price{cursor:pointer}.price.active{background:#231a08;box-shadow:inset 0 0 0 1px var(--gold)}
.booking-total{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:14px 0;border-top:1px solid var(--line);font-size:14px}.booking-total strong{font-size:24px;color:var(--gold2)}
.gallery-view img,.gallery-view video{display:block;margin:auto;max-height:72dvh;object-fit:contain}.gallery-view .modalbox{width:min(900px,100%)}.gallery-view .mhead{justify-content:flex-end}
@media(max-width:760px){
html{scroll-padding-top:80px}body{font-size:16px;overflow-x:clip;padding-bottom:calc(86px + env(safe-area-inset-bottom))}
.wrap{width:calc(100% - 36px);max-width:620px}.navin{height:68px;gap:10px}.brand{font-size:14px;letter-spacing:.1em}.nav .btn{font-family:"DM Sans",sans-serif;font-size:12px;padding:10px 12px;border-radius:10px}
.hero{min-height:auto;align-items:center}.hero:after{inset:10px;border-radius:18px}.hero-content{padding:58px 4px 42px;max-width:620px}
.hero h1{font-size:clamp(34px,10.2vw,58px);line-height:1.08;letter-spacing:-.025em;overflow-wrap:normal;margin:18px 0}.script{font-size:clamp(24px,7vw,34px);line-height:1.25}.hero p{font-size:15px;line-height:1.65;max-width:100%}
.kicker{font-size:10px;letter-spacing:.13em;line-height:1.6}.actions{display:grid;grid-template-columns:1fr;gap:10px}.btn{font-family:"DM Sans",sans-serif;font-size:14px;line-height:1.35;border-radius:12px;min-height:48px;display:flex;align-items:center;justify-content:center;padding:13px 16px;text-align:center}
.count{margin-top:26px;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.count div{border-radius:12px;padding:12px 5px}.count b{font-size:24px}.count span{font-size:11px}
section{padding:44px 0}.head{margin-bottom:22px}.head small{font-size:11px}.head h2{font-size:clamp(25px,7.4vw,36px);line-height:1.2;overflow-wrap:anywhere}.head p{font-size:15px;line-height:1.65}.head p[style]{font-size:13px!important}
.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:10px}.feat{aspect-ratio:1;min-width:0}.feat:first-child{grid-column:1/-1;aspect-ratio:4/3}.feat:nth-child(n+4){display:block}
.service-grid{display:grid;grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:1fr;overflow:visible;padding:0;gap:12px}.service-grid .card{min-height:0}.card{padding:22px;border-radius:18px;min-width:0}.card h3{font-size:19px}.card p,.hostess ul{font-size:15px;line-height:1.65}
.event{gap:16px;padding:18px;grid-template-columns:minmax(0,1fr)}.event .poster{aspect-ratio:16/6;min-height:90px}.event .poster:after{font-size:13px;inset:auto 16px 16px;letter-spacing:.1em}.event h3{font-size:24px;line-height:1.25}.event p{font-size:14px}.tags{gap:7px}.tag{font-size:12px;padding:7px 9px;line-height:1.4;border-radius:8px}.event .kicker{overflow-wrap:anywhere}
.catering{grid-template-columns:1fr;gap:12px}.catering img{grid-column:auto!important;height:auto;aspect-ratio:4/3;object-fit:cover}
.hostess .card h2,.quote .card h2{font-size:26px;overflow-wrap:anywhere}.hostess img{max-height:500px;object-fit:contain;background:#100b06}
.gallery{columns:2;column-gap:10px}.gitem{margin-bottom:10px;min-height:0}.gitem video{min-height:110px;background:#100b06}
.quote,.fields{grid-template-columns:minmax(0,1fr)}label{font-size:14px;line-height:1.5;gap:7px}input,select,textarea{font-size:16px;min-height:50px;width:100%;max-width:100%;padding:13px;border-radius:12px}
.modal{align-items:flex-end;padding:0}.modalbox{max-height:calc(100dvh - 12px);padding:22px 18px calc(24px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;overflow-y:auto;box-shadow:0 -15px 65px #0008}
.modalbox h2{font-size:23px;line-height:1.25;margin:8px 0;overflow-wrap:anywhere}.mhead{align-items:flex-start}.prices{grid-template-columns:1fr;gap:9px}.price{padding:14px 16px;min-height:64px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.price b{font-size:21px;margin:0;white-space:nowrap}.modalbox p{font-size:13px!important}.modalbox .actions .btn{width:100%}.toast{font-size:14px;line-height:1.4}
.mobilebar{left:12px;right:12px}.mobilebar a{font-family:"DM Sans",sans-serif;font-size:11px;min-height:62px}.mobilebar a span{font-size:20px}
footer{font-size:13px;padding:30px 0}.gallery-view .modalbox{padding-top:12px}
}
@media(min-width:521px) and (max-width:760px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prices{grid-template-columns:repeat(2,minmax(0,1fr))}.price{display:block}.price b{margin-top:5px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
