/* ─────────────────────────────────────────────
   ARANYAKAA · 3D / DEPTH ENHANCEMENTS
   Loaded on every page after site.css.
   Premium depth, subtle 3D, mobile-aware,
   respects prefers-reduced-motion.
   ───────────────────────────────────────────── */

::selection{background:var(--sage);color:#fff}

/* ── GLOBAL DEPTH ───────────────────────────── */
.h2,.hero-h,.cta-h,.page-hero h1,.bigstory-line,.legacy-line,.est-name,.proj-name{
  text-shadow:0 1px 0 rgba(255,255,255,0.4),0 12px 30px rgba(26,46,30,0.08);
}
#landstory .h2,#landstory h2,.ec-line,#infra h2{
  text-shadow:0 1px 0 rgba(255,255,255,0.06),0 16px 40px rgba(0,0,0,0.45);
}

/* ── HEADER SCROLL DEPTH ────────────────────── */
.site-head{transition:box-shadow .35s ease,background .35s ease}
.site-head.scrolled{box-shadow:0 10px 30px rgba(26,46,30,0.10);background:#FAFAF8}

/* ── CARDS · LAYERED DEPTH + TOP LIGHT ──────── */
.est-card,.proj-card,.proj-slide,.corr-card,.prin-card,.life-card,.j-card,
.an-pillar,.own-card,.trust-item,.why-item,.duo-card,.ab-item,.em-item,.esp-item,
.lf-step,.bs-card{
  position:relative;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.65),
    inset 0 -1px 0 rgba(26,46,30,0.03),
    0 1px 2px rgba(26,46,30,0.04),
    0 8px 24px rgba(26,46,30,0.06);
}
.est-card:hover,.proj-card:hover,.proj-slide:hover,.corr-card:hover,.prin-card:hover,
.life-card:hover,.j-card:hover,.an-pillar:hover,.own-card:hover,.trust-item:hover,
.why-item:hover,.duo-card:hover,.ab-item:hover,.em-item:hover,.esp-item:hover,
.bs-card:hover{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.75),
    0 2px 4px rgba(26,46,30,0.05),
    0 24px 48px rgba(26,46,30,0.14);
}

/* Shine sweep on primary cards */
.est-card::after,.proj-card::after,.life-card::after{
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,0.32) 50%,transparent 68%);
  transform:translateX(-130%);
  transition:transform .85s ease;
}
.est-card:hover::after,.proj-card:hover::after,.life-card:hover::after{transform:translateX(130%)}

/* ── BUTTONS · PHYSICAL PRESS ───────────────── */
.btn-sage,.btn,.form-btn,.dn-cta{
  box-shadow:0 3px 0 rgba(26,46,30,0.16),0 10px 20px rgba(26,46,30,0.12);
}
.btn-sage:hover,.btn:hover,.form-btn:hover,.dn-cta:hover{transform:translateY(-2px)}
.btn-sage:active,.btn:active,.form-btn:active,.dn-cta:active{transform:translateY(1px);box-shadow:0 1px 0 rgba(26,46,30,0.16),0 4px 10px rgba(26,46,30,0.10)}
.btn-outline,.btn-ghost-white{box-shadow:0 6px 18px rgba(26,46,30,0.06)}
.btn-outline:active,.btn-ghost-white:active{transform:translateY(1px)}

/* ── INTERIOR PAGE HERO · AMBIENT ORBS ──────── */
.page-hero::before,.page-hero::after{
  content:'';position:absolute;border-radius:50%;pointer-events:none;
  filter:blur(8px);
}
.page-hero::before{
  width:440px;height:440px;top:-160px;right:-120px;
  background:radial-gradient(circle,rgba(107,143,113,0.4),transparent 65%);
  animation:orbFloat 16s ease-in-out infinite;
}
.page-hero::after{
  width:360px;height:360px;bottom:-150px;left:-120px;
  background:radial-gradient(circle,rgba(184,106,68,0.22),transparent 65%);
  animation:orbFloat 20s ease-in-out infinite reverse;
}
@keyframes orbFloat{
  0%,100%{transform:translateY(0) translateX(0)}
  50%{transform:translateY(-26px) translateX(16px)}
}

/* Legacy ambient glow */
#legacy::before{
  content:'';position:absolute;width:520px;height:520px;border-radius:50%;
  right:-140px;top:-140px;pointer-events:none;
  background:radial-gradient(circle,rgba(107,143,113,0.18),transparent 65%);
  animation:orbFloat 18s ease-in-out infinite;
}

/* ── HERO VIDEO · KEN BURNS ─────────────────── */
.hero-video-wrap video{object-fit:fill}

/* ── TAP FEEDBACK (mobile-first) ────────────── */
.est-card:active,.proj-card:active,.proj-slide:active,.corr-card:active,
.prin-card:active,.life-card:active,.j-card:active,.duo-card:active,
.an-pillar:active,.own-card:active,.trust-item:active,.why-item:active,
.bs-card:active,.lf-step:active{
  transform:scale(0.975)!important;
  box-shadow:0 6px 18px rgba(26,46,30,0.10)!important;
  transition:transform 90ms ease,box-shadow 90ms ease!important;
}

/* ── PARALLAX IMAGE BASE ────────────────────── */
.photo-strip img,.estate-hero img{transform:translateZ(0)}


/* ── SECTION REVEAL · 3D ORIGIN ─────────────── */
/* (3D perspective is applied inline per-element for reveal + tilt) */

/* ── RESPONSIVE / MOBILE ────────────────────── */
@media(max-width:900px){
  .page-hero::before{width:300px;height:300px}
  .page-hero::after{width:240px;height:240px}
  #legacy::before{width:360px;height:360px}
}
@media(max-width:768px){
  /* mobile-first: keep depth + motion, tuned for touch */
  .est-card,.proj-card,.proj-slide,.corr-card,.prin-card,.life-card,.j-card,
  .an-pillar,.own-card,.trust-item,.why-item,.duo-card,.ab-item,.em-item,.esp-item,
  .lf-step,.bs-card{will-change:auto}
  .est-card::after,.proj-card::after,.life-card::after{display:none}
  .photo-strip img,.estate-hero img{animation:none}
}

/* ── REDUCED MOTION ─────────────────────────── */
@media (prefers-reduced-motion: reduce){
  .page-hero::before,.page-hero::after,#legacy::before,
  .est-card::after,.proj-card::after,.life-card::after{
    animation:none!important;transform:none!important;
  }
}

/* ═════════════════════════════════════════════════════════
   ARANYAKAA · CINEMATIC UPGRADE
   Entrance, scroll reveal, cursor light, section depth.
   Extends the existing 3D layer. Mobile-aware + reduced-motion safe.
   ═════════════════════════════════════════════════════════ */

/* ── NAVBAR · ENTRANCE + HOVER DEPTH ────────── */
.site-head{animation:navIn .9s cubic-bezier(.22,1,.36,1) both}
@keyframes navIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
.site-head .desktop-nav a{position:relative}
.site-head .desktop-nav a::after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:1.5px;background:var(--sage);transform:scaleX(0);transform-origin:right;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.site-head .desktop-nav a:hover::after{transform:scaleX(1);transform-origin:left}
.site-head .desktop-nav a.dn-cta::after{display:none}

/* ── HERO · CINEMATIC ENTRANCE ──────────────── */
.hero-eye,.hero-h,.hero-desc,.hero-strap{opacity:0;animation:heroIn 1s cubic-bezier(.22,1,.36,1) forwards}
.hero-eye{animation-delay:.12s}
.hero-h{animation-delay:.26s}
.hero-desc,.hero-strap{animation-delay:.44s}
.page-hero h1{opacity:0;animation:heroIn 1s cubic-bezier(.22,1,.36,1) forwards;animation-delay:.26s}
.page-hero p,.page-hero .bar,.estate-hero p{opacity:0;animation:heroIn .95s cubic-bezier(.22,1,.36,1) forwards}
.page-hero .bar{animation-delay:.32s}
.page-hero p,.estate-hero p{animation-delay:.44s}
@keyframes heroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

/* ── HERO · CURSOR LIGHT (fine pointer only) ── */
.hero-video-wrap{transform:translateZ(0)}
.hero-video-wrap::after{
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;
  background:radial-gradient(560px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.13),transparent 45%);
  transition:opacity .35s ease;
}
@media (hover:hover) and (pointer:fine){
  .hero-video-wrap:hover::after{opacity:1}
}

/* ── CARDS · CURSOR-FOLLOWING LIGHT (fine pointer only) ── */
@media (hover:hover) and (pointer:fine){
  .est-card::before,.corr-card::before,.prin-card::before,.j-card::before,.life-card::before,
  .why-item::before,.own-card::before,.trust-item::before,.an-pillar::before,.ab-item::before,
  .em-item::before,.esp-item::before,.bs-card::before{
    content:'';position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;
    background:radial-gradient(460px circle at var(--mx,50%) var(--my,30%),rgba(255,255,255,.42),transparent 55%);
    border-radius:inherit;transition:opacity .35s ease;
  }
  .est-card:hover::before,.corr-card:hover::before,.prin-card:hover::before,.j-card:hover::before,
  .life-card:hover::before,.why-item:hover::before,.own-card:hover::before,.trust-item:hover::before,
  .an-pillar:hover::before,.ab-item:hover::before,.em-item:hover::before,.esp-item:hover::before,
  .bs-card:hover::before{opacity:1}
}

/* ── BUTTONS · LIGHT SHEEN + LIFT ───────────── */
.btn-sage,.form-btn{position:relative;overflow:hidden}
.btn-sage::after,.form-btn::after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-130%);transition:transform .75s ease}
.btn-sage:hover::after,.form-btn:hover::after{transform:translateX(130%)}
.btn-ghost-white,.btn-outline{transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease,border-color .2s ease,background .2s ease!important}
.btn-ghost-white:hover,.btn-outline:hover{transform:translateY(-2px)}

/* ── SECTION TRANSITIONS · subtle depth fade ── */

/* ── CINEMATIC REDUCED-MOTION OVERRIDES ─────── */
@media (prefers-reduced-motion: reduce){
  .site-head,.hero-eye,.hero-h,.hero-desc,.hero-strap,
  .page-hero h1,.page-hero p,.page-hero .bar,.estate-hero p{
    animation:none!important;opacity:1!important;transform:none!important;
  }
  .hero-video-wrap::after{opacity:0!important}
  .est-card::before,.corr-card::before,.prin-card::before,.j-card::before,.life-card::before,
  .why-item::before,.own-card::before,.trust-item::before,.an-pillar::before,.ab-item::before,
  .em-item::before,.esp-item::before,.bs-card::before{opacity:0!important}
}
