.hero {
  position: relative;
  min-height: 100svh;
  display: flex; align-items: center; justify-content: center;
  padding: calc(var(--nav-height) + 40px) 0 80px;
  overflow: hidden;
  background: var(--bg2); /* Warm carved stone wall */
}

/* Very subtle corner decorations */
.hero::before, .hero::after {
  content: '';
  position: absolute; width: 220px; height: 220px;
  background: url('data:image/svg+xml;utf8,%3Csvg viewBox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath stroke="rgba(184,115,51,0.10)" stroke-width="2" fill="none" d="M18 102 L18 18 L102 18 M36 102 L36 36 L102 36" /%3E%3C/svg%3E') no-repeat;
  background-size: contain;
  opacity: 0.48; pointer-events: none; z-index: 0;
}
.hero::before { top: -46px; left: -34px; }
.hero::after { bottom: -46px; right: -34px; transform: rotate(180deg); }

.hero-bg {
  position: absolute; inset: 0; z-index: 0;
  isolation: isolate;
}

.hero-bg::before {
  content: '';
  position: absolute;
  inset: 10% 8%;
  border: 1px solid rgba(var(--accent-rgb), 0.08);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.03),
    inset 0 0 80px rgba(var(--accent-rgb), 0.03);
  background-image:
    linear-gradient(90deg, transparent 0%, rgba(var(--accent-rgb), 0.05) 18%, transparent 19%, transparent 81%, rgba(var(--accent-rgb), 0.05) 82%, transparent 83%),
    linear-gradient(180deg, transparent 0%, rgba(var(--accent-rgb), 0.04) 22%, transparent 38%, transparent 62%, rgba(var(--accent-rgb), 0.04) 78%, transparent 100%);
  opacity: 0.22;
  pointer-events: none;
  animation: reliefBreath 14s ease-in-out infinite;
}

.hero-bg::after {
  content: '';
  position: absolute;
  inset: -8% 0 -10%;
  background:
    linear-gradient(108deg, transparent 0%, transparent 34%, rgba(255, 243, 214, 0.08) 44%, rgba(255, 243, 214, 0.18) 49%, rgba(212, 160, 23, 0.1) 55%, transparent 68%);
  filter: blur(14px);
  opacity: 0.28;
  pointer-events: none;
  animation: lightSweep 18s ease-in-out infinite;
}

.hero-khachkar,
.hero-fragment,
.hero-glyph {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  mix-blend-mode: multiply;
  will-change: transform, opacity;
}

.hero-khachkar {
  width: clamp(170px, 20vw, 280px);
  height: clamp(290px, 34vw, 430px);
  background-image: url('../../public/images/ornaments/khachkar-slab.svg');
  opacity: 0.18;
  filter: drop-shadow(0 18px 28px rgba(90, 64, 33, 0.08));
  animation: khachkarFloat 22s ease-in-out infinite;
}

.khachkar-left {
  top: 12%;
  left: -14px;
  --float-tilt: -7deg;
  --float-scale-x: 1;
}

.khachkar-right {
  right: -18px;
  bottom: 8%;
  --float-tilt: 8deg;
  --float-scale-x: -1;
  animation-duration: 24s;
  animation-delay: -8s;
}

.hero-fragment {
  width: clamp(108px, 12vw, 176px);
  height: clamp(100px, 12vw, 164px);
  background-image: url('../../public/images/ornaments/stone-fragment.svg');
  opacity: 0.18;
  filter: blur(0.2px) drop-shadow(0 12px 18px rgba(90, 64, 33, 0.06));
  animation: stoneFragmentDrift 18s ease-in-out infinite;
}

.fragment-left {
  left: 11%;
  bottom: 14%;
  --float-tilt: -12deg;
  animation-delay: -5s;
}

.fragment-right {
  right: 14%;
  top: 16%;
  --float-tilt: 12deg;
  animation-duration: 20s;
  animation-delay: -10s;
}

.hero-glyph {
  width: clamp(96px, 9vw, 148px);
  height: clamp(96px, 9vw, 148px);
  background-image: url('../../public/images/ornaments/eternity-glyph.svg');
  opacity: 0.14;
  filter: drop-shadow(0 8px 14px rgba(117, 86, 45, 0.08));
  animation: glyphOrbit 16s ease-in-out infinite;
}

.glyph-left {
  left: 18%;
  top: 17%;
  --glyph-rotate: -14deg;
  animation-delay: -2s;
}

.glyph-right {
  right: 22%;
  bottom: 16%;
  --glyph-rotate: 10deg;
  animation-duration: 18s;
  animation-delay: -9s;
}

/* Cinematic Sunlight */
.golden-sunlight {
  position: absolute;
  inset: -4% 0 0;
  width: 62vw;
  height: 120%;
  left: 18%;
  background:
    linear-gradient(108deg, transparent 0%, rgba(255, 243, 220, 0.04) 26%, rgba(255, 243, 220, 0.18) 48%, rgba(255, 243, 220, 0.05) 62%, transparent 80%);
  filter: blur(18px);
  z-index: 0;
  animation: lightSweep 16s ease-in-out infinite;
  pointer-events: none;
}

/* Museum Dust Particles */
.dust-particle {
  position: absolute;
  background: rgba(255, 247, 234, 0.74);
  border-radius: 50%;
  animation: floatDust infinite linear;
  box-shadow: 0 0 10px rgba(255, 233, 194, 0.12);
}
.d1 { width: 3px; height: 3px; top: 82%; left: 16%; animation-duration: 20s; }
.d2 { width: 5px; height: 5px; top: 88%; right: 22%; animation-duration: 25s; animation-delay: 2s; }
.d3 { width: 2px; height: 2px; top: 76%; right: 38%; animation-duration: 18s; animation-delay: 5s; }
.d4 { width: 4px; height: 4px; top: 86%; left: 58%; animation-duration: 24s; animation-delay: 8s; }
.d5 { width: 3px; height: 3px; top: 72%; left: 74%; animation-duration: 22s; animation-delay: 3s; }
.d6 { width: 2px; height: 2px; top: 90%; left: 34%; animation-duration: 19s; animation-delay: 7s; }

.hero-content {
  position: relative; z-index: 1;
  text-align: center;
  max-width: 900px;
}

.hero-title {
  display: flex; flex-direction: column; gap: 8px;
  margin: 0; padding: 0 20px;
}
.title-main {
  font-family: var(--font-display);
  font-size: clamp(3.5rem, 7vw, 6.5rem);
  color: var(--text);
  line-height: 1.05;
}
.title-sub {
  font-family: var(--font-body);
  font-size: clamp(0.75rem, 2vw, 1rem);
  letter-spacing: 0.3em;
  text-transform: uppercase;
  margin: 20px 0;
  color: var(--accent2); /* Antique Gold */
}

.hero-subtitle {
  font-family: var(--font-display);
  font-style: italic;
  font-size: clamp(1.1rem, 2.5vw, 1.4rem);
  color: var(--text2);
  max-width: 600px;
  margin: 0 auto 48px;
  line-height: 1.8;
}

.hero-actions {
  display: flex; gap: 24px; justify-content: center; align-items: center; flex-wrap: wrap;
}

html[data-device="mobile"] .hero {
  min-height: max(640px, calc(var(--viewport-height) - var(--safe-area-top)));
  align-items: flex-start;
  padding: calc(var(--nav-height) + var(--safe-area-top) + 22px) 0 calc(46px + var(--safe-area-bottom));
}

html[data-device="mobile"] .hero::before,
html[data-device="mobile"] .hero::after {
  width: 150px;
  height: 150px;
  opacity: 0.24;
}

html[data-device="mobile"] .hero-content {
  max-width: 100%;
  padding-top: 12px;
}

html[data-device="mobile"] .hero-title {
  gap: 10px;
  padding: 0;
}

html[data-device="mobile"] .title-main {
  font-size: clamp(2.8rem, 13vw, 4.4rem);
}

html[data-device="mobile"] .title-sub {
  margin: 14px 0 8px;
  letter-spacing: 0.2em;
}

html[data-device="mobile"] .hero-subtitle {
  max-width: 32ch;
  font-size: 1.02rem;
  line-height: 1.72;
  margin-bottom: 30px;
}

html[data-device="mobile"] .hero-actions {
  flex-direction: column;
  gap: 12px;
}

html[data-device="mobile"] .hero-actions .btn {
  width: min(100%, 320px);
}

html[data-device="mobile"] .hero-bg::before {
  inset: 12% 6% 8%;
  opacity: 0.16;
}

html[data-device="mobile"] .hero-bg::after,
html[data-device="mobile"] .golden-sunlight {
  filter: blur(10px);
  opacity: 0.18;
}

html[data-device="mobile"] .hero-khachkar,
html[data-device="mobile"] .hero-fragment,
html[data-device="mobile"] .hero-glyph {
  opacity: 0.12;
}

@media (max-width: 900px) {
  .hero-bg::before {
    inset: 14% 5%;
  }

  .hero-bg::after,
  .golden-sunlight {
    animation: none;
    filter: blur(10px);
    opacity: 0.18;
  }

  .hero-khachkar {
    width: clamp(148px, 23vw, 220px);
    height: clamp(240px, 36vw, 330px);
    opacity: 0.14;
  }

  .hero-fragment {
    opacity: 0.14;
  }

  .dust-particle {
    display: none;
  }

  .glyph-left {
    left: 10%;
    top: 15%;
  }

  .glyph-right {
    right: 10%;
    bottom: 14%;
  }

  .golden-sunlight {
    width: 88vw;
    left: 4%;
  }
}

@media (max-width: 640px) {
  .hero-khachkar {
    width: 140px;
    height: 246px;
    opacity: 0.11;
  }

  .khachkar-left {
    left: -40px;
    top: 18%;
  }

  .khachkar-right {
    right: -46px;
    bottom: 18%;
  }

  .fragment-right,
  .glyph-right {
    display: none;
  }

  .fragment-left {
    left: auto;
    right: 10%;
    bottom: 11%;
  }

  .glyph-left {
    left: 8%;
    top: 12%;
    width: 82px;
    height: 82px;
    opacity: 0.12;
  }
}

[data-theme="dark"] .hero-khachkar,
[data-theme="dark"] .hero-fragment,
[data-theme="dark"] .hero-glyph {
  mix-blend-mode: screen;
  filter: brightness(1.06) saturate(0.85) drop-shadow(0 18px 30px rgba(0, 0, 0, 0.24));
}

@media (prefers-reduced-motion: reduce) {
  .hero-khachkar,
  .hero-fragment,
  .hero-glyph,
  .golden-sunlight,
  .dust-particle,
  .hero-bg::before,
  .hero-bg::after {
    animation: none !important;
  }
}
