/* A shared forensic interface: real content, precise edges and travelling traces. */
:root{--tech-red:#ef8b98;--tech-ice:#f6c5cb;--tech-stroke:rgba(218,126,137,.3)}
.tech-section{position:relative;isolation:isolate}
.tech-section-rail{position:absolute;inset:0 0 auto;height:1px;overflow:hidden;pointer-events:none;z-index:4;background:linear-gradient(90deg,transparent 3%,#aa535e4d 17%,#c9909729 75%,transparent)}
.tech-section-rail:after{content:"";position:absolute;width:180px;height:1px;left:-180px;top:0;background:linear-gradient(90deg,transparent,#f9b2bb,transparent);animation:tech-divider 12s linear infinite;animation-delay:var(--tech-delay,0s);opacity:.8}
.tech-identifier{position:relative;padding-left:29px}
.tech-identifier:before{content:"";position:absolute;left:0;top:.38em;width:16px;height:10px;border-left:2px solid #f296a2;background:linear-gradient(#d77380,#d77380) 5px 0/10px 1px no-repeat,linear-gradient(#d77380,#d77380) 5px 4px/7px 1px no-repeat,linear-gradient(#d77380,#d77380) 5px 8px/10px 1px no-repeat;opacity:.9}
.tech-backdrop{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1;overflow:hidden;opacity:.72;mask-image:linear-gradient(90deg,#000,transparent 38%,transparent 65%,#000)}
.tech-backdrop svg{width:100%;height:100%;overflow:visible}
.tech-grid-line{fill:none;stroke:#97515a;stroke-opacity:.12;stroke-width:.7;vector-effect:non-scaling-stroke}
.tech-circuit-track{fill:none;stroke:#be6c76;stroke-opacity:.27;stroke-width:1;vector-effect:non-scaling-stroke}
.tech-circuit-light{fill:none;stroke:#f1a1ab;stroke-width:1.25;stroke-dasharray:.055 .945;stroke-dashoffset:1;pathLength:1;animation:tech-trace 15s linear infinite;animation-delay:var(--tech-delay,0s);vector-effect:non-scaling-stroke}
.tech-circuit-terminal{fill:#d07c86;opacity:.35}
.plans>.shell,.investigation-pin,.footer>.shell{position:relative;z-index:1}
.tech-panel{position:relative;isolation:isolate;border-radius:8px}
.plan-card.tech-panel{background:linear-gradient(145deg,#221416b8,#0e0c0cf2);border-color:color-mix(in srgb,var(--metal),transparent 58%);border-radius:8px}
.service-buttons>a.tech-panel,.audience-grid>div.tech-panel{border-color:#ac6b734d;border-radius:8px;background:linear-gradient(135deg,#27141785,#0f0e0edb)}
.network-panel.tech-panel{border-color:#cc697577;border-radius:8px;background-color:#0d0c0c}
.eagle-scene.tech-panel{border-radius:8px;border-color:#a6626b66}
.tech-panel-frame{position:absolute;inset:9px;z-index:4;pointer-events:none;color:var(--metal,#db7884);opacity:.72;transition:opacity .35s ease;--corner:14px;background:linear-gradient(currentColor,currentColor) left top/var(--corner) 1px no-repeat,linear-gradient(currentColor,currentColor) left top/1px var(--corner) no-repeat,linear-gradient(currentColor,currentColor) right top/var(--corner) 1px no-repeat,linear-gradient(currentColor,currentColor) right top/1px var(--corner) no-repeat,linear-gradient(currentColor,currentColor) left bottom/var(--corner) 1px no-repeat,linear-gradient(currentColor,currentColor) left bottom/1px var(--corner) no-repeat,linear-gradient(currentColor,currentColor) right bottom/var(--corner) 1px no-repeat,linear-gradient(currentColor,currentColor) right bottom/1px var(--corner) no-repeat}
.eagle-scene .tech-panel-frame,.network-panel .tech-panel-frame{inset:12px;--corner:25px;color:#eb9ca6;opacity:.8}
.tech-panel-edge{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden;border-radius:inherit}
.tech-panel-edge:after{content:"";position:absolute;top:0;left:-70%;width:65%;height:1px;opacity:0;background:linear-gradient(90deg,transparent,#fac3ca,transparent)}
.tech-panel:focus-within{border-color:#ef8b98}
.tech-panel:focus-within>.tech-panel-frame{opacity:1}
.tech-panel:focus-within>.tech-panel-edge:after{animation:tech-card-laser 1.6s ease-out}
.expertise{border-top-color:#b86f783d}
.expertise [data-icon]{position:relative}
.expertise [data-icon]:after{content:"";display:block;height:1px;width:22px;background:linear-gradient(90deg,#e8949e,transparent);margin-top:8px;opacity:.55}
.tech-icon-entrance .icon [pathLength]{animation:tech-icon-draw 1.7s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--tech-icon-delay,0ms)}
.footer{border-top:1px solid #9f606845}
.footer h3{position:relative;padding-bottom:12px}
.footer h3:after{content:"";position:absolute;left:0;bottom:0;width:35px;height:1px;background:linear-gradient(90deg,#ea919c,transparent)}
.footer-bottom{border-top-color:#99676d38}
.header{border-bottom-color:#e4808d38}
.header .nav a.active:after{background:linear-gradient(90deg,#e05d6d,#efbac1);box-shadow:0 1px 9px #e1697844}
.reading-progress{height:2px;background:linear-gradient(90deg,#b43c4b,#e57986,#fabdc5);box-shadow:0 0 8px #f5818f4d}
.tech-section:not(.tech-active) .tech-section-rail:after,.tech-section:not(.tech-active) .tech-circuit-light,.tech-paused .tech-section-rail:after,.tech-paused .tech-circuit-light,.tech-paused .tech-icon-entrance .icon [pathLength]{animation-play-state:paused}
@media(hover:hover) and (pointer:fine){
 .tech-panel:hover>.tech-panel-frame{opacity:1}
 .tech-panel:hover>.tech-panel-edge:after{animation:tech-card-laser 1.6s ease-out}
 .motion-ready .plan-card.is-visible:hover,.service-buttons>a.tech-panel:hover,.audience-grid>div.tech-panel:hover{transform:translateY(-3px);border-color:#d57f8ad9;box-shadow:0 8px 25px #1c070980}
 .plan-card.tech-panel:hover{border-color:var(--metal)}
}
@keyframes tech-divider{from{left:-180px}to{left:100%}}
@keyframes tech-trace{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes tech-card-laser{0%{left:-70%;opacity:0}15%{opacity:1}100%{left:105%;opacity:0}}
@keyframes tech-icon-draw{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}
@media(max-width:760px){
 .tech-backdrop{opacity:.4;mask-image:linear-gradient(90deg,#000,transparent 35%,transparent 78%,#000)}
 .tech-panel-frame{inset:7px;--corner:10px;opacity:.62}
 .eagle-scene .tech-panel-frame,.network-panel .tech-panel-frame{inset:10px;--corner:18px}
 .tech-section-rail:after{animation-duration:15s;width:100px}
}
@media(prefers-reduced-motion:reduce){
 .tech-section-rail:after,.tech-circuit-light{display:none}
 .tech-panel-edge:after,.tech-icon-entrance .icon [pathLength]{animation:none!important}
 .tech-panel-frame{transition:none}
}
