/* Casa Viva Bogotá — v0.7
   Desktop preserved; mobile is a separate composition. */
:root{--cv-ink:#183d32;--cv-cream:#fbf8f1;--cv-gold:#c5a24a;--cv-max:1500px}

/* HEADER */
#gh-head{position:sticky!important;top:0;z-index:1000;width:100%;height:auto!important;background:rgba(251,248,241,.98)!important;border-bottom:1px solid rgba(24,61,50,.10);color:var(--cv-ink)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#gh-head .gh-head-inner{display:grid!important;grid-template-columns:minmax(260px,1fr) auto minmax(40px,1fr)!important;grid-template-rows:78px!important;grid-template-areas:"brand menu actions"!important;align-items:center!important;gap:28px!important;width:min(calc(100% - 64px),var(--cv-max))!important;max-width:var(--cv-max)!important;min-height:78px!important;margin:0 auto!important;padding:0!important}
#gh-head .gh-head-brand{grid-area:brand!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;width:auto!important;height:auto!important}
#gh-head .gh-head-logo{display:inline-flex!important;align-items:center!important;margin:0!important;color:var(--cv-ink)!important;font-family:var(--font-serif)!important;font-size:clamp(2.5rem,2vw,3.2rem)!important;font-weight:600!important;line-height:1!important;letter-spacing:-.025em!important;white-space:nowrap}
#gh-head .gh-head-logo img{width:auto!important;max-width:260px!important;max-height:52px!important;object-fit:contain}
#gh-head .gh-head-menu{grid-area:menu!important;display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;margin:0!important;padding:0!important;font-size:1.5rem!important;font-weight:600!important}
#gh-head .gh-head-menu .nav{display:flex!important;align-items:center;justify-content:center;gap:28px!important;margin:0!important;padding:0!important}
#gh-head .gh-head-menu a{position:relative;color:var(--cv-ink)!important;white-space:nowrap}
#gh-head .gh-head-menu a::after{position:absolute;right:0;bottom:-9px;left:0;height:2px;content:"";background:var(--cv-gold);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
#gh-head .gh-head-menu a:hover::after,#gh-head .gh-head-menu .nav-current a::after{transform:scaleX(1)}
#gh-head .gh-head-actions{grid-area:actions!important;display:block!important;width:auto!important}
#gh-head .gh-search{display:none!important}
#gh-head .gh-burger{display:none!important}
.gh-head-members{display:none!important}

/* HERO */
.cv-hero{position:relative;display:block!important;min-height:66vh;min-height:66svh;overflow:hidden;background:#2e3a31;color:#fff}
.cv-hero-media,.cv-hero-media img,.cv-hero-shade{position:absolute;inset:0;width:100%;height:100%}
.cv-hero-media img{display:block;object-fit:cover;object-position:center center}
.cv-hero-shade{background:linear-gradient(90deg,rgba(9,14,11,.56) 0%,rgba(9,14,11,.39) 27%,rgba(9,14,11,.10) 50%,rgba(9,14,11,0) 67%)}
.cv-hero-inner{position:relative!important;z-index:2;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;width:min(calc(100% - 96px),var(--cv-max))!important;max-width:var(--cv-max)!important;min-height:66vh;min-height:66svh;margin:0 auto!important;padding:46px 0 50px!important;text-align:left!important;transform:none!important}
.cv-hero-title{width:min(100%,680px);max-width:680px;margin:0!important;font-family:var(--font-serif);font-size:clamp(5.8rem,5.4vw,8.4rem);font-weight:500;line-height:.98;letter-spacing:-.038em;text-align:left!important;text-wrap:balance}
.cv-hero-description{width:min(100%,610px);max-width:610px;margin:20px 0 0!important;font-family:var(--font-sans-serif);font-size:clamp(1.8rem,1.35vw,2.15rem);line-height:1.48;color:rgba(255,255,255,.94);text-align:left!important}
.cv-hero-actions{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:center!important;gap:12px;width:min(100%,610px);margin:28px 0 0!important;padding:0!important}
.cv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border:1px solid rgba(255,255,255,.78);border-radius:7px;font-family:var(--font-sans-serif);font-size:1.5rem;font-weight:700;line-height:1;text-decoration:none;white-space:nowrap;transition:transform .2s ease,background-color .2s ease,color .2s ease}
.cv-btn:hover{transform:translateY(-2px)}.cv-btn-primary{background:#fff;border-color:#fff;color:var(--cv-ink)}.cv-btn-primary:hover{background:var(--cv-cream)}.cv-btn-secondary{color:#fff;background:rgba(10,16,12,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.cv-btn-secondary:hover{background:rgba(255,255,255,.14)}
.casaviva-home-content{padding-top:clamp(5rem,7vw,9rem);padding-bottom:9rem}.casaviva-home-content .gh-content>h2:first-child,.casaviva-home-content .gh-content>h2:first-child+p{display:none}

@media(max-width:1000px) and (min-width:768px){#gh-head .gh-head-inner{grid-template-columns:minmax(210px,1fr) auto 20px!important;gap:16px!important;width:min(calc(100% - 40px),var(--cv-max))!important}#gh-head .gh-head-menu .nav{gap:18px!important}#gh-head .gh-head-menu{font-size:1.4rem!important}#gh-head .gh-head-logo{font-size:2.25rem!important}}

/* MOBILE — intentionally independent from desktop. */
@media(max-width:767px){
  #gh-head{background:var(--cv-cream)!important;backdrop-filter:none;-webkit-backdrop-filter:none}
  #gh-head .gh-head-inner{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;grid-template-rows:64px!important;grid-template-areas:"brand burger"!important;width:100%!important;min-height:64px!important;margin:0!important;padding:0 18px!important;gap:10px!important}
  #gh-head .gh-head-brand{grid-area:brand!important;display:flex!important;min-width:0!important;justify-content:flex-start!important}
  #gh-head .gh-head-logo{font-size:2.25rem!important;max-width:calc(100vw - 86px)!important;overflow:hidden;text-overflow:ellipsis}
  #gh-head .gh-head-logo img{max-width:210px!important;max-height:40px!important}
  #gh-head .gh-head-brand .gh-burger{display:block!important;position:absolute!important;right:17px!important;top:11px!important;width:42px!important;height:42px!important;color:var(--cv-ink)!important;z-index:3!important}
  #gh-head .gh-head-brand .gh-burger::before,#gh-head .gh-head-brand .gh-burger::after{background-color:var(--cv-ink)!important}
  #gh-head .gh-head-actions{display:none!important}
  #gh-head .gh-head-menu{display:none!important;position:fixed!important;top:64px!important;left:0!important;right:0!important;bottom:auto!important;width:100%!important;max-height:calc(100dvh - 64px)!important;overflow:auto!important;margin:0!important;padding:18px 22px 26px!important;background:var(--cv-cream)!important;border-top:1px solid rgba(24,61,50,.08);box-shadow:0 16px 28px rgba(20,35,29,.08);font-size:1.8rem!important}
  #gh-head.is-head-open .gh-head-menu{display:block!important}
  #gh-head .gh-head-menu .nav{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;width:100%!important}
  #gh-head .gh-head-menu .nav li{width:100%!important;border-bottom:1px solid rgba(24,61,50,.09)}
  #gh-head .gh-head-menu .nav a{display:block!important;width:100%!important;padding:15px 2px!important;font-size:1.8rem!important;color:var(--cv-ink)!important}
  #gh-head .gh-head-menu a::after{display:none!important}

  .cv-hero{min-height:calc(100svh - 64px);max-height:760px}
  .cv-hero-media img{object-position:68% center}
  .cv-hero-shade{background:linear-gradient(180deg,rgba(10,15,12,.04) 0%,rgba(10,15,12,.06) 35%,rgba(10,15,12,.58) 68%,rgba(10,15,12,.80) 100%)}
  .cv-hero-inner{justify-content:flex-end!important;align-items:flex-start!important;width:100%!important;min-height:calc(100svh - 64px)!important;max-width:none!important;margin:0!important;padding:0 22px max(28px,env(safe-area-inset-bottom))!important;text-align:left!important}
  .cv-hero-title{width:100%;max-width:430px;margin:0!important;font-size:clamp(3.9rem,11vw,4.8rem);line-height:.98;letter-spacing:-.035em;text-align:left!important;text-wrap:balance}
  .cv-hero-description{display:block;width:100%;max-width:430px;margin:14px 0 0!important;font-size:1.6rem;line-height:1.4;text-align:left!important}
  .cv-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;width:100%;max-width:430px;margin:20px 0 0!important}
  .cv-btn{width:100%;min-height:46px;padding:0 12px;font-size:1.32rem;border-radius:6px;white-space:normal;text-align:center;line-height:1.15}
  .casaviva-home-content{padding-top:4rem;padding-bottom:6rem}
}
@media(max-width:420px){.cv-hero-title{font-size:3.8rem}.cv-hero-actions{grid-template-columns:1fr!important}.cv-btn{min-height:44px}.cv-hero-description{font-size:1.52rem}}
