#origen.origin-hero{
  position: relative;
  overflow: hidden;
  background: none !important;
  min-height: 96vh;
  isolation: isolate;
}
#origen.origin-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url('../images/hero-banner-20261003-opt.webp') center center / cover no-repeat;
  transform-origin: center center;
  animation: heroSlowZoom 16s ease-in-out infinite alternate;
  will-change: transform;
}
#origen.origin-hero::after{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(16,10,7,.82) 0%, rgba(16,10,7,.62) 22%, rgba(16,10,7,.28) 46%, rgba(16,10,7,.12) 67%, rgba(16,10,7,.08) 100%),
    linear-gradient(180deg, rgba(14,10,8,.28) 0%, rgba(14,10,8,.08) 34%, rgba(14,10,8,.10) 72%, rgba(14,10,8,.24) 100%);
}
@keyframes heroSlowZoom{
  0%{transform: scale(1.03) translate3d(0,0,0)}
  100%{transform: scale(1.10) translate3d(1.1%, -0.8%, 0)}
}
#origen .origin-grid{
  position: relative;
  z-index: 2;
  grid-template-columns: 1fr !important;
  justify-items: start !important;
  align-items: center;
  min-height: 96vh;
  padding: 11vh 0 9vh !important;
}
#origen .origin-copy{
  max-width: min(740px, 100%) !important;
  margin-left: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
#origen .hero-kicker{
  display: inline-block;
  margin-bottom: 18px;
  color: rgba(247,232,214,.92);
  font-size: .78rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  font-weight: 600;
  border-bottom: 1px solid rgba(214,177,125,.42);
  padding-bottom: 8px;
}
#origen .origin-copy h1{
  margin: 0;
  font-size: clamp(4.9rem, 10vw, 9rem);
  line-height: .92;
  letter-spacing: .02em;
  color: #fffdf9 !important;
  text-shadow: 0 6px 24px rgba(0,0,0,.22);
}
#origen .hero-subtitle{
  margin-top: 16px;
  color: #e8d6c0;
  font-size: .98rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 500;
}
#origen .hero-lines{
  margin-top: 28px !important;
  max-width: 620px !important;
  color: #fff !important;
  font-size: clamp(1.08rem, 2vw, 1.42rem);
  line-height: 1.72;
  text-wrap: balance;
  text-shadow: 0 4px 22px rgba(0,0,0,.28);
}
#origen .hero-origin{
  margin-top: 26px;
  color: #d7b48d;
  font-size: .85rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  font-weight: 600;
}
#origen .hero-tagline{
  margin-top: 14px;
  color: #f6e9d8;
  font-style: italic;
  font-size: 1.06rem;
  letter-spacing: .04em;
}

#vegas-basile{
  position: relative;
  overflow: hidden;
  background: none !important;
  isolation: isolate;
}
#vegas-basile::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:url('../images/vegas-background-20261004-opt.webp') center center / cover no-repeat;
  transform-origin:center center;
  animation: vegasSceneFloat 18s ease-in-out infinite alternate;
  will-change: transform;
}
#vegas-basile::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background: linear-gradient(90deg, rgba(20,13,9,.82) 0%, rgba(20,13,9,.66) 32%, rgba(20,13,9,.34) 56%, rgba(20,13,9,.22) 100%);
}
@keyframes vegasSceneFloat{
  0%{transform: scale(1.03) translate3d(0,0,0);}
  50%{transform: scale(1.07) translate3d(-1.1%, 0.6%, 0);}
  100%{transform: scale(1.10) translate3d(1.2%, -0.7%, 0);}
}
#vegas-basile .wrap,
#vegas-basile .vegas-layout,
#vegas-basile .vegas-copy{position:relative; z-index:2;}
#vegas-basile .vegas-layout{grid-template-columns: 1fr !important; gap: 0 !important;}
#vegas-basile .vegas-copy{
  max-width: 720px;
  padding: clamp(28px,4vw,42px) !important;
  border-left: 0 !important;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(20,13,9,.56), rgba(20,13,9,.68));
  backdrop-filter: blur(3px);
}
#vegas-basile .vegas-copy,
#vegas-basile .vegas-copy h2,
#vegas-basile .vegas-copy p,
#vegas-basile .vegas-copy .eyebrow{color:#fff !important;}
#vegas-basile .vegas-mosaic{display:none !important;}

#b2b{background: linear-gradient(135deg, #d7b48d 0%, #bea07c 48%, #8d6848 100%) !important;}
#b2b h2,#b2b h3,#b2b p{color:#24170f !important;}
#b2b .b2b{background: rgba(255,247,238,.86) !important; border:1px solid rgba(108,71,41,.18) !important; box-shadow:0 18px 40px rgba(32,22,16,.12);}

#confidencialidad{position:relative; overflow:hidden; background:none !important;}
#confidencialidad .confidentiality-video-bg{position:absolute; inset:0; z-index:0; overflow:hidden;}
#confidencialidad .confidentiality-video-bg::after{content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(19,12,8,.72), rgba(43,25,14,.56));}
#confidencialidad .confidentiality-video-bg video{width:100%; height:100%; object-fit:cover; display:block;}
#confidencialidad .confidentiality-inner,#confidencialidad .wrap{position:relative; z-index:2;}
#confidencialidad .lead,#confidencialidad p,#confidencialidad h2,#confidencialidad .eyebrow,#confidencialidad .confidentiality-signature{color:#fff !important; text-shadow:0 2px 18px rgba(0,0,0,.34);}
#personalizacion .personal-copy-paragraph[data-personal-paragraph="0"]{color:#4a3a2e;}

@media (max-width: 900px){
  #origen.origin-hero{min-height:auto;}
  #origen.origin-hero::before{background-position: 68% center; animation-duration: 12s;}
  #origen .origin-grid{justify-items: stretch !important; min-height:auto; padding:10vh 0 8vh !important;}
  #origen .origin-copy{max-width:100% !important; margin-left:0 !important;}
  #origen .origin-copy h1{font-size: clamp(3.25rem, 16vw, 5.2rem);}
  #origen .hero-kicker{font-size:.68rem; letter-spacing:.18em;}
  #origen .hero-subtitle{font-size:.83rem; letter-spacing:.12em; line-height:1.5;}
  #origen .hero-lines{font-size:1rem; line-height:1.6; max-width:100% !important;}
  #origen .hero-origin{font-size:.78rem; letter-spacing:.16em;}
  #vegas-basile::before{background-position: 60% center;}
  #vegas-basile .vegas-copy{max-width:100%;}
}


/* V7 visual refinements */
#historia-legado{background-image:linear-gradient(180deg, rgba(248,241,233,.96), rgba(248,241,233,.98)), url('../images/image-001.webp') !important; background-size:cover; background-position:center;}
#historia-legado .legacy-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px;}
#historia-legado .legacy-card{background: rgba(255,247,238,.86) !important; border: 1px solid rgba(108,71,41,.18) !important; box-shadow: 0 18px 40px rgba(32,22,16,.12); border-radius: 24px; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);}
#historia-legado .legacy-kicker{color:#8a6648; letter-spacing:.18em; text-transform:uppercase; font-size:.72rem; font-weight:700;}
#historia-legado .legacy-year{color:#24170f; opacity:.92;}
#historia-legado .legacy-card h3,#historia-legado .legacy-card p{color:#24170f !important;}
#personalizacion .personal-showcase{margin-top:34px;}
#personalizacion .personal-carousel-viewport{min-height: min(72vh, 860px); background:#ead7c3; border-radius:28px; overflow:hidden; box-shadow:0 22px 48px rgba(37,22,12,.18);}
#personalizacion .personal-carousel-slide{object-fit:cover; object-position:center; background:#ead7c3;}
#personalizacion .personal-carousel-meta{background: rgba(255,248,240,.78); border:1px solid rgba(108,71,41,.12); border-radius:18px; padding:14px 18px; margin-top:16px;}
#personalizacion .personal-carousel-kicker{letter-spacing:.16em; text-transform:uppercase; font-size:.78rem;}
@media (max-width: 1100px){#historia-legado .legacy-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 700px){#historia-legado .legacy-grid{grid-template-columns:1fr;} #personalizacion .personal-carousel-viewport{min-height:420px;}}
