:root{
  --lm-bg:#090d16;
  --lm-bg-deep:#060a11;
  --lm-panel:#0d1522;
  --lm-panel-2:#111c2b;
  --lm-text:#f3f8fb;
  --lm-muted:#9bb0bf;
  --lm-cyan:#00f2fe;
  --lm-blue:#4facfe;
  --lm-gold:#ffad18;
  --lm-line:rgba(79,172,254,.18);
  --lm-line-strong:rgba(0,242,254,.34);
  --lm-radius:18px;
  --lm-shadow:0 22px 60px rgba(0,0,0,.28);
  --lm-header-h:64px;
  --lm-container:1280px;
}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--lm-header-h) + 28px);background:var(--lm-bg)}
body{margin:0;background:
  radial-gradient(circle at 82% 0,rgba(79,172,254,.10),transparent 28%),
  linear-gradient(180deg,var(--lm-bg) 0%,var(--lm-bg-deep) 100%);
  color:var(--lm-text);
  font-family:Inter,Outfit,"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  line-height:1.6;
  overflow-x:hidden
}
body.lm-home{background:#02060a}
body:not(.lm-home) main,
body:not(.lm-home) .wrap{
  width:min(100% - 32px,var(--lm-container));
  max-width:var(--lm-container)!important;
  margin-inline:auto!important
}
body:not(.lm-home) .wrap{padding-left:0!important;padding-right:0!important}
body:not(.lm-home) .hero{max-width:980px}
body:not(.lm-home) h1,
body:not(.lm-home) h2,
body:not(.lm-home) h3{font-family:Inter,Outfit,"Space Grotesk",system-ui,sans-serif}
body:not(.lm-home) h1{letter-spacing:-.055em}
body:not(.lm-home) p{color:var(--lm-muted)}
body:not(.lm-home) section{border-top-color:var(--lm-line)!important}
body:not(.lm-home) .card,
body:not(.lm-home) .enquiryBox{
  background:linear-gradient(145deg,rgba(17,28,43,.96),rgba(8,14,24,.98))!important;
  border-color:var(--lm-line)!important;
  border-radius:var(--lm-radius)!important;
  box-shadow:var(--lm-shadow)
}
body:not(.lm-home) .cta,
body:not(.lm-home) .btn{
  border-radius:999px!important;
  font-weight:850!important
}
body:not(.lm-home) input,
body:not(.lm-home) select,
body:not(.lm-home) textarea{
  background:#09111c!important;
  color:var(--lm-text)!important;
  border-color:var(--lm-line)!important
}
body:not(.lm-home) input:focus,
body:not(.lm-home) select:focus,
body:not(.lm-home) textarea:focus{
  border-color:var(--lm-cyan)!important;
  box-shadow:0 0 0 3px rgba(0,242,254,.10)!important;
  outline:none
}
.lmGlobalTop{
  position:sticky;
  top:0;
  z-index:900;
  min-height:var(--lm-header-h);
  display:flex;
  align-items:center;
  gap:18px;
  width:100%;
  padding:10px clamp(16px,3vw,42px)!important;
  background:rgba(9,13,22,.86)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  backdrop-filter:blur(16px)!important;
  border-bottom:1px solid var(--lm-line)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.16);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important
}
body.lm-home .lmGlobalTop{position:fixed!important;left:0;right:0;top:0}
.lmGlobalBrand{
  flex:0 0 auto;
  color:var(--lm-text)!important;
  text-decoration:none!important;
  font-size:14px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  white-space:nowrap
}
.lmGlobalBrand span{color:var(--lm-gold)!important}
.lmGlobalLinks{
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  flex-wrap:nowrap!important
}
.lmGlobalLinks a{
  min-height:40px;
  display:inline-flex!important;
  align-items:center;
  padding:7px 10px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#d8e7ef!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.1;
  transition:.18s ease
}
.lmGlobalLinks a:hover,
.lmGlobalLinks a:focus-visible{
  border-color:var(--lm-line-strong)!important;
  background:rgba(79,172,254,.08)!important;
  color:#fff!important
}
.lmGlobalLinks a[aria-current="page"]{
  border-color:rgba(0,242,254,.38)!important;
  background:linear-gradient(135deg,rgba(0,242,254,.11),rgba(79,172,254,.10))!important;
  color:#dfffff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)
}
.lmGlobalMenu{display:none!important;margin-left:auto!important;position:relative!important}
.lmGlobalMenu summary{
  list-style:none;
  cursor:pointer;
  min-height:40px;
  display:flex;
  align-items:center;
  border:1px solid var(--lm-line-strong)!important;
  border-radius:999px!important;
  padding:8px 11px!important;
  background:rgba(13,21,34,.78);
  color:#eafaff!important;
  font:850 11px Inter,system-ui,sans-serif!important
}
.lmGlobalMenu summary::-webkit-details-marker{display:none}
.lmGlobalMenu nav{
  position:absolute!important;
  right:0!important;
  left:auto!important;
  top:46px!important;
  width:min(320px,calc(100vw - 28px))!important;
  padding:8px!important;
  display:grid!important;
  gap:4px!important;
  background:rgba(9,13,22,.98)!important;
  border:1px solid var(--lm-line)!important;
  border-radius:16px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.5)!important;
  backdrop-filter:blur(18px)!important
}
.lmGlobalMenu nav a{
  display:flex!important;
  min-height:44px;
  align-items:center;
  padding:10px 11px!important;
  border-radius:10px!important;
  color:#dff7ff!important;
  text-decoration:none!important;
  font:800 12px Inter,system-ui,sans-serif!important
}
.lmGlobalMenu nav a:hover,
.lmGlobalMenu nav a:focus-visible,
.lmGlobalMenu nav a[aria-current="page"]{
  background:rgba(79,172,254,.10)!important;
  color:#fff!important
}
footer{
  border-top-color:var(--lm-line)!important;
  background:rgba(6,10,17,.72);
  color:var(--lm-muted)!important
}
footer a{color:#cdefff!important}
.lmPageShell{animation:lmPageIn .28s ease both}
@keyframes lmPageIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.lmPageShell{animation:none}}
@media(max-width:980px){
  .lmGlobalLinks{display:none!important}
  .lmGlobalMenu{display:block!important}
}
@media(max-width:640px){
  :root{--lm-header-h:58px}
  body:not(.lm-home) main,
  body:not(.lm-home) .wrap{width:min(100% - 24px,var(--lm-container))}
  .lmGlobalTop{padding:8px 12px!important;gap:10px}
  .lmGlobalBrand{font-size:12px!important}
}

/* ===== PHASE 2 — FLOATING STACK + INTERNAL UI POLISH ===== */
:root{
  --lm-z-header:900;
  --lm-z-float:940;
  --lm-z-float-primary:950;
  --lm-z-panel:980;
  --lm-z-modal:1200;
  --lm-float-gap:12px;
  --lm-mobile-dock-h:74px;
}
.lmGlobalTop{z-index:var(--lm-z-header)!important}

/* Desktop floating hierarchy: rail < assistant < open panel < modal */
.contactRail{z-index:var(--lm-z-float)!important;right:16px!important;bottom:92px!important;gap:10px!important}
.quickNudge{z-index:calc(var(--lm-z-float) - 1)!important;right:76px!important;bottom:20px!important}
.assistant{z-index:var(--lm-z-float-primary)!important;left:16px!important;bottom:16px!important}
.assistantPanel{z-index:var(--lm-z-panel)!important}
.audioStatus{z-index:var(--lm-z-float-primary)!important}
.modal{z-index:var(--lm-z-modal)!important}
.mobileCallBubble{z-index:var(--lm-z-float-primary)!important}

/* Shared premium surfaces on internal pages */
body:not(.lm-home) :is(.card,.enquiryBox,.quickBlueprint,.blueprintCard,.leadCard,.formCard,.ctaCard){
  border:1px solid var(--lm-line)!important;
  border-radius:var(--lm-radius)!important;
  background:
    radial-gradient(circle at 100% 0,rgba(0,242,254,.055),transparent 34%),
    linear-gradient(145deg,rgba(17,28,43,.96),rgba(8,14,24,.98))!important;
  box-shadow:var(--lm-shadow);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease
}
body:not(.lm-home) :is(.card,.quickBlueprint,.blueprintCard,.leadCard,.formCard,.ctaCard):hover{
  border-color:var(--lm-line-strong)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.32),0 0 34px rgba(79,172,254,.07)
}
body:not(.lm-home) :is(.cta,.btn,button[type="submit"],.enquiryAction button){
  border:1px solid rgba(0,242,254,.22)!important;
  border-radius:999px!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease
}
body:not(.lm-home) :is(.cta,.btn,button[type="submit"],.enquiryAction button):hover{
  transform:translateY(-2px);
  border-color:rgba(0,242,254,.52)!important;
  box-shadow:0 12px 34px rgba(79,172,254,.14),0 0 24px rgba(0,242,254,.08)
}
body:not(.lm-home) :is(input,select,textarea){
  border-radius:12px!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease
}
body:not(.lm-home) :is(input,select,textarea):hover{border-color:rgba(79,172,254,.34)!important}
body:not(.lm-home) :is(input,select,textarea):focus{
  border-color:var(--lm-cyan)!important;
  box-shadow:0 0 0 3px rgba(0,242,254,.10),0 0 24px rgba(79,172,254,.06)!important
}

/* Mobile: one bottom CTA dock is authoritative; legacy secondary floats collapse. */
@media(max-width:640px){
  body.lm-home{padding-bottom:calc(var(--lm-mobile-dock-h) + env(safe-area-inset-bottom))!important}
  .mobileDock{
    z-index:var(--lm-z-float-primary)!important;
    left:8px!important;right:8px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important
  }
  .contactRail,.quickNudge,.mobileCallBubble{display:none!important}
  .assistant{
    z-index:var(--lm-z-panel)!important;
    left:8px!important;right:8px!important;
    bottom:calc(var(--lm-mobile-dock-h) + 8px + env(safe-area-inset-bottom))!important
  }
  .assistantLaunch{display:none!important}
  .assistantPanel{
    position:fixed!important;
    z-index:var(--lm-z-panel)!important;
    left:8px!important;right:8px!important;
    bottom:calc(var(--lm-mobile-dock-h) + 8px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-height:min(76vh,640px)!important;
    overflow:auto!important
  }
  .audioStatus{
    z-index:var(--lm-z-float)!important;
    right:10px!important;
    top:calc(var(--lm-header-h) + 8px)!important
  }
  .soundToggle,.musicVolume{display:none!important}
  .modal{z-index:var(--lm-z-modal)!important}
  body:not(.lm-home) :is(.cta,.btn,button[type="submit"],.enquiryAction button){min-height:44px}
}


/* ===== TRUE STRUCTURAL PARITY — INTERNAL PRIMARY ROUTES ===== */
body.lm-structural-page{
  --lm-shell-x:clamp(18px,4vw,66px);
  --lm-section-y:clamp(76px,8vw,105px);
  background:
    radial-gradient(900px circle at 78% 8%,rgba(79,172,254,.11),transparent 44%),
    linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px),
    var(--lm-bg-deep);
  background-size:auto,48px 48px,48px 48px,auto
}
body.lm-structural-page .lmGlobalTop{
  position:fixed!important;
  left:0!important;right:0!important;top:0!important;
  height:var(--lm-header-h)!important;
  min-height:var(--lm-header-h)!important;
  box-sizing:border-box!important
}
body.lm-structural-page .lmMain,
body.lm-structural-page .lmMainInner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important
}
body.lm-structural-page .lmMain{position:relative;z-index:1}
body.lm-structural-page .lmHero{
  position:relative;
  isolation:isolate;
  width:100%!important;
  max-width:none!important;
  min-height:clamp(520px,68vh,720px);
  margin:0!important;
  padding:calc(var(--lm-header-h) + clamp(56px,7vw,92px)) var(--lm-shell-x) clamp(72px,8vw,108px)!important;
  display:flex!important;
  align-items:center;
  overflow:hidden;
  border-bottom:1px solid var(--lm-line)!important;
  background:
    radial-gradient(circle at 74% 42%,rgba(0,242,254,.10),transparent 24%),
    radial-gradient(circle at 86% 30%,rgba(79,172,254,.12),transparent 34%),
    linear-gradient(145deg,rgba(9,13,22,.76),rgba(6,10,17,.94))
}
body.lm-structural-page .lmHero:after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:150px;
  z-index:-1;pointer-events:none;
  background:linear-gradient(transparent,var(--lm-bg-deep))
}
body.lm-structural-page .lmHeroGlow{
  position:absolute;z-index:-1;right:clamp(-120px,-5vw,-40px);top:20%;
  width:clamp(320px,42vw,680px);aspect-ratio:1;border-radius:50%;
  border:1px solid rgba(0,242,254,.10);
  box-shadow:0 0 90px rgba(79,172,254,.06),inset 0 0 80px rgba(0,242,254,.035);
  background:repeating-radial-gradient(circle,transparent 0 46px,rgba(79,172,254,.035) 47px 48px)
}
body.lm-structural-page .lmHeroCopy{position:relative;z-index:2;width:min(100%,980px)}
body.lm-structural-page .lmHero .ey{font:800 10px ui-monospace,monospace!important;letter-spacing:.2em!important;color:var(--lm-cyan)!important}
body.lm-structural-page .lmHero h1{
  max-width:980px!important;
  margin:15px 0 20px!important;
  font-size:clamp(50px,6.2vw,94px)!important;
  line-height:.91!important;
  letter-spacing:-.06em!important;
  text-wrap:balance
}
body.lm-structural-page .lmHero p{
  max-width:720px!important;
  margin:0!important;
  color:#a1bbc8!important;
  font-size:clamp(14px,1.25vw,18px)!important;
  line-height:1.62!important
}
body.lm-structural-page .lmHero :is(.cta,.heroActions){margin-top:24px!important}
body.lm-structural-page .lmMainInner>section:not(.lmHero){
  width:min(calc(100% - (var(--lm-shell-x) * 2)),var(--lm-container));
  max-width:var(--lm-container)!important;
  margin-inline:auto!important;
  padding-top:var(--lm-section-y)!important;
  padding-bottom:var(--lm-section-y)!important;
  border-top:1px solid var(--lm-line)!important
}
body.lm-structural-page .lmMainInner>.lmAiAnswer{
  margin-top:var(--lm-section-y)!important;
  margin-bottom:0!important;
  padding:24px!important
}
body.lm-structural-page .lmMainInner>section+section{margin-top:0!important}
body.lm-structural-page .grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important
}
body.lm-structural-page .card{min-height:112px;padding:20px!important}
body.lm-structural-page :is(section,.section)>h2,
body.lm-structural-page .sectionHead h2{
  font-size:clamp(30px,4vw,48px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important
}
body.lm-structural-page footer>div{width:min(calc(100% - (var(--lm-shell-x) * 2)),var(--lm-container));max-width:var(--lm-container)!important;margin-inline:auto!important}
@media(max-width:760px){
  body.lm-structural-page{--lm-shell-x:18px;--lm-section-y:68px}
  body.lm-structural-page .lmHero{
    min-height:auto;
    padding-top:calc(var(--lm-header-h) + 58px)!important;
    padding-bottom:70px!important
  }
  body.lm-structural-page .lmHero h1{font-size:clamp(44px,13vw,66px)!important;line-height:.92!important}
  body.lm-structural-page .lmHeroGlow{right:-190px;top:14%;width:460px}
  body.lm-structural-page .grid{grid-template-columns:1fr!important}
  body.lm-structural-page .lmMainInner>section:not(.lmHero){width:calc(100% - 36px)}
}


/* ===== GLOBAL HERO ENGINE V2 — CANONICAL INTERNAL PAGE GEOMETRY ===== */
:root{
  --lm-hero-max:1280px;
  --lm-hero-copy-max:980px;
  --lm-hero-min-h:620px;
  --lm-hero-pad-top:136px;
  --lm-hero-pad-bottom:88px;
  --lm-hero-h1-size:clamp(48px,5.6vw,80px);
  --lm-hero-h1-line:.94;
  --lm-hero-h1-weight:800;
  --lm-hero-copy-size:clamp(15px,1.2vw,18px);
  --lm-hero-badge-gap:16px;
}
body.lm-structural-page{
  --lm-shell-x:clamp(20px,4vw,64px);
  --lm-section-y:clamp(72px,7vw,96px);
}
body.lm-structural-page .lmMain,
body.lm-structural-page .lmMainInner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.lm-structural-page .lmHero{
  box-sizing:border-box!important;
  min-height:var(--lm-hero-min-h)!important;
  padding:var(--lm-hero-pad-top) var(--lm-shell-x) var(--lm-hero-pad-bottom)!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  border-top:0!important;
  border-bottom:1px solid var(--lm-line)!important;
  background:
    radial-gradient(circle at 74% 42%,rgba(0,242,254,.10),transparent 24%),
    radial-gradient(circle at 86% 30%,rgba(79,172,254,.12),transparent 34%),
    linear-gradient(145deg,rgba(9,13,22,.76),rgba(6,10,17,.94))!important;
}
body.lm-structural-page .lmHeroCopy{
  width:min(100%,var(--lm-hero-copy-max))!important;
  max-width:var(--lm-hero-copy-max)!important;
  margin:0!important;
  padding:0!important;
}
body.lm-structural-page .lmHeroGlow{
  right:-72px!important;
  top:20%!important;
  width:min(42vw,680px)!important;
  opacity:1!important;
}
body.lm-structural-page .lmHero .ey{
  display:block!important;
  margin:0 0 var(--lm-hero-badge-gap)!important;
  padding:0!important;
  font:800 10px/1.35 ui-monospace,monospace!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
}
body.lm-structural-page .lmHero h1{
  max-width:var(--lm-hero-copy-max)!important;
  margin:0 0 20px!important;
  padding:0!important;
  font-family:Inter,Outfit,"Space Grotesk",system-ui,sans-serif!important;
  font-size:var(--lm-hero-h1-size)!important;
  line-height:var(--lm-hero-h1-line)!important;
  font-weight:var(--lm-hero-h1-weight)!important;
  letter-spacing:-.055em!important;
  text-transform:none!important;
}
body.lm-structural-page .lmHero p,
body.lm-structural-page .lmHero .lead{
  max-width:720px!important;
  margin:0!important;
  padding:0!important;
  font-size:var(--lm-hero-copy-size)!important;
  line-height:1.62!important;
  color:#a1bbc8!important;
}
body.lm-structural-page .lmHero :is(.cta,.actions,.heroActions){
  margin-top:24px!important;
}
body.lm-structural-page .lmMainInner>section:not(.lmHero){
  width:min(calc(100% - (var(--lm-shell-x) * 2)),var(--lm-hero-max))!important;
  max-width:var(--lm-hero-max)!important;
  margin-inline:auto!important;
}
body.lm-structural-page .lmInsightsGrid .grid{
  width:100%!important;
  margin:0!important;
}
@media(max-width:760px){
  :root{
    --lm-hero-min-h:500px;
    --lm-hero-pad-top:116px;
    --lm-hero-pad-bottom:68px;
    --lm-hero-h1-size:clamp(42px,12vw,60px);
  }
  body.lm-structural-page{--lm-shell-x:18px;--lm-section-y:64px}
  body.lm-structural-page .lmHero{
    min-height:var(--lm-hero-min-h)!important;
    padding:var(--lm-hero-pad-top) var(--lm-shell-x) var(--lm-hero-pad-bottom)!important;
  }
  body.lm-structural-page .lmHeroGlow{
    right:-190px!important;
    top:14%!important;
    width:460px!important;
  }
}


/* =========================================================
   LEADS METRO — TRUE CSS ALIGNMENT LOCK
   Canonical internal-page geometry
   ========================================================= */

:root {
  --lm-layout-max: 1280px;
  --lm-layout-x: clamp(20px, 5vw, 60px);

  --lm-hero-height: 620px;
  --lm-hero-top: 132px;
  --lm-hero-bottom: 84px;

  --lm-hero-h1: clamp(40px, 5.5vw, 80px);
  --lm-hero-h1-line: 0.96;
  --lm-hero-h1-weight: 800;
  --lm-hero-h1-spacing: -0.05em;

  --lm-section-gap: clamp(64px, 7vw, 96px);
  --lm-card-gap: 18px;
}


/* ---------------------------------------------------------
   1. CANONICAL PAGE CANVAS
   Kill legacy .wrap / page-specific width differences
   --------------------------------------------------------- */

body.lm-structural-page .lmMain,
body.lm-structural-page .lmMainInner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.lm-structural-page .lmMain {
  position: relative !important;
  z-index: 1 !important;
}


/* ---------------------------------------------------------
   2. ONE HERO GEOMETRY FOR EVERY INTERNAL PAGE
   --------------------------------------------------------- */

body.lm-structural-page .lmHero {
  position: relative !important;
  isolation: isolate !important;

  width: 100% !important;
  max-width: none !important;

  min-height: var(--lm-hero-height) !important;

  margin: 0 !important;

  padding:
    var(--lm-hero-top)
    var(--lm-layout-x)
    var(--lm-hero-bottom) !important;

  box-sizing: border-box !important;

  display: flex !important;
  align-items: center !important;

  overflow: hidden !important;

  border-top: 0 !important;
  border-bottom: 1px solid rgba(79, 172, 254, 0.18) !important;

  background:
    radial-gradient(
      circle at 74% 42%,
      rgba(0, 242, 254, 0.10) 0,
      rgba(0, 242, 254, 0.045) 22%,
      transparent 42%
    ),
    radial-gradient(
      circle at 86% 30%,
      rgba(79, 172, 254, 0.12) 0,
      rgba(79, 172, 254, 0.045) 28%,
      transparent 48%
    ),
    linear-gradient(
      145deg,
      rgba(9, 13, 22, 0.78),
      rgba(6, 10, 17, 0.96)
    ) !important;
}


/* ---------------------------------------------------------
   3. HERO CONTENT CONTAINER
   --------------------------------------------------------- */

body.lm-structural-page .lmHeroCopy {
  position: relative !important;
  z-index: 2 !important;

  width: 100% !important;
  max-width: var(--lm-layout-max) !important;

  margin: 0 auto !important;
  padding: 0 !important;

  box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   4. IDENTICAL BACKGROUND CIRCLE / GLOW
   --------------------------------------------------------- */

body.lm-structural-page .lmHeroGlow {
  position: absolute !important;

  top: 50% !important;
  right: -90px !important;

  width: 620px !important;
  height: 620px !important;

  transform: translateY(-50%) !important;

  border-radius: 50% !important;

  opacity: 1 !important;

  border: 1px solid rgba(0, 242, 254, 0.10) !important;

  background:
    repeating-radial-gradient(
      circle,
      transparent 0 46px,
      rgba(79, 172, 254, 0.035) 47px 48px
    ) !important;

  box-shadow:
    0 0 90px rgba(79, 172, 254, 0.06),
    inset 0 0 80px rgba(0, 242, 254, 0.035) !important;

  pointer-events: none !important;
  z-index: -1 !important;
}


/* ---------------------------------------------------------
   5. IDENTICAL EYEBROW / BADGE POSITION
   --------------------------------------------------------- */

body.lm-structural-page .lmHero .ey {
  display: block !important;

  margin: 0 0 16px !important;
  padding: 0 !important;

  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco,
    Consolas, monospace !important;

  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;

  letter-spacing: 0.20em !important;
  text-transform: uppercase !important;

  color: #00f2fe !important;
}


/* ---------------------------------------------------------
   6. ONE H1 TOKEN — NO PAGE-SPECIFIC HERO SCALE
   --------------------------------------------------------- */

body.lm-structural-page .lmHero h1 {
  width: 100% !important;
  max-width: 980px !important;

  margin: 0 0 20px !important;
  padding: 0 !important;

  font-family:
    Inter,
    Outfit,
    "Space Grotesk",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size: clamp(40px, 5.5vw, 80px) !important;
  font-weight: var(--lm-hero-h1-weight) !important;
  line-height: var(--lm-hero-h1-line) !important;

  letter-spacing: var(--lm-hero-h1-spacing) !important;

  text-transform: none !important;
  text-wrap: balance !important;
}


/* ---------------------------------------------------------
   7. IDENTICAL HERO SUBTITLE
   --------------------------------------------------------- */

body.lm-structural-page .lmHero p,
body.lm-structural-page .lmHero .lead {
  width: 100% !important;
  max-width: 720px !important;

  margin: 0 !important;
  padding: 0 !important;

  font-size: clamp(15px, 1.2vw, 18px) !important;
  line-height: 1.62 !important;

  color: #a1bbc8 !important;
}


/* ---------------------------------------------------------
   8. IDENTICAL HERO CTA OFFSET
   --------------------------------------------------------- */

body.lm-structural-page .lmHero .cta,
body.lm-structural-page .lmHero .actions,
body.lm-structural-page .lmHero .heroActions {
  margin-top: 24px !important;
}


/* ---------------------------------------------------------
   9. ONE CONTENT CONTAINER FOR ALL SUB-PAGES
   --------------------------------------------------------- */

body.lm-structural-page
.lmMainInner > section:not(.lmHero) {

  width: calc(100% - (2 * var(--lm-layout-x))) !important;
  max-width: var(--lm-layout-max) !important;

  margin-left: auto !important;
  margin-right: auto !important;

  padding-top: var(--lm-section-gap) !important;
  padding-bottom: var(--lm-section-gap) !important;

  box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   10. STANDARD CARD GRID
   Desktop = 3 columns
   Medium = 2 columns
   Mobile = 1 column
   --------------------------------------------------------- */

body.lm-structural-page .grid,
body.lm-structural-page .portfolio,
body.lm-structural-page .systems,
body.lm-structural-page .conceptGrid {

  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap: var(--lm-card-gap) !important;

  width: 100% !important;
  max-width: none !important;

  margin-left: 0 !important;
  margin-right: 0 !important;

  align-items: stretch !important;
}


/* ---------------------------------------------------------
   11. STANDARD CARD GEOMETRY / VISUAL DEPTH
   --------------------------------------------------------- */

body.lm-structural-page
:is(
  .card,
  .projectCard,
  .systemCard,
  .conceptCard,
  .quickBlueprint,
  .blueprintCard,
  .leadCard,
  .formCard,
  .ctaCard
) {
  box-sizing: border-box !important;

  width: 100% !important;
  min-width: 0 !important;
  min-height: 150px !important;

  margin: 0 !important;
  padding: 24px !important;

  border:
    1px solid rgba(79, 172, 254, 0.18) !important;

  border-radius: 18px !important;

  background:
    radial-gradient(
      circle at 100% 0,
      rgba(0, 242, 254, 0.055),
      transparent 34%
    ),
    linear-gradient(
      145deg,
      rgba(17, 28, 43, 0.96),
      rgba(8, 14, 24, 0.98)
    ) !important;

  box-shadow:
    0 18px 48px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.025) !important;
}


/* ---------------------------------------------------------
   12. INSIGHTS MUST USE SAME GRID
   --------------------------------------------------------- */

body.lm-structural-page .lmInsightsGrid {
  width: calc(100% - (2 * var(--lm-layout-x))) !important;
  max-width: var(--lm-layout-max) !important;
}

body.lm-structural-page .lmInsightsGrid .grid {
  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap: var(--lm-card-gap) !important;

  width: 100% !important;

  margin: 0 !important;
}


/* ---------------------------------------------------------
   13. TABLET — EXACT 2 COLUMN GRID
   --------------------------------------------------------- */

@media (max-width: 980px) {

  body.lm-structural-page .grid,
  body.lm-structural-page .portfolio,
  body.lm-structural-page .systems,
  body.lm-structural-page .conceptGrid,
  body.lm-structural-page .lmInsightsGrid .grid {

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }
}


/* ---------------------------------------------------------
   14. MOBILE — ONE CANONICAL GEOMETRY
   --------------------------------------------------------- */

@media (max-width: 640px) {

  :root {
    --lm-layout-x: 18px;
    --lm-hero-height: 500px;
    --lm-hero-top: 110px;
    --lm-hero-bottom: 64px;
  }

  body.lm-structural-page .lmHero {
    min-height: var(--lm-hero-height) !important;

    padding:
      var(--lm-hero-top)
      var(--lm-layout-x)
      var(--lm-hero-bottom) !important;
  }

  body.lm-structural-page .lmHero h1 {
    font-size: clamp(40px, 11vw, 56px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.045em !important;
  }

  body.lm-structural-page .lmHeroGlow {
    width: 440px !important;
    height: 440px !important;

    right: -220px !important;
    top: 50% !important;

    transform: translateY(-50%) !important;
  }

  body.lm-structural-page
  .lmMainInner > section:not(.lmHero) {

    width:
      calc(100% - (2 * var(--lm-layout-x))) !important;

    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  body.lm-structural-page .grid,
  body.lm-structural-page .portfolio,
  body.lm-structural-page .systems,
  body.lm-structural-page .conceptGrid,
  body.lm-structural-page .lmInsightsGrid .grid {

    grid-template-columns: 1fr !important;
  }

  body.lm-structural-page
  :is(
    .card,
    .projectCard,
    .systemCard,
    .conceptCard
  ) {
    min-height: 0 !important;
    padding: 20px !important;
  }
}
