
/* Living Monolith study — non-destructive enhancement of the actual archived site */
html{scroll-behavior:smooth}
body{background:#060709!important}
#living-monolith-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:6;pointer-events:none;opacity:.86;mix-blend-mode:screen}
.hero{isolation:isolate;overflow:hidden}
.hero:before{filter:contrast(1.1) brightness(.91)!important}
.hero:after{content:"";position:absolute;inset:-8%;z-index:0;pointer-events:none;background:radial-gradient(ellipse 36% 45% at var(--lx,69%) var(--ly,45%),rgba(202,220,235,.105),transparent 73%),linear-gradient(110deg,transparent 40%,rgba(203,215,228,.035) 50%,transparent 61%);mix-blend-mode:screen;animation:monolith-breathe 9s ease-in-out infinite alternate}
.hero>*{position:relative;z-index:2}
@keyframes monolith-breathe{from{opacity:.46;transform:scale(1)}to{opacity:1;transform:scale(1.035)}}
.hero .primary-link,.nav-cta,.contact a,.v9-link-quiet,.v9-detail-link,.about-text-link,.v9-end a{isolation:isolate;transition:box-shadow .65s cubic-bezier(.2,.8,.2,1),border-color .65s ease,background .65s ease,text-shadow .65s ease,filter .65s ease!important}
.hero .primary-link:hover,.nav-cta:hover,.contact a:hover,.v9-link-quiet:hover,.v9-detail-link:hover,.about-text-link:hover,.v9-end a:hover,.hero .primary-link:focus-visible,.nav-cta:focus-visible{border-color:rgba(255,255,255,.95)!important;box-shadow:0 0 14px rgba(247,251,255,.8),0 0 36px rgba(230,241,255,.47),0 0 76px rgba(216,235,255,.23),inset 0 0 18px rgba(255,255,255,.13)!important;text-shadow:0 0 14px rgba(255,255,255,.85)!important}
/* a single continuous lighting atmosphere, not rectangular cards */
.editorial,.wide-feature,.values,.gravity-expand,.contact{position:relative;isolation:isolate}
.editorial:before,.wide-feature:before,.values:before,.gravity-expand:before,.contact:before{content:"";position:absolute;inset:-18% 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 63% 42% at var(--ambient-x,50%) 35%,rgba(135,160,187,.055),transparent 80%);opacity:.85;transition:opacity 1.4s ease}
.editorial:after,.wide-feature:after,.values:after,.gravity-expand:after{content:"";position:absolute;left:14%;right:14%;top:0;height:1px;z-index:2;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(205,221,237,.07) 37%,rgba(255,255,255,.25) 50%,rgba(205,221,237,.07) 63%,transparent);opacity:.5}
body.lm-loaded .hero h1,body.lm-loaded .hero p{animation:lm-reveal 1.3s ease both}
@keyframes lm-reveal{from{opacity:.1;transform:translateY(12px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.lm-reveal{opacity:0;transform:translateY(20px);filter:blur(4px);transition:opacity 1.25s ease,transform 1.25s cubic-bezier(.18,.8,.2,1),filter 1.25s ease}
.lm-reveal.lm-visible{opacity:1;transform:none;filter:none}
#lm-demo-label{position:fixed;bottom:21px;left:24px;z-index:1200;color:rgba(220,230,239,.53);font:500 10px/1.4 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}
#lm-demo-label strong{font-weight:500;color:rgba(255,255,255,.8)}
@media(max-width:700px){#lm-demo-label{left:15px;bottom:12px;font-size:8px}.hero:after{inset:0;background:radial-gradient(ellipse 55% 38% at 65% 40%,rgba(202,220,235,.1),transparent 80%)}#living-monolith-canvas{opacity:.53}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero:after,.lm-reveal,body.lm-loaded .hero h1,body.lm-loaded .hero p{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important}#living-monolith-canvas{display:none}}


/* Mobile-first kinetic light: always works without hover/pointer cursor. */
.lm-mobile-stage {display:none}
@media (max-width:700px) {
  .hero { isolation:isolate; }
  /* Keep the existing monolith, typography and navigation unchanged. */
  .hero .lm-mobile-stage {
    position:absolute!important; inset:0!important;
    z-index:3!important; display:block; width:100%;height:100%;
    pointer-events:none!important; overflow:hidden; contain:paint;
    transform:translate3d(0,var(--lm-shift,0px),0);
    will-change:transform;
  }
  .lm-mobile-stage .lm-monolith-line {
    position:absolute;inset:0;width:100%;height:100%;overflow:visible;
    filter:drop-shadow(0 0 4px rgba(238,249,255,.6));
  }
  .lm-edge-core {fill:none;stroke:#e8f5ff;stroke-width:0.9;opacity:.24}
  .lm-edge-bloom {fill:none;stroke:#e2f1ff;stroke-width:11;opacity:.12;filter:blur(10px)}
  .lm-signal {fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;
    stroke-dasharray:94 906;stroke-dashoffset:1000;
    filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 10px #aecfea);
    animation:lm-mobile-trace 4.7s linear infinite;
  }
  .lm-signal-second {stroke:#d8efff;stroke-width:1.5;stroke-dasharray:40 960;
    opacity:.7;animation-duration:7.1s;animation-delay:-3.6s}
  .lm-mobile-aura {position:absolute;left:-24%;top:51%;width:115%;height:40%;
    background:radial-gradient(ellipse 36% 23% at 52% 60%,rgba(207,235,255,.12),transparent 75%);
    mix-blend-mode:screen;filter:blur(9px);
    animation:lm-mobile-haze 7s ease-in-out infinite alternate;
  }
  @keyframes lm-mobile-trace {from {stroke-dashoffset:1000}to {stroke-dashoffset:0}}
  @keyframes lm-mobile-haze {0% {opacity:.4;transform:translate3d(-14px,13px,0) scale(1)} 100% {opacity:1;transform:translate3d(18px,-15px,0) scale(1.06)}}
  .hero .primary-link,.nav-cta,.site-menu-trigger {
    animation:lm-mobile-xenon 4.3s ease-in-out infinite!important;
  }
  .nav-cta {animation-delay:-1.1s!important}
  .site-menu-trigger {animation-delay:-2.2s!important}
  @keyframes lm-mobile-xenon {
    0%,100% {box-shadow:0 0 9px rgba(238,248,255,.08),0 0 17px rgba(236,248,255,.035); text-shadow:0 0 5px rgba(255,255,255,.12)}
    50% {box-shadow:0 0 14px rgba(245,252,255,.52),0 0 34px rgba(219,236,255,.26),0 0 57px rgba(231,243,255,.12); text-shadow:0 0 12px rgba(255,255,255,.65)}
  }
  #living-monolith-canvas{opacity:.7!important}
  /* iOS Safari preserves body scrolling and touch interactions. */
  .lm-mobile-stage, .lm-mobile-stage *{-webkit-user-select:none;user-select:none}
}
@media (prefers-reduced-motion: reduce) {
  .lm-signal,.lm-mobile-aura,.hero .primary-link,.nav-cta,.site-menu-trigger{animation:none!important}
  .lm-signal{opacity:0}
  .lm-edge-core{opacity:.5}
  .lm-mobile-stage{transform:none!important}
}
