/* Medina Stays level-up (10/27). Scoped to body.lv: guidebooks, blog, owner, agreement keep style.css only.
   Brand stays Danny & Marsha's: navy + gold, roofline logo. Type: Instrument Serif + Hanken Grotesk. */
body.lv{--ivory:#f8f5ee;--ink2:#1c2130;--night:#0f1828;--gold-ink:#76600f;--hair:rgba(201,162,39,.45);--soft:#4e5566;
  font-family:'Hanken Grotesk',system-ui,sans-serif;background:var(--ivory);color:var(--ink2);font-size:17px;line-height:1.75}
body.lv h1,body.lv h2,body.lv h3,body.lv .serif{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:.005em;font-variant-numeric:lining-nums;color:var(--navy)}
body.lv section{padding:110px 0}

/* nav: transparent over the hero, solid after scrolling */
body.lv header{position:fixed;left:0;right:0;top:0;background:transparent;backdrop-filter:none;transition:background .35s,box-shadow .35s}
body.lv header.is-solid{background:rgba(15,24,40,.97);box-shadow:0 1px 0 var(--hair)}
body.lv .nav{height:76px}
body.lv .nav a{font-size:.74rem;letter-spacing:.2em;color:#f1ede3}
body.lv .nav a.btn{padding:10px 18px}

/* buttons: squared, uppercase, wide-tracked */
body.lv .btn{border-radius:0;padding:15px 30px;font-size:.76rem;letter-spacing:.22em;font-weight:600}
body.lv .btn.ghost{border:1px solid rgba(255,255,255,.85)}
body.lv .btn.line{background:transparent;color:var(--navy);border:1px solid var(--navy)}
body.lv .btn.line:hover{background:var(--navy);color:#fff}

/* hero: full viewport, video loop, name + one line */
body.lv .hero{min-height:100vh;min-height:100svh;align-items:flex-end;background:var(--night)}
body.lv .hero video.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body.lv .hero::after{background:linear-gradient(180deg,rgba(15,24,40,.55) 0%,rgba(15,24,40,.12) 30%,rgba(15,24,40,.2) 55%,rgba(15,24,40,.82) 100%)}
body.lv .hero .wrap{padding-top:120px;padding-bottom:13vh;width:100%}
body.lv .hero .kicker{letter-spacing:.3em;font-size:.72rem;margin-bottom:18px}
body.lv .hero h1{font-size:clamp(3.2rem,9vw,6.6rem);line-height:.98;max-width:none;margin-bottom:18px;color:#fff}
body.lv .hero.home h1{font-size:clamp(2.7rem,6.4vw,5rem);max-width:17ch;line-height:1.02}
body.lv .hero p{font-size:1.12rem;max-width:46ch;margin-bottom:34px;color:#ece7dc}
@media (prefers-reduced-motion:reduce){body.lv .hero video.bg{display:none}}

/* intro (home) */
body.lv .lv-intro{padding:104px 0 96px;text-align:center}
body.lv .lv-intro .kicker{color:var(--gold-ink)}
body.lv .lv-intro p{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.5;max-width:40ch;margin:0 auto;color:var(--ink2)}

/* stats band */
body.lv .stats,body.lv .lv-stats{background:var(--night);color:#e9e5db;padding:38px 0}
body.lv .stats .wrap,body.lv .lv-stats .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:22px 0;text-align:center}
body.lv .stats .wrap>div,body.lv .lv-stats .wrap>div{padding:4px 14px;border-left:1px solid var(--hair)}
body.lv .stats .wrap>div:first-child,body.lv .lv-stats .wrap>div:first-child{border-left:0}
body.lv .stats b,body.lv .lv-stats b{display:block;font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:2.3rem;line-height:1.1;color:var(--gold);font-variant-numeric:lining-nums}
body.lv .stats span,body.lv .lv-stats span{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:#bdb6a6}

/* headings + hairline */
body.lv .kicker{letter-spacing:.28em;font-size:.72rem;font-weight:600}
body.lv section:not(.reviews):not(.direct):not(.vtour) .kicker{color:var(--gold-ink)}
body.lv .sec-head{margin-bottom:52px}
body.lv .sec-head h2,body.lv .lv-split h2{font-size:clamp(2.2rem,4.6vw,3.4rem);line-height:1.06;margin:6px 0 18px}
body.lv .sec-head h2::after,body.lv .lv-split h2::after{content:"";display:block;width:56px;height:1px;background:var(--gold);margin-top:22px}
body.lv .sec-head p{color:var(--soft)}

/* full-bleed split panels */
body.lv .lv-split{display:grid;grid-template-columns:1fr 1fr;padding:0;min-height:76vh}
body.lv .lv-split-img{position:relative;min-height:440px;overflow:hidden}
body.lv .lv-split-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body.lv .lv-split-txt{align-self:center;padding:clamp(56px,7vw,110px) clamp(24px,6vw,96px);max-width:660px}
body.lv .lv-split.flip .lv-split-img{order:2}
body.lv .lv-split.tint{background:#f1ece1}
body.lv .lv-split-txt p{margin-bottom:18px}
body.lv .lv-split-txt .loc{color:var(--gold-ink);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600}
body.lv .lv-split-txt .lv-meta{color:var(--soft);font-size:.86rem;letter-spacing:.14em;text-transform:uppercase;margin:-4px 0 20px}
body.lv .lv-split-txt .lv-badge{display:block;color:var(--soft);font-size:.82rem;margin:0 0 22px;padding-left:14px;border-left:1px solid var(--gold)}
body.lv .lv-split-txt .btn{margin-top:10px}

/* en-dash lists */
body.lv .checks{max-width:900px;gap:56px}
body.lv .checks li{padding:11px 0 11px 24px;border-bottom:1px solid rgba(28,33,48,.1);font-size:.97rem}
body.lv .checks li::before{content:"\2013";border:0;transform:none;width:auto;height:auto;top:10px;left:0;color:var(--gold-ink)}
body.lv .lv-beds{list-style:none;margin:6px 0 20px}
body.lv .lv-beds li{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid rgba(28,33,48,.1)}
body.lv .lv-beds li b{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:1.25rem;color:var(--navy)}
body.lv .lv-beds li span{color:var(--soft)}
body.lv .note{font-size:.88rem;color:var(--soft)}

/* video tour = dark cinematic band */
body.lv .vtour{background:var(--night);padding:110px 0;scroll-margin-top:60px}
body.lv .vtour .sec-head{margin-left:auto;margin-right:auto;text-align:center}
body.lv .vtour .sec-head h2{color:#fff}
body.lv .vtour .sec-head h2::after{margin-left:auto;margin-right:auto}
body.lv .vtour-frame,body.lv .vtour-video{border-radius:0;max-width:1120px}
body.lv .vtour-play{border-radius:0;width:84px;height:84px;margin:-42px 0 0 -42px}
body.lv .vtour-len{border-radius:0;letter-spacing:.2em;font-size:.7rem}
body.lv .vtour-note{color:#a9a395}

/* gallery: uniform grid, thin gaps, fewer + larger until "show all" */
body.lv .gallery{grid-template-columns:repeat(3,1fr);grid-auto-rows:auto;gap:4px}
body.lv .gallery a{display:block;aspect-ratio:4/3;overflow:hidden}
body.lv .gallery a:first-child{grid-column:auto;grid-row:auto}
body.lv .gallery img{border-radius:0;transition:transform .6s}
body.lv .gallery a:hover img{transform:scale(1.03)}
body.lv .gallery.is-collapsed a:nth-child(n+10){display:none}
body.lv .lv-more{display:block;margin:34px auto 0}

/* reviews + why-direct = dark bands */
body.lv .reviews,body.lv .direct{background:var(--night)}
body.lv .reviews h2,body.lv .direct h2{color:#fff}
body.lv .rev-grid{gap:44px}
body.lv .rev{background:transparent;border-radius:0;padding:28px 0 0;border-top:1px solid var(--hair);font-family:'Instrument Serif',Georgia,serif;font-size:1.32rem;line-height:1.45;color:#f1ece0}
body.lv .rev .starline{font-family:'Hanken Grotesk',sans-serif;font-size:.7rem}
body.lv .rev footer{font-family:'Hanken Grotesk',sans-serif;font-size:.7rem;letter-spacing:.22em}
body.lv .feat div{background:transparent;border:0;border-top:1px solid var(--hair);border-radius:0;padding:24px 0 0}
body.lv .feat h3{font-size:1.5rem;color:#fff;border:0;padding:0;display:block;margin-bottom:10px;line-height:1.2}
body.lv .feat p{color:#b9b3a6}

/* booking + forms */
body.lv .book{background:#fff}
body.lv form input,body.lv form select,body.lv form textarea{border-radius:0;background:var(--ivory)}
body.lv .est-cal,body.lv .est-side{border-radius:2px}
body.lv .cal-nav button{border-radius:0}

/* footer + honest preview chip */
body.lv footer.site{background:#0b1220}
.lv-preview{position:fixed;right:14px;bottom:14px;z-index:60;background:rgba(15,24,40,.9);color:#e9e5db;font:600 .64rem/1 'Hanken Grotesk',sans-serif;letter-spacing:.22em;text-transform:uppercase;padding:9px 12px;border:1px solid rgba(201,162,39,.55);cursor:default}

@media (max-width:860px){
  body.lv .lv-split{grid-template-columns:1fr;min-height:0}
  body.lv .lv-split-img{min-height:64vw}
  body.lv .lv-split.flip .lv-split-img{order:0}
  body.lv .gallery{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  body.lv section{padding:72px 0}
  body.lv .vtour{padding:72px 0}
  body.lv .lv-intro{padding:72px 0 64px}
  body.lv .nav{height:64px}
  body.lv .hero .wrap{padding-bottom:9vh}
  body.lv .hero .btn{display:block;text-align:center;margin-right:0}
  body.lv .stats .wrap,body.lv .lv-stats .wrap{grid-template-columns:repeat(3,1fr)}
  body.lv .stats .wrap>div:nth-child(4),body.lv .lv-stats .wrap>div:nth-child(4){border-left:0}
  body.lv .stats b,body.lv .lv-stats b{font-size:1.8rem}
  body.lv .checks{columns:1}
}
