[hidden]{display:none!important}
:root{--ink:#1f2a2c;--brand:#4e6265;--sand:#f6f2ec;--warm:#fdd79a;--line:#e4e0d9;--r:14px}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 Montserrat,system-ui,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;display:block}a{color:inherit}h1,h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;line-height:1.1;margin:.2em 0 .4em}
h1{font-size:clamp(2rem,6vw,3.6rem)}h2{font-size:clamp(1.6rem,4vw,2.3rem);margin-top:1.4em}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}.muted{color:#59625f}.tag{display:inline-block;font-size:.7rem;background:#fff3d6;border:1px dashed #d9a640;color:#7a5410;padding:1px 7px;border-radius:20px;font-weight:600;vertical-align:middle}
.btn{display:inline-block;background:var(--brand);color:#fff;border:0;border-radius:10px;padding:14px 22px;font:600 1rem Montserrat;cursor:pointer;text-decoration:none}.btn.sm{padding:8px 16px}.btn.ghost{background:none;border:2px solid var(--brand);color:var(--brand)}.btn.full{width:100%}
.nav{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.navin{display:flex;align-items:center;justify-content:space-between;height:64px}.logo img{width:200px;height:auto}
.nav nav{display:none}.burger{background:none;border:0;font-size:1.6rem}.menu .nav nav{display:flex;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:#fff;padding:12px 20px;gap:12px;border-bottom:1px solid var(--line)}
.nav nav a{text-decoration:none;font-weight:500;font-size:.92rem}
@media(min-width:900px){.burger{display:none}.nav nav{display:flex;gap:26px;align-items:center}}
.proto{background:#1f2a2c;color:#fdd79a;text-align:center;font-size:.72rem;padding:4px;letter-spacing:.04em}
.hero{position:relative;min-height:min(88vh,760px);display:flex;align-items:flex-end;color:#fff;overflow:hidden}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.55))}.hin{position:relative;padding-bottom:7vh;width:100%}.hero h1{max-width:14ch;text-shadow:0 2px 18px rgba(0,0,0,.35)}.sub{font-size:1.15rem;margin:0 0 24px}
.search{background:#fff;color:var(--ink);border-radius:18px;padding:10px;display:grid;gap:8px;grid-template-columns:1fr 1fr;box-shadow:0 20px 50px rgba(0,0,0,.3);max-width:980px}
.search label{display:flex;flex-direction:column;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:8px 12px;border-radius:10px;background:var(--sand)}
.search select,.search input{border:0;background:none;font:500 .95rem Montserrat;padding:4px 0;color:var(--ink)}.search label:first-child{grid-column:1/-1}.search .btn{grid-column:1/-1}
@media(min-width:900px){.search{grid-template-columns:1.4fr 1fr 1fr 1fr auto}.search label:first-child,.search .btn{grid-column:auto}}
.direct{background:var(--sand);border-bottom:1px solid var(--line)}.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px 20px}.dgrid div{display:flex;flex-direction:column;gap:4px}.dgrid span:not(.tag){font-size:.75rem;color:#59625f}@media(min-width:900px){.dgrid{grid-template-columns:repeat(4,1fr)}}
.intro{padding:40px 20px 0}.lede{font-size:1.2rem;font-weight:500}
.rh{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.rh p{margin:0;color:#59625f}.rh a{white-space:nowrap;font-weight:600}
.hscroll{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:16px 0}.hscroll .card{scroll-snap-align:start}@media(min-width:700px){.hscroll{grid-auto-columns:calc(25% - 12px)}}
.card{text-decoration:none;display:block}.card .ph{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#ddd}.card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.card:hover img{transform:scale(1.04)}
.cb{padding:10px 2px}.cb h3{font-size:.98rem;margin:2px 0;line-height:1.35}.row{display:flex;justify-content:space-between;font-size:.8rem}.ar{color:#59625f;font-weight:600}.meta{margin:0;font-size:.82rem;color:#59625f}.pr{margin:2px 0 0}.rt{font-weight:600;font-size:.85rem}
.revs{background:var(--sand);padding:20px 0 50px;margin-top:40px}.revgrid{display:grid;gap:16px}@media(min-width:800px){.revgrid{grid-template-columns:repeat(3,1fr)}}
.rev{background:#fff;margin:0;padding:22px;border-radius:var(--r);border:1px solid var(--line)}.rev blockquote{margin:6px 0 10px;font-size:.95rem}.rev figcaption{font-size:.8rem;font-weight:600;color:var(--brand)}
.guide{display:grid;gap:20px;padding:40px 20px;align-items:center}.guide form{display:flex;flex-wrap:wrap;gap:8px}.guide input{flex:1;min-width:200px;padding:14px;border:1px solid var(--line);border-radius:10px;font:inherit}.guide small{width:100%;color:#59625f}@media(min-width:900px){.guide{grid-template-columns:1fr 1fr}}
.owner{text-align:center;padding:30px 20px 60px}
footer{background:#1f2a2c;color:#d8dcdc;padding:40px 0;font-size:.9rem}.fgrid{display:grid;gap:24px}.fgrid a{display:block}.flogo{filter:brightness(0) invert(1);margin-bottom:12px}@media(min-width:800px){.fgrid{grid-template-columns:2fr 1fr}}
.pagehead{padding-top:30px}.chips{display:flex;gap:8px;overflow-x:auto;padding:8px 0 16px;position:sticky;top:64px;background:#fff;z-index:5}
.chips select,.chips button{flex:none;border:1px solid var(--line);background:#fff;border-radius:30px;padding:9px 16px;font:500 .88rem Montserrat;cursor:pointer}.chips .on{background:var(--brand);color:#fff;border-color:var(--brand)}.chips .clear{border:0;text-decoration:underline}
.grid{display:grid;gap:22px;grid-template-columns:1fr;padding-bottom:60px}@media(min-width:600px){.grid{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.grid{grid-template-columns:repeat(4,1fr)}}
.ptop{padding-top:16px}.back{font-size:.85rem}.loc{margin:0 0 14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.gallery{display:grid;gap:8px;grid-template-columns:1fr;position:relative;border-radius:var(--r);overflow:hidden}.gallery .g{border:0;padding:0;cursor:zoom-in;background:#ddd}.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.g1,.g2,.g3,.g4{display:none}
@media(min-width:800px){.gallery{grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px}.g0{grid-row:1/3}.g0 img{aspect-ratio:auto}.g1,.g2,.g3,.g4{display:block}.g img{aspect-ratio:auto}}
.allph{position:absolute;right:14px;bottom:14px;background:#fff;border:1px solid var(--ink);border-radius:8px;padding:8px 14px;font:600 .85rem Montserrat;cursor:pointer}
.pgrid{display:grid;gap:40px;padding-bottom:100px}@media(min-width:1000px){.pgrid{grid-template-columns:1fr 380px}}
.icons{display:flex;flex-wrap:wrap;gap:10px 22px;padding:18px 0;border-bottom:1px solid var(--line);font-weight:500}
.badges{display:grid;gap:12px}@media(min-width:600px){.badges{grid-template-columns:1fr 1fr}}.badge{display:flex;gap:12px;align-items:center}.badge span{font-size:1.6rem}.badge small{display:block;color:#59625f}
.am{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 20px}.more summary{cursor:pointer;font-weight:600;border:1px solid var(--ink);display:inline-block;padding:8px 16px;border-radius:8px}
.rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.room{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column}.room span{font-size:1.4rem}
.desc h3{margin-bottom:0}.map{background:repeating-linear-gradient(45deg,#eef0ee,#eef0ee 12px,#e5e8e5 12px,#e5e8e5 24px);border-radius:var(--r);height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:600}
.prevs{display:grid;gap:14px}
.book{scroll-margin-top:80px;order:-1}@media(min-width:1000px){.book{order:0}}@media(min-width:1000px){.book>.bcard{position:sticky;top:90px}}
.bcard{border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 10px 30px rgba(0,0,0,.08)}.bp{font-size:1.3rem;margin:0}.bf{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:10px;margin:12px 0}.bf label{font-size:.68rem;font-weight:700;text-transform:uppercase;padding:8px 10px;display:flex;flex-direction:column}.bf .full{grid-column:1/-1;border-top:1px solid var(--line)}.bf input,.bf select{border:0;font:inherit;font-size:.9rem;text-transform:none}
.note{font-size:.8rem;text-align:center;color:#a2401a;font-weight:600;margin:8px 0 0}.reassure{text-align:center;font-size:.85rem;margin:2px 0 0;color:#59625f}
.policies{margin-top:16px;border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:10px;position:static!important}.policies small{display:block;margin-top:4px}
.mbar{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:10px 16px;z-index:30}.mbar small{display:block;font-size:.72rem;color:#59625f}@media(min-width:1000px){.mbar{display:none}}
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:50;display:flex;align-items:center;justify-content:center}.lb[hidden]{display:none}.lb img{max-height:88vh;max-width:90vw}.lb button{position:absolute;background:none;border:0;color:#fff;font-size:2.6rem;cursor:pointer}.lb .x{top:10px;right:20px}.lb .pv{left:10px}.lb .nx{right:10px}
.mhero{background:linear-gradient(rgba(31,42,44,.55),rgba(31,42,44,.65)),url(/img/lakeshore-luxe-jacksonport-designer-home-1.jpg) center/cover;color:#fff;padding:14vh 0}.mhero p{max-width:560px;font-size:1.1rem}
.msec{padding:30px 20px}.msec.alt{background:var(--sand);padding:30px 0}.cards4{display:grid;gap:16px}@media(min-width:800px){.cards4{grid-template-columns:repeat(4,1fr)}}.cards4 div{border:1px solid var(--line);border-radius:var(--r);padding:20px}.cards4 h3{font-size:1rem}
.svc{columns:2;padding-left:20px}.fit{display:grid;gap:16px}@media(min-width:800px){.fit{grid-template-columns:1fr 1fr}}.fit>div{border-radius:var(--r);padding:20px}.yes{background:#eef4ef}.no{background:#f7eeee}
.quote{background:var(--brand);color:#fff;padding:50px 0;text-align:center}.quote blockquote{font:500 1.6rem/1.3 "Cormorant Garamond",serif;max-width:800px;margin:0 auto}
.center{text-align:center}.stats{background:var(--sand);padding:30px 0}.sgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:center}.sgrid b{display:block;font:600 2rem "Cormorant Garamond",serif;color:var(--brand)}@media(min-width:800px){.sgrid{grid-template-columns:repeat(5,1fr)}}

.cal{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:12px}.calh{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:6px}.calh button{background:none;border:0;font-size:1.3rem;cursor:pointer;padding:0 8px}
.calg{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;font-size:.82rem}.calg .dow{font-size:.65rem;color:#59625f;font-weight:700}.calg button{border:0;background:none;padding:7px 0;border-radius:8px;cursor:pointer;font:inherit}
.calg button:disabled{color:#c3c7c7;text-decoration:line-through;cursor:not-allowed}.calg button.sel{background:var(--brand);color:#fff}.calg button.mid{background:#e3ebeb}.calleg{font-size:.7rem;color:#59625f;margin-top:6px}
.bq table{width:100%;font-size:.88rem;border-collapse:collapse}.bq td{padding:4px 0}.bq td:last-child{text-align:right}.bq .tot td{border-top:1px solid var(--ink);font-weight:700;font-size:1rem;padding-top:8px}.bq .sub td{text-align:left!important;color:#59625f;font-size:.8rem}.bq details{font-size:.82rem;margin:4px 0}.bq .err{color:#a2401a;font-size:.88rem}
.live{font-size:.7rem;color:#59625f;text-align:center;margin:6px 0 0}.live.on{color:#2f7a4c}
.bf label{min-width:0}.bf input,.bf select{width:100%;min-width:0;background:none}
/* ---- nav dropdowns + footer (pages build-out) ---- */
.dd{position:relative;display:flex;flex-direction:column;gap:8px}
.ddm{display:flex;flex-direction:column;gap:8px;padding-left:14px;border-left:2px solid var(--line)}
.ddm a{font-weight:400!important;color:#4b5557}
@media(min-width:900px){.dd>.ddm{display:none;position:absolute;top:100%;left:-16px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:10px 16px;min-width:230px;border-left:1px solid var(--line);gap:0}
.dd>.ddm a{padding:8px 0}.dd:hover>.ddm,.dd:focus-within>.ddm{display:flex}.dd{padding:20px 0}}
@media(min-width:800px){.fgrid{grid-template-columns:2fr 1fr 1fr 1fr}}
.fgrid b{display:block;color:#fff;margin-bottom:8px}.fgrid a{color:#d8dcdc;text-decoration:none;padding:3px 0}.fine{margin-top:26px;padding-top:16px;border-top:1px solid #3a4547;color:#9aa3a4;font-size:.8rem}
/* ---- shared page parts ---- */
.phero{background:var(--sand);padding:56px 0 40px;border-bottom:1px solid var(--line)}
.phero h1{font:600 clamp(2.2rem,5vw,3.6rem)/1.05 'Cormorant Garamond',serif;margin:.1em 0 .25em;max-width:18ch}
.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600;color:var(--brand);margin:0}
.lede,.big{font-size:1.15rem;line-height:1.6;color:#3c4648}
.prose{padding:40px 20px 50px;max-width:1100px}.prose p{line-height:1.7;max-width:70ch}.prose h2{margin-top:1.6em}
.two{display:grid;gap:36px}@media(min-width:900px){.two{grid-template-columns:1.6fr 1fr;align-items:start}}
.localcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;position:sticky;top:90px}
.note{font-size:.82rem;color:#59625f;border-left:3px solid var(--line);padding-left:10px}
.stats.dark{background:var(--brand);color:#fff;padding:40px 0}.stats.dark .sgrid b{color:#fff}.sgrid{display:grid;gap:20px;grid-template-columns:1fr 1fr}@media(min-width:900px){.sgrid{grid-template-columns:repeat(4,1fr)}}
.sgrid b{display:block;font:600 2.6rem 'Cormorant Garamond',serif}.sgrid span{display:block;font-weight:600}.sgrid small{opacity:.75;font-size:.75rem}
.team{display:grid;gap:22px;margin:20px 0}@media(min-width:900px){.team{grid-template-columns:repeat(3,1fr)}}
.person{border:1px solid var(--line);border-radius:var(--r);padding:22px;background:#fff}.person h3{margin:.6em 0 0}.role{color:var(--brand);font-weight:600;margin:.2em 0 .8em;font-size:.9rem}.person .role:has(+.rolesub){margin-bottom:.1em}.rolesub{font-style:italic;font-size:.82rem;color:#59625f;margin:0 0 .8em}
.av{width:64px;height:64px;border-radius:50%;background:var(--warm);display:grid;place-items:center;font:600 1.4rem 'Cormorant Garamond',serif;color:var(--ink)}
.person dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:.82rem;margin:14px 0 0}.person dt{color:#59625f}.person dd{margin:0}
.cta2{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;padding:40px 20px 60px}.cta2 h2{font:600 2rem 'Cormorant Garamond',serif;margin:0;max-width:24ch}
/* FAQ */
.faqwrap{display:grid;gap:30px;padding:40px 20px 60px}@media(min-width:900px){.faqwrap{grid-template-columns:200px 1fr}}
.faqnav{display:flex;flex-wrap:wrap;gap:8px;align-self:start}@media(min-width:900px){.faqnav{flex-direction:column;position:sticky;top:90px}}
.faqnav a{text-decoration:none;padding:6px 12px;border:1px solid var(--line);border-radius:20px;font-size:.88rem}
.faqg{margin-bottom:30px;scroll-margin-top:80px}.faqg h2{font:600 1.8rem 'Cormorant Garamond',serif;margin:0 0 10px}
details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:16px 30px 16px 0;font-weight:600;list-style:none;position:relative}summary::-webkit-details-marker{display:none}
summary::after{content:'+';position:absolute;right:4px;top:12px;font-size:1.4rem;color:var(--brand)}details[open] summary::after{content:'–'}
.ans{padding:0 0 16px}.ans p{margin:.3em 0;line-height:1.65}.src{font-size:.75rem;color:#8a9294}
/* Guide */
.gchips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:24px 0 8px}.gchips button{border:1px solid var(--line);background:#fff;border-radius:20px;padding:8px 14px;font:500 .88rem Montserrat;cursor:pointer}
.gchips button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.gchips small{opacity:.7}.gchips select,.gchips input{border:1px solid var(--line);border-radius:20px;padding:8px 12px;font:inherit}.gchips input{flex:1;min-width:180px}
.ggrid{display:grid;gap:22px;padding:10px 0 40px}@media(min-width:640px){.ggrid{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.ggrid{grid-template-columns:repeat(3,1fr)}}
.gcard{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;display:flex;flex-direction:column}.gcard .ph{aspect-ratio:3/2;background:#e8e4dd}.gcard img{width:100%;height:100%;object-fit:cover}
.gcard .cb{padding:16px 18px 18px}.gcard h3{margin:.3em 0}.gcard p{margin:.4em 0;font-size:.92rem;line-height:1.55}.addr{color:#59625f;font-size:.82rem!important}.glinks a{font-weight:600;font-size:.85rem}
/* Reviews */
.rgrid{columns:1;column-gap:22px;padding:40px 0}@media(min-width:700px){.rgrid{columns:2}}@media(min-width:1050px){.rgrid{columns:3}}
.rcard{break-inside:avoid;border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:0 0 22px;background:#fff}.rcard h3{margin:.3em 0}.rcard blockquote{margin:.5em 0;line-height:1.6}.stars{color:#d9a640;letter-spacing:2px}.rcard figcaption{font-size:.85rem;color:#4b5557}
.bigq{margin:0 0 30px;padding:30px;background:var(--sand);border-radius:var(--r)}.bigq blockquote{margin:0;font-size:1.05rem}.bigq.sm blockquote{font:600 1.6rem 'Cormorant Garamond',serif}
/* Forms / misc */
.cform{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--r);padding:24px;background:#fff}.cform.wide{max-width:820px;margin:40px auto 60px}
.cform label{display:grid;gap:6px;font-size:.85rem;font-weight:600}.cform input,.cform textarea,.cform select{border:1px solid #cfcac2;border-radius:8px;padding:11px;font:400 1rem Montserrat}
.cform .chk{display:flex;gap:8px;align-items:center;font-weight:400}.cform fieldset{border:1px solid var(--line);border-radius:10px;display:grid;gap:8px}.cform legend{font-weight:600;font-size:.85rem}
.r2{display:grid;gap:14px}@media(min-width:600px){.r2{grid-template-columns:1fr 1fr}}.cgrid{padding:40px 20px 60px}.cinfo a{font-weight:600}
.pgrid3{display:grid;gap:18px}@media(min-width:800px){.pgrid3{grid-template-columns:repeat(3,1fr)}}.pbox,.job{border:1px solid var(--line);border-radius:var(--r);padding:20px;background:#fff}
.awards{list-style:none;padding:0;display:grid;gap:8px}.awards li{background:var(--sand);padding:12px 16px;border-radius:10px}
.warn{background:#fff3d6;border:1px dashed #d9a640;border-radius:10px;padding:14px 16px;font-size:.9rem;margin-bottom:20px}
/* ---- live-site imagery ---- */
.phero.has-bg{position:relative;background:linear-gradient(90deg,rgba(246,242,236,.97) 0%,rgba(246,242,236,.88) 45%,rgba(246,242,236,.25) 100%),var(--bg) center/cover;padding:90px 0 70px}
@media(max-width:700px){.phero.has-bg{background:linear-gradient(rgba(246,242,236,.9),rgba(246,242,236,.85)),var(--bg) center/cover}}
.mhero{background:linear-gradient(90deg,rgba(31,42,44,.85),rgba(31,42,44,.45)),var(--bg,none) center/cover!important;color:#fff}
.mhero h1,.mhero p{color:#fff}
.cimg{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px;margin-bottom:10px}
.yt{position:relative;aspect-ratio:16/9;max-width:900px;margin:26px 0 8px;border-radius:var(--r);overflow:hidden;background:#000}
.yt iframe,.ytbtn{position:absolute;inset:0;width:100%;height:100%;border:0}.ytbtn{padding:0;cursor:pointer;background:#000}.ytbtn img{width:100%;height:100%;object-fit:cover;opacity:.9}
.play{position:absolute;left:50%;top:50%;width:78px;height:54px;transform:translate(-50%,-50%);background:#e62117;border-radius:14px}.play::after{content:'';position:absolute;left:31px;top:15px;border:12px solid transparent;border-left:20px solid #fff;border-right:0}
.ytbtn:hover .play{background:#c4170f}.ytlink{font-size:.88rem}
.fsm{display:grid;gap:24px;align-items:start;margin-top:20px}@media(min-width:900px){.fsm{grid-template-columns:1fr 1.2fr}}.fsm img{width:100%;border-radius:var(--r)}
.tph{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;display:block}
.aimg{margin:0 0 24px}.aimg img{width:100%;max-height:520px;object-fit:cover;border-radius:var(--r)}.aimg.wide img{max-height:460px}
.duo{display:grid;gap:16px;margin:10px auto 40px}@media(min-width:800px){.duo{grid-template-columns:1fr 1fr}}.duo img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r)}
.emblem{float:right;margin:0 0 16px 24px;width:120px;height:auto}
.logos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:26px 0}@media(min-width:800px){.logos{grid-template-columns:repeat(4,1fr)}}
.logos figure{margin:0;border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;place-items:center;gap:10px;background:#fff}.logos img{max-width:100%;max-height:90px;object-fit:contain}.logos figcaption{font-size:.78rem;color:#59625f}
.rbadge{display:flex;gap:20px;align-items:center;justify-content:center;padding-top:30px}.rbadge img{height:120px;width:auto;border-radius:10px}
.intro.hasimg{display:grid;gap:30px;align-items:center}@media(min-width:900px){.intro.hasimg{grid-template-columns:1fr 1.3fr}}.introimg{width:100%;border-radius:var(--r);aspect-ratio:1;object-fit:cover}.accol{height:90px;width:auto;margin-top:10px}
.revs{background:linear-gradient(rgba(246,242,236,.9),rgba(246,242,236,.9)),var(--bg,none) center/cover}
.owner-bg{background:linear-gradient(rgba(31,42,44,.72),rgba(31,42,44,.72)),var(--bg) center/cover;color:#fff;padding:20px 0}.owner-bg h2,.owner-bg p{color:#fff}.owner-bg .btn.ghost{color:#fff;border-color:#fff}
/* ---- checkout ---- */

.ckhead{padding-top:26px}.ckhead h1{font:600 2.4rem 'Cormorant Garamond',serif;margin:.2em 0}.back{text-decoration:none;font-size:.9rem}
.ckbanner{background:#fff3d6;border:1px dashed #d9a640;border-radius:10px;padding:12px 14px;font-size:.88rem}
.ckgrid{display:grid;gap:30px;padding:24px 20px 70px}@media(min-width:960px){.ckgrid{grid-template-columns:1.35fr 1fr;align-items:start}}
.ckform{display:grid;gap:18px}.ckstep{border:1px solid var(--line);border-radius:var(--r);padding:20px;background:#fff;display:grid;gap:12px}
.ckstep h2{display:flex;gap:10px;align-items:center;font-size:1.1rem;margin:0}.ckstep h2 span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;font-size:.85rem}
.ckstep label{display:grid;gap:6px;font-size:.85rem;font-weight:600}.ckstep input,.ckstep textarea{border:1px solid #cfcac2;border-radius:8px;padding:11px;font:400 1rem Montserrat}
.ckstep .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400}.ckstep .chk input{margin-top:3px;width:18px;height:18px}
.bad{border-color:#c0392b!important;outline:2px solid #f5c6c0}.ckstep .chk input.bad{outline:2px solid #c0392b}
.tripdl{display:grid;gap:10px;margin:0}.tripdl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:8px}.tripdl dt{color:#59625f}.tripdl dd{margin:0;font-weight:600;text-align:right}
.pol{background:var(--sand);border-radius:10px;padding:12px 16px;font-size:.9rem}.rules{margin:.4em 0;padding-left:18px}
.paybox{min-height:120px;border:1px dashed var(--line);border-radius:10px;padding:10px}
.ckerr{background:#fdecea;border:1px solid #f5c6c0;color:#8a1f12;border-radius:10px;padding:12px 14px}
.cform select{width:100%;min-width:0;background:#fff}.cform label:has(select){min-width:0}#gcform{grid-template-columns:minmax(0,1fr)}
.photos{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}@media(min-width:600px){.photos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cform .photo{border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:8px;min-width:0;align-content:start}.cform .photo label{min-width:0}.cform .photo input[type=file]{font:400 .9rem Montserrat;width:100%;min-width:0;box-sizing:border-box}
.pthumb{max-width:100%;width:120px;height:120px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
.btn.big{padding:17px;font-size:1.05rem}.fine2{font-size:.78rem;text-align:center}
.cksum{position:sticky;top:90px}.sumcard{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff}.sumph img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.sumb{padding:18px}.sumb h3{margin:0 0 4px}
.sumt{width:100%;border-collapse:collapse;font-size:.92rem}.sumt td{padding:6px 0;border-bottom:1px solid var(--line)}.sumt td:last-child{text-align:right}.sumt .tot td{font-weight:700;border-bottom:0;padding-top:10px}.small{font-size:.75rem}
@media(max-width:959px){.cksum{position:static;order:-1}}
.ckdone{padding:10px 20px 70px}.donecard{max-width:640px;margin:0 auto;text-align:center;border:1px solid var(--line);border-radius:var(--r);padding:34px;background:#fff}
.donecard .ico{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;font-size:1.6rem;color:#fff;background:#2e7d5b}.donecard.off .ico{background:#d9a640;font-style:italic;font-family:serif}
.donecard code{font-size:.8rem;background:var(--sand);padding:1px 5px;border-radius:4px}.err{color:#8a1f12}
.donet{max-width:340px;margin:14px auto;text-align:left}
.directbar{background:var(--brand);color:#fff;font-size:.8rem}.directbar .wrap{display:flex;gap:18px;align-items:center;justify-content:center;padding:8px 20px;white-space:nowrap;overflow-x:auto;scrollbar-width:none}
.directbar span:not(.tag)::before{content:"·";margin-right:18px;opacity:.6}.directbar .tag{font-size:.65rem}
.directbar+.rowsec{padding-top:34px}
@media(max-width:700px){.directbar .wrap{justify-content:flex-start}.directbar span{display:none}}
/* ---- welcome-offer pop-up ---- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
html.dpop-open{overflow:hidden}
.dpop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}
.dpop__bg{position:absolute;inset:0;background:rgba(20,28,30,.55);opacity:0;transition:opacity .25s}
.dpop__dlg{position:relative;width:min(520px,100%);background:#fff;border-radius:18px;padding:38px 34px 28px;box-shadow:0 30px 80px rgba(0,0,0,.3);transform:translateY(14px);opacity:0;transition:.28s ease;outline:none;border-top:6px solid var(--brand)}
.dpop.in .dpop__bg{opacity:1}.dpop.in .dpop__dlg{transform:none;opacity:1}
.dpop__x{position:absolute;top:10px;right:12px;width:40px;height:40px;border:0;background:none;font-size:1.8rem;line-height:1;color:#556;cursor:pointer;border-radius:50%}.dpop__x:hover,.dpop__x:focus-visible{background:var(--sand)}
.dpop__eye{font:700 .72rem Montserrat;letter-spacing:.18em;color:#a07a2c;margin:0 0 6px}
.dpop h2{font:600 2rem/1.1 'Cormorant Garamond',serif;margin:0 0 10px}.dpop p{margin:0 0 16px;color:#3a4447}
.dpop__row{display:flex;gap:8px}.dpop__row input{flex:1;min-width:0;border:1px solid #cfcac2;border-radius:10px;padding:13px;font:400 1rem Montserrat}
.dpop__row input[aria-invalid]{border-color:#c0392b}.dpop__row .btn{white-space:nowrap}
.dpop__hp{position:absolute;left:-9999px}.dpop__err{color:#8a1f12;font-size:.85rem;min-height:1.2em;margin:6px 0 4px!important}
.dpop__priv{font-size:.76rem;color:#59625f!important;margin:0!important}.dpop__ok{text-align:center;outline:none}
@media(max-width:699px){.dpop{place-items:end stretch;padding:0}.dpop__dlg{width:100%;border-radius:20px 20px 0 0;padding:30px 22px calc(22px + env(safe-area-inset-bottom));transform:translateY(100%)}
 .dpop__dlg::before{content:"";position:absolute;top:8px;left:50%;width:42px;height:4px;margin-left:-21px;border-radius:2px;background:#d6d1c8}
 .dpop h2{font-size:1.65rem}.dpop__row{flex-direction:column}.dpop__row .btn{padding:14px}}
@media(prefers-reduced-motion:reduce){.dpop__dlg,.dpop__bg{transition:none}}
/* ---- date picker (live-site style) ---- */
.cal.js-cal{position:fixed;inset:0;z-index:900;display:grid;place-items:center;padding:16px;border:0;margin:0;border-radius:0}.cal.js-cal[hidden]{display:none}
html.dp-open{overflow:hidden}
.dpbg{position:absolute;inset:0;background:rgba(20,28,30,.45)}
.dpdlg{position:relative;background:#fff;border-radius:14px;width:min(700px,100%);max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.dphd{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line)}.dphd h2{font:500 1.1rem Montserrat;margin:0}
.dpx{border:0;background:none;font-size:1.7rem;line-height:1;cursor:pointer;color:#59625f;width:36px;height:36px;border-radius:50%}.dpx:hover{background:var(--sand)}
.dpstep{margin:12px 22px 0;font-size:.82rem;color:#4e6265;font-weight:600}
.dpms{display:grid;gap:28px;padding:10px 22px 14px}@media(min-width:760px){.dpms{grid-template-columns:1fr 1fr}}
.dpmh{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;margin-bottom:8px}.dpmh h3{text-align:center;font:600 1.05rem Montserrat;margin:0}
.dpnav{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:1.2rem;cursor:pointer;line-height:1}.dpnav:hover{border-color:var(--brand)}
.dpw,.dpd{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dpw{border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:8px}.dpw span{text-align:center;font-size:.75rem;font-weight:600;color:#4e6265}
.dc{--g:#e1f1d9;--p:#f8d0d4;--x:#ececec;position:relative;aspect-ratio:1/.92;border:0;padding:0;font:600 .88rem Montserrat;color:#1f2a2c;background:var(--g);cursor:pointer;outline-offset:-2px}
.dc span{position:relative;z-index:1}
.dc.k-booked{background:var(--p);color:#b0263a}.dc.k-blocked,.dc.k-past{background:var(--x) linear-gradient(to top right,transparent calc(50% - .6px),#c9c9c9 50%,transparent calc(50% + .6px));color:#9aa0a2;font-weight:400}
.dc.k-co{background:linear-gradient(to bottom right,var(--p) 50%,var(--g) 50%);color:#b0263a}.dc.k-co.a-blocked{background:linear-gradient(to bottom right,var(--x) 50%,var(--g) 50%);color:#1f2a2c}
.dc.k-ci{background:linear-gradient(to bottom right,var(--g) 50%,var(--p) 50%)}.dc.k-ci.b-blocked{background:linear-gradient(to bottom right,var(--g) 50%,var(--x) 50%)}
.dc.no{cursor:default}.dc:not(.no):hover{box-shadow:inset 0 0 0 2px #4e6265}
.dc:focus-visible{outline:3px solid #1f2a2c;z-index:2}
.dc.s-mid{background:#9fc3a0;color:#fff}.dc.s-in,.dc.s-out{background:#2f5d3a;color:#fff}
.dc.s-in::after,.dc.s-out::after{content:"";position:absolute;left:0;right:0;bottom:3px;margin:auto;width:16px;height:2px;background:#fff}
.dpleg{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:.72rem;color:#4e6265;padding:0 22px 12px}.dpleg .lg{display:inline-block;width:16px;height:14px;margin-right:-6px;--g:#e1f1d9;--p:#f8d0d4;--x:#ececec}
.lg.k-avail{background:var(--g)}.lg.k-booked{background:var(--p)}.lg.k-co{background:linear-gradient(to bottom right,var(--p) 50%,var(--g) 50%)}.lg.k-ci{background:linear-gradient(to bottom right,var(--g) 50%,var(--p) 50%)}.lg.k-past{background:var(--x)}
.dpft{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;border-top:1px solid var(--line)}
.dpclr{border:0;background:none;font:500 .82rem Montserrat;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:10px 0}
.dpcls{border:1px solid var(--line);background:#fff;font:500 .82rem Montserrat;letter-spacing:.08em;text-transform:uppercase;padding:11px 26px;cursor:pointer}.dpcls:hover{border-color:var(--brand)}
@media(max-width:759px){.cal.js-cal{padding:0;place-items:end stretch}.dpdlg{border-radius:16px 16px 0 0;max-height:92vh}}
/* booking card: solid, layered; policies live in the main column */
.bcard{background:#fff;position:relative;z-index:6}
@media(min-width:1000px){.book{align-self:stretch}.book>.bcard{position:sticky;top:90px;max-height:calc(100vh - 110px);overflow:auto}}
.main .policies{margin:22px 0 8px;grid-template-columns:1fr;background:var(--sand,#f6f3ee)}
@media(min-width:700px){.main .policies{grid-template-columns:repeat(3,1fr)}}
.main .policies>div{min-width:0}.main .policies .tag{display:inline-block;white-space:normal;line-height:1.35}
/* shorter, Wander-style hero so the first listing row shows above the fold */
.hero{min-height:0;height:clamp(420px,55vh,600px)}
.hero .hin{padding-bottom:clamp(20px,4vh,44px)}.hero h1{font-size:clamp(2.1rem,4.2vw,3.4rem);margin:0 0 8px}.hero .sub{margin-bottom:16px}
.directbar+.rowsec{padding-top:22px}.directbar+.rowsec .rh{margin-bottom:10px}
@media(max-width:699px){.hero{height:auto;min-height:50vh}.hero .hin{padding:16px 20px 18px}.hero h1{font-size:1.85rem;max-width:16ch}.hero .sub{display:none}
 .hero .search{grid-template-columns:1fr 1fr;gap:6px;padding:8px}.hero .search label:nth-of-type(2),.hero .search label:nth-of-type(3){display:none}.hero .search label:first-child{grid-column:auto}.hero .search .btn{grid-column:1/-1;padding:11px}}
.directbar+.rowsec{padding-top:18px}.directbar+.rowsec h2{margin-top:0}.directbar+.rowsec .rh p{font-size:.9rem}
/* ---- tidy placeholders (site-wide): muted italic text with a small TBC mark, no loose pills ---- */
.tag{display:inline;background:none;border:0;padding:0;border-radius:0;font:italic 400 .85em/1.4 Montserrat,sans-serif;color:#8a7a5c;white-space:normal}
.tag::before{content:"TBC";font:700 .62rem/1 Montserrat,sans-serif;font-style:normal;letter-spacing:.08em;color:#8a6a1f;background:#f6eedb;border-radius:4px;padding:2px 5px;margin-right:6px;vertical-align:1px}
.directbar .tag{color:#e7dcc4}.directbar .tag::before{background:rgba(255,255,255,.18);color:#fff}
/* ---- Good to know ---- */
.gtk{margin:26px 0 8px;padding:24px;border:1px solid var(--line);border-radius:var(--r,16px);background:#fff}.gtk h2{margin:0 0 16px}
.gkgrid{display:grid;gap:18px 26px}@media(min-width:700px){.gkgrid{grid-template-columns:1fr 1fr}}
.gk{display:flex;gap:12px;align-items:flex-start}.gki{flex:none;width:40px;height:40px;border-radius:50%;background:var(--sand,#f6f3ee);display:grid;place-items:center;font-size:1.1rem}
.gk b{display:block;font-size:.95rem}.gkv{margin:3px 0 0;font-size:.9rem;color:#3a4447;line-height:1.45}.gkm{display:inline-block;margin-top:4px;font-size:.82rem;font-weight:600}
.gkfoot{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:.82rem;color:#4e6265}
.gkdlg{border:0;border-radius:16px;padding:0;width:min(640px,calc(100% - 24px));max-height:80vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.3)}.gkdlg::backdrop{background:rgba(20,28,30,.5)}
.gkdh{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff}.gkdh h3{margin:0;font:600 1.4rem 'Cormorant Garamond',serif}
.gkx{border:0;background:none;font-size:1.7rem;cursor:pointer;width:36px;height:36px;border-radius:50%}.gkx:hover{background:var(--sand)}
.gkdb{padding:14px 22px;font-size:.9rem;line-height:1.6}.gkdb p{margin:0 0 10px}.gksrc{margin:0;padding:12px 22px 18px;font-size:.78rem;color:#59625f}
.gkflag,.flagbox{font-size:.85rem;background:#fbf6ea;border-left:3px solid #d9a640;padding:10px 12px;border-radius:6px}.flagbox{margin:0 0 18px}
.srcnote{font-size:.8rem;color:#59625f;border-top:1px solid var(--line);padding-top:10px}
/* checkout rules summary */
.cksumrules{list-style:none;margin:0;padding:14px 16px;background:var(--sand,#f6f3ee);border-radius:10px;display:grid;gap:9px;font-size:.9rem}
.cksumrules li{display:flex;gap:10px;align-items:flex-start}.cksumrules li>span:first-child{width:22px;flex:none;text-align:center}
.gk-byb .gkv{color:#5a4a2a}ul.gkdb{margin:0;padding:14px 22px 20px 40px}
.amap{height:340px;border-radius:12px;overflow:hidden;border:1px solid var(--line,#ddd);z-index:0;position:relative}.mapnote{margin-top:8px}
.logos figure a{color:inherit;text-decoration:none;display:block}.logos figure a:hover figcaption{text-decoration:underline}
.directbar b a{color:inherit}

/* Primary buttons: solid brand, white bold text (white on #4e6265 = 6.5:1, AA). Only look disabled when disabled. */
.btn,a.btn,button.btn{background:#4e6265;color:#fff;font-weight:700;opacity:1;border:2px solid #4e6265;transition:background .15s,border-color .15s,box-shadow .15s}
.btn:hover,a.btn:hover,button.btn:hover{background:#3a4b4e;border-color:#3a4b4e;color:#fff}
.btn:active{background:#2f3d3f}
.btn:focus-visible{outline:3px solid #fdd79a;outline-offset:2px;box-shadow:0 0 0 5px rgba(31,42,44,.55)}
.btn.ghost{background:transparent;color:#4e6265;border-color:#4e6265}
.btn.ghost:hover{background:#4e6265;color:#fff}
.owner-bg .btn.ghost{background:transparent;color:#fff;border-color:#fff}.owner-bg .btn.ghost:hover{background:#fff;color:#1f2a2c}
.btn:disabled,.btn[aria-disabled="true"],.btn.is-off{background:#d5dada;border-color:#d5dada;color:#3d4849;font-weight:600;cursor:not-allowed;box-shadow:none}
.js-reserve.is-off{pointer-events:none}
/* ---------- blog */
.bgrid{display:grid;gap:26px;grid-template-columns:1fr;padding:40px 20px 70px}
@media(min-width:700px){.bgrid{grid-template-columns:1fr 1fr}}
@media(min-width:1050px){.bgrid{grid-template-columns:repeat(3,1fr)}}
.postcard{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:box-shadow .2s}
.postcard:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.postcard .ph{aspect-ratio:16/10;background:#ddd;overflow:hidden}.postcard .ph img{width:100%;height:100%;object-fit:cover}
.postcard .cb{padding:16px 18px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.postcard h3{font:600 1.45rem/1.15 'Cormorant Garamond',serif;margin:0}.postcard p{margin:0;line-height:1.55;font-size:.93rem}
.postcard .more{margin-top:auto;font-weight:600;font-size:.88rem;padding-top:8px}
.bpost{max-width:820px;padding:36px 20px 70px}
.bpost h1{font:600 clamp(2rem,4.5vw,3.1rem)/1.08 'Cormorant Garamond',serif;margin:.15em 0 .5em}
.bhero{margin:0 0 28px}.bhero img{width:100%;height:auto;border-radius:var(--r);max-height:520px;object-fit:cover}
.bbody{line-height:1.75;font-size:1.04rem}.bbody h2{margin-top:1.7em;font:600 1.9rem/1.15 'Cormorant Garamond',serif}.bbody h3{margin-top:1.4em}
.bbody img{max-width:100%;height:auto;border-radius:var(--r)}.bbody figure{margin:24px 0}.bbody figcaption{font-size:.85rem;color:#666;margin-top:6px}
.bbody blockquote{border-left:3px solid var(--line);margin:20px 0;padding:2px 18px;font-style:italic}
.bbody li{margin:.3em 0}.bbody table{border-collapse:collapse;width:100%}.bbody td,.bbody th{border:1px solid var(--line);padding:6px 8px}
.bcta{background:var(--sand);border-radius:var(--r);padding:26px 24px;margin:44px 0 28px}.bcta h2{margin:0 0 .3em;font:600 1.8rem 'Cormorant Garamond',serif}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pn a{border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;text-decoration:none;color:inherit}.pn small{display:block;color:#777}.pn .pn-o{text-align:right;grid-column:2}
/* ===== design review round 2 (Oct 2026) ===== */
:root{--muted:#59625f}
.muted,.meta,.card .meta,.postcard p,.ar{color:var(--muted)}
/* hero: sharp still + stronger gradient behind text */
.hero .heroimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}@media(max-width:700px){.hero .heroimg{object-position:62% 50%}}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}@media(max-width:700px){.hero video{object-position:62% 50%}}@media(prefers-reduced-motion:reduce){.hero video{display:none}}
.hero .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,28,30,.78) 0%,rgba(20,28,30,.55) 38%,rgba(20,28,30,.12) 70%,rgba(20,28,30,0) 100%),linear-gradient(0deg,rgba(20,28,30,.55) 0%,rgba(20,28,30,0) 45%)}
@media(max-width:700px){.hero .shade{background:linear-gradient(0deg,rgba(20,28,30,.85) 0%,rgba(20,28,30,.5) 55%,rgba(20,28,30,.25) 100%)}}
.hero .hin{position:relative;z-index:1}
/* unified buttons */
.btn,a.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#4e6265;color:#fff;border:2px solid #4e6265;border-radius:10px;padding:13px 22px;font:700 1rem/1.2 Montserrat,sans-serif;text-decoration:none;cursor:pointer}
.btn.sm,a.btn.sm,button.btn.sm{padding:8px 16px;font-size:.9rem}
.btn.full{width:100%}
.btn.ghost-dark,a.btn.ghost-dark{background:transparent;color:#4e6265;border-color:#4e6265}
.btn.ghost-dark:hover{background:#4e6265;color:#fff}
.btn.ghost,a.btn.ghost{background:transparent;color:#fff;border-color:#fff}
.btn.ghost:hover{background:#fff;color:#1f2a2c}
:where(.phero,.wrap,.guide,.cta2,.bcta,.prose,.cform,.gtk) .btn.ghost:not(.owner-bg *):not(.mhero *){color:#4e6265;border-color:#4e6265}
:where(.phero,.wrap,.guide,.cta2,.bcta,.prose,.cform,.gtk) .btn.ghost:not(.owner-bg *):not(.mhero *):hover{background:#4e6265;color:#fff}
/* owner header = dark photo hero */
.ohero{padding:12vh 0 9vh}.ohero h1{font:600 clamp(2.2rem,5vw,3.6rem)/1.05 'Cormorant Garamond',serif;margin:.1em 0 .3em;max-width:18ch}.ohero .kicker{color:#fdd79a}
/* rating summary, reviews, team strip */
.ratesum{font-size:1.05rem;margin:-4px 0 22px}.ratesum .stars{color:#e0a43a;letter-spacing:2px}
.clamp3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.rev figcaption b{font-weight:600}
.teamstrip{background:var(--sand);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0}
.tsin{display:flex;align-items:center;gap:22px;padding:22px 20px;flex-wrap:wrap}.tsin p{margin:.2em 0 0;max-width:60ch;color:var(--muted)}
.tsph{display:flex}.tsph img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid #fff;margin-left:-12px}.tsph img:first-child{margin-left:0}
.tsin .btn{margin-left:auto}
/* property: shorter gallery, sticky price bar, book direct */
@media(min-width:800px){.gallery{height:440px!important;max-height:440px}.gallery .g img{height:100%;object-fit:cover}}
.bp .js-from,.js-mfrom,.js-pfrom{font-size:.9rem;color:var(--muted)}
.bp b.js-price{font-size:1.6rem}.bp .tsub{display:block;font-size:.9rem;color:var(--muted);margin-top:2px}
.bdirect{margin:12px 0 0;font-size:.88rem;text-align:center}.bdirect a{color:#2f6b45;font-weight:600}
.pbar{position:fixed;top:0;left:0;right:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 14px rgba(0,0,0,.06)}
.pbin{display:flex;align-items:center;gap:18px;padding:10px 20px}.pbt{font:600 1.25rem 'Cormorant Garamond',serif;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pbp b{font-size:1.15rem}
@media(max-width:999px){.pbar{display:none!important}}
/* homes: dates bar, filter sheet */
.datesbar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin:6px 0 12px}.datesbar label{display:flex;flex-direction:column;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;gap:4px}
.datesbar input{font:inherit;font-size:.95rem;text-transform:none;padding:9px 10px;border:1px solid var(--line);border-radius:10px}
.chips button small{color:var(--muted);font-weight:500}
.card.unavail{opacity:.42;filter:grayscale(.7)}.card.unavail .pr::after{content:" · Not available for your dates";color:#9a3b2b;font-weight:600;font-size:.8rem}
.fbtn,.fsh,.fdone{display:none}
@media(max-width:700px){.fbtn{display:inline-flex}.chips{display:none}
 .chips.open{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;flex-direction:column;align-items:stretch;gap:10px;background:#fff;padding:18px 18px 24px;border-radius:18px 18px 0 0;box-shadow:0 -10px 40px rgba(0,0,0,.25);max-height:80vh;overflow:auto}
 .chips.open .fsh{display:block;font-weight:700;margin:0 0 4px}.chips.open .fdone{display:flex}
 html.fs-open::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:55}}
/* popup mobile bar */
.popbar{position:fixed;left:10px;right:10px;bottom:10px;z-index:45;background:#1f2a2c;color:#fff;border-radius:12px;display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.popbar button{font:inherit;cursor:pointer}.popbar .pbgo{background:#fdd79a;color:#1f2a2c;border:0;border-radius:8px;padding:7px 12px;font-weight:700;margin-left:auto;white-space:nowrap}.popbar .pbx{background:none;border:0;color:#fff;font-size:1.3rem;padding:0 4px}
/* footer */
.social{display:flex;gap:12px;margin:10px 0}.social a{display:inline-flex;width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center;background:rgba(255,255,255,.12);color:#fff}.social a:hover{background:rgba(255,255,255,.25)}
.fnews{margin-top:14px;max-width:360px}.fnr{display:flex;gap:8px;margin-top:6px}.fnr input{flex:1;min-width:0;padding:9px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;font:inherit}
.fnews .btn{background:#fdd79a;border-color:#fdd79a;color:#1f2a2c}.fnmsg{font-size:.85rem;margin:6px 0 0}
/* blog filters + load more */
.bfil{display:flex;flex-wrap:wrap;gap:8px;padding:26px 20px 0}.bfil button{font:600 .85rem Montserrat,sans-serif;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;cursor:pointer;color:#1f2a2c}.bfil button.on{background:#4e6265;color:#fff;border-color:#4e6265}.bfil .sep{width:100%;height:0}
.postcard p.ex{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.bmore{text-align:center;padding:0 20px 60px}
.pagehead button.btn.fbtn,.chips button.btn.fdone{display:none}
@media(min-width:701px){.pagehead .chips{flex-wrap:wrap;overflow:visible}}
@media(max-width:700px){.pagehead button.btn.fbtn{display:inline-flex}.chips.open button.btn.fdone{display:flex}}
/* Good to know: collapsible <details>, collapsed by default */
.gtk{padding:0}.gtk>.gtks{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 24px;cursor:pointer;border-radius:var(--r,16px)}
.gtk>.gtks::-webkit-details-marker{display:none}.gtk>.gtks:hover{background:#faf8f5}.gtk>.gtks:focus-visible{outline:2px solid var(--brand,#4e6265);outline-offset:2px}
.gtkhd{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;min-width:0}.gtk .gtks h2{margin:0}.gtkteaser{font-size:.85rem;color:#59625f}
.gtkchev{flex:none;width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s ease;color:#4e6265}
.gtk[open] .gtkchev{transform:rotate(-135deg) translate(-3px,-3px)}
.gtk[open]>.gtks{border-radius:var(--r,16px) var(--r,16px) 0 0}.gtkb{padding:4px 24px 24px}
.gtk[open] .gtkb{animation:gtkin .22s ease-out}
@keyframes gtkin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(max-width:600px){.gtk>.gtks{padding:16px 18px}.gtkb{padding:2px 18px 18px}.gtkhd{flex-direction:column;gap:2px}}
@media(prefers-reduced-motion:reduce){.gtk[open] .gtkb{animation:none}.gtkchev{transition:none}}
.gtk>.gtks::after{content:none}
/* Amenities: highlights + grouped dialog */
.amh{list-style:none;padding:0;margin:0 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.amh li,.amg li{display:flex;align-items:flex-start;gap:10px;line-height:1.35}
.amck{flex:none;margin-top:2px;color:var(--brand,#4e6265)}
.amall{margin-top:4px}
.amdlg{width:min(720px,calc(100% - 24px))}
.amdb{padding:6px 22px 22px}.amg{padding:14px 0;border-bottom:1px solid var(--line)}.amg:last-child{border-bottom:0}
.amg h4{margin:0 0 10px;font-size:.95rem}.amg ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;font-size:.9rem}
@media(max-width:600px){.amh{gap:10px 14px;font-size:.92rem}.amg ul{grid-template-columns:1fr}}
/* Where you'll sleep: matching cards, two per row on phones */
.room b{margin-top:6px}.room small{color:#59625f;margin-top:2px}
@media(max-width:600px){.rooms{grid-template-columns:1fr 1fr;gap:10px}.room{padding:12px}}

.gcard.ghl{outline:3px solid var(--brand);outline-offset:3px}
