:root{--charcoal:#151515;--soft:#242424;--gold:#c8a45d;--cream:#f1f3f5;--white:#fff;--muted:#626870;--border:#d9dde2;--shadow:0 16px 40px rgba(28,35,43,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--charcoal);background:var(--cream);line-height:1.65}img{display:block;max-width:100%}a{color:inherit}.site-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:13px 5%;background:rgba(255,255,255,.96);border-bottom:1px solid var(--border);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-weight:750;letter-spacing:.02em}.brand img{width:42px;height:42px;object-fit:contain}.brand span{white-space:nowrap}nav{display:flex;gap:6px;flex-wrap:wrap}nav a{padding:8px 11px;border-radius:999px;text-decoration:none;font-size:.94rem}nav a:hover,nav a.active{background:var(--cream)}.hero{min-height:76vh;display:grid;place-items:center;text-align:center;padding:56px 6%;background:linear-gradient(rgba(16,16,16,.58),rgba(16,16,16,.58)),url('assets/web/Exterior/exterior-1.webp') center/cover;color:#fff}.hero-overlay{max-width:900px}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:800}.hero .eyebrow{color:#ead49f}h1,h2,h3{line-height:1.13}h1{font-size:clamp(2.6rem,7vw,5.4rem);margin:10px 0 18px;letter-spacing:-.035em}h2{font-size:clamp(1.75rem,4vw,3rem);letter-spacing:-.025em;margin:.25em 0 .6em}h3{margin:.5em 0}.hero-text{max-width:670px;margin:0 auto 28px;font-size:clamp(1rem,2vw,1.2rem)}.button-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.btn{display:inline-block;padding:13px 22px;border-radius:999px;text-decoration:none;font-weight:800}.btn.primary{background:var(--gold);color:var(--charcoal)}.btn.secondary{border:1px solid rgba(255,255,255,.75);color:#fff}.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);max-width:980px;margin:-34px auto 0;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);position:relative;z-index:2;overflow:hidden}.stats-strip div{padding:20px;text-align:center;border-right:1px solid var(--border)}.stats-strip div:last-child{border:0}.stats-strip strong{display:block;font-size:1.5rem}.stats-strip span{font-size:.82rem;color:var(--muted)}.cards-section,.gallery-section,.split-section,.page{padding:64px 6%;max-width:1180px;margin:0 auto}.section-heading{text-align:center;max-width:760px;margin:0 auto 28px}.card-grid,.local-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.card,.local-card{display:block;background:#fff;padding:25px;border-radius:22px;border:1px solid var(--border);color:var(--charcoal);text-decoration:none;box-shadow:var(--shadow)}.card{transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-3px)}.card span,.local-card span{font-size:1.9rem}.card p,.local-card p{color:var(--muted)}.local-card a,.text-link{color:#84662e;font-weight:800;text-decoration:none}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-auto-rows:220px;gap:12px}.gallery-grid figure{margin:0;border-radius:18px;overflow:hidden}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-grid figure:hover img{transform:scale(1.025)}.gallery-large{grid-row:span 2}.split-section{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center}.feature-list{background:var(--charcoal);color:#fff;padding:30px;border-radius:24px}.page-heading{text-align:center;max-width:780px;margin:0 auto 34px}.page-heading h1{font-size:clamp(2.4rem,6vw,4.5rem)}.quick-nav{position:sticky;top:79px;z-index:10;display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin:20px 0 34px;padding:12px;background:rgba(247,243,236,.94);backdrop-filter:blur(8px)}.quick-nav a{background:#fff;border:1px solid var(--border);border-radius:999px;padding:9px 14px;text-decoration:none;font-weight:750;font-size:.9rem}.guide-section{background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px;margin-bottom:22px;box-shadow:0 8px 30px rgba(20,15,7,.04)}.section-icon{font-size:2rem;float:left;margin-right:14px}.guide-section:after{content:"";display:block;clear:both}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:20px}.video-grid article{background:var(--cream);border-radius:18px;padding:15px}.video-shell{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:16px;background:#e9e1d4;margin-top:16px}.video-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.rule-list{display:grid;gap:9px;padding-left:1.2rem}.emergency{border-color:#d5a0a0;background:#fffafa}.checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:18px}.checklist label{background:var(--cream);padding:12px 14px;border-radius:12px}.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.contact-panel>div{background:#fff;padding:28px;border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow)}.contact-panel span{font-size:2rem}.narrow{max-width:900px}footer{text-align:center;padding:34px 6%;color:var(--muted);border-top:1px solid var(--border)}footer p{margin:4px}footer a{text-decoration:none}
@media(max-width:820px){.site-header{align-items:flex-start;flex-direction:column;gap:8px}.brand img{width:36px;height:36px}.quick-nav{top:106px}.stats-strip{margin:-24px 4% 0;grid-template-columns:repeat(2,1fr)}.stats-strip div:nth-child(2){border-right:0}.stats-strip div:nth-child(-n+2){border-bottom:1px solid var(--border)}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.gallery-large{grid-column:span 2}.split-section,.contact-panel{grid-template-columns:1fr}.checklist{grid-template-columns:1fr}}
@media(max-width:560px){.site-header{position:relative}.brand span{font-size:.95rem}nav{gap:2px}nav a{padding:7px 8px;font-size:.82rem}.hero{min-height:68vh;padding-top:40px}.cards-section,.gallery-section,.split-section,.page{padding:48px 5%}.quick-nav{position:relative;top:auto;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:8px 0}.quick-nav a{white-space:nowrap}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:220px}.gallery-large{grid-column:auto;grid-row:auto}.guide-section{padding:21px}.video-grid{grid-template-columns:1fr}}

.video-fallback{margin:10px 2px 0;font-size:.92rem}.video-fallback a{color:#84662e;font-weight:800;text-decoration:none}.video-fallback a:hover{text-decoration:underline}.local-video-notice{max-width:900px;margin:0 auto 24px;padding:14px 18px;border:1px solid #d4b56c;border-radius:14px;background:#fff8df;color:#5c4618;font-weight:700}.local-video-notice[hidden]{display:none}

/* Premium homepage rebuild */
.home-page{background:#eef1f4;color:#171715}.home-page .premium-header{position:fixed;inset:0 0 auto;z-index:100;display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:30px;padding:18px 5%;color:#fff;transition:.35s ease;border-bottom:1px solid rgba(255,255,255,.16)}.home-page .premium-header.scrolled{background:rgba(247,249,251,.96);color:#171715;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(14px);border-color:#d8dde2}.premium-brand img{width:138px;height:70px;object-fit:contain;filter:brightness(0) invert(1);transition:.35s}.premium-header.scrolled .premium-brand img{filter:none}.premium-nav{display:flex;justify-content:center;gap:24px}.premium-nav a{font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;text-decoration:none;font-weight:750}.header-cta{padding:12px 20px;border:1px solid currentColor;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:.75rem;letter-spacing:.1em}.menu-toggle{display:none;background:none;border:1px solid currentColor;color:inherit;padding:9px 12px}.cinematic-hero{position:relative;min-height:100svh;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{opacity:0;background-size:cover;background-position:center;transform:scale(1.05);transition:opacity 1.4s ease;animation:heroZoom 12s ease-in-out infinite alternate}.hero-slide.active{opacity:1}.hero-shade{background:linear-gradient(90deg,rgba(8,10,10,.72) 0%,rgba(8,10,10,.43) 48%,rgba(8,10,10,.20) 100%),linear-gradient(0deg,rgba(8,8,8,.38),transparent 50%)}@keyframes heroZoom{from{transform:scale(1.03)}to{transform:scale(1.11)}}.hero-content-premium{position:relative;z-index:3;width:min(760px,90%);margin-left:7%;padding-top:70px}.hero-kicker,.premium-eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:850;color:#c8a45d}.hero-content-premium h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(3.4rem,8vw,7.2rem);line-height:.93;letter-spacing:-.055em;margin:18px 0 24px}.hero-content-premium>p:not(.hero-kicker){max-width:650px;font-size:clamp(1rem,1.8vw,1.24rem);color:rgba(255,255,255,.9)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.luxury-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;text-decoration:none;text-transform:uppercase;font-size:.76rem;font-weight:850;letter-spacing:.1em;border:1px solid transparent;transition:.25s}.luxury-btn.gold{background:#c8a45d;color:#171715}.luxury-btn.gold:hover{background:#d8bb7e;transform:translateY(-2px)}.luxury-btn.outline{border-color:rgba(255,255,255,.78);color:#fff}.luxury-btn.outline:hover{background:#fff;color:#171715}.luxury-btn.dark{background:#171715;color:#fff}.hero-dots{position:absolute;right:5%;bottom:34px;z-index:4;display:flex;gap:9px}.hero-dots button{width:28px;height:3px;border:0;background:rgba(255,255,255,.42);padding:0;cursor:pointer}.hero-dots button.active{background:#c8a45d}.scroll-cue{position:absolute;left:7%;bottom:28px;z-index:4;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;display:flex;align-items:center;gap:12px}.scroll-cue span{display:block;width:38px;height:1px;background:#fff}.highlight-bar{max-width:1180px;margin:-42px auto 0;position:relative;z-index:6;background:#fff;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 20px 55px rgba(26,20,10,.12)}.highlight-bar>div{padding:24px 14px;text-align:center;border-right:1px solid #e0e4e8}.highlight-bar>div:last-child{border:0}.highlight-icon{display:block;margin:auto auto 7px;font-family:Georgia,serif;color:#a87e31;font-size:1.4rem}.highlight-bar strong,.highlight-bar small{display:block}.highlight-bar strong{font-size:.9rem}.highlight-bar small{color:#777168;font-size:.73rem}.premium-intro{max-width:1180px;margin:auto;padding:120px 6%;display:grid;grid-template-columns:1fr 1fr;gap:80px}.premium-intro h2,.gallery-title h2,.feature-copy h2,.review-heading h2,.final-cta h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(2.5rem,5vw,4.7rem);line-height:1.02;letter-spacing:-.04em;margin:14px 0}.intro-text{font-size:1.06rem;color:#5e5a53;padding-top:30px}.premium-text-link{display:inline-block;margin-top:12px;text-decoration:none;color:#8b6528;font-weight:800}.editorial-gallery{background:#171715;color:#fff;padding:100px 5%}.gallery-title{text-align:center;max-width:700px;margin:0 auto 48px}.gallery-title>p:last-child{color:#aaa69f}.editorial-grid{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.25fr .8fr .8fr;grid-auto-rows:260px;gap:14px}.gallery-tile{position:relative;border:0;padding:0;overflow:hidden;background:#222;cursor:pointer;color:#fff}.gallery-tile.tile-wide{grid-row:span 2}.gallery-tile.tile-tall{grid-row:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:.65s ease}.gallery-tile:hover img{transform:scale(1.045)}.gallery-tile:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.gallery-tile span{position:absolute;left:20px;bottom:16px;z-index:2;text-transform:uppercase;letter-spacing:.14em;font-size:.69rem;font-weight:800}.gallery-centre{text-align:center;margin-top:34px}.feature-band{display:grid;grid-template-columns:1.1fr .9fr;min-height:650px;background:#dde2e7}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:9% 10%;align-self:center}.feature-copy ul{list-style:none;padding:0;margin:28px 0 34px}.feature-copy li{padding:13px 0;border-bottom:1px solid rgba(0,0,0,.12)}.feature-copy li:before{content:"✓";color:#9a702d;font-weight:900;margin-right:12px}.reviews-premium{padding:110px 6%;max-width:1180px;margin:auto}.review-heading{text-align:center;margin-bottom:45px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-grid article{background:#fff;padding:34px;border:1px solid #d9dee3}.stars{color:#b48942;letter-spacing:.15em}.review-grid blockquote{font-family:Georgia,serif;font-size:1.35rem;line-height:1.45;margin:22px 0}.review-grid article p{color:#79736b;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}.final-cta{margin:0 5% 90px;background:#242321;color:#fff;padding:60px;display:flex;align-items:center;justify-content:space-between;gap:30px}.final-cta h2{max-width:760px}.premium-footer{background:#111;color:#d9d2c5;text-align:center;padding:62px 5%}.premium-footer img{width:150px;margin:0 auto 22px;filter:brightness(0) invert(1)}.premium-footer div{display:flex;justify-content:center;gap:24px;margin:24px 0}.premium-footer a{text-decoration:none}.lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.94);display:grid;place-items:center;padding:4%}.lightbox[hidden]{display:none}.lightbox img{max-height:88vh;max-width:92vw}.lightbox-close{position:absolute;right:25px;top:18px;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:950px){.home-page .premium-header{grid-template-columns:110px 1fr auto;padding:12px 4%}.premium-brand img{width:104px;height:58px}.premium-nav{gap:12px}.premium-nav a{font-size:.67rem}.highlight-bar{margin:-30px 3% 0;grid-template-columns:repeat(3,1fr)}.highlight-bar>div:nth-child(3){border-right:0}.premium-intro{gap:35px}.editorial-grid{grid-template-columns:1.2fr 1fr;grid-auto-rows:230px}.gallery-tile.tile-tall{grid-row:auto}.feature-band{grid-template-columns:1fr}.feature-image{height:500px}.review-grid{grid-template-columns:1fr}.final-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.home-page .premium-header{grid-template-columns:1fr auto}.premium-brand img{width:100px}.menu-toggle{display:block}.premium-nav{display:none;position:absolute;top:82px;left:4%;right:4%;background:#f4f6f8;color:#171715;padding:20px;flex-direction:column;box-shadow:0 18px 45px rgba(0,0,0,.18)}.premium-nav.open{display:flex}.header-cta{display:none}.hero-content-premium{margin:0 auto;padding-top:60px}.hero-content-premium h1{font-size:clamp(3rem,16vw,5.3rem)}.hero-actions{flex-direction:column;align-items:stretch}.hero-dots{right:7%;bottom:24px}.scroll-cue{display:none}.highlight-bar{grid-template-columns:repeat(2,1fr)}.highlight-bar>div:nth-child(odd){border-right:1px solid #e0e4e8}.highlight-bar>div:nth-child(even){border-right:0}.highlight-bar>div:last-child{grid-column:span 2}.premium-intro{padding:85px 6%;grid-template-columns:1fr}.intro-text{padding-top:0}.editorial-gallery{padding:80px 4%}.editorial-grid{grid-template-columns:1fr;grid-auto-rows:260px}.gallery-tile.tile-wide,.gallery-tile.tile-tall{grid-row:auto}.feature-image{height:350px}.feature-copy{padding:70px 7%}.final-cta{padding:42px 25px;margin:0 4% 60px}.premium-footer div{flex-direction:column;gap:8px}}

/* Southfield Drive brand logo */
.premium-brand{display:flex;align-items:center;justify-content:flex-start;text-decoration:none}
.premium-brand img{width:112px;height:72px;object-fit:contain;filter:none!important;mix-blend-mode:normal;drop-shadow:none}
.premium-header.scrolled .premium-brand img{filter:none!important}
.site-header .brand img{width:74px;height:58px;object-fit:contain}
.premium-footer img{width:180px;max-height:120px;object-fit:contain;filter:none!important}
.wifi-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 20px}
.wifi-details p{margin:0;padding:15px 17px;border-radius:14px;background:var(--cream);border:1px solid var(--border)}
.wifi-details strong,.wifi-details span{display:block}
.wifi-details strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#8b6528;margin-bottom:4px}
.wifi-details span{font-size:1.02rem;font-weight:750;overflow-wrap:anywhere}
@media(max-width:950px){.premium-brand img{width:92px;height:62px}}
@media(max-width:720px){.premium-brand img{width:82px;height:56px}.wifi-details{grid-template-columns:1fr}}

.contact-number{margin-top:18px!important}.contact-number a{display:inline-block;font-size:1.65rem;font-weight:850;letter-spacing:.02em;color:#8b6528;text-decoration:none}.contact-number a:hover{text-decoration:underline}

/* Version 3: architectural grey palette and refined brand treatment */
:root{
  --cream:#e2e5e8;
  --section-grey:#d7dbdf;
  --card-grey:#f6f7f8;
  --border:#c8ced4;
  --muted:#555d65;
  --shadow:0 18px 45px rgba(25,32,40,.11)
}
body{background:#e2e5e8}
.home-page{background:#e2e5e8}
.cards-section,.gallery-section,.split-section,.page,.reviews-premium,.premium-intro{background:#e2e5e8}
.card,.local-card,.guide-section,.contact-panel>div,.review-grid article{background:#f6f7f8}
.feature-band{background:#d7dbdf}
.quick-nav{background:rgba(226,229,232,.94)}
.video-grid article,.checklist label,.wifi-details p{background:#d7dbdf}

/* Crisp adaptive vector logo: white/gold over hero, navy/gold after scrolling */
.premium-brand{position:relative;width:122px;height:78px;display:block}
.premium-brand .brand-logo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .3s ease,transform .3s ease;filter:none!important}
.premium-brand .logo-light{opacity:1;filter:drop-shadow(0 2px 8px rgba(0,0,0,.35))!important}
.premium-brand .logo-dark{opacity:0}
.premium-header.scrolled .premium-brand .logo-light{opacity:0}
.premium-header.scrolled .premium-brand .logo-dark{opacity:1}
.premium-brand:hover .brand-logo{transform:scale(1.025)}
.site-header .brand img{width:92px;height:58px}
.premium-footer img{width:200px;max-height:130px;filter:none!important}

/* Consistent cinematic image treatment */
.hero-shade{background:linear-gradient(90deg,rgba(8,10,12,.76) 0%,rgba(8,10,12,.50) 46%,rgba(8,10,12,.30) 100%),linear-gradient(0deg,rgba(6,8,10,.42),transparent 52%)}
.hero-slide{transition:opacity 1.65s cubic-bezier(.4,0,.2,1)}

/* Final interaction and typography polish */
.premium-header{transition:background .35s ease,color .35s ease,box-shadow .35s ease,border-color .35s ease}
.premium-nav a{position:relative;padding:8px 0}
.premium-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:#c8a45d;transition:right .25s ease}
.premium-nav a:hover:after{right:0}
.header-cta,.luxury-btn{border-radius:2px;transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease}
.header-cta:hover,.luxury-btn.gold:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(25,20,12,.18)}
.luxury-btn.dark:hover{background:#30343a;transform:translateY(-3px)}
.gallery-tile{box-shadow:0 12px 28px rgba(0,0,0,.12);transition:transform .35s ease,box-shadow .35s ease}
.gallery-tile:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(0,0,0,.23)}
.gallery-tile:hover img{transform:scale(1.06)}
.hero-content-premium h1,.premium-intro h2,.gallery-title h2,.feature-copy h2,.review-heading h2,.final-cta h2{text-wrap:balance}
.hero-content-premium>p:not(.hero-kicker),.intro-text{max-width:62ch}

@media(max-width:950px){.premium-brand{width:102px;height:66px}}
@media(max-width:720px){
  .premium-brand{width:92px;height:58px}
  .home-page .premium-header{padding:10px 4%;background:linear-gradient(180deg,rgba(7,9,11,.62),transparent);border-bottom:0}
  .home-page .premium-header.scrolled{background:rgba(238,241,244,.97);border-bottom:1px solid #c8ced4}
  .premium-nav{top:74px;background:rgba(238,241,244,.98);border:1px solid #c8ced4;border-radius:4px}
  .premium-nav a{padding:12px 4px;font-size:.76rem}
  .menu-toggle{border-radius:2px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
  .hero-content-premium{width:88%;padding-top:85px}
  .hero-content-premium h1{line-height:.98}
  .highlight-bar{box-shadow:0 15px 38px rgba(25,32,40,.15)}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Availability enquiry calendar */
.availability-section{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(560px,1.22fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(5rem,9vw,8rem) max(5vw,2rem);background:#cbd0d5}
.availability-copy h2{font-size:clamp(2.4rem,5vw,4.8rem);margin:.35rem 0 1rem;line-height:1}
.availability-copy>p{max-width:56ch;color:#4e555d;line-height:1.75}
.calendar-legend{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;margin:1.7rem 0;font-size:.83rem;color:#4e555d}
.calendar-legend span{display:inline-flex;align-items:center;gap:.45rem}.legend-dot{width:.72rem;height:.72rem;border-radius:50%;display:inline-block;border:1px solid #aeb4ba}.legend-dot.available{background:#f5f6f7}.legend-dot.selected{background:#c6a55b;border-color:#c6a55b}.legend-dot.unavailable{background:#8d949b}
.selection-summary{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.5rem 0}.selection-summary div{padding:1rem 1.1rem;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.7)}.selection-summary small{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.65rem;color:#6b7279;margin-bottom:.35rem}.selection-summary strong{font-size:.95rem}
.calendar-enquire.disabled{opacity:.55;cursor:not-allowed}.calendar-note{font-size:.82rem;margin-top:1rem!important}.calendar-note a{color:inherit;font-weight:700}
.calendar-shell{background:#f4f5f6;padding:clamp(1rem,2.4vw,2.2rem);box-shadow:0 24px 70px rgba(31,35,40,.13)}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.calendar-toolbar strong{font-family:Georgia,'Times New Roman',serif;font-size:1.15rem}.calendar-toolbar button{width:2.6rem;height:2.6rem;border:1px solid #c7ccd1;background:#fff;cursor:pointer;font-size:1.1rem;transition:.2s}.calendar-toolbar button:hover:not(:disabled){background:#20252b;color:#fff}.calendar-toolbar button:disabled{opacity:.3;cursor:not-allowed}
.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,2.5rem)}.calendar-month h3{text-align:center;font-size:1rem;margin:0 0 1rem}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.calendar-weekdays{margin-bottom:.35rem}.calendar-weekdays span{text-align:center;font-size:.62rem;letter-spacing:.04em;color:#737a81}.calendar-grid>span,.calendar-grid button{aspect-ratio:1;display:grid;place-items:center}.calendar-grid button{border:0;background:transparent;border-radius:50%;font:inherit;font-size:.8rem;color:#272c31;cursor:pointer;position:relative;z-index:1}.calendar-grid button.available:hover{background:#e3d4b0}.calendar-grid button.today{box-shadow:inset 0 0 0 1px #c6a55b}.calendar-grid button.range-start,.calendar-grid button.range-end{background:#c6a55b;color:#151515;font-weight:700}.calendar-grid button.in-range{background:#e5d8b9;border-radius:0}.calendar-grid button.past{color:#c0c4c8;text-decoration:line-through}.calendar-grid button.unavailable{color:#767d84;background:#d7dadd;text-decoration:line-through}
@media(max-width:980px){.availability-section{grid-template-columns:1fr}.calendar-shell{max-width:800px;width:100%}}
@media(max-width:640px){.availability-section{padding-inline:1rem}.calendar-months{grid-template-columns:1fr}.calendar-month:nth-child(2){display:none}.selection-summary{grid-template-columns:1fr}.calendar-grid button{font-size:.9rem}.calendar-shell{padding:1rem}.calendar-toolbar strong{font-size:1rem}}
.calendar-live-status{margin:0 0 1rem;padding:.65rem .8rem;background:#e8eaec;border-left:3px solid #8d949b;font-size:.78rem;color:#4e555d}.calendar-live-status.is-live{border-left-color:#668067}.calendar-live-status.has-error{border-left-color:#a36b5b}
