/* EMAGCY Lit House Hero — scope: .aurelis-lit-house-hero
   Uses the site tokens from global.css (.aurelis-root). Affects nothing else. */

.aurelis-lit-house-hero .lh-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,4.5vw,72px)}
.aurelis-lit-house-hero .lh-title{max-width:none;font-size:clamp(2.5rem,1.5rem + 2.7vw,4.25rem);text-wrap:balance}
.aurelis-lit-house-hero .lh-title__line{display:block}
.aurelis-lit-house-hero .hero-cta{margin-top:40px;gap:12px}
.aurelis-lit-house-hero .hero-cta .btn{padding-inline:20px}
.aurelis-lit-house-hero .lh-btn-whatsapp svg{color:#57D68D;flex:none}

.aurelis-lit-house-hero .lh-promise{margin-top:36px;padding-top:20px;border-top:1px solid var(--border);max-width:36ch;font-size:1.0625rem;line-height:1.55;color:var(--text-primary)}
.aurelis-lit-house-hero .lh-proof{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:var(--fs-small);color:var(--text-secondary)}
.aurelis-lit-house-hero .lh-proof li{display:inline-flex;align-items:center;gap:8px}
.aurelis-lit-house-hero .lh-proof svg{color:var(--highlight);flex:none}
.aurelis-lit-house-hero .lh-proof a{text-decoration:underline;text-underline-offset:3px}
.aurelis-lit-house-hero .lh-proof a:hover{color:var(--highlight)}

/* Drawing + lights */
.aurelis-lit-house-hero .lh-stage{min-width:0;display:flex;flex-direction:column}
.aurelis-lit-house-hero .lh-drawing{position:relative;width:100%;aspect-ratio:640/464}
.aurelis-lit-house-hero .lh-house{width:100%;height:100%}
.aurelis-lit-house-hero .lh-spot{position:absolute;width:44px;height:44px;transform:translate(-50%,-50%);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2}
.aurelis-lit-house-hero .lh-led{display:block;width:14px;height:14px;border-radius:50%;background:var(--highlight);border:2px solid var(--bg-primary);animation:lhPulse 2.4s ease-out infinite;transition:width .25s var(--ease),height .25s var(--ease)}
.aurelis-lit-house-hero .lh-spot:hover .lh-led{width:18px;height:18px}
.aurelis-lit-house-hero .lh-spot.is-active .lh-led{width:22px;height:22px;border:4px solid #FFE0B8;box-shadow:0 0 0 6px rgba(247,147,30,.25);animation:none}
.aurelis-lit-house-hero .lh-spot:focus-visible{outline:2px solid #FFE0B8;outline-offset:2px}
@keyframes lhPulse{0%{box-shadow:0 0 0 0 rgba(247,147,30,.55)}70%{box-shadow:0 0 0 12px rgba(247,147,30,0)}100%{box-shadow:0 0 0 0 rgba(247,147,30,0)}}

.aurelis-lit-house-hero .lh-hint{position:absolute;left:0;bottom:2%;display:flex;align-items:center;gap:8px;font-size:var(--fs-small);color:var(--text-secondary)}
.aurelis-lit-house-hero .lh-hint span{width:10px;height:10px;border-radius:50%;background:var(--highlight);flex:none}

/* Product panel */
.aurelis-lit-house-hero .lh-panels{margin-top:12px}
.aurelis-lit-house-hero .lh-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:20px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
/* All panels share one grid cell, so the box keeps the height of the tallest one: nothing below jumps during the tour */
.aurelis-lit-house-hero .lh-panels{display:grid}
.aurelis-lit-house-hero .lh-panel{grid-area:1 / 1}
.aurelis-lit-house-hero .lh-panel[hidden]{display:flex;visibility:hidden}
.aurelis-lit-house-hero .lh-panel__info{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:6px}
.aurelis-lit-house-hero .lh-panel__room{font-size:var(--fs-small);color:var(--text-secondary)}
.aurelis-lit-house-hero .lh-panel__title{font-family:var(--font-display);font-size:1.3125rem;font-weight:700;line-height:1.25;color:var(--text-primary)}
.aurelis-lit-house-hero .lh-panel__title:hover{color:var(--highlight)}
.aurelis-lit-house-hero .lh-panel__install{display:flex;align-items:flex-start;gap:8px;font-size:.9375rem;line-height:1.45;color:var(--text-secondary)}
.aurelis-lit-house-hero .lh-panel__install svg{color:var(--highlight);flex:none;margin-top:2px}
.aurelis-lit-house-hero .lh-panel__install strong{color:var(--text-primary);font-weight:600;white-space:nowrap}

.aurelis-lit-house-hero .lh-panel__price{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:2px;font-family:var(--font-display);font-size:1.875rem;font-weight:700;line-height:1.1;color:var(--text-primary);min-width:110px}
.aurelis-lit-house-hero .lh-panel__price del{font-size:.9375rem;font-weight:500;color:var(--text-secondary)}
.aurelis-lit-house-hero .lh-panel__price ins{text-decoration:none}
.aurelis-lit-house-hero .lh-panel__price .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.aurelis-lit-house-hero .lh-panel__actions{display:flex;flex-wrap:wrap;gap:10px}
.aurelis-lit-house-hero .lh-btn-sm{padding:12px 22px;min-height:46px;font-size:.9375rem}

/* ---------- Wow layer ---------- */

/* 1. Intro: the house wakes up at dusk, room by room (CSS only, ends lit even if JS fails) */
.aurelis-lit-house-hero .lh-intro-on .lh-house{animation:lhDusk 1.6s ease both}
.aurelis-lit-house-hero .lh-intro-on .lh-l{animation:lhLight .9s ease both}
.aurelis-lit-house-hero .lh-intro-on .lh-l1{animation-delay:.25s}
.aurelis-lit-house-hero .lh-intro-on .lh-l2{animation-delay:.5s}
.aurelis-lit-house-hero .lh-intro-on .lh-l3{animation-delay:.75s}
.aurelis-lit-house-hero .lh-intro-on .lh-l4{animation-delay:1s}
.aurelis-lit-house-hero .lh-intro-on .lh-l5{animation-delay:1.25s}
.aurelis-lit-house-hero .lh-intro-on .lh-spot{animation:lhPop .5s cubic-bezier(.34,1.56,.64,1) both;animation-delay:calc(1.35s + var(--lh-i, 0) * .12s)}
@keyframes lhDusk{from{filter:brightness(.5) saturate(.7)}to{filter:none}}
@keyframes lhLight{from{opacity:0}to{opacity:1}}
@keyframes lhPop{from{opacity:0;transform:translate(-50%,-50%) scale(.3)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}

/* Living details after the intro: camera beam sweeps, Wi-Fi breathes */
.aurelis-lit-house-hero .lh-beam{transform-box:fill-box;transform-origin:0% 50%;animation:lhSweep 6s ease-in-out 2s infinite}
.aurelis-lit-house-hero .lh-wifi path{animation:lhBreathe 3.2s ease-in-out 2s infinite}
@keyframes lhSweep{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(8deg)}}
@keyframes lhBreathe{0%,100%{opacity:.5}50%{opacity:1}}

/* 2. Hover label on each light (mouse devices) */
.aurelis-lit-house-hero .lh-spot::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 4px);transform:translate(-50%,4px);white-space:nowrap;padding:7px 12px;border-radius:10px;background:#0E2438;border:1px solid rgba(255,255,255,.12);box-shadow:0 12px 28px -10px rgba(0,0,0,.6);color:var(--text-primary);font-family:var(--font-body);font-size:13px;font-weight:600;line-height:1.2;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:3}
.aurelis-lit-house-hero .lh-spot[data-lh-spot="outside"]::after{left:auto;right:0;transform:translate(0,4px)}
.aurelis-lit-house-hero .lh-spot[data-lh-spot="door"]::after,
.aurelis-lit-house-hero .lh-spot[data-lh-spot="bedroom"]::after{left:0;transform:translate(0,4px)}
@media (hover:hover){
  .aurelis-lit-house-hero .lh-spot:hover::after{opacity:1;transform:translate(-50%,0)}
  .aurelis-lit-house-hero .lh-spot[data-lh-spot="outside"]:hover::after,
  .aurelis-lit-house-hero .lh-spot[data-lh-spot="door"]:hover::after,
  .aurelis-lit-house-hero .lh-spot[data-lh-spot="bedroom"]:hover::after{transform:none}
}
.aurelis-lit-house-hero .lh-spot:focus-visible::after{opacity:1}

/* 3. Product photo in the panel + smooth swap */
.aurelis-lit-house-hero .lh-panel__media{flex:none;width:84px;height:84px;border-radius:14px;background:#FFFFFF;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:6px;box-sizing:border-box}
.aurelis-lit-house-hero .lh-panel__media img{width:100%;height:100%;object-fit:contain;display:block}
.aurelis-lit-house-hero .lh-panel:not([hidden]){animation:lhPanelIn .4s ease both}
@keyframes lhPanelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* 4. Auto tour progress line */
.aurelis-lit-house-hero .lh-panels{position:relative}
.aurelis-lit-house-hero .lh-tour-bar{position:absolute;left:20px;right:20px;bottom:0;height:2px;border-radius:2px;background:rgba(247,147,30,.18);overflow:hidden}
.aurelis-lit-house-hero .lh-tour-bar span{display:block;height:100%;width:100%;background:var(--highlight);transform-origin:left center;transform:scaleX(0)}
.aurelis-lit-house-hero .lh-tour-bar.is-running span{animation:lhBar var(--lh-ms,5000ms) linear forwards}
.aurelis-lit-house-hero .lh-tour-bar.is-paused span{animation-play-state:paused}
@keyframes lhBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* ---------- Layout: Cinematic (wide screens only) ---------- */
.aurelis-lit-house-hero .lh-strip{display:none}
@media (min-width:1101px){
  /* break out of a boxed Elementor container: the cinematic hero always spans the whole window
     (--lh-sbw = scrollbar width, measured by lit-house-hero.js; 17px is the usual desktop value) */
  .aurelis-lit-house-hero.lh-layout-cinematic{width:calc(100vw - var(--lh-sbw, 17px));max-width:none;margin-left:calc(50% - (100vw - var(--lh-sbw, 17px)) / 2);margin-right:0;position:relative}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-hero{min-height:880px;padding-top:88px;padding-bottom:168px;align-items:flex-start}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-grid{display:block}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-content{position:relative;z-index:2;max-width:500px}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-content .hero-sub{max-width:34ch}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-title{font-size:clamp(3.5rem,2rem + 3vw,5rem)}
  /* the promise and proof move to the strip on the ground */
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-content .lh-promise,
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-content .lh-proof,
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-hint{display:none}
  /* the house: big, anchored to the ground, on the right */
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-stage{position:static}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-drawing{position:absolute;z-index:1;right:-1%;bottom:120px;width:55%;max-width:900px;transform:translateY(12.93%)}
  /* a quiet moon fills the night sky above the house */
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-hero::before{content:"";position:absolute;top:110px;right:11%;width:64px;height:64px;border-radius:50%;background:#F3E6D0;opacity:.88;box-shadow:0 0 60px 18px rgba(243,230,208,.10);z-index:0;pointer-events:none}
  /* product card sits under the buttons, in the text column */
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-panels{position:relative;z-index:2;max-width:500px;margin-top:36px}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-panel{background:rgba(19,45,69,.92);box-shadow:0 24px 48px -18px rgba(0,0,0,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
  /* ground strip, edge to edge */
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip{display:flex;align-items:center;position:absolute;left:0;right:0;bottom:0;height:120px;background:#0E2438;border-top:1.5px solid #2E4D6E;z-index:1}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__in{display:flex;flex-wrap:wrap;align-items:center;gap:10px 36px;font-size:var(--fs-small);color:var(--text-secondary)}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__promise{color:var(--text-primary);font-size:1rem;font-weight:500}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__item{display:inline-flex;align-items:center;gap:8px}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__item svg{color:var(--highlight);flex:none}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__item a{text-decoration:underline;text-underline-offset:3px}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__item a:hover{color:var(--highlight)}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__dot{width:10px;height:10px;border-radius:50%;background:var(--highlight);flex:none}
}
@media (min-width:1600px){
  /* very wide screens: keep the house next to the content instead of at the window edge */
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-drawing{right:calc(50% - 720px);width:780px}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-hero::before{right:calc(50% - 560px)}
}
@media (min-width:1101px) and (max-width:1599px){
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-strip__hint{display:none}
}
@media (min-width:1101px) and (max-width:1320px){
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-drawing{width:52%;right:-3%}
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-content,
  .aurelis-lit-house-hero.lh-layout-cinematic .lh-panels{max-width:460px}
}

/* Tablet */
@media (max-width:1100px){
  .aurelis-lit-house-hero .lh-grid{grid-template-columns:1fr}
  .aurelis-lit-house-hero .lh-stage{width:min(100%,720px);margin-inline:auto}
}

/* Phone: the house goes right under the text, full width */
@media (max-width:767px){
  .aurelis-lit-house-hero .lh-stage{order:2;width:100%}
  .aurelis-lit-house-hero .hero-cta{margin-top:28px}
  .aurelis-lit-house-hero .lh-promise{margin-top:28px;font-size:1rem}
  .aurelis-lit-house-hero .lh-hint{left:8px;bottom:3%;font-size:.8125rem}
  .aurelis-lit-house-hero .lh-panel{padding:16px}
  .aurelis-lit-house-hero .lh-panel__media{width:64px;height:64px;border-radius:12px}
  .aurelis-lit-house-hero .lh-panel__info{flex:1 1 160px}
  .aurelis-lit-house-hero .lh-panel__price{font-size:1.625rem}
  .aurelis-lit-house-hero .lh-panel__actions{width:100%}
  .aurelis-lit-house-hero .lh-panel__actions .btn{flex:1 1 0;min-width:0}
}

@media (prefers-reduced-motion:reduce){
  .aurelis-lit-house-hero .lh-led,
  .aurelis-lit-house-hero .lh-house,
  .aurelis-lit-house-hero .lh-l,
  .aurelis-lit-house-hero .lh-spot,
  .aurelis-lit-house-hero .lh-beam,
  .aurelis-lit-house-hero .lh-wifi path,
  .aurelis-lit-house-hero .lh-panel{animation:none !important}
  .aurelis-lit-house-hero .lh-tour-bar{display:none}
}
