/* Shared responsive hardening for JSERN Property public pages */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-width:0}img,video,iframe,canvas,svg{max-width:100%;height:auto}input,select,textarea,button{max-width:100%}button,a,summary,select,input[type=checkbox],input[type=radio]{touch-action:manipulation}.container{min-width:0}

@media(max-width:1100px){
 .navbar{height:78px!important;padding:0 max(16px,env(safe-area-inset-left))!important}.navbar .logo img{width:132px!important;max-height:68px;object-fit:contain}.mobile-menu-btn{display:flex!important;flex:0 0 48px;min-width:48px;min-height:48px;z-index:10003}.nav-links,.navbar>.nav-btn,.navbar>.language-switcher{display:none!important}
 .mobile-menu{display:flex!important;top:78px!important;right:-100%!important;width:min(360px,100vw)!important;max-width:100%!important;height:calc(100dvh - 78px)!important;padding:26px max(22px,env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))!important;overflow-y:auto!important;overscroll-behavior:contain;z-index:10002!important}.mobile-menu.active{right:0!important}.mobile-menu a,.mobile-menu strong,.mobile-menu span{flex:0 0 auto}.mobile-menu a{min-height:44px;display:flex;align-items:center}.mobile-menu>.language-switcher{display:block!important;order:-1;align-self:stretch!important;margin:0 0 8px!important}.mobile-menu>.language-switcher summary{justify-content:center}
 body.menu-open{overflow:hidden!important;touch-action:none}.dropdown-menu,.nested-menu{position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;box-shadow:none!important}
 .footer-main{grid-template-columns:1fr!important}.footer-column,.footer-brand{text-align:left!important}.footer-logo{margin-left:0!important}
 .property-layout,.enquiry-wrap{grid-template-columns:1fr!important}.cost-card{position:static!important}.subsale-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:820px){
 .container{width:100%!important;padding-left:clamp(16px,4vw,28px)!important;padding-right:clamp(16px,4vw,28px)!important}.section,.property-section,.gallery-section,.enquiry-section{padding-top:56px!important;padding-bottom:56px!important}
 .subsale-header{padding:58px 0 44px!important}.subsale-header h1,.property-hero h1{font-size:clamp(34px,8vw,50px)!important;line-height:1.08!important;overflow-wrap:anywhere}.property-hero,.property-overlay{min-height:520px!important}.property-overlay{padding:54px 0}.property-hero strong{font-size:clamp(25px,6vw,34px)!important}
 .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.property-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}.property-gallery img{height:220px!important}.form-grid{grid-template-columns:1fr 1fr!important}.form-grid>*{min-width:0}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px!important;min-height:48px}.form-grid textarea{min-height:130px}
 .appointment-box,.eligibility-modal-content,[class*=modal-box]{width:calc(100% - 32px)!important;max-width:620px!important;max-height:calc(100dvh - 32px)!important;overflow-y:auto!important;margin:16px!important;padding:clamp(20px,5vw,34px)!important}
 .hero-buttons,.category-tabs{flex-wrap:wrap}.primary-btn,.secondary-btn,.gold-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
}

@media(max-width:600px){
 .navbar{padding-left:14px!important;padding-right:10px!important}.navbar .logo img{width:118px!important}.mobile-menu{width:100vw!important}
 .container{padding-left:16px!important;padding-right:16px!important}.subsale-grid,.property-gallery,.detail-grid,.form-grid{grid-template-columns:1fr!important}.subsale-card{width:100%;min-width:0}.card-image{height:220px!important}.property-gallery img{height:auto!important;aspect-ratio:4/3;object-fit:cover}
 .property-hero,.property-overlay{min-height:480px!important}.property-overlay{background:linear-gradient(90deg,rgba(5,8,14,.92),rgba(5,8,14,.6))!important}.property-hero h1{font-size:36px!important}.property-section h2,.gallery-section h2,.enquiry-section h2{font-size:30px!important}.property-layout,.enquiry-wrap{gap:34px!important}
 .category-tabs{gap:10px}.category-tabs a{flex:1 1 120px;text-align:center;min-height:46px}.facts{gap:10px!important}.cost-card{padding:22px!important}.cost-row{align-items:flex-start}.cost-row span{min-width:0}.cost-row b{text-align:right;white-space:nowrap}
 .form-grid label{width:100%;min-width:0}.form-grid label>span[style*="display:flex"]{display:grid!important;grid-template-columns:118px minmax(0,1fr)!important;gap:8px!important}.form-grid label>span select{width:118px!important;min-width:0!important}.form-grid label>span input{width:100%!important;min-width:0!important}.payment-awareness{width:100%!important}.gold-button[type=submit]{width:100%;min-height:52px;margin-top:16px}
 .appointment-box input,.appointment-box textarea,.appointment-box select{font-size:16px!important;width:100%!important;min-height:48px}.appointment-box .primary-btn{width:100%}
 .footer-main{gap:28px!important}.site-footer{padding-top:45px!important}.footer-bottom{padding-left:16px!important;padding-right:16px!important}
}

@media(max-width:380px){.navbar .logo img{width:102px!important}.mobile-menu-btn{width:44px;min-width:44px}.property-hero h1{font-size:31px!important}.subsale-header h1{font-size:32px!important}.container{padding-left:13px!important;padding-right:13px!important}.cost-card{padding:18px!important}.form-grid label>span[style*="display:flex"]{grid-template-columns:105px minmax(0,1fr)!important}.form-grid label>span select{width:105px!important;padding-left:8px!important;padding-right:8px!important}}

@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){.mobile-menu{padding-top:14px!important;gap:8px!important}.mobile-menu a{min-height:38px!important}.property-hero,.property-overlay{min-height:430px!important}.appointment-box{max-height:calc(100dvh - 20px)!important;margin:10px!important}}

@supports(padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}
