@import url('/assets/css/base.css');
:root{--paper:#fff;--cream:#fff}
body,.site-header,.filters label,.card-image span,.cookie,.demo-card,.admin-form,.admin-panel,.booking-form,.map-consent{background:#fff}.hero{background-image:url('/assets/images/hero.webp')}
.hero h1,.detail-title h1{font-size:clamp(46px,6.3vw,88px)}
.intro h2,.listing-heading h2,.process h2,.detail-body h2,.booking-form h2,.sale-cta h2,.admin-shell h1,.legal h1{font-size:clamp(36px,4.4vw,60px)}
.site-footer h2{font-size:clamp(36px,4vw,54px)}
.property-map{padding-bottom:120px}.property-map iframe{width:100%;height:440px;border:0;margin-top:36px}.map-slot{margin-top:36px}.map-consent{min-height:300px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:24px;padding:35px}.map-consent>span{font-size:48px;color:var(--sea-dark)}.map-consent h3{font:30px 'Gilda Display',serif;margin:0 0 8px}.map-consent p{margin:0;max-width:450px}.map-consent .btn{margin-left:20px;white-space:nowrap}
.cookie-badge{position:fixed;z-index:99;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff;box-shadow:0 8px 28px #0002;font-size:22px;cursor:pointer}.cookie[hidden]{display:none}.demo-overlay{position:fixed;z-index:200;inset:0;background:rgba(8,29,30,.72);display:grid;place-items:center;padding:24px}.demo-overlay[hidden]{display:none}.demo-card{width:min(520px,100%);padding:clamp(30px,6vw,58px);box-shadow:0 24px 90px #0005}.demo-card h2{font:400 clamp(36px,5vw,54px)/1 'Gilda Display',serif;margin:0 0 20px}.demo-card p:not(.eyebrow){line-height:1.7}
.notice-box{border:1px solid var(--line);padding:24px;margin:30px 0}.notice-box.success{border-color:#58a98f}.notice-box a,.legal a,.sale-cta a{text-decoration:underline}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-shell .admin-form{width:min(480px,100%);border:1px solid var(--line);box-shadow:0 20px 60px #00000012}.login-shell h1{font:42px 'Gilda Display',serif}.login-shell label{display:block;margin:20px 0}.admin-list>div>form{margin-left:auto}.danger{color:#a13232}.booking-table form{display:flex;gap:10px;align-items:center}.booking-table select{padding:12px;border:1px solid var(--line);background:#fff}.booking-table .btn{padding:12px}.admin-top .text-button{display:inline-block}.footer-bottom a{text-decoration:underline}
@media(max-width:800px){.map-consent{align-items:flex-start;flex-direction:column}.map-consent .btn{margin-left:0}.property-map iframe{height:340px}.booking-table form{align-items:stretch;flex-direction:column}}
