/* ===========================================================
   Boris Ershov — neon synthwave / retro-PC theme
   Shared base + .home (landing) + .process (article) scopes
   =========================================================== */

:root {
  --bg:#08030f; --bg-2:#0e0720; --panel:#130b26;
  --pink:#ff2d95; --cyan:#2de2ff; --purple:#b14aed; --yellow:#ffd84d;
  --text:#ece6ff; --muted:#9488c0;
  --line:rgba(177,74,237,0.26); --line-cyan:rgba(45,226,255,0.22);
  --disp:"Orbitron",sans-serif; --body:"Chakra Petch",system-ui,sans-serif; --term:"VT323",monospace;
  --maxw:1280px; --ease:cubic-bezier(0.16,1,0.3,1);
  --glow-pink:0 0 6px rgba(255,45,149,.9),0 0 22px rgba(255,45,149,.55);
  --glow-cyan:0 0 6px rgba(45,226,255,.9),0 0 22px rgba(45,226,255,.45);
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--text); font-family:var(--body); font-size:17px; line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden; position:relative; }

body::before { content:""; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(70% 50% at 80% 0%, rgba(177,74,237,0.22), transparent 60%),
    radial-gradient(60% 45% at 8% 12%, rgba(45,226,255,0.12), transparent 60%),
    radial-gradient(80% 60% at 50% 120%, rgba(255,45,149,0.16), transparent 60%); }

.wrap { max-width:var(--maxw); margin:0 auto; padding:0 30px; position:relative; z-index:3; }
.narrow { max-width:880px; }
a { color:inherit; text-decoration:none; }
::selection { background:var(--pink); color:#fff; }
.term { font-family:var(--term); font-size:19px; letter-spacing:.04em; text-transform:uppercase; }
.neon-c { color:var(--cyan); text-shadow:var(--glow-cyan); }
.neon-p { color:var(--pink); text-shadow:var(--glow-pink); }

/* ---------- NAV (shared) ---------- */
nav { position:fixed; top:0; left:0; right:0; z-index:100; transition:background .4s var(--ease),border-color .4s,backdrop-filter .4s; border-bottom:1px solid transparent; }
nav.scrolled { background:rgba(8,3,15,0.8); backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:72px; }
.brand { display:flex; align-items:center; gap:11px; font-family:var(--disp); font-weight:700; font-size:17px; letter-spacing:.06em; }
.brand .chip { color:var(--cyan); text-shadow:var(--glow-cyan); font-size:20px; }
.nav-links { display:flex; gap:30px; align-items:center; }
.nav-links a { font-family:var(--term); font-size:19px; letter-spacing:.04em; text-transform:uppercase; color:var(--muted); transition:color .25s,text-shadow .25s; }
.nav-links a:hover { color:var(--cyan); text-shadow:var(--glow-cyan); }
.nav-cta { border:1px solid var(--pink); color:var(--pink) !important; padding:7px 18px; box-shadow:var(--glow-pink); transition:all .3s var(--ease); }
.nav-cta:hover { background:var(--pink); color:#fff !important; text-shadow:none; }
.nav-back { font-family:var(--term); font-size:19px; text-transform:uppercase; color:var(--muted); transition:color .25s,text-shadow .25s; }
.nav-back:hover { color:var(--cyan); text-shadow:var(--glow-cyan); }
@media (max-width: 880px){ .nav-links a:not(.nav-cta){ display:none; } }

/* ---------- BUTTONS (shared) ---------- */
.btns { display:flex; gap:16px; margin-top:38px; position:relative; z-index:5; flex-wrap:wrap; }
.btn { font-family:var(--term); font-size:21px; text-transform:uppercase; letter-spacing:.04em; padding:11px 26px; border:1px solid var(--cyan); color:var(--cyan); box-shadow:var(--glow-cyan); transition:all .25s var(--ease); }
.btn:hover { background:var(--cyan); color:var(--bg); }
.btn.pink { border-color:var(--pink); color:var(--pink); box-shadow:var(--glow-pink); }
.btn.pink:hover { background:var(--pink); color:#fff; }

/* ---------- REVEAL (shared) ---------- */
.reveal { opacity:0; transform:translateY(28px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.in { opacity:1; transform:none; }

/* ---------- SECTION (shared) ---------- */
section { padding:110px 0; position:relative; z-index:3; }
.sec-head { margin-bottom:60px; }
.sec-head .idx { font-family:var(--term); font-size:19px; color:var(--pink); text-shadow:var(--glow-pink); text-transform:uppercase; letter-spacing:.05em; display:block; margin-bottom:14px; }
.sec-head h2 { font-family:var(--disp); font-weight:700; font-size:clamp(28px,4.6vw,56px); text-transform:uppercase; letter-spacing:.01em; line-height:1.04; }
.sec-head h2 em { font-style:normal; color:var(--cyan); text-shadow:var(--glow-cyan); }

/* ---------- MARQUEE (shared) ---------- */
.marquee { border-top:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; padding:16px 0; background:linear-gradient(90deg, rgba(255,45,149,.06), rgba(45,226,255,.06)); position:relative; z-index:4; }
.marquee-track { display:inline-flex; gap:40px; white-space:nowrap; animation:scroll 34s linear infinite; }
.marquee:hover .marquee-track { animation-play-state:paused; }
.marquee-track span { font-family:var(--disp); font-weight:700; font-size:20px; text-transform:uppercase; letter-spacing:.08em; color:transparent; -webkit-text-stroke:1px var(--muted); display:inline-flex; align-items:center; gap:40px; }
.marquee-track span::after { content:"◆"; -webkit-text-stroke:0; color:var(--pink); text-shadow:var(--glow-pink); font-size:13px; }
@keyframes scroll { to { transform:translateX(-50%); } }

/* ---------- CTA (shared) ---------- */
.cta { border:1px solid var(--pink); box-shadow:0 0 30px rgba(255,45,149,.25), inset 0 0 60px rgba(177,74,237,.1); background:var(--bg-2); padding:clamp(40px,6vw,84px); position:relative; overflow:hidden; }
.cta::before { content:""; position:absolute; inset:0; background:radial-gradient(70% 100% at 90% 0%, rgba(45,226,255,.18), transparent 60%); }
.cta .wrapc { position:relative; z-index:2; }
.cta .lbl { font-family:var(--term); font-size:19px; color:var(--cyan); text-shadow:var(--glow-cyan); text-transform:uppercase; }
.cta h2 { font-family:var(--disp); font-weight:900; font-size:clamp(30px,6vw,76px); text-transform:uppercase; line-height:1; margin:20px 0 8px; }
.cta h2 em { font-style:normal; color:var(--pink); text-shadow:var(--glow-pink); }
.cta-mail { display:inline-flex; align-items:center; gap:12px; font-family:var(--term); font-size:clamp(24px,4vw,42px); text-transform:uppercase; color:var(--cyan); text-shadow:var(--glow-cyan); margin-top:26px; transition:gap .3s var(--ease); }
.cta-mail:hover { gap:20px; }
.cta-row { display:flex; flex-wrap:wrap; gap:30px 52px; margin-top:54px; }
.cta-row .blk .lbl2 { font-family:var(--term); font-size:16px; text-transform:uppercase; color:var(--muted); display:block; margin-bottom:5px; }
.cta-row .blk .val { font-size:16px; color:var(--text); }
.cta-row .blk a.val:hover { color:var(--cyan); }

/* ===========================================================
   HOME (landing) scope
   =========================================================== */
.home .hero { padding-top:150px; padding-bottom:200px; position:relative; overflow:hidden; }
.home .sun { position:absolute; z-index:1; top:120px; right:6%; width:360px; height:360px; border-radius:50%;
  background:linear-gradient(180deg, var(--yellow), var(--pink) 70%, var(--purple)); filter:drop-shadow(0 0 60px rgba(255,45,149,.45)); opacity:.85; }
.home .sun::after { content:""; position:absolute; inset:0; border-radius:50%;
  background:repeating-linear-gradient(180deg, transparent 0 14px, var(--bg) 14px 19px);
  mask:linear-gradient(180deg, transparent 45%, #000 46%); -webkit-mask:linear-gradient(180deg, transparent 45%, #000 46%); }
@media (max-width:980px){ .home .sun{ width:230px; height:230px; right:-30px; top:90px; opacity:.5; } }
.home .grid-floor { position:absolute; z-index:1; bottom:-2px; left:-20%; right:-20%; height:360px; pointer-events:none;
  background-image:linear-gradient(rgba(45,226,255,.55) 1px, transparent 1px), linear-gradient(90deg, rgba(255,45,149,.45) 1px, transparent 1px);
  background-size:64px 64px; transform:perspective(380px) rotateX(62deg); transform-origin:bottom center; animation:gridmove 5s linear infinite;
  mask:linear-gradient(transparent, #000 55%); -webkit-mask:linear-gradient(transparent, #000 55%); }
@keyframes gridmove { to { background-position:0 64px, 64px 0; } }

.home .hero-eyebrow { position:relative; z-index:5; color:var(--cyan); text-shadow:var(--glow-cyan); margin-bottom:30px; }
.home .hero-eyebrow .blink { animation:blink 1.1s steps(2) infinite; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0} }

.home .hero h1 { position:relative; z-index:5; font-family:var(--disp); font-weight:900; font-size:clamp(40px,8.4vw,116px); line-height:0.98; letter-spacing:0.01em; text-transform:uppercase; }
.home .hero h1 .ln { display:block; overflow:hidden; }
.home .hero h1 .ln > span { display:block; transform:translateY(110%); }
.home .hero h1 .out { color:transparent; -webkit-text-stroke:1.4px var(--purple); text-shadow:0 0 18px rgba(177,74,237,.5); }
.home .hero h1 .fill { color:var(--text); }
.home .hero h1 .pk { color:var(--pink); text-shadow:var(--glow-pink); }

.home .hero-grid { position:relative; z-index:5; display:grid; grid-template-columns:1.5fr 1fr; gap:50px; align-items:end; margin-top:50px; }
@media (max-width:900px){ .home .hero-grid { grid-template-columns:1fr; gap:34px; } }
.home .hero-lead { font-size:clamp(17px,2vw,21px); color:#c5bce8; max-width:42ch; line-height:1.55; }
.home .hero-lead b { color:var(--cyan); font-weight:600; }
.home .hero-stats { display:flex; flex-direction:column; gap:0; border:1px solid var(--line); background:rgba(19,11,38,.6); backdrop-filter:blur(4px); }
.home .hero-stats .row { display:flex; justify-content:space-between; padding:13px 16px; border-bottom:1px solid var(--line); font-family:var(--term); font-size:18px; text-transform:uppercase; }
.home .hero-stats .row:last-child { border-bottom:0; }
.home .hero-stats .row span:first-child { color:var(--muted); }
.home .hero-stats .row span:last-child { color:var(--cyan); text-shadow:var(--glow-cyan); }

/* profile */
.about-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:64px; }
@media (max-width:900px){ .about-grid { grid-template-columns:1fr; gap:36px; } }
.about-big { font-family:var(--disp); font-weight:500; font-size:clamp(21px,2.7vw,31px); line-height:1.3; text-transform:uppercase; letter-spacing:.005em; }
.about-big em { font-style:normal; color:var(--pink); text-shadow:var(--glow-pink); }
.about-col p { color:#beb4e2; margin-bottom:18px; }
.about-col p:last-child { margin-bottom:0; }
.about-col b { color:var(--cyan); }
.pillars { display:grid; grid-template-columns:1fr 1fr; gap:24px 34px; margin-top:40px; }
@media (max-width:520px){ .pillars { grid-template-columns:1fr; } }
.pillar h4 { font-family:var(--term); font-size:21px; text-transform:uppercase; color:var(--cyan); margin-bottom:4px; display:flex; align-items:center; gap:9px; }
.pillar h4::before { content:"▶"; color:var(--pink); font-size:12px; }
.pillar p { font-size:14px; color:var(--muted); line-height:1.5; }

.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:60px; }
@media (max-width:680px){ .stats { grid-template-columns:1fr 1fr; } }
.stat { border:1px solid var(--line); background:rgba(19,11,38,.5); padding:26px 22px; transition:border-color .3s, box-shadow .3s; }
.stat:hover { border-color:var(--cyan); box-shadow:var(--glow-cyan); }
.stat .n { font-family:var(--disp); font-weight:900; font-size:clamp(32px,4.6vw,46px); color:var(--text); line-height:1; }
.stat .n em { font-style:normal; color:var(--pink); text-shadow:var(--glow-pink); }
.stat .l { font-family:var(--term); font-size:17px; text-transform:uppercase; color:var(--muted); margin-top:12px; line-height:1.2; }

/* experience */
.xp { border-top:1px solid var(--line); }
.xp-item { display:grid; grid-template-columns:0.7fr 1.5fr 2fr; gap:28px; padding:32px 8px; border-bottom:1px solid var(--line); position:relative; transition:padding .4s var(--ease), background .4s; }
.xp-item:hover { padding-left:22px; background:linear-gradient(90deg, rgba(45,226,255,.07), transparent); }
.xp-when { font-family:var(--term); font-size:19px; color:var(--pink); text-shadow:var(--glow-pink); text-transform:uppercase; padding-top:4px; }
.xp-when .now { display:inline-block; margin-left:6px; width:8px; height:8px; border-radius:50%; background:var(--cyan); box-shadow:var(--glow-cyan); animation:pulse 1.8s infinite; vertical-align:middle; }
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.25} }
.xp-role .co { font-family:var(--disp); font-weight:700; font-size:clamp(18px,2.3vw,25px); text-transform:uppercase; line-height:1.1; }
.xp-role .ti { font-family:var(--term); font-size:17px; color:var(--cyan); text-transform:uppercase; margin-top:5px; }
.xp-desc { color:#b3a9d6; font-size:14.5px; }
.xp-desc .tags { margin-top:10px; display:flex; flex-wrap:wrap; gap:7px; }
.xp-desc .tags b { font-family:var(--term); font-weight:400; font-size:15px; text-transform:uppercase; color:var(--cyan); border:1px solid var(--line-cyan); padding:1px 9px; }
@media (max-width:860px){ .xp-item { grid-template-columns:1fr; gap:10px; } .xp-item:hover{ padding-left:8px; } }

/* certifications & training */
.creds { margin-top:50px; }
.creds-h { font-family:var(--term); font-size:19px; text-transform:uppercase; color:var(--cyan); text-shadow:var(--glow-cyan); margin-bottom:18px; }
.cred-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:0 40px; }
@media (max-width:760px){ .cred-grid { grid-template-columns:1fr; } }
.cred { display:flex; align-items:baseline; justify-content:space-between; gap:14px; padding:11px 0; border-bottom:1px solid var(--line); }
.cred .nm { color:#cfc6ec; font-size:14.5px; }
.cred .mt { font-family:var(--term); font-size:15px; text-transform:uppercase; color:var(--muted); white-space:nowrap; }
.cred.cert { grid-column:1 / -1; border-bottom:1px solid var(--line-cyan); }
.cred.cert .nm { color:var(--text); font-weight:500; }
.cred.cert .mt { color:var(--pink); text-shadow:var(--glow-pink); }

/* work / monitors */
.work-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
@media (max-width:820px){ .work-grid { grid-template-columns:1fr; } }
.screen { display:block; border:1px solid var(--line); background:var(--panel); transition:transform .4s var(--ease), box-shadow .4s, border-color .4s; position:relative; }
.screen:hover { transform:translateY(-6px); border-color:var(--pink); box-shadow:0 0 0 1px var(--pink), 0 0 30px rgba(255,45,149,.4); }
.screen-bar { display:flex; align-items:center; gap:8px; padding:10px 14px; border-bottom:1px solid var(--line); font-family:var(--term); font-size:16px; text-transform:uppercase; color:var(--muted); }
.screen-bar i { width:9px; height:9px; border-radius:50%; display:inline-block; }
.screen-bar i:nth-child(1){ background:var(--pink); box-shadow:var(--glow-pink); }
.screen-bar i:nth-child(2){ background:var(--yellow); }
.screen-bar i:nth-child(3){ background:var(--cyan); box-shadow:var(--glow-cyan); }
.screen-bar .fn { margin-left:8px; letter-spacing:.04em; }
.screen-img { position:relative; aspect-ratio:16/10; overflow:hidden; background:#050309; }
.screen-img img { width:100%; height:100%; object-fit:cover; object-position:top center; }
.screen-body { padding:22px 22px 26px; }
.screen-body .top { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.screen-body h3 { font-family:var(--disp); font-weight:700; font-size:23px; text-transform:uppercase; }
.screen-body .tag { font-family:var(--term); font-size:15px; text-transform:uppercase; color:var(--cyan); border:1px solid var(--line-cyan); padding:1px 8px; white-space:nowrap; }
.screen-body p { color:#b3a9d6; font-size:14.5px; margin-top:10px; }
.screen-body .meta { display:flex; align-items:center; justify-content:space-between; margin-top:16px; }
.screen-body .stack { font-family:var(--term); font-size:15px; text-transform:uppercase; color:var(--muted); }
.screen-body .visit { font-family:var(--term); font-size:17px; text-transform:uppercase; color:var(--pink); text-shadow:var(--glow-pink); }
.screen:hover .visit { color:var(--cyan); text-shadow:var(--glow-cyan); }

/* capabilities + process teaser cards */
.svc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
@media (max-width:820px){ .svc-grid { grid-template-columns:1fr 1fr !important; } }
@media (max-width:540px){ .svc-grid { grid-template-columns:1fr !important; } }
.svc { border:1px solid var(--line); background:rgba(19,11,38,.5); padding:30px 26px; min-height:220px; display:flex; flex-direction:column; transition:border-color .3s, box-shadow .3s, background .3s; }
.svc:hover { border-color:var(--pink); box-shadow:var(--glow-pink); background:rgba(25,12,40,.7); }
.svc .num { font-family:var(--term); font-size:18px; color:var(--pink); margin-bottom:auto; }
.svc h3 { font-family:var(--disp); font-weight:700; font-size:19px; text-transform:uppercase; line-height:1.15; margin:36px 0 12px; }
.svc p { font-size:14px; color:var(--muted); line-height:1.5; }

/* home contact */
.cta-row { display:flex; flex-wrap:wrap; gap:30px 52px; margin-top:54px; }

/* home footer */
.home footer { padding:70px 0 46px; position:relative; z-index:3; }
.foot-top { display:flex; justify-content:space-between; align-items:flex-start; gap:30px; flex-wrap:wrap; padding-bottom:36px; border-bottom:1px solid var(--line); }
.foot-brand { font-family:var(--disp); font-weight:900; font-size:clamp(34px,7vw,88px); text-transform:uppercase; line-height:.92; }
.foot-brand em { font-style:normal; color:transparent; -webkit-text-stroke:1.4px var(--pink); }
.req { margin-top:38px; }
.req h5 { font-family:var(--term); font-size:17px; text-transform:uppercase; color:var(--cyan); margin-bottom:20px; letter-spacing:.04em; }
.req-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:22px 28px; }
@media (max-width:820px){ .req-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .req-grid { grid-template-columns:1fr; } }
.req-item .k { font-family:var(--term); font-size:15px; text-transform:uppercase; color:var(--muted); margin-bottom:3px; }
.req-item .v { font-size:14px; color:#cfc6ec; font-variant-numeric:tabular-nums; }
.foot-bottom { display:flex; justify-content:space-between; gap:16px; margin-top:44px; flex-wrap:wrap; font-family:var(--term); font-size:16px; text-transform:uppercase; color:var(--muted); }

/* ===========================================================
   PROCESS (article) scope
   =========================================================== */
.process .hero { padding:148px 0 70px; position:relative; }
.process section { padding:70px 0; }
.process .eyebrow { font-family:var(--term); font-size:19px; text-transform:uppercase; color:var(--cyan); text-shadow:var(--glow-cyan); margin-bottom:24px; }
.process .eyebrow .blink { animation:blink 1.1s steps(2) infinite; }
.process h1 { font-family:var(--disp); font-weight:900; font-size:clamp(38px,8vw,98px); line-height:1; text-transform:uppercase; }
.process h1 em { font-style:normal; color:var(--pink); text-shadow:var(--glow-pink); }
.process .hero-sub { margin-top:28px; max-width:46ch; font-size:clamp(17px,2vw,20px); color:#c5bce8; }
.process .hero-sub b { color:var(--cyan); font-weight:600; }

.process .idx { font-family:var(--term); font-size:19px; color:var(--pink); text-shadow:var(--glow-pink); text-transform:uppercase; display:block; margin-bottom:14px; }
.process h2 { font-family:var(--disp); font-weight:700; font-size:clamp(26px,4.2vw,46px); text-transform:uppercase; line-height:1.06; margin-bottom:26px; }
.process h2 em { font-style:normal; color:var(--cyan); text-shadow:var(--glow-cyan); }
.process p.lead { font-size:clamp(17px,1.9vw,20px); color:#c5bce8; max-width:62ch; margin-bottom:18px; }
.process p.body { color:#beb4e2; max-width:64ch; margin-bottom:18px; }
.process p.body b, .process p.lead b { color:var(--cyan); font-weight:600; }

.process .steps { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:34px; }
@media (max-width:720px){ .process .steps{ grid-template-columns:1fr; } }
.process .step-card { border:1px solid var(--line); background:rgba(19,11,38,.5); padding:26px 24px; transition:border-color .3s, box-shadow .3s; }
.process .step-card:hover { border-color:var(--pink); box-shadow:var(--glow-pink); }
.process .step-card .sn { font-family:var(--term); font-size:18px; color:var(--pink); }
.process .step-card h3 { font-family:var(--disp); font-weight:700; font-size:19px; text-transform:uppercase; margin:8px 0 10px; }
.process .step-card p { font-size:14.5px; color:var(--muted); line-height:1.55; }
.process .step-card p b { color:var(--cyan); font-weight:500; }

.process .ddd-list { list-style:none; margin-top:20px; display:grid; grid-template-columns:1fr 1fr; gap:14px 30px; }
@media (max-width:720px){ .process .ddd-list{ grid-template-columns:1fr; } }
.process .ddd-list li { padding-left:24px; position:relative; color:#beb4e2; font-size:15px; }
.process .ddd-list li::before { content:"▶"; position:absolute; left:0; top:2px; color:var(--pink); font-size:11px; }
.process .ddd-list li b { font-family:var(--term); font-size:18px; text-transform:uppercase; color:var(--cyan); display:block; line-height:1.1; }

.process .path { border:1px solid var(--line); background:rgba(14,7,32,.55); padding:30px 26px 34px; margin-top:24px; }
.process .path-head { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:8px; }
.process .path-head .badge { font-family:var(--term); font-size:16px; text-transform:uppercase; padding:1px 10px; border:1px solid var(--line-cyan); color:var(--cyan); }
.process .path-head .badge.pk { border-color:var(--pink); color:var(--pink); text-shadow:var(--glow-pink); }
.process .path-head h3 { font-family:var(--disp); font-weight:700; font-size:clamp(18px,2.4vw,24px); text-transform:uppercase; }
.process .path > p { color:var(--muted); font-size:14.5px; max-width:66ch; margin-bottom:22px; }

.process .flow { display:flex; flex-wrap:wrap; align-items:stretch; gap:10px; }
.process .node { flex:1 1 0; min-width:128px; border:1px solid var(--line-cyan); background:rgba(19,11,38,.7); padding:14px; position:relative; transition:border-color .3s, box-shadow .3s, transform .3s; }
.process .node:hover { border-color:var(--cyan); box-shadow:var(--glow-cyan); transform:translateY(-3px); }
.process .node .nn { font-family:var(--term); font-size:17px; color:var(--pink); }
.process .node .nt { font-family:var(--disp); font-weight:500; font-size:13px; text-transform:uppercase; line-height:1.2; margin-top:6px; letter-spacing:.01em; }
.process .arrow { align-self:center; color:var(--pink); text-shadow:var(--glow-pink); font-size:16px; flex:0 0 auto; }
@media (max-width:760px){ .process .flow { flex-direction:column; } .process .node { width:100%; } .process .arrow { transform:rotate(90deg); align-self:center; } }

.process .cta { margin-top:30px; }
.process .cta h2 { font-size:clamp(28px,5vw,56px); margin:16px 0 8px; }

.process footer.proc-foot { padding:50px 0; border-top:1px solid var(--line); margin-top:50px; font-family:var(--term); font-size:16px; text-transform:uppercase; color:var(--muted); display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; }
