/* Neura Assets (/assets/): the investor page. Scoped to body.na; tokens (--paper, --ink, --acc-*, ...) and shared
   components (.btn, .sec, .head, .lede, .contact, .cf) come from neura.css. Entrance motion uses the site's .in/.shown. */

/* ---------- hero: the homepage network behind a centred headline ---------- */
.na-hero{position:relative;min-height:min(86vh,800px);display:grid;align-items:center;overflow:hidden}
.na-hero canvas{position:absolute;inset:0;width:100%;height:100%}
.na-hero-in{position:relative;display:grid;justify-items:center;text-align:center;padding-block:calc(var(--hdr) + 40px) 56px;pointer-events:none}
.na-hero-in a{pointer-events:auto}
.na-hero h1{font-size:clamp(42px,6vw,82px);line-height:.98;letter-spacing:-.042em;max-width:13ch}
.na-hero .lede{margin-top:26px;font-size:clamp(16.5px,1.3vw,18px);max-width:46ch;text-wrap:pretty}
.na-hero .ctas{justify-content:center;margin-top:32px}
.na-trio{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 34px;margin:36px 0 0;padding:0}
.na-trio li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--ink-2)}
.na-trio b{font-weight:500;color:var(--ink)}
.na-trio svg{width:21px;height:21px;flex:none;fill:none;stroke:var(--acc-deep);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}

/* ---------- the technology, then the product ---------- */
.na-tech{display:grid;justify-items:center;text-align:center;padding-top:clamp(32px,5vw,64px)}
.na-tech h2{font-size:clamp(28px,3.2vw,44px);line-height:1.08;letter-spacing:-.03em;max-width:22ch}
.na-tech > .lede{margin-top:18px;max-width:54ch}
.na-shot{position:relative;width:100%;max-width:1160px;margin:clamp(36px,4.4vw,56px) 0 0;perspective:2200px}
.na-shot .glow{position:absolute;left:10%;right:10%;top:14%;bottom:6%;z-index:-1;background:radial-gradient(50% 55% at 50% 45%,rgba(237,167,118,.55),transparent 72%);filter:blur(60px)}
.na-shot .frame{padding:8px;border-radius:22px;background:linear-gradient(180deg,rgba(251,250,247,.92),rgba(251,250,247,.6));border:1px solid rgba(255,255,255,.95);box-shadow:0 0 0 1px rgba(28,28,26,.06),0 60px 110px -60px rgba(60,35,15,.55),0 16px 34px -22px rgba(28,28,26,.3);transform-origin:50% 0}
.na-shot img{display:block;width:100%;height:auto;border-radius:14px}
.na-shot figcaption{margin-top:16px;font-size:13px;color:var(--mute)}
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.na-shot .frame{animation:na-tilt linear both;animation-timeline:view();animation-range:entry 0% cover 40%}}}
@keyframes na-tilt{from{transform:rotateX(14deg) scale(.955)}to{transform:none}}
.na-partners{margin-top:clamp(56px,7vw,88px)}
.na-partners .marks{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:12px clamp(36px,6vw,88px);margin-top:18px}
.na-partners .marks span{font-size:clamp(19px,1.9vw,24px);font-weight:600;letter-spacing:-.03em;color:#9a958c}
.na-tech + .sec{margin-top:clamp(96px,11vw,148px)}

/* ---------- cards ---------- */
.na-card{background:linear-gradient(180deg,rgba(251,250,247,.94),rgba(248,247,243,.82));border-radius:22px;box-shadow:0 0 0 1px rgba(28,28,26,.06),0 30px 60px -44px rgba(60,40,20,.35)}

/* ---------- how it works: the Asset Co is the star (where the money goes); Neura Energy and the businesses support it.
   The flow plays once on arrival: the cards appear in turn and the lines draw from one to the next. ---------- */
.na-flow{display:grid;grid-template-columns:minmax(0,.9fr) 124px minmax(0,1.2fr) 124px minmax(0,.9fr);align-items:center}
.js .na-flow.in{opacity:1;transform:none}
.na-node{position:relative;display:flex;flex-direction:column;transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .na-flow:not(.shown) .na-node{opacity:0;transform:translateY(14px)}
.na-flow .na-node:nth-of-type(2){transition-delay:.8s}
.na-flow .na-node:nth-of-type(3){transition-delay:1.6s}
.na-node .edge{position:absolute;top:-1px;left:26px;right:26px;height:2px;border-radius:2px;z-index:3;background:linear-gradient(90deg,rgba(222,132,79,0),var(--acc-deep) 50%,rgba(222,132,79,0));transform:scaleX(0);transition:transform .9s var(--ease) .35s}
.na-flow.shown .na-node .edge{transform:scaleX(1)}
.na-flow .na-node:nth-of-type(2) .edge{transition-delay:1.15s}
.na-flow .na-node:nth-of-type(3) .edge{transition-delay:1.95s}
/* supporting cards: quiet, flat, smaller type */
.na-node.minor{padding:24px 24px 22px;border-radius:20px;background:rgba(251,250,247,.55);box-shadow:0 0 0 1px var(--rule)}
.na-node.minor h3{font-size:18px;letter-spacing:-.015em}
.na-node.minor header p{color:var(--mute);font-size:13.5px;line-height:1.5;margin-top:3px}
.na-node .with-mark{display:flex;align-items:center;gap:12px}
.na-node .mark{flex:none;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(160deg,#e9965f,#c8642c);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 18px -10px rgba(175,80,25,.7)}
.na-node .mark svg{width:21px;height:14px}
.na-node .roles{list-style:none;margin:16px 0 0;padding:0}
.na-node .roles li{display:flex;align-items:center;gap:11px;padding:8px 0;border-top:1px solid var(--rule);font-size:14px;color:var(--ink-2)}
.na-node .roles svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--acc-deep);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.na-node .big{padding-top:18px}
.na-node .big .v{display:block;font-size:clamp(36px,3.4vw,46px);font-weight:500;letter-spacing:-.045em;line-height:.95;font-variant-numeric:tabular-nums}
.na-node .big .k{display:block;margin-top:6px;font-size:13.5px;color:var(--mute)}
.na-node .mini{margin:16px 0 0}
.na-node .mini div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-top:1px solid var(--rule)}
.na-node .mini dt{font-size:13px;color:var(--mute)}
.na-node .mini dd{margin:0;font-size:13.5px;font-weight:500;text-align:right;font-variant-numeric:tabular-nums}
/* the star: the Asset Co. Plain ink, one soft light from the top edge, a single big figure, label/value rows that can't overflow */
.na-node.star{padding:36px 36px 34px;border-radius:28px;color:var(--paper);overflow:hidden;isolation:isolate;
  background:radial-gradient(70% 34% at 50% 0%,rgba(237,167,118,.16),transparent 72%),linear-gradient(180deg,#252421,#1c1b19);
  box-shadow:0 0 0 1px #1c1b19,inset 0 1px 0 rgba(255,255,255,.07),0 56px 100px -52px rgba(28,28,26,.7),0 30px 64px -42px rgba(175,80,25,.4)}
.na-node.star .edge{left:36px;right:36px;background:linear-gradient(90deg,rgba(237,167,118,0),#f2b58a 50%,rgba(237,167,118,0));box-shadow:0 0 16px rgba(237,167,118,.55)}
.na-node.star .st-tag{margin:0;font-size:13px;color:var(--acc)}
.na-node.star h3{margin:10px 0 0;font-size:clamp(28px,2.5vw,34px);line-height:1.05;letter-spacing:-.03em;color:#fbfaf7}
.na-node.star .st-sub{margin:10px 0 0;font-size:15px;line-height:1.55;color:rgba(242,240,234,.62);max-width:32ch}
.na-node.star .st-fig{margin-top:30px;padding-top:22px;border-top:1px solid rgba(242,240,234,.1)}
.na-node.star .st-fig .k{display:block;font-size:13px;color:rgba(242,240,234,.55)}
.na-node.star .st-fig .v{display:block;margin-top:6px;font-size:clamp(48px,4.6vw,64px);font-weight:500;letter-spacing:-.048em;line-height:.95;color:#fbfaf7;font-variant-numeric:tabular-nums;white-space:nowrap}
.na-node.star .st-fig .v b{font-weight:500;color:var(--acc);margin-left:.02em}
.na-node.star .st-rows{margin:24px 0 0}
.na-node.star .st-rows div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-top:1px solid rgba(242,240,234,.1)}
.na-node.star .st-rows div:last-child{border-bottom:1px solid rgba(242,240,234,.1)}
.na-node.star .st-rows dt{font-size:14px;color:rgba(242,240,234,.6)}
.na-node.star .st-rows dd{margin:0;font-size:16px;font-weight:500;color:#fbfaf7;font-variant-numeric:tabular-nums;white-space:nowrap}
.na-node.star .st-cta{margin-top:28px;width:100%;height:50px;justify-content:center;background:var(--acc);border-color:var(--acc);color:var(--ink)}
.na-node.star .st-cta:hover{background:#f2b58a;border-color:#f2b58a}
.na-arrow{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:0 14px}
.na-arrow .lb{font-size:12.5px;color:var(--mute);white-space:nowrap;transition:opacity .6s ease 1s}
.na-arrow ~ .na-arrow .lb{transition-delay:1.8s}
.js .na-flow:not(.shown) .na-arrow .lb{opacity:0}
.na-arrow .ln{position:relative;width:100%;height:1.5px;background:var(--line)}
.na-arrow .ln i{position:absolute;inset:0;background:linear-gradient(90deg,rgba(222,132,79,.35),var(--acc-deep));transform-origin:left center;transition:transform .75s cubic-bezier(.65,0,.35,1) .5s}
.na-arrow ~ .na-arrow .ln i{transition-delay:1.3s}
.js .na-flow:not(.shown) .na-arrow .ln i{transform:scaleX(0)}
.na-arrow .ln::after{content:"";position:absolute;right:0;top:50%;width:7px;height:7px;border-top:1.5px solid var(--acc-deep);border-right:1.5px solid var(--acc-deep);transform:translate(-1px,-50%) rotate(45deg);transition:opacity .3s ease 1.2s}
.na-arrow ~ .na-arrow .ln::after{transition-delay:2s}
.js .na-flow:not(.shown) .na-arrow .ln::after{opacity:0}

/* ---------- why: price comparison and press ---------- */
.na-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,88px);align-items:center}
.na-split .lede{margin-top:22px}
@media (min-width:961px){.na-split.flip > div:first-child{order:2}}
.na-compare{padding:34px 34px 26px}
.na-compare .label{display:block;margin-bottom:22px}
.na-compare .bar + .bar{margin-top:26px}
.na-compare .lbl{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.na-compare .lbl span{color:var(--ink-2);font-size:15px}
.na-compare .lbl b{font-size:clamp(24px,2.4vw,32px);font-weight:500;letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap}
.na-compare .lbl small{font-size:13px;font-weight:400;color:var(--mute);letter-spacing:0;margin-right:4px}
.na-compare .ours .lbl b{color:var(--acc-fig)}
.na-compare .track{margin-top:12px;height:10px;border-radius:999px;background:var(--paper-2)}
.na-compare .track i{display:block;height:100%;width:calc(var(--w) * 100%);border-radius:inherit;transform-origin:left center;transition:transform 1.2s var(--ease) .25s}
.js .na-compare:not(.shown) .track i{transform:scaleX(.02)}
.na-compare .grid .track i{background:#c9c4ba}
.na-compare .ours .track i{background:linear-gradient(90deg,var(--acc),var(--acc-deep))}
.na-compare .foot{margin-top:26px;padding-top:16px;border-top:1px solid var(--rule);color:var(--mute);font-size:14px}
.na-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(64px,7vw,96px)}
.na-quotes .qt{width:auto;padding:4px 32px 0}
.na-quotes .qt:first-child{padding-left:0;border-left:0}
.na-quotes .qt blockquote a{color:inherit;text-decoration:none}
.na-quotes .qt blockquote a:hover em{color:var(--acc-ink)}

/* ---------- market: rooftops vs solar farms ---------- */
.na-one{margin-top:36px;padding-top:24px;border-top:1px solid var(--rule);max-width:520px}
.na-one .v{display:block;font-size:clamp(48px,5.4vw,72px);font-weight:500;letter-spacing:-.05em;line-height:.95;color:var(--acc-fig)}
.na-one .k{display:block;margin-top:12px;font-size:15px;color:var(--mute)}
.na-ring{margin:0;padding:36px 36px 24px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px 36px;align-items:center}
.na-ring .ring{position:relative;width:210px;height:210px}
.na-ring svg{display:block;width:100%;height:100%}
.na-ring .trk{fill:none;stroke:var(--paper-2);stroke-width:14}
.na-ring .arc{fill:none;stroke-width:14;stroke-dasharray:var(--l) 1000;stroke-dashoffset:0;transition:stroke-dashoffset 1.5s var(--ease) .25s}
.na-ring .arc.farm{transition-delay:.9s}
.js .na-ring:not(.shown) .arc{stroke-dashoffset:var(--l)}
.na-ring .roof{stroke:var(--acc-deep)}
.na-ring .farm{stroke:#c9c4ba}
.na-ring .mid{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.na-ring .mid .v{font-size:30px;font-weight:500;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.na-ring .mid .k{font-size:13px;color:var(--mute);margin-top:2px}
.na-ring .legend{list-style:none;margin:0;padding:0}
.na-ring .legend li{display:grid;grid-template-columns:10px minmax(0,1fr);align-items:center;gap:4px 12px;padding:16px 0;border-bottom:1px solid var(--rule)}
.na-ring .legend li:first-child{border-top:1px solid var(--rule)}
.na-ring .legend i{width:10px;height:10px;border-radius:3px}
.na-ring .legend i.o{background:var(--acc-deep)}
.na-ring .legend i.g{background:#c9c4ba}
.na-ring .legend span{color:var(--ink-2);font-size:14.5px}
.na-ring .legend b{grid-column:2;font-size:27px;font-weight:500;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums}
.na-ring figcaption{grid-column:1/-1;margin-top:8px;font-size:12px;color:var(--soft)}

/* ---------- offering ---------- */
.na-offer{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);padding:clamp(30px,4.4vw,56px)}
.na-offer::before{content:"";position:absolute;right:-12%;top:-45%;width:72%;height:125%;background:radial-gradient(closest-side,rgba(252,229,211,.75),transparent);pointer-events:none}
.na-offer > *{position:relative}
.na-offer .lede{margin-top:20px;max-width:44ch}
.na-offer .ctas{margin-top:32px}
.na-offer .rows{margin:0;align-self:center}
.na-offer .rows div{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:15px 0;border-bottom:1px solid var(--rule)}
.na-offer .rows div:first-child{border-top:1px solid var(--rule)}
.na-offer .rows dt{color:var(--mute);font-size:15px}
.na-offer .rows dd{margin:0;font-weight:500;text-align:right;font-variant-numeric:tabular-nums}
.na-docs{margin-top:22px;font-size:12.5px;line-height:1.6;color:var(--mute);max-width:110ch}

/* ---------- tablet ---------- */
@media (min-width:961px) and (max-width:1240px){.na-node .mini div{flex-direction:column;align-items:flex-start;gap:2px}.na-node .mini dd{text-align:left}}
@media (max-width:960px){
  .na-flow{grid-template-columns:minmax(0,1fr);max-width:560px;margin-inline:auto}
  .na-arrow{flex-direction:row;height:72px;gap:0;padding:0}
  .na-arrow .ln{width:1.5px;height:100%;order:-1}
  .na-arrow .ln i{background:linear-gradient(180deg,rgba(222,132,79,.35),var(--acc-deep));transform-origin:center top}
  .js .na-flow:not(.shown) .na-arrow .ln i{transform:scaleY(0)}
  .na-arrow .ln::after{right:auto;left:50%;top:auto;bottom:0;transform:translate(-50%,-1px) rotate(135deg)}
  .na-arrow .lb{position:absolute;left:calc(50% + 16px)}
  .na-flow .na-node:nth-of-type(2){transition-delay:.5s}
  .na-flow .na-node:nth-of-type(3){transition-delay:.9s}
  .na-split,.na-offer{grid-template-columns:minmax(0,1fr)}
  .na-quotes{grid-template-columns:minmax(0,1fr)}
  .na-quotes .qt,.na-quotes .qt:first-child{padding:20px 0;border-left:0;border-top:1px solid var(--rule)}
  .na-ring{grid-template-columns:minmax(0,1fr);justify-items:center;padding:28px 22px 20px}
  .na-ring .legend{width:100%}
}
/* ---------- phone ---------- */
@media (max-width:600px){
  .na-hero{min-height:0}
  .na-hero-in{padding-block:calc(var(--hdr) + 28px) 150px}
  .na-hero h1{font-size:clamp(38px,10.6vw,46px);letter-spacing:-.04em}
  .na-hero .ctas{width:100%}
  .na-hero .ctas .btn{flex:1 1 100%;justify-content:center}
  .na-trio{flex-direction:column;align-items:center;gap:10px;margin-top:28px}
  .na-shot .frame{padding:5px;border-radius:15px}
  .na-shot img{border-radius:10px}
  .na-node.minor{padding:20px 18px 18px}
  .na-node.star{padding:28px 22px 24px;border-radius:24px}
  .na-node.star .edge{left:22px;right:22px}
  .na-compare{padding:24px 20px 20px}
  .na-compare .lbl{flex-direction:column;align-items:flex-start;gap:2px}
  .na-ring .ring{width:200px;height:200px}
  .na-offer{padding:26px 20px;border-radius:20px}
}
@media (prefers-reduced-motion:reduce){
  .na-flow .na-node,.na-node .edge,.na-arrow .lb,.na-arrow .ln i,.na-arrow .ln::after,.na-compare .track i,.na-ring .arc{transition:none!important}
}
