@media (max-width: 900px) {
html,body{max-width:100%;overflow-x:clip}
.site-head{position:sticky;top:0;z-index:100;background:#100f0d}
.site-head .nav{position:relative;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;min-height:68px;width:calc(100% - 28px);gap:8px}
.site-head .brand{min-width:0}.site-head .brand strong{font-size:15px;line-height:1.04}.site-head .brand small{font-size:9px}.site-head .brand-mark{width:38px;height:42px;font-size:21px;flex:none}
.site-head button.menu-toggle{display:inline-flex!important;flex:none;align-items:center;justify-content:center;font-size:24px;font-weight:700;min-width:48px;height:46px;color:#f0c77c;border:1px solid #9d7741;background:#201a13;border-radius:12px;cursor:pointer;z-index:120}
.site-head nav.links{display:none!important;position:absolute!important;left:-14px!important;right:-14px!important;top:100%!important;z-index:110!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;padding:15px!important;background:#17130f!important;border:1px solid #775832;border-top:0;border-radius:0 0 16px 16px;box-shadow:0 20px 40px #000b}
.site-head nav.links.open{display:flex!important}.site-head nav.links a{display:block;padding:13px 15px;font-size:16px;border-radius:9px}.site-head nav.links a.btn{text-align:center;margin-top:7px}
.hero{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:0!important;overflow:visible!important;background:#10100f!important}
.hero:before,.hero .hero-photo{display:none!important}
.hero .hero-photo-mobile{display:block!important;order:0;width:100%!important;height:clamp(220px,54vw,390px)!important;object-fit:cover;object-position:center;background:#201915}
.hero .hero-content{order:1;display:block;width:calc(100% - 32px)!important;max-width:680px!important;padding:23px 0 36px!important;margin:0 auto!important}
.hero .hero-content>div{max-width:none!important}
.hero .eyebrow{font-size:11px;letter-spacing:.16em}
.hero h1{font-size:clamp(32px,6vw,44px)!important;line-height:1.12;margin:10px 0 13px!important}
.hero .lead{font-size:17px;line-height:1.5}
.hero .features{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:20px 0!important}
.hero .feature{display:flex;align-items:center;min-width:0;gap:8px;padding:10px 9px;border:1px solid #52402a;background:#201b16;border-radius:10px;font-size:13px;line-height:1.35}
.hero .feature span{width:32px;height:32px;font-size:17px;flex:none}
.hero .actions{display:flex;flex-direction:column;gap:10px!important}.hero .actions .btn{width:100%;min-height:49px}
.section{padding:39px 0!important}.section .wrap{width:calc(100% - 32px)!important}
.gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.contact,.booking-grid{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
.footer .wrap{flex-direction:column!important}.booking-form{padding:18px!important}
}
@media(max-width:460px){.hero .hero-photo-mobile{height:225px!important}.hero h1{font-size:32px!important}.brand strong{font-size:14px!important}.event{padding:15px 8px}.gallery a{aspect-ratio:1/1}} @media screen and (max-width: 1000px) {
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body { font-size:19px!important; line-height:1.55!important; }
.site-head .nav { min-height:78px!important; }
.site-head .brand strong { font-size:19px!important;line-height:1.16!important; }
.site-head .brand small { font-size:13px!important; }
.site-head .brand-mark { width:48px!important;height:52px!important;font-size:29px!important; }
.rv-mobile-menu summary { min-height:54px!important; font-size:27px!important; padding:9px 15px!important; }
.rv-mobile-menu summary span { font-size:20px!important; }
.rv-mobile-menu[open] nav {width:min(94vw,400px)!important;}
.rv-mobile-menu[open] nav a {font-size:20px!important;padding:15px 16px!important;line-height:1.4!important;}
.hero .hero-content {padding-top:28px!important;}
.hero .eyebrow {font-size:15px!important;letter-spacing:.07em!important;}
.hero h1 {font-size:clamp(36px,8.5vw,53px)!important;line-height:1.13!important;}
.hero .lead {font-size:20px!important;line-height:1.56!important;}
.hero .feature {font-size:19px!important;line-height:1.42!important;padding:15px!important;gap:14px!important;}
.hero .feature span {font-size:27px!important;width:48px!important;height:48px!important;}
.btn,.hero .actions .btn {font-size:19px!important;min-height:56px!important;padding:14px 22px!important;}
.section h2 {font-size:clamp(32px,7vw,45px)!important;}
.section p,.section li,.contact-panel p,.page-area p,.page-area li {font-size:19px!important;line-height:1.6!important;}
.event b {font-size:35px!important;}
.event span {font-size:19px!important;line-height:1.4!important;}
.booking-form label {font-size:19px!important;}
.booking-form input,.booking-form textarea,.booking-form select {font-size:19px!important;min-height:56px!important;}
.rv-date-caption {font-size:19px!important;}
.footer,.footer a {font-size:17px!important;}
}
@media screen and (max-width:600px) {
.hero .features {grid-template-columns:minmax(0,1fr)!important;gap:11px!important;}
.hero .feature {font-size:19px!important;padding:15px!important;}
.hero .feature span {font-size:29px!important;width:50px!important;height:50px!important;}
.hero h1 {font-size:clamp(36px,9.2vw,45px)!important;}
.event-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.event {padding:18px 12px!important;}
.gallery {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
} @media screen and (max-width:900px) {
.hero .features { grid-template-columns:minmax(0,1fr)!important; gap:12px!important; margin:22px 0 26px!important; }
.hero .feature {display:flex!important;align-items:center!important;font-size:20px!important;line-height:1.45!important;gap:16px!important;padding:16px!important;min-height:70px!important;}
.hero .feature span {width:52px!important;height:52px!important;font-size:30px!important;flex:0 0 52px!important;}
.hero .lead, .hero-content p:not(.eyebrow) {font-size:20px!important;line-height:1.58!important;}
.hero .eyebrow, .section .eyebrow {font-size:14px!important;letter-spacing:.1em!important;}
.hero .actions .btn{font-size:20px!important;min-height:60px!important;}
.site-head .brand strong{font-size:20px!important;}
.site-head .brand small{font-size:13px!important;}
.rv-mobile-menu summary span{font-size:20px!important;}
.rv-mobile-menu nav a{font-size:20px!important;line-height:1.4!important;}
.event span{font-size:19px!important;}
}
@media screen and (max-width:760px) {
.gallery{grid-template-columns:minmax(0,1fr)!important;gap:16px!important;}
.gallery a{aspect-ratio:4/3!important;}
.section .wrap{width:calc(100% - 34px)!important;}
.hero .hero-content{width:calc(100% - 38px)!important;}
.hero h1{font-size:clamp(36px,8vw,47px)!important;}
.event-grid{grid-template-columns:minmax(0,1fr)!important;}
.event{display:flex!important;align-items:center!important;gap:17px!important;text-align:left!important;}
.event b{flex:0 0 43px!important;}
.event span{margin-top:0!important;}
} @media screen and (max-width:900px){
body .hero .features{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
body .hero .feature{width:100%!important;min-width:0!important;font-size:19px!important;line-height:1.45!important;padding:16px!important;}
body .hero .feature span{width:52px!important;height:52px!important;flex:0 0 52px!important;font-size:30px!important;}
body .gallery{grid-template-columns:minmax(0,1fr)!important;}
}