/* FHT identity and interactive backgrounds. */
.hero-inner{grid-template-columns:minmax(0,1.03fr) minmax(0,1fr)!important}.hero-intro,.neural-space{min-width:0}.neural-space{width:100%;height:440px}#neural-canvas{z-index:1!important;opacity:1!important;visibility:visible!important}.hero-inner{z-index:2!important}.brand{flex-shrink:0}.brand .logo-graph{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.logo-graph .graph-base{stroke:#cceeff;opacity:.5}.logo-graph .graph-flow{stroke:#e2fbff;stroke-dasharray:13 87;animation:graph-travel 4s linear infinite;filter:drop-shadow(0 0 2px #30baff)}.logo-graph .graph-tip{stroke:#b846cd;stroke-width:2.5}.brand:hover .graph-flow,.brand:focus-visible .graph-flow{animation-duration:1.35s;stroke:white;stroke-width:4;filter:drop-shadow(0 0 4px #4caaff)}.brand:hover .graph-base{opacity:.85}.brand:hover .graph-tip{stroke:#398de9}.brand img{object-fit:contain!important}@keyframes graph-travel{to{stroke-dashoffset:-100}}@media(max-width:650px){.neural-space{height:300px}}@media(prefers-reduced-motion:reduce){.logo-graph .graph-flow{animation:none!important;stroke-dasharray:none;opacity:.6}}
.case-card .case-image{aspect-ratio:2.65!important;border-radius:8px}.case-card .case-image img{object-fit:cover!important;object-position:center!important}.header{justify-content:space-between}.header nav{margin-left:auto}.hero-word{display:inline-block;white-space:nowrap}.hero-character{display:inline-block}.intro-animated .hero-character{animation:character-in .24s both;animation-delay:var(--char-delay)}.intro-animated>p{animation:copy-in .5s both;animation-delay:var(--copy-delay)}.intro-animated .hero-actions{animation:copy-in .5s both;animation-delay:calc(var(--copy-delay) + 180ms)}.intro-animated .hero-signature{animation:copy-in .5s both;animation-delay:calc(var(--copy-delay) + 300ms)}.hero-intro h1 em .hero-character{color:#8550d2}@keyframes character-in{from{opacity:0;transform:translateY(9px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes copy-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.button.primary,.header-cta{background:linear-gradient(115deg,#316fce,#7540ce 60%,#ae3ba5)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 5px 18px #7540ce20;transition:filter .25s,box-shadow .25s,transform .25s}.button.primary:hover,.header-cta:hover{filter:brightness(1.12);box-shadow:0 9px 25px #7540ce38}
.cycle-node.active,.cycle-node:hover,.cycle-node:focus-visible{border:1.5px solid #9851df!important;box-shadow:0 0 0 3px #9456df12,0 8px 28px #6540cf20!important}.cycle-node[data-scope="5"]{background:linear-gradient(130deg,#e1f2ff,#ece3ff,#fae4f6)!important}.cycle-node[data-scope="5"] .node-icon{color:#9a40ce}.scope-panel[data-active-scope="5"]{border-color:#ac79e4;box-shadow:0 12px 40px #7a49d412}.scope-panel[data-active-scope="5"] h3{background:linear-gradient(100deg,#2869bb,#7540bf,#a62b94);background-clip:text;color:transparent}.scope-panel{transition:background .45s,border-color .45s}
.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:45;display:flex;align-items:center;gap:10px;padding:15px;border-radius:40px;background:linear-gradient(125deg,#307ed8,#7445d8,#b444b4);color:white;box-shadow:0 7px 25px #6334ba40;transition:transform .25s,box-shadow .25s}.whatsapp-float span{font-size:14px;max-width:0;white-space:nowrap;overflow:hidden;transition:max-width .3s}.whatsapp-float:hover span,.whatsapp-float:focus-visible span{max-width:140px}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 9px 30px #6334ba60}article.case-card{cursor:default}@media(max-width:650px){.whatsapp-float{right:16px;bottom:16px;padding:12px}}
.fht-hero{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;margin:0;border:0;border-radius:0;background:var(--bg);color:#171822;min-height:670px}
#neural-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.hero-inner{position:relative;z-index:1;max-width:1440px;margin:auto;min-height:545px;padding:80px 5.2% 35px;display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:25px;pointer-events:none}
.hero-intro{max-width:660px;pointer-events:auto}.hero-intro>.eyebrow{color:#72718b;font-size:12px;letter-spacing:1.8px}.hero-intro h1{font-size:clamp(38px,4.6vw,70px);font-weight:450;line-height:1.09;letter-spacing:-3.4px;margin:25px 0}.hero-intro h1 em{font-style:normal;background:linear-gradient(110deg,#3485dc,#8350e7 55%,#cb51b4);background-clip:text;color:transparent}.hero-intro>p{font-size:17px;line-height:1.8;color:#697082;max-width:420px}.hero-intro .hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.hero-secondary{color:#45445a;font-size:14px;transition:color .2s}.hero-secondary:hover{color:#8350e7}.hero-signature{display:block;font-size:13px;color:#808598;margin-top:33px}
.neural-space{min-height:350px;position:relative}.neural-caption{position:absolute;top:-12px;right:4%;font-size:12px;letter-spacing:2px;color:#898ba3}.synapse-trigger{position:absolute;bottom:-5px;right:4%;pointer-events:auto;border:1px solid #8a72d22b;border-radius:30px;padding:12px 19px;color:#6b58a3;background:#ffffff80;backdrop-filter:blur(8px);font-size:14px;transition:background .25s,box-shadow .25s}.synapse-trigger:hover{background:#f0e9ff;box-shadow:0 0 30px #9e7aea24}.synapse-trigger span{margin-left:13px}
.hero-controls{position:relative;z-index:2;max-width:1288px;margin:0 auto;padding:0 30px 25px}.hero-switch{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.hero-switch button{font-size:14px;color:#7a7c8f;border:1px solid transparent;background:transparent;border-radius:30px;padding:12px 17px;transition:color .25s,background .25s,border-color .25s}.hero-switch button span{font-size:12px;margin-right:8px;opacity:.65}.hero-switch button[aria-pressed=true]{color:#7549c1;border-color:#d9ccf2;background:#f0eafa}.hero-switch button:hover{color:#7549c1;background:#f0eafa}.hero-floor{display:flex;justify-content:space-between;gap:25px;color:#898da1;font-size:12px;padding:22px 5px 0}.hero-floor button{background:none;border:0;color:#78748e;font-size:12px}
.fht-hero button:focus-visible,.fht-hero a:focus-visible{outline:2px solid #8856dc;outline-offset:5px}
.brand{height:70px;width:165px}.brand img{height:70px;width:165px;object-fit:contain}.logo-letter{mask-image:url('assets/fht-logo-final.webp');background:radial-gradient(ellipse at var(--liquid-x,50%) var(--liquid-y,50%),#00d5ff 0%,#2d93fc 20%,#a152eb 44%,#e040d2 65%,#6153f4 83%);background-size:210% 170%;transition:opacity .35s;filter:contrast(1.13)}.brand[data-active-letter=f] .letter-f,.brand[data-active-letter=h] .letter-h,.brand[data-active-letter=t] .letter-t,.brand:focus-visible .logo-letter{animation:liquid-color 3s ease-in-out infinite alternate;opacity:1}.logo-letter:after{content:'';position:absolute;inset:-30%;background:repeating-radial-gradient(ellipse at 40% 70%,transparent 0 12px,#ffffff35 15px,transparent 20px 34px);animation:liquid-ripple 4s ease-in-out infinite alternate;mix-blend-mode:screen}.letter-f{clip-path:polygon(0 0,37% 0,37% 82%,0 82%)}.letter-h{clip-path:polygon(37% 0,66% 0,66% 82%,37% 82%)}.letter-t{clip-path:polygon(66% 0,100% 0,100% 82%,66% 82%)}@keyframes liquid-color{from{background-position:0% 20%}to{background-position:100% 80%}}@keyframes liquid-ripple{to{transform:translate(9%,6%) rotate(18deg) scale(1.15)}}

@media(min-width:1600px){.hero-inner{min-height:610px;padding-top:100px;padding-bottom:65px}.fht-hero{min-height:740px}}
@media(max-width:900px){.hero-inner{padding:65px 5% 30px;grid-template-columns:1.2fr 1fr}.hero-intro h1{font-size:46px;letter-spacing:-2.2px}.hero-intro>p{font-size:16px}.hero-intro .hero-actions{gap:18px}.hero-intro .button{font-size:14px;padding:15px}.hero-controls{padding-inline:5%}}
@media(max-width:650px){.fht-hero{min-height:0}.hero-inner{display:block;min-height:0;padding:45px 24px 0}.hero-intro h1{font-size:clamp(36px,8.8vw,48px);letter-spacing:-1.9px}.hero-intro>p{max-width:350px;line-height:1.7}.hero-intro>.eyebrow{font-size:12px;letter-spacing:1px}.hero-signature{margin-top:22px}.neural-space{min-height:285px;margin-top:15px}.neural-caption{top:10px;right:0;font-size:12px}.synapse-trigger{bottom:15px;right:0;padding:10px 15px}.hero-controls{padding:0 20px 22px}.hero-switch{gap:5px}.hero-switch button{padding:10px 11px;font-size:12px}.hero-switch button span{margin-right:4px}.hero-floor{font-size:12px;padding-top:19px;align-items:flex-start;gap:12px}.hero-floor button{white-space:nowrap}.brand,.brand img{width:130px;height:58px}}
.neural-space{pointer-events:auto;cursor:grab;touch-action:pan-y;min-height:440px;user-select:none}.neural-space.dragging{cursor:grabbing}.neural-space:focus-visible{outline:1px solid #bea8e8;outline-offset:8px;border-radius:50%}.hero-floor{justify-content:flex-end;padding-top:0}.fht-hero{min-height:610px}
@media(max-width:650px){.neural-space{min-height:300px;touch-action:pan-y}.hero-floor{justify-content:center}.fht-hero{min-height:0}}
@media(prefers-reduced-motion:reduce){.logo-letter,.logo-letter:after{animation:none!important}.fht-hero *{transition:none!important}}

.brand .logo-letter{background:radial-gradient(ellipse at var(--liquid-x,50%) var(--liquid-y,50%),#b3eaff 0%,#16bfff 16%,#6049f0 35%,#c548ce 65%,#315ddf 90%);background-size:220% 220%;mask-size:100% 100%;mask-repeat:no-repeat}
.brand .logo-letter:after{inset:-60%;background:repeating-radial-gradient(ellipse at 40% 60%,transparent 0 16px,#b5eaffaa 18px,transparent 24px 45px);filter:blur(1px);animation:fluid-inside 3s ease-in-out infinite alternate;mix-blend-mode:screen}
@keyframes fluid-inside{0%{transform:translate(-8%,-5%) rotate(-14deg) scale(1.1,.8)}50%{transform:translate(7%,5%) rotate(8deg) scale(.8,1.2)}100%{transform:translate(-2%,9%) rotate(28deg) scale(1.2,.9)}}
.brand,.brand img{width:195px;height:88px}.brand img{mix-blend-mode:normal}.brand .letter-f{clip-path:polygon(0 0,39% 0,39% 68%,0 68%)}.brand .letter-h{clip-path:polygon(39% 0,61% 0,61% 68%,39% 68%)}.brand .letter-t{clip-path:polygon(61% 0,100% 0,100% 68%,61% 68%)}@media(max-width:650px){.brand,.brand img{width:165px;height:74px}.case-card .case-image{aspect-ratio:2.2!important}}@media(prefers-reduced-motion:reduce){.intro-animated *,.brand .logo-letter:after{animation:none!important}}
/* v12 — header, cases and compact AI lab */
.header{justify-content:flex-start!important;gap:18px!important;background:var(--bg,#f8f9fb)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.header .brand{flex:0 0 auto}
.header nav{margin-left:2px!important;gap:24px!important}
.menu-toggle{margin-left:auto}
#cases .case-card{display:block;min-width:0}
#cases .case-image{width:100%;aspect-ratio:2.35/1!important;overflow:hidden;background:#ececf2!important}
#cases .case-image img{position:absolute!important;inset:0;width:100%!important;height:100%!important;display:block;object-fit:cover!important;object-position:center!important;padding:0!important;transform:none!important}
.ai-projects{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.ai-projects .ai-project{padding:20px!important;min-height:340px!important}
.ai-projects .ai-featured{grid-column:span 2;min-height:420px!important}
.ai-projects .mini-project{min-height:420px!important}
.ai-projects .ai-project:last-child{grid-column:auto!important}
.ai-project h3{font-size:23px!important;margin:14px 0 8px!important}
.ai-project>p{font-size:13px!important;line-height:1.55!important}
.ai-projects .project-tags{margin-top:auto!important;padding-top:14px}
.lab-dashboard{margin-top:14px!important}
.lab-dashboard img{aspect-ratio:3.25!important;object-fit:cover!important;object-position:top center}
.mini-live{display:block!important;margin-top:13px!important}
.mini-live video{height:155px!important;object-fit:cover!important}
.mini-live h4{font-size:18px!important;margin:9px 0 5px!important}
.mini-live p{font-size:12px!important;line-height:1.45!important}
.mini-live .button{margin-top:10px!important;padding:8px 11px!important;font-size:12px!important}
.calculator-showcase{height:180px!important;margin:13px 0 0!important}
.calculator-screen{height:155px!important;top:12px!important}
.thermo{margin-top:14px!important}
.confidential-mark{margin:18px 0 8px!important;padding:20px 15px!important}
.header nav a,.hero-secondary,.text-link,.footer a,.expanded-brands summary,.lux-tabs button,.cycle-node>span,.role-tags span,.project-tags span,.case-info p,.trajectory-case h3,.ai-project h3{background-size:220% 100%;transition:color .25s,background-position .45s,transform .25s}
.header nav a:hover,.header nav a:focus-visible,.hero-secondary:hover,.hero-secondary:focus-visible,.text-link:hover,.text-link:focus-visible,.footer a:hover,.footer a:focus-visible,.expanded-brands summary:hover,.expanded-brands summary:focus-visible,.lux-tabs button:hover,.lux-tabs button:focus-visible,.cycle-node:hover>span,.cycle-node:focus-visible>span,.role-tags span:hover,.project-tags span:hover,.case-card:hover .case-info p,.trajectory-case:hover h3,.ai-project:hover h3{background-image:linear-gradient(90deg,#00b8f5,#7041e7 48%,#dc40db 75%,#00b8f5);background-position:100% 50%;background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
@media(max-width:1100px){.header{gap:12px!important;padding-left:28px!important;padding-right:28px!important}.header nav{gap:15px!important}.ai-projects{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ai-projects .ai-featured{grid-column:1/-1}}
@media(max-width:760px){.header{padding-left:18px!important;padding-right:18px!important}.header nav{margin-left:0!important}#cases .case-image{aspect-ratio:1.9/1!important}.ai-projects{grid-template-columns:1fr!important}.ai-projects .ai-featured{grid-column:auto}.ai-projects .ai-project,.ai-projects .ai-featured,.ai-projects .mini-project{min-height:0!important}.mini-live video{height:210px!important}}
@media(prefers-reduced-motion:reduce){.header nav a,.hero-secondary,.text-link,.footer a,.expanded-brands summary,.lux-tabs button,.cycle-node>span,.role-tags span,.project-tags span,.case-info p,.trajectory-case h3,.ai-project h3{transition:none!important}}
/* v13 — transparent hero header, refined mini-video drawer and statement footer */
.header{background:transparent!important;border-bottom:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:background .35s,box-shadow .35s,backdrop-filter .35s}
.header.is-scrolled{background:rgba(249,250,251,.78)!important;box-shadow:0 10px 34px rgba(35,25,65,.07)!important;backdrop-filter:blur(20px) saturate(1.22)!important;-webkit-backdrop-filter:blur(20px) saturate(1.22)!important}
#mini-dialog{width:min(94vw,500px)!important;max-width:500px!important;padding:0!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:22px 0 0 22px!important;background:radial-gradient(circle at 85% 8%,rgba(112,65,231,.24),transparent 32%),#11121a!important;color:#f7f7fb!important;scrollbar-color:#7041e7 #171823}
#mini-dialog .dialog-close{top:16px;right:16px;z-index:3;width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:14px;transition:background .25s,transform .25s}
#mini-dialog .dialog-close:hover{background:rgba(255,255,255,.15);transform:rotate(8deg)}
.mini-drawer-head{padding:42px 30px 20px}
.mini-drawer-head .eyebrow{font-size:11px;letter-spacing:1.3px;color:#a895cf}
#mini-dialog h2{margin:14px 0 12px!important;font-size:29px!important;line-height:1.12!important;letter-spacing:-1.3px!important;font-weight:500}
#mini-dialog h2 em{font-style:normal;background:linear-gradient(90deg,#63ddff,#9672ff 52%,#ff68cf);background-clip:text;-webkit-background-clip:text;color:transparent}
#mini-dialog .mini-dialog-lead{max-width:410px;margin:0!important;color:#aaa7b6;font-size:13px!important;line-height:1.6!important}
.drawer-video-shell{position:relative;margin:0 30px;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;background:#090a0f;box-shadow:0 16px 48px rgba(0,0,0,.3)}
#mini-dialog .drawer-video{display:block;width:100%;height:255px;max-height:none;object-fit:contain;background:#080910;border-radius:0}
.drawer-video-shell>span{position:absolute;left:12px;bottom:11px;padding:5px 9px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(10,10,17,.76);backdrop-filter:blur(9px);color:#d8d5e2;font-size:11px}
.drawer-points{margin:20px 30px 0;border-top:1px solid rgba(255,255,255,.1)}
.drawer-points article{display:grid;grid-template-columns:28px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.drawer-points article>span{padding-top:1px;color:#9b76e9;font-size:11px}
.drawer-points strong{display:block;color:#f2f1f6;font-size:13px;font-weight:500;line-height:1.35}
#mini-dialog .drawer-points p{margin:3px 0 0!important;color:#8f8b9b;font-size:12px!important;line-height:1.45!important}
#mini-dialog .drawer-cta{width:calc(100% - 60px);margin:22px 30px 30px;min-height:48px;padding:11px 16px;font-size:13px}
.site-footer{position:relative;isolation:isolate;overflow:hidden;padding:92px 0 0;background:#090a11;color:#f8f8fc}
.site-footer:before{content:'';position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.site-footer:after{content:'FHT';position:absolute;right:-2vw;bottom:-16vw;z-index:-1;font:700 min(34vw,520px)/1 Manrope,sans-serif;letter-spacing:-.1em;color:rgba(255,255,255,.018);pointer-events:none}
.footer-aurora{position:absolute;width:720px;height:560px;left:-220px;top:-260px;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(0,184,245,.18),rgba(112,65,231,.12) 42%,transparent 70%);filter:blur(12px);animation:footer-breathe 7s ease-in-out infinite alternate;pointer-events:none}
.footer-main{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(420px,1.1fr);gap:8vw;align-items:center;padding-bottom:66px}
.site-footer .footer-brand,.site-footer .footer-brand img{width:clamp(290px,30vw,430px)!important;height:auto!important}
.site-footer .footer-brand{position:relative;filter:drop-shadow(0 0 28px rgba(112,65,231,.18))}
.site-footer .footer-brand img{filter:brightness(1.18) saturate(1.18) drop-shadow(0 0 16px rgba(87,107,255,.22))!important}
.site-footer .footer-brand .logo-graph{filter:drop-shadow(0 0 6px rgba(80,191,255,.45))}
.footer-statement>span{display:block;color:#858092;font-size:11px;letter-spacing:1.65px}
.footer-statement h2{margin:19px 0 18px;color:#f7f6fb;font-size:clamp(39px,4.4vw,66px);line-height:1.04;letter-spacing:-3px}
.footer-statement h2 em{font-style:normal;background:linear-gradient(90deg,#61ddff,#8d6dff 48%,#f05bce);background-clip:text;-webkit-background-clip:text;color:transparent}
.footer-statement p{max-width:520px;color:#8d8997;font-size:14px;line-height:1.7}
.footer-connect{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.footer-email{display:flex;align-items:center;gap:22px;color:#f2f0f7;font-size:clamp(18px,2vw,27px);letter-spacing:-.4px}
.footer-email span{font-size:25px;color:#9a73eb;transition:transform .25s}
.footer-email:hover span{transform:translate(4px,-4px)}
.footer-connect nav{display:flex;align-items:center;gap:25px}
.footer-connect nav a{color:#9a96a5;font-size:13px;transition:color .25s,transform .25s}
.footer-connect nav a:hover{color:#fff;transform:translateY(-2px)}
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;width:auto;padding:24px 0;border:0;color:#6f6b7b;font-size:11px}
.site-footer .footer-bottom button{border:0;background:none;padding:0;color:#807a8d;font-size:11px}
@keyframes footer-breathe{to{transform:translate(100px,70px) scale(1.18);opacity:.78}}
@media(max-width:900px){
  .footer-main{grid-template-columns:1fr;gap:40px}
  .site-footer .footer-brand,.site-footer .footer-brand img{width:min(78vw,390px)!important}
  .footer-statement{max-width:620px}
  .footer-connect{align-items:flex-start;flex-direction:column}
}
@media(max-width:650px){
  .header{background:rgba(249,250,251,.4)!important}
  .header.is-scrolled{background:rgba(249,250,251,.88)!important}
  #mini-dialog{width:96vw!important;border-radius:18px 0 0 18px!important}
  .mini-drawer-head{padding:45px 20px 17px}
  .drawer-video-shell,.drawer-points{margin-left:20px;margin-right:20px}
  #mini-dialog .drawer-video{height:220px}
  #mini-dialog .drawer-cta{width:calc(100% - 40px);margin:20px}
  .site-footer{padding-top:68px}
  .footer-main{padding-bottom:45px}
  .footer-statement h2{font-size:40px;letter-spacing:-2px}
  .footer-connect nav{flex-wrap:wrap;gap:15px 22px}
  .footer-email{font-size:17px;overflow-wrap:anywhere}
  .site-footer .footer-bottom{align-items:flex-start;flex-direction:column;padding:22px 0 30px}
}
@media(prefers-reduced-motion:reduce){.footer-aurora{animation:none}}
/* v14 — neural resilience and intent-based motion pause */
#neural-canvas{display:block!important;opacity:1!important;visibility:visible!important;min-width:100%;min-height:100%;background:transparent!important}
.neural-space:before{content:'';position:absolute;inset:8%;z-index:0;border-radius:50%;background:radial-gradient(circle,rgba(112,65,231,.075),rgba(0,184,245,.035) 42%,transparent 70%);filter:blur(15px);pointer-events:none}
.fht-hero.neural-ready .neural-space:before{animation:neural-halo 3.2s ease-in-out infinite alternate}
.brand-window:hover .brand-track{animation-play-state:running}
.brand-window:has(.brand-tile:hover) .brand-track,.brand-window:focus-within .brand-track{animation-play-state:paused}
@keyframes neural-halo{to{transform:scale(1.08);opacity:.72}}
@media(prefers-reduced-motion:reduce){.fht-hero.neural-ready .neural-space:before{animation:none}}
/* v15 — visible neural scaffold, scroll parallax and journey autoplay */
.fht-hero{--neural-opacity:1;--neural-scale:1;--neural-shift:0px}
.neural-space{isolation:isolate}
#neural-canvas{opacity:var(--neural-opacity)!important;transform:translate3d(0,var(--neural-shift),0) scale(var(--neural-scale));transform-origin:73% 46%;transition:opacity .08s linear;will-change:transform,opacity}
.neural-scaffold{position:absolute;inset:0;z-index:0;width:100%;height:100%;opacity:var(--neural-opacity);transform:translate3d(0,var(--neural-shift),0) scale(var(--neural-scale));transform-origin:50% 50%;transition:opacity .08s linear;will-change:transform,opacity;pointer-events:none}
.neural-wire{stroke-width:1.25;opacity:.58}
.neural-nodes circle{filter:drop-shadow(0 0 7px rgba(83,128,255,.72))}
.neural-signal{stroke-width:3;stroke-dasharray:14 96;filter:drop-shadow(0 0 5px rgba(93,112,255,.7));animation:neural-signal-run 3s linear infinite}
.trajectory-case{outline:none}
.trajectory-case.auto-active{background:#211f2d;transform:translateY(-4px);border-color:var(--accent);box-shadow:0 10px 32px rgba(0,0,0,.26)}
.trajectory-case.auto-active:before{opacity:.3}
.trajectory-case.auto-active strong{color:var(--accent)}
.trajectory-case:after{content:'';position:absolute;left:20px;right:20px;bottom:0;height:2px;border-radius:4px;background:var(--accent);transform:scaleX(0);transform-origin:left;opacity:.85}
.trajectory-case.auto-active:after{animation:trajectory-progress 2s linear both}
@keyframes neural-signal-run{to{stroke-dashoffset:-110}}
@keyframes trajectory-progress{to{transform:scaleX(1)}}
@media(max-width:650px){.neural-wire{stroke-width:1.5}}
@media(prefers-reduced-motion:reduce){#neural-canvas,.neural-scaffold{transform:none!important;opacity:1!important}.neural-signal,.trajectory-case.auto-active:after{animation:none!important}}

/* v16 — organic neural canvas; the geometric fallback must never replace it. */
.neural-space{position:relative;overflow:visible;isolation:isolate}
.neural-scaffold{display:none!important}
.neural-space #neural-canvas{position:absolute!important;inset:0!important;z-index:2!important;display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;pointer-events:none!important;opacity:var(--neural-opacity)!important;transform:translate3d(0,var(--neural-shift),0) scale(var(--neural-scale));transform-origin:50% 50%;visibility:visible!important;will-change:transform,opacity}
.neural-space:before{z-index:1;inset:12%;opacity:.72}

/* v17 — persistent organic neural field with proximity glow and 3D parallax. */
.neural-space{--neural-x:50%;--neural-y:48%;--neural-rx:0deg;--neural-ry:0deg;perspective:900px;background:none!important;opacity:var(--neural-opacity)}
.neural-space #neural-canvas{display:none!important}
.neural-space:before,.neural-space:after{content:'';position:absolute;inset:-1% 0;pointer-events:none;background:url('assets/neural-organic.svg') center/contain no-repeat;transform:translate3d(0,var(--neural-shift),0) scale(var(--neural-scale)) rotateX(var(--neural-rx)) rotateY(var(--neural-ry));transform-origin:50% 50%;will-change:transform,opacity,filter;transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.neural-space:before{z-index:1;opacity:.84;filter:saturate(.95) drop-shadow(0 14px 28px rgba(75,98,211,.1));animation:none!important}
.neural-space:after{z-index:2;opacity:.34;filter:saturate(1.35) brightness(1.06) drop-shadow(0 0 9px rgba(96,105,238,.55));-webkit-mask-image:radial-gradient(circle 155px at var(--neural-x) var(--neural-y),#000 0 28%,rgba(0,0,0,.82) 54%,transparent 100%);mask-image:radial-gradient(circle 155px at var(--neural-x) var(--neural-y),#000 0 28%,rgba(0,0,0,.82) 54%,transparent 100%);animation:neural-idle-flash 2.15s ease-in-out infinite}
.neural-space.neural-engaged:after{opacity:1;animation:none;filter:saturate(1.55) brightness(1.12) drop-shadow(0 0 13px rgba(88,103,241,.72))}
.neural-space.dragging:before,.neural-space.dragging:after{transition:opacity .16s ease}
@keyframes neural-idle-flash{0%,100%{opacity:.14;filter:saturate(1.1) drop-shadow(0 0 4px rgba(90,115,235,.25))}42%{opacity:.58;filter:saturate(1.5) brightness(1.1) drop-shadow(0 0 13px rgba(106,81,224,.65))}62%{opacity:.28}}
@media(max-width:650px){.neural-space:before,.neural-space:after{inset:0 -8%}.neural-space:after{-webkit-mask-image:radial-gradient(circle 110px at var(--neural-x) var(--neural-y),#000 0 24%,transparent 100%);mask-image:radial-gradient(circle 110px at var(--neural-x) var(--neural-y),#000 0 24%,transparent 100%)}}
@media(prefers-reduced-motion:reduce){.neural-space:before,.neural-space:after{transform:none!important;animation:none!important}.neural-space:after{opacity:.38}}
