/* Casa Amoroso level-up (tightening pass) 11/4. Loaded after the page's own <style>. */
:root{
  --clay:#9C4F2C; --clay-dark:#823F22; --stone:#6E675C; --sage:#5E6553;
  --sans:'Commissioner',system-ui,-apple-system,'Segoe UI',sans-serif;
}
body{font-weight:400;font-size:16.5px;line-height:1.74}
p{color:var(--ink-soft)}
h1,h2{font-weight:300}
h2{letter-spacing:.005em}
h3{font-weight:400}
.eyebrow{font-size:.7rem;letter-spacing:.28em;font-weight:500}
.lead{font-size:1.12rem;line-height:1.75}
.rule{width:64px;opacity:.9}

/* numerals: Cormorant defaults to old-style figures */
.fact b,.dist b,.tier b,.ratetable,.est-total i,.est-line,.day,.month h5,.tour-len,.host-card b{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}

/* buttons: squared, wider tracking */
.btn{padding:15px 32px;font-size:.73rem;letter-spacing:.2em;font-weight:500}
.btn:hover{background:var(--clay-dark);border-color:var(--clay-dark)}
.avail-btn,.gal-more{letter-spacing:.2em}
.join-row button{letter-spacing:.18em}
.join-row button:hover{background:var(--clay-dark)}

/* nav + logo lockup */
.nav-links{gap:28px}
.nav-links a{font-size:.74rem;letter-spacing:.17em;font-weight:500}
.nav-links a.btn{padding:12px 22px;opacity:1}
.nav-links a.btn:hover{color:var(--white)}
header.solid .nav-links a.btn{color:var(--white)}
.brand.lockup{display:flex;flex-direction:column;align-items:flex-start;gap:6px;line-height:1}
.brand.lockup .lk-name{font-family:var(--serif);font-weight:500;font-size:1.18rem;letter-spacing:.24em;text-transform:uppercase;white-space:nowrap}
.brand.lockup .lk-rule{display:block;width:100%;max-width:150px;height:1px;background:var(--brass);opacity:.85}
.brand.lockup .lk-sub{display:block;font-family:var(--sans);font-size:.55rem;font-weight:500;letter-spacing:.46em;text-transform:uppercase;opacity:.82;margin:0;white-space:nowrap}
header .brand.lockup{text-shadow:0 1px 12px rgba(16,13,10,.35)}
header.solid .brand.lockup{text-shadow:none}
header.solid .brand.lockup .lk-sub{color:var(--clay);opacity:1}
.f-brand.lockup{display:inline-flex;flex-direction:column;gap:8px;line-height:1}
.f-brand.lockup .lk-name{font-family:var(--serif);font-weight:500;font-size:1.45rem;letter-spacing:.24em;text-transform:uppercase;color:var(--sand)}
.f-brand.lockup .lk-rule{display:block;width:100%;height:1px;background:var(--brass);opacity:.7}
.f-brand.lockup .lk-sub{display:block;font-family:var(--sans);font-size:.58rem;letter-spacing:.42em;text-transform:uppercase;opacity:.62}
@media(max-width:1180px){.nav-links{gap:20px}.nav-links a{letter-spacing:.13em}}
@media(max-width:960px){
  .nav-links a{font-size:.86rem}
  /* backdrop-filter makes the header the containing block for the fixed phone menu, which then shows
     as a 70px strip once the page is scrolled; a solid header instead keeps the full-height menu */
  header.solid{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(247,241,231,.99)}
  .nav-links{background:var(--sand)}
  .nav-links a.btn{color:var(--white)!important}
}
@media(max-width:400px){.brand.lockup .lk-name{font-size:1.02rem;letter-spacing:.2em}.brand.lockup .lk-sub{letter-spacing:.38em}}

/* hero: the name, one line, the steady loop */
.hero-bg{background-image:url('images/casa-hero-v2-poster.jpg')}
.hero-bg::after{background:linear-gradient(180deg,rgba(20,17,14,.52) 0%,rgba(20,17,14,.14) 38%,rgba(20,17,14,.22) 62%,rgba(20,17,14,.72) 100%)}
.hero{align-items:flex-end}
.hero-inner{padding:140px 28px clamp(110px,16vh,170px)}
.hero h1{font-size:clamp(3.2rem,9vw,7.2rem);font-weight:300;letter-spacing:.015em;margin:0 0 .5rem;line-height:1}
.hero .sub{font-size:clamp(1.25rem,2.6vw,1.9rem);margin:0;color:rgba(255,253,250,.92)}
.hero .sub::before{content:'';display:block;width:64px;height:1px;background:#E4B478;margin:0 0 1.1rem}
.scroll-hint{color:rgba(255,253,250,.78)}
@media(max-width:700px){.hero-bg{background-position:center}.hero-inner{padding-bottom:120px}}

/* stats band */
.facts{border-top:1px solid rgba(184,135,70,.35)}
.fact{padding:34px 18px}
.fact b{font-size:2.2rem;font-weight:300}
.fact span{letter-spacing:.22em}

/* features */
.feat{padding:42px 32px}
.feat h3{font-size:1.32rem}
.feat p{font-size:.94rem}

/* split bands: a little taller, quieter type */
.band{min-height:580px}
.band-txt h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
.band-list li{font-size:.96rem}

/* gallery: fewer, larger, uniform */
.gal-grid{grid-template-columns:repeat(3,1fr);gap:6px}
.gal-grid figure{aspect-ratio:3/2}
.gal-grid figure:hover img{transform:scale(1.03)}
.gal-filter{gap:6px}
.gal-filter button{letter-spacing:.13em;font-size:.66rem;padding:10px 14px}
.gal-more-row{text-align:center;margin-top:30px}
.gal-more{background:transparent;border:1px solid var(--ink);color:var(--ink);font-family:var(--sans);font-size:.72rem;text-transform:uppercase;font-weight:500;padding:14px 30px;cursor:pointer;transition:.25s}
.gal-more:hover{background:var(--ink);color:var(--sand)}
@media(max-width:960px){.gal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.gal-grid{grid-template-columns:1fr 1fr;gap:4px}}

/* small controls squared to match */
.song-btn{border-radius:0;letter-spacing:.16em}
.aud{border-left-width:1px}
.know h3{font-family:var(--serif);font-size:1.4rem;font-weight:400;letter-spacing:.01em}
.f-note,.est-note,.rt-foot,.loc-note{color:var(--stone)}
.loc-note{color:rgba(247,241,231,.66)}

/* 11/5 phones: tall cut framed on the two palms, the BBQ gazebo and the pool (Kimberly) */
@media(max-width:760px){
  .hero{min-height:min(100svh,169vw)}
  .hero-bg{background-image:url('images/casa-hero-v2-poster-phone.jpg');background-position:center}
  .hero-video{object-position:center}
}
