/* Harmony Healing Center — V8.0.5 Phase 1
   Scope locked: HOME hero + Dubai/London locations + subtle home-content motion only.
   Header, logo, navigation and all other section layouts remain untouched.
*/

:root{
  --v8005-copper:#c86f3b;
  --v8005-copper-deep:#a9562e;
  --v8005-teal:#078994;
  --v8005-teal-deep:#056b76;
  --v8005-ink:#073f50;
}

/* ---------- HERO: white minimal field + approved sculpture only ---------- */
.home43 > .homev762-hero.homev766-unified-hero{
  background:#fff !important;
  box-shadow:0 24px 56px rgba(15,60,68,.08) !important;
}
.home43 > .homev762-hero.homev766-unified-hero .homev766-hero-visual,
.home43 > .homev762-hero.homev766-unified-hero .homev766-hero-visual-img{
  background:#fff !important;
}
.home43 > .homev762-hero.homev766-unified-hero .homev766-hero-visual-img{
  object-fit:cover !important;
  object-position:center center !important;
  filter:none !important;
  transform:none !important;
  animation:none !important;
}
.home43 > .homev762-hero.homev766-unified-hero .homev766-hero-veil{
  background:linear-gradient(90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,.99) 35%,
    rgba(255,255,255,.90) 45%,
    rgba(255,255,255,.36) 55%,
    rgba(255,255,255,0) 67%) !important;
}
.home43[dir="rtl"] > .homev762-hero.homev766-unified-hero .homev766-hero-veil{
  /* Keep the approved current RTL composition: copy stays on the same clean text field. */
  background:linear-gradient(90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,.99) 35%,
    rgba(255,255,255,.90) 45%,
    rgba(255,255,255,.36) 55%,
    rgba(255,255,255,0) 67%) !important;
}

/* Copper rim: elegant, matte, no reflective highlight sweep. */
.home43 > .homev762-hero.homev766-unified-hero .homev762-hero-btn,
.home43 .home43-location-premium-btn{
  border:1.5px solid var(--v8005-copper) !important;
  background:var(--v8005-teal) !important;
  color:#fff !important;
  box-shadow:0 9px 18px rgba(5,72,80,.14) !important;
  filter:none !important;
  text-shadow:none !important;
}
.home43 > .homev762-hero.homev766-unified-hero .homev762-hero-btn.btn-outline{
  background:#fff !important;
  color:var(--v8005-ink) !important;
  box-shadow:0 8px 16px rgba(7,63,80,.07) !important;
}
.home43 > .homev762-hero.homev766-unified-hero .homev762-hero-btn::before,
.home43 > .homev762-hero.homev766-unified-hero .homev762-hero-btn::after,
.home43 .home43-location-premium-btn::before,
.home43 .home43-location-premium-btn::after{
  content:none !important;
  display:none !important;
}
.home43 > .homev762-hero.homev766-unified-hero .homev762-hero-btn:hover,
.home43 > .homev762-hero.homev766-unified-hero .homev762-hero-btn:focus-visible,
.home43 .home43-location-premium-btn:hover,
.home43 .home43-location-premium-btn:focus-visible{
  transform:translateY(-2px) !important;
  filter:none !important;
  box-shadow:0 13px 24px rgba(5,72,80,.18) !important;
}
.home43 .home43-location-premium-btn b{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transition:transform .22s ease !important;
}
.home43 .home43-location-premium-btn:hover b,
.home43 .home43-location-premium-btn:focus-visible b{
  transform:translateX(3px) !important;
}
.home43[dir="rtl"] .home43-location-premium-btn:hover b,
.home43[dir="rtl"] .home43-location-premium-btn:focus-visible b{
  transform:translateX(-3px) scaleX(-1) !important;
}

/* ---------- LOCATIONS: remove raster scene, retain interactive stage ---------- */
.home43 .home43-locations-premium{
  margin-top:clamp(18px,2vw,34px) !important;
  padding:0 !important;
  background:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.home43 .home43-locations-premium::before,
.home43 .home43-locations-premium::after{
  content:none !important;
  display:none !important;
}
.home43 .home43-locations-premium-stage{
  --section-rx:0deg;
  --section-ry:0deg;
  --section-x:0px;
  --section-y:0px;
  position:relative !important;
  width:100% !important;
  min-height:clamp(560px,43vw,720px) !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  padding:clamp(34px,3.8vw,64px) clamp(24px,3.8vw,64px) clamp(38px,4.5vw,74px) !important;
  display:grid !important;
  grid-template-columns:minmax(210px,1fr) minmax(275px,.86fr) minmax(275px,.86fr) minmax(210px,1fr) !important;
  grid-template-rows:auto 1fr !important;
  align-items:center !important;
  gap:clamp(18px,2.2vw,38px) !important;
  clip-path:none !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  overflow:visible !important;
  transform:perspective(1800px) translate3d(var(--section-x),var(--section-y),0) rotateX(var(--section-rx)) rotateY(var(--section-ry)) !important;
  transition:transform .18s ease-out !important;
  transform-style:preserve-3d !important;
}
.home43 .home43-locations-premium:hover .home43-locations-premium-stage{
  box-shadow:none !important;
}
.home43-locations-premium-art,
.home43-locations-premium-light,
.home43-location-premium-plaque{
  display:none !important;
}

.homev8005-locations-intro{
  grid-column:1 / -1;
  grid-row:1;
  max-width:980px;
  margin:0 auto clamp(18px,2vw,32px);
  text-align:center;
  position:relative;
  z-index:5;
}
.homev8005-locations-intro .homev8005-kicker{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin-bottom:10px;
  color:#9c562f;
  font:800 clamp(10px,.72vw,13px)/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.homev8005-locations-intro .homev8005-kicker::before,
.homev8005-locations-intro .homev8005-kicker::after{
  content:"";
  width:42px;
  height:1px;
  background:var(--v8005-copper);
  opacity:.68;
}
.homev8005-locations-intro h2{
  margin:0;
  color:var(--v8005-ink);
  font:500 clamp(34px,3.15vw,58px)/1.02 Georgia,"Times New Roman",serif;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.homev8005-locations-intro p{
  max-width:760px;
  margin:14px auto 0;
  color:#617984;
  font:500 clamp(14px,1vw,18px)/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;
}

.homev8005-flag{
  position:relative;
  z-index:2;
  align-self:center;
  justify-self:center;
  width:min(100%,430px);
  margin:0;
  filter:drop-shadow(0 16px 18px rgba(28,56,61,.10));
  transform-style:preserve-3d;
  will-change:transform;
}
.homev8005-flag img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#fff;
}
.homev8005-flag--dubai{grid-column:1;grid-row:2;animation:homev8005FlagFloatA 6.4s ease-in-out infinite;}
.homev8005-flag--london{grid-column:4;grid-row:2;animation:homev8005FlagFloatB 6.8s ease-in-out .4s infinite;}
@keyframes homev8005FlagFloatA{0%,100%{transform:translate3d(0,0,0) rotateY(2deg)}50%{transform:translate3d(0,-8px,12px) rotateY(-1deg)}}
@keyframes homev8005FlagFloatB{0%,100%{transform:translate3d(0,0,0) rotateY(-2deg)}50%{transform:translate3d(0,-8px,12px) rotateY(1deg)}}

/* Reuse current semantic cards, but place them in a clean white composition. */
.home43 .home43-location-premium-card,
.home43 .home43-location-premium-card.dubai,
.home43 .home43-location-premium-card.london{
  position:relative !important;
  inset:auto !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  width:100% !important;
  height:auto !important;
  min-height:390px !important;
  padding:clamp(24px,2.2vw,38px) !important;
  border:1.5px solid rgba(200,111,59,.78) !important;
  border-radius:28px !important;
  clip-path:none !important;
  background:#fff !important;
  box-shadow:0 18px 36px rgba(19,58,63,.09) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transform:translateZ(14px) !important;
  overflow:hidden !important;
}
.home43 .home43-location-premium-card::before{
  content:none !important;
  display:none !important;
}
.home43 .home43-location-premium-card.dubai{grid-column:2;grid-row:2;}
.home43 .home43-location-premium-card.london{grid-column:3;grid-row:2;}
.home43 .home43-location-premium-card:hover{
  transform:translateY(-5px) translateZ(18px) !important;
  box-shadow:0 24px 44px rgba(19,58,63,.12) !important;
}
.home43 .home43-location-premium-card h3{
  font-size:clamp(38px,3vw,58px) !important;
}
.home43 .home43-location-premium-rule{
  background:var(--v8005-copper) !important;
  height:1.5px !important;
}

/* ---------- Home content micro-interactions (header is outside .home43 and stays untouched) ---------- */
@media (hover:hover) and (pointer:fine){
  .home43 a svg,
  .home43 button svg,
  .home43 [class*="-icon"]{
    transition:transform .24s cubic-bezier(.2,.75,.25,1),filter .24s ease !important;
    transform-origin:center !important;
  }
  .home43 a:hover svg,
  .home43 button:hover svg,
  .home43 a:hover [class*="-icon"],
  .home43 button:hover [class*="-icon"]{
    transform:translateY(-2px) scale(1.055) rotate(-1.5deg) !important;
  }
  .home43 > .homev762-hero .homev762-hero-trust > div{
    transition:transform .24s ease !important;
  }
  .home43 > .homev762-hero .homev762-hero-trust > div:hover{
    transform:translateY(-3px) !important;
  }
  .home43 > .homev762-hero .homev762-hero-trust > div:hover i{
    transform:translateY(-2px) scale(1.07) rotate(-2deg) !important;
  }
}

/* Entry motion for major home-page text only; no layout/content changes. */
.homev8005-motion-ready .homev8005-reveal{
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .68s ease,transform .78s cubic-bezier(.2,.75,.25,1);
}
.homev8005-motion-ready .homev8005-reveal.is-visible{
  opacity:1;
  transform:none;
}

@media(max-width:1180px){
  .home43 .home43-locations-premium-stage{
    grid-template-columns:minmax(180px,.85fr) minmax(250px,1fr) minmax(250px,1fr) minmax(180px,.85fr) !important;
    gap:18px !important;
  }
  .home43 .home43-location-premium-card{min-height:370px !important;padding:26px !important;}
}

@media(max-width:900px){
  .home43 > .homev762-hero.homev766-unified-hero .homev766-hero-visual-img{
    object-position:center center !important;
  }
  .home43 > .homev762-hero.homev766-unified-hero .homev766-hero-veil,
  .home43[dir="rtl"] > .homev762-hero.homev766-unified-hero .homev766-hero-veil{
    background:linear-gradient(180deg,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,.99) 35%,
      rgba(255,255,255,.92) 48%,
      rgba(255,255,255,.52) 62%,
      rgba(255,255,255,.06) 79%,
      rgba(255,255,255,0) 88%) !important;
  }
  .home43 .home43-locations-premium-stage{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    grid-template-rows:auto auto auto !important;
    gap:16px !important;
    padding:38px 18px 42px !important;
    transform:none !important;
  }
  .homev8005-locations-intro{grid-column:1/-1;grid-row:1;margin-bottom:4px;}
  .homev8005-flag--dubai{grid-column:1;grid-row:2;width:min(100%,330px);}
  .homev8005-flag--london{grid-column:2;grid-row:2;width:min(100%,330px);}
  .home43 .home43-location-premium-card.dubai{grid-column:1;grid-row:3;}
  .home43 .home43-location-premium-card.london{grid-column:2;grid-row:3;}
  .home43 .home43-location-premium-card{min-height:0 !important;padding:24px !important;}
}

@media(max-width:620px){
  .home43 .home43-locations-premium-stage{
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto auto auto !important;
    padding:34px 14px 38px !important;
  }
  .homev8005-locations-intro{grid-column:1;grid-row:1;}
  .homev8005-locations-intro h2{font-size:clamp(31px,9vw,42px);}
  .homev8005-flag--dubai{grid-column:1;grid-row:2;width:min(88vw,360px);margin-bottom:-8px;}
  .home43 .home43-location-premium-card.dubai{grid-column:1;grid-row:3;}
  .homev8005-flag--london{grid-column:1;grid-row:4;width:min(88vw,360px);margin-top:16px;margin-bottom:-8px;}
  .home43 .home43-location-premium-card.london{grid-column:1;grid-row:5;}
  .home43 .home43-location-premium-card{border-radius:24px !important;}
}

@media(prefers-reduced-motion:reduce){
  .home43 .home43-locations-premium-stage,
  .homev8005-flag,
  .home43 a svg,
  .home43 button svg,
  .home43 [class*="-icon"],
  .homev8005-reveal{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
  }
}
