/* Nürburgreen custom layer — components used by Elementor pages (source of truth for tokens: Elementor Kit) */
:root{--ng-turquesa:#14B5C1;--ng-lima:#84FF00;--ng-asfalto:#0A0A0C;--ng-blanco60:rgba(255,255,255,.6)}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Meta labels */
.eyebrow .elementor-heading-title{letter-spacing:.14em}

/* Hero */
.hero-sub{max-width:600px}

/* Telemetry grid texture (background-color comes from the Kit token on the container) */
.tele-grid{background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px}

/* Velocity marquee */
.js-marquee{border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.marquee-outline .elementor-heading-title{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.32);white-space:nowrap}

/* Outline numbers */
.card-num .elementor-heading-title{font-family:'Roboto Condensed',sans-serif;font-size:56px;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1px var(--ng-turquesa)}
.step-num .elementor-heading-title{font-family:'Roboto Condensed',sans-serif;font-size:80px;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.25)}

/* Experience cards */
.xp-card{border:1px solid rgba(255,255,255,.08);transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s}
.xp-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.28)}
@media (prefers-reduced-motion:reduce){.xp-card:hover{transform:none}}

/* Telemetry counters */
.tele-counter .elementor-counter-number-wrapper{font-family:'Roboto Condensed',sans-serif;font-weight:800;font-size:clamp(3rem,2rem + 4vw,5.5rem);justify-content:flex-start}
.tele-counter .elementor-counter-title{font-family:Inter,sans-serif;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-align:left}

/* A11y: visible focus everywhere */
.elementor-button:focus-visible,a:focus-visible{outline:2px solid var(--ng-lima);outline-offset:3px}

/* Film grain — only on Inicio 2 Fable */
body.page-id-333::after{content:"";position:fixed;inset:-50%;pointer-events:none;z-index:9990;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:ng-grain 8s steps(10) infinite}
@keyframes ng-grain{0%,100%{transform:translate(0)}10%{transform:translate(-5%,-8%)}30%{transform:translate(4%,-3%)}50%{transform:translate(-3%,6%)}70%{transform:translate(6%,2%)}90%{transform:translate(-4%,4%)}}
@media (prefers-reduced-motion:reduce){body.page-id-333::after{animation:none}}
