/* ============================================================
   OPTRIC DESIGN SYSTEM — Firefly Partner Network · Solutions pages
   Shared stylesheet for firefly-{mobility,network,cloud,collaboration,
   security,optimization}.html. Mirrors the inline design system used on
   firefly-home/partners/customers.
   ============================================================ */
:root {
  --orange-900:#CF0000; --orange-700:#F42F00; --orange-600:#F24C0A; --orange-500:#FF6900; --orange-300:#FF9C1A;
  --navy-900:#021334; --navy-700:#052A72; --blue-500:#2A4FD6; --blue-200:#A9D3FF;
  --paper:#F8F6F4; --paper-muted:#EFEDEA;
  --bg:var(--paper); --bg-inverse:var(--navy-900); --fg:var(--navy-900);
  --fg-inv:#FFFFFF; --fg-inv-muted:#A9B4CC; --accent:var(--orange-500); --accent-h:var(--orange-600);
  --border:#E4E1DD; --border-inv:rgba(255,255,255,0.10); --link:var(--blue-500);
  --font-d:'Plus Jakarta Sans','Inter',system-ui,-apple-system,sans-serif;
  --font-b:'DM Sans','Inter',system-ui,-apple-system,sans-serif;
  --font-mono:'Plus Jakarta Sans','Inter',system-ui,sans-serif;
  --r-sm:6px; --r-md:10px; --r-lg:16px; --r-pill:999px;
  --shadow-lg:0 18px 40px rgba(2,19,52,0.11),0 4px 10px rgba(2,19,52,0.05);
  --ease-out:cubic-bezier(0.22,1,0.36,1); --dur-fast:120ms; --dur-med:220ms; --dur-slow:420ms;
  --max:1280px; --pad:clamp(20px,4vw,56px); --nav-h:100px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
body{background:var(--bg-inverse);color:var(--fg-inv);font-family:var(--font-b);font-size:16px;line-height:1.62;}
img{max-width:100%;display:block;} a{color:inherit;text-decoration:none;} ul{list-style:none;}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm);}
::selection{background:var(--accent);color:#fff;}

.ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-d);font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--accent);line-height:1;}
.ey__sq{display:none !important;}
.hl{font-family:var(--font-d);font-weight:800;letter-spacing:-0.03em;line-height:0.98;margin:0;}
.hl__w{color:#fff;} .hl__a{color:var(--accent);}
.pill{display:inline-flex;align-items:center;gap:12px;background:#FF6900;color:#fff;padding:13px 22px;border-radius:var(--r-sm);font-family:var(--font-d);font-size:12px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,0.45),inset 0 -1px 0 rgba(0,0,0,0.18),0 6px 18px rgba(255,105,0,0.28);transition:background var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out);border:none;}
.pill:hover{background:#F24C0A;box-shadow:inset 0 1px 0 rgba(255,255,255,0.55),inset 0 -1px 0 rgba(0,0,0,0.20),0 12px 30px rgba(255,105,0,0.45),0 0 24px rgba(255,140,40,0.25);transform:translateY(-1px);}
.pill:active{transform:translateY(0);}
.pill__sq{display:inline-block;width:8px;height:8px;flex-shrink:0;background:linear-gradient(135deg,#2a1a05 0%,#4a2d08 100%);}
.tlink{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:13px;font-weight:600;letter-spacing:0.04em;border-bottom:1px solid rgba(255,255,255,0.35);padding-bottom:3px;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);}
.tlink:hover{color:var(--accent);border-color:var(--accent);}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);background:rgba(2,19,52,0.0);border-bottom:1px solid transparent;display:flex;align-items:center;transition:background var(--dur-slow) var(--ease-out),border-color var(--dur-slow) var(--ease-out),backdrop-filter var(--dur-slow) var(--ease-out);overflow:visible;}
.nav.scrolled{background:rgba(2,19,52,0.96);border-bottom-color:var(--border-inv);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.nav-inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);width:100%;display:flex;align-items:center;justify-content:space-between;overflow:visible;}
.nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;}
.nav-logo img{height:84px;width:auto;display:block;}
.nav-links{display:flex;align-items:center;gap:2px;}
.nav-links a{font-size:15px;font-weight:400;color:rgba(255,255,255,0.88);padding:7px 14px;border-radius:var(--r-sm);transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);white-space:nowrap;}
.nav-links a:hover{color:#fff;background:rgba(255,255,255,0.08);}
.nav-links a.active{color:#fff;font-weight:600;}
.nav-cta{display:inline-flex;align-items:center;gap:8px;background:#FF6900 !important;color:#fff !important;font-weight:700 !important;margin-left:8px;padding:9px 18px !important;border-radius:var(--r-sm);font-size:12px !important;letter-spacing:0.12em !important;text-transform:uppercase !important;box-shadow:inset 0 1px 0 rgba(255,255,255,0.45),inset 0 -1px 0 rgba(0,0,0,0.18) !important;}
.nav-cta:hover{background:#F24C0A !important;box-shadow:inset 0 1px 0 rgba(255,255,255,0.55),inset 0 -1px 0 rgba(0,0,0,0.20),0 6px 20px rgba(255,105,0,0.45) !important;transform:translateY(-1px);}
.nav-drop{position:relative;}
.nav-drop-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;z-index:2000;}
.nav-drop-menu-inner{background:rgba(5,11,38,0.98);border:1px solid var(--border-inv);border-radius:var(--r-md);padding:8px;min-width:260px;box-shadow:var(--shadow-lg);backdrop-filter:blur(12px);}
.nav-drop-menu.open{display:block;}
.nav-drop-menu a{display:block;padding:10px 14px;border-radius:var(--r-sm);font-size:14px;color:rgba(255,255,255,0.70);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);}
.nav-drop-menu a:hover{background:rgba(255,255,255,0.08);color:#fff;}
.nav-drop-label{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.35);padding:12px 14px 6px;border-top:1px solid rgba(255,255,255,0.08);margin-top:6px;}
.nav-drop-btn{background:none;border:none;cursor:pointer;font-family:var(--font-b);font-size:15px;font-weight:400;color:rgba(255,255,255,0.88);border-radius:var(--r-sm);padding:7px 14px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);}
.nav-drop-btn:hover{color:#fff;background:rgba(255,255,255,0.08);}
.nav-drop-btn .drop-arr{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--accent);transition:transform var(--dur-med) var(--ease-out);margin-left:2px;}
.nav-drop-btn.open .drop-arr{transform:rotate(180deg);}
.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:8px;background:none;border:none;border-radius:var(--r-sm);}
.nav-hamburger span{display:block;width:22px;height:2px;background:rgba(255,255,255,0.9);border-radius:2px;transition:all var(--dur-med) var(--ease-out);}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0);}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-mobile{display:none;position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:rgba(2,17,45,0.98);z-index:999;overflow-y:auto;flex-direction:column;padding:12px 20px 40px;backdrop-filter:blur(12px);}
.nav-mobile.open{display:flex;}
.nav-mobile-section{font-family:var(--font-d);font-size:10px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.35);padding:20px 4px 8px;}
.nav-mobile a{display:block;font-size:17px;font-weight:500;color:rgba(255,255,255,0.85);padding:14px 4px;border-bottom:1px solid var(--border-inv);transition:color var(--dur-fast) var(--ease-out);}
.nav-mobile a:hover{color:var(--accent);}
.nav-mobile a:last-of-type{border-bottom:none;}
.nav-mobile .mob-cta{display:inline-flex;align-items:center;gap:10px;background:#FF6900;color:#fff;margin-top:20px;padding:15px 22px;border-radius:var(--r-sm);font-size:12px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;border-bottom:none;box-shadow:inset 0 1px 0 rgba(255,255,255,0.45),inset 0 -1px 0 rgba(0,0,0,0.18);}

/* hero */
.hero{position:relative;width:100%;min-height:auto;overflow:hidden;isolation:isolate;background:#02112D;padding-top:var(--nav-h);}
.hero__sweep{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden;}
.hero__sweep-bg{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.hero__sweep-sheen{position:absolute;inset:0;background:linear-gradient(115deg,transparent 38%,rgba(140,180,255,0.08) 48%,rgba(190,215,255,0.16) 50%,rgba(140,180,255,0.08) 52%,transparent 62%);background-size:260% 100%;background-position:220% 0;-webkit-mask-image:url('assets/hero/hero-bg.png');mask-image:url('assets/hero/hero-bg.png');-webkit-mask-size:cover;mask-size:cover;-webkit-mask-position:center;mask-position:center;-webkit-mask-mode:luminance;mask-mode:luminance;mix-blend-mode:screen;animation:sheen 22s linear infinite;pointer-events:none;}
@keyframes sheen{0%{background-position:220% 0;}100%{background-position:-120% 0;}}
.hero__main{position:relative;z-index:3;max-width:var(--max);margin:0 auto;padding:clamp(80px,12vw,160px) var(--pad) clamp(64px,8vw,96px);}
.hero__copy{max-width:720px;}
.hero__badge{display:inline-flex;align-items:center;gap:12px;padding:8px 16px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:var(--r-sm);margin-bottom:26px;}
.hero__badge-logo img{height:22px;width:auto;display:block;filter:brightness(0) invert(1);opacity:0.80;}
.hero__badge-sep{width:1px;height:20px;background:rgba(255,255,255,0.20);}
.hero__badge-text{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.60);}
.hero__eyebrow{color:var(--accent);font-family:var(--font-d);font-size:clamp(14px,1.1vw,17px);font-weight:700;letter-spacing:0;margin:0 0 20px;line-height:1.4;}
.hero__headline{font-family:var(--font-d);font-weight:800;font-size:clamp(42px,4.8vw,66px);line-height:0.99;letter-spacing:-0.035em;margin:0 0 26px;color:#fff;}
.hero__headline span{display:block;}
.hero__lede{font-size:clamp(15px,1.1vw,18px);line-height:1.65;color:rgba(255,255,255,0.72);max-width:640px;margin:0 0 32px;}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.hero__ghost{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,0.80);font-size:14px;font-weight:500;border-bottom:1px solid rgba(255,255,255,0.30);padding-bottom:3px;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);}
.hero__ghost:hover{color:#fff;border-color:rgba(255,255,255,0.7);}

/* feat */
.feat{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#07090f 0%,#0e1730 100%);}
.feat--alt{background:#021334;}
.feat__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1100px 700px at 20% -10%,rgba(42,79,214,0.24),transparent 62%);}
.feat__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;}
.feat__head{max-width:760px;margin:0 auto clamp(44px,5vw,60px);text-align:center;}
.feat__head .ey{justify-content:center;margin-bottom:18px;}
.feat__hl{font-size:clamp(30px,3.6vw,50px);line-height:1.04;margin:0 0 16px;}
.feat__sub{font-size:clamp(15px,1.05vw,17px);line-height:1.65;color:rgba(255,255,255,0.66);max-width:640px;margin:0 auto;}
.feat__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(18px,2vw,24px);}
.feat-card{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,2.6vw,32px);border:1px solid rgba(255,255,255,0.08);border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(42,79,214,0.10),rgba(2,17,45,0) 70%),rgba(255,255,255,0.02);transition:border-color var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out);}
.feat-card:hover{border-color:rgba(255,105,0,0.35);transform:translateY(-2px);}
.icotile{width:46px;height:46px;border-radius:10px;background:linear-gradient(135deg,rgba(42,79,214,0.60),rgba(5,42,114,0.80));border:1px solid rgba(255,255,255,0.10);display:grid;place-items:center;}
.icotile svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.feat-card__k{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--accent);}
.feat-card__t{font-family:var(--font-d);font-size:clamp(16px,1.3vw,18px);font-weight:700;letter-spacing:-0.015em;color:#fff;margin:0;line-height:1.28;}
.feat-card__b{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,0.62);margin:0;}
.feat__foot{text-align:center;margin-top:clamp(36px,4vw,48px);}

/* sol */
.sol{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:#021334;}
.sol--alt{background:linear-gradient(180deg,#0e1730 0%,#07090f 100%);}
.sol__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1000px 600px at 50% -10%,rgba(42,79,214,0.18),transparent 62%);}
.sol__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;}
.sol__head{max-width:760px;margin:0 auto clamp(44px,5vw,60px);text-align:center;}
.sol__head .ey{justify-content:center;margin-bottom:18px;}
.sol__hl{font-size:clamp(30px,3.6vw,50px);line-height:1.04;margin:0 0 16px;}
.sol__sub{font-size:clamp(15px,1.05vw,17px);line-height:1.65;color:rgba(255,255,255,0.66);max-width:640px;margin:0 auto;}
.sol__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.5vw,32px);}
.sol__grid--4{grid-template-columns:repeat(4,1fr);}
.sol-card{display:flex;flex-direction:column;gap:16px;padding:clamp(26px,2.8vw,36px);border:1px solid rgba(255,255,255,0.10);border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(42,79,214,0.14),rgba(2,17,45,0) 75%),rgba(255,255,255,0.02);box-shadow:0 24px 60px -28px rgba(0,0,0,0.7);transition:border-color var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out);}
.sol-card:hover{border-color:rgba(255,105,0,0.45);transform:translateY(-2px);}
.sol-card__t{font-family:var(--font-d);font-size:clamp(18px,1.5vw,21px);font-weight:700;letter-spacing:-0.02em;color:#fff;margin:0;line-height:1.24;}
.sol-card__b{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,0.62);margin:0;}
.sol-card__list{display:flex;flex-direction:column;gap:12px;margin:0;}
.sol-card__list li{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.55;color:rgba(255,255,255,0.78);}
.sol-card__list li::before{content:'';width:7px;height:7px;flex-shrink:0;margin-top:6px;background:var(--accent);}

/* trust strip */
.trust{position:relative;color:#fff;padding:clamp(44px,5vw,64px) 0;background:#021334;border-top:1px solid rgba(255,255,255,0.06);}
.trust__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);text-align:center;}
.trust__k{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.40);margin-bottom:22px;}
.trust__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.trust__chip{display:inline-flex;align-items:center;padding:10px 20px;border:1px solid rgba(255,255,255,0.12);border-radius:var(--r-pill);background:rgba(255,255,255,0.03);font-family:var(--font-d);font-size:14px;font-weight:600;color:rgba(255,255,255,0.80);}

/* side */
.side{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#0e1730 0%,#07090f 100%);}
.side--alt{background:linear-gradient(180deg,#07090f 0%,#0e1730 100%);}
.side__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1100px 700px at 85% -10%,rgba(42,79,214,0.24),transparent 62%);}
.side__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,88px);align-items:center;}
.side__hl{font-size:clamp(30px,3.4vw,48px);line-height:1.04;margin:20px 0 20px;}
.side__b{font-size:clamp(15px,1.05vw,17px);line-height:1.7;color:rgba(255,255,255,0.68);margin-bottom:16px;}
.side__card{padding:clamp(28px,3vw,40px);border:1px solid rgba(255,255,255,0.10);border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(42,79,214,0.14),rgba(2,17,45,0) 75%),rgba(255,255,255,0.02);}
.side__card-h{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.20em;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:20px;}
.side__list{display:flex;flex-direction:column;gap:16px;}
.side__item{display:flex;gap:14px;align-items:flex-start;}
.side__check{flex-shrink:0;width:22px;height:22px;margin-top:1px;}
.side__check svg{width:22px;height:22px;fill:none;stroke:var(--accent);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.side__item p{font-size:15px;line-height:1.5;color:rgba(255,255,255,0.82);margin:0;}

/* steps */
.steps{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#07090f 0%,#0e1730 100%);}
.steps__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1000px 600px at 50% -10%,rgba(42,79,214,0.18),transparent 62%);}
.steps__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;}
.steps__head{text-align:center;max-width:760px;margin:0 auto clamp(44px,5vw,60px);}
.steps__head .ey{justify-content:center;margin-bottom:18px;}
.steps__hl{font-size:clamp(30px,3.4vw,48px);line-height:1.04;margin:0 0 16px;}
.steps__sub{font-size:clamp(15px,1.05vw,17px);line-height:1.65;color:rgba(255,255,255,0.68);}
.steps__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2vw,24px);}
.steps__grid--3{grid-template-columns:repeat(3,1fr);}
.step{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,2.6vw,32px);border:1px solid rgba(255,255,255,0.08);border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(42,79,214,0.10),rgba(2,17,45,0) 70%),rgba(255,255,255,0.02);transition:border-color var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out);}
.step:hover{border-color:rgba(255,105,0,0.35);transform:translateY(-2px);}
.step__n{font-family:var(--font-mono);font-size:clamp(28px,2.6vw,40px);font-weight:500;letter-spacing:-0.02em;color:var(--accent);line-height:1;border-bottom:1px solid rgba(255,255,255,0.14);padding-bottom:12px;}
.step__t{font-family:var(--font-d);font-size:clamp(15px,1.2vw,17px);font-weight:700;letter-spacing:-0.01em;color:#fff;margin:0;line-height:1.25;}
.step__b{font-size:14px;line-height:1.58;color:rgba(255,255,255,0.60);margin:0;}
.steps__foot{text-align:center;margin-top:clamp(36px,4vw,48px);}

/* results */
.results{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:#021334;}
.results__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1100px 600px at 50% 120%,rgba(255,105,0,0.08),transparent 62%);}
.results__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;}
.results__head{text-align:center;max-width:640px;margin:0 auto clamp(44px,5vw,60px);}
.results__head .ey{justify-content:center;margin-bottom:18px;}
.results__hl{font-size:clamp(30px,3.4vw,48px);line-height:1.04;margin:0;}
.results__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2vw,24px);}
.result{display:flex;flex-direction:column;gap:10px;padding:clamp(24px,2.6vw,32px);border:1px solid rgba(255,255,255,0.08);border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(42,79,214,0.10),rgba(2,17,45,0) 70%),rgba(255,255,255,0.02);}
.result__k{font-family:var(--font-d);font-size:clamp(28px,2.6vw,38px);font-weight:800;letter-spacing:-0.03em;color:var(--accent);line-height:1;}
.result__b{font-size:14px;line-height:1.55;color:rgba(255,255,255,0.66);margin:0;}
.results__foot{text-align:center;margin-top:clamp(36px,4vw,48px);}

/* how (six pillars compact) */
.how{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#0e1730 0%,#021334 100%);}
.how__bg{position:absolute;inset:-10% 0;pointer-events:none;z-index:0;background-image:url('assets/textures/platform-cards-bg.webp');background-size:cover;background-position:center;opacity:0.16;will-change:transform;mask-image:linear-gradient(180deg,transparent 0%,#000 12%,#000 88%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 12%,#000 88%,transparent 100%);}
.how__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;display:flex;flex-direction:column;row-gap:clamp(44px,5vw,64px);}
.how__head{text-align:center;max-width:820px;margin:0 auto;}
.how__hl{font-size:clamp(32px,4vw,52px);margin:20px 0 20px;line-height:1.04;}
.how__lede{font-size:clamp(15px,1vw,17px);line-height:1.65;color:rgba(255,255,255,0.70);max-width:640px;margin:0 auto;}
.how__items{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.5vw,32px);}
.how-item{display:flex;flex-direction:column;gap:14px;padding:clamp(26px,2.8vw,36px);border-radius:var(--r-lg);position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(42,79,214,0.14),rgba(2,17,45,0) 75%),rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.10);box-shadow:0 24px 60px -28px rgba(0,0,0,0.7);transition:box-shadow var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out),border-color var(--dur-med) var(--ease-out);}
.how-item:hover{background:linear-gradient(180deg,rgba(255,105,0,0.12),rgba(2,17,45,0) 75%),rgba(255,255,255,0.04);border-color:rgba(255,105,0,0.55);box-shadow:0 0 0 1px rgba(255,105,0,0.30),0 24px 60px -22px rgba(0,0,0,0.75),0 0 40px -6px rgba(255,105,0,0.35);transform:translateY(-2px);}
.how-item__num{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:0.24em;text-transform:uppercase;color:rgba(255,255,255,0.72);line-height:1;border-bottom:1px solid rgba(255,255,255,0.20);padding-bottom:14px;}
.how-item__num strong{font-family:var(--font-mono);font-size:clamp(38px,3.6vw,52px);font-weight:500;letter-spacing:-0.02em;color:var(--accent);display:block;margin-bottom:4px;line-height:1;}
.how-item__sub{font-family:var(--font-d);font-size:clamp(16px,1.3vw,19px);font-weight:700;letter-spacing:-0.02em;color:#fff;margin:0;line-height:1.28;}
.how-item__body{font-size:14.5px;line-height:1.66;color:rgba(255,255,255,0.82);margin:0;flex:1;}

/* resources */
.res{position:relative;color:#fff;padding:clamp(80px,10vw,128px) 0;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#021334 0%,#07090f 100%);}
.res__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1100px 600px at 40% -5%,rgba(42,79,214,0.18),transparent 62%);}
.res__inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;}
.res__head{text-align:center;margin-bottom:clamp(44px,5vw,60px);}
.res__head .ey{justify-content:center;margin-bottom:18px;}
.res__hl{font-size:clamp(30px,3.4vw,48px);line-height:1.04;margin:0;}
.res__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(20px,2.5vw,32px);}
.res-card{display:flex;flex-direction:column;gap:14px;padding:clamp(28px,3vw,40px);border:1px solid rgba(255,255,255,0.08);border-radius:var(--r-lg);background:linear-gradient(180deg,rgba(42,79,214,0.10),rgba(2,17,45,0) 70%),rgba(255,255,255,0.02);transition:border-color var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out);}
.res-card:hover{border-color:rgba(255,105,0,0.35);transform:translateY(-2px);}
.res-card__k{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.20em;text-transform:uppercase;color:rgba(255,255,255,0.40);}
.res-card__t{font-family:var(--font-d);font-size:clamp(17px,1.4vw,20px);font-weight:700;letter-spacing:-0.015em;color:#fff;margin:0;line-height:1.28;flex:1;}
.res-card__link{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:13px;font-weight:700;letter-spacing:0.04em;border-bottom:1px solid rgba(255,105,0,0.4);padding-bottom:3px;align-self:flex-start;transition:border-color var(--dur-fast) var(--ease-out);}
.res-card__link:hover{border-color:var(--accent);}

/* closing CTA */
.cta{position:relative;background:#021334;color:#fff;padding:clamp(96px,11vw,160px) 0;overflow:hidden;isolation:isolate;}
.cta__glow{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 1200px 700px at 25% 20%,rgba(42,79,214,0.26),transparent 62%),radial-gradient(ellipse 900px 600px at 95% 95%,rgba(255,105,0,0.09),transparent 65%);}
.cta__mark{position:absolute;right:-44%;bottom:-60%;width:clamp(720px,85vw,1300px);height:auto;opacity:1;z-index:1;pointer-events:none;filter:drop-shadow(0 0 60px rgba(255,105,0,0.30));animation:cta-spin 200s linear infinite;transform-origin:50% 50%;will-change:transform;}
@keyframes cta-spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce){.cta__mark{animation:none;}}
@media (max-width:767px){.cta__mark{width:clamp(420px,110vw,700px);right:-65%;bottom:-55%;opacity:0.45;}}
.cta__inner{max-width:min(860px,calc(var(--max) - 280px));margin:0 auto;padding:0 var(--pad);position:relative;z-index:2;}
.cta__inner .ey{color:#fff;}
.cta__hl{font-size:clamp(40px,6vw,88px);margin:24px 0 28px;line-height:0.98;}
.cta__lede{font-size:clamp(15px,1.1vw,18px);line-height:1.60;color:rgba(255,255,255,0.72);margin:0 0 36px;max-width:520px;}
.cta__actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;}

/* footer */
.footer{position:relative;background:#1a1d23;color:#fff;padding:clamp(64px,7vw,88px) 0 0;border-top:1px solid var(--border-inv);}
.footer__grid{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:clamp(32px,4vw,64px);padding-bottom:clamp(48px,6vw,72px);border-bottom:1px solid var(--border-inv);}
.footer__brand{display:flex;flex-direction:column;gap:16px;max-width:300px;}
.footer__logo img{height:auto;max-height:44px;width:auto;max-width:220px;display:block;}
.footer__tagline{font-family:var(--font-d);font-size:15px;font-weight:500;color:rgba(255,255,255,0.80);margin:0;}
.footer__desc{font-size:13.5px;line-height:1.65;color:rgba(255,255,255,0.48);margin:4px 0 0;}
.footer__phone{font-size:13px;color:rgba(255,255,255,0.32);display:block;margin-top:8px;}
.footer__col{display:flex;flex-direction:column;gap:16px;}
.footer__col-head{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-d);font-size:11px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.90);margin:0 0 4px;}
.footer__col-sq{display:inline-block;width:7px;height:7px;background:var(--accent);}
.footer__col-links{display:flex;flex-direction:column;gap:10px;}
.footer__col-links a{font-size:14px;color:rgba(255,255,255,0.58);transition:color var(--dur-fast) var(--ease-out);}
.footer__col-links a:hover{color:var(--accent);}
.footer__bottom{max-width:var(--max);margin:0 auto;padding:24px var(--pad);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer__copy{font-size:12px;color:rgba(255,255,255,0.40);}
.footer__legal{display:flex;gap:20px;}
.footer__legal a{font-size:12px;color:rgba(255,255,255,0.40);transition:color var(--dur-fast) var(--ease-out);}
.footer__legal a:hover{color:var(--accent);}

/* animations */
.reveal{opacity:0;transform:translateY(20px);transition:opacity 700ms var(--ease-out),transform 700ms var(--ease-out);}
.reveal.in{opacity:1;transform:translateY(0);}
.reveal-group .reveal:nth-child(1){transition-delay:0ms;}
.reveal-group .reveal:nth-child(2){transition-delay:60ms;}
.reveal-group .reveal:nth-child(3){transition-delay:120ms;}
.reveal-group .reveal:nth-child(4){transition-delay:180ms;}
.reveal-group .reveal:nth-child(5){transition-delay:240ms;}
.reveal-group .reveal:nth-child(6){transition-delay:300ms;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}
@keyframes hero-rise{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}
@keyframes hero-fade{from{opacity:0;}to{opacity:1;}}
.hero__sweep-bg,.hero__sweep-sheen{opacity:0;animation:hero-fade 900ms var(--ease-out) 0ms forwards;}
.hero__sweep-sheen{animation:hero-fade 900ms var(--ease-out) 0ms forwards,sheen 22s linear 900ms infinite;}
.hero__badge,.hero__eyebrow,.hero__headline span,.hero__lede,.hero__actions{opacity:0;animation:hero-rise 700ms var(--ease-out) forwards;}
.hero__badge{animation-delay:180ms;} .hero__eyebrow{animation-delay:260ms;}
.hero__headline span:nth-child(1){animation-delay:360ms;} .hero__headline span:nth-child(2){animation-delay:440ms;}
.hero__lede{animation-delay:560ms;} .hero__actions{animation-delay:660ms;}
@media (prefers-reduced-motion:reduce){.hero__badge,.hero__eyebrow,.hero__headline span,.hero__lede,.hero__actions,.hero__sweep-bg,.hero__sweep-sheen{opacity:1;animation:none;transform:none;}}

/* responsive */
@media (min-width:768px) and (max-width:1023px){
  :root{--nav-h:64px;}
  .nav-links a:not(.nav-cta){font-size:13px;padding:6px 10px;}
  .nav-drop-btn{font-size:13px;padding:6px 10px;}
  .sol__grid,.sol__grid--4{grid-template-columns:1fr 1fr;}
  .side__inner{grid-template-columns:1fr;row-gap:40px;}
  .steps__grid,.steps__grid--3{grid-template-columns:1fr 1fr;}
  .results__grid{grid-template-columns:1fr 1fr;}
  .how__items{grid-template-columns:1fr;gap:20px;}
  .footer__grid{grid-template-columns:1fr 1fr;row-gap:40px;}
  .footer__brand{grid-column:1 / -1;}
}
@media (max-width:767px){
  :root{--nav-h:64px;}
  .nav-links{display:none;} .nav-hamburger{display:flex;} .nav-logo img{height:56px;}
  .hero__actions{flex-direction:column;align-items:flex-start;}
  .sol__grid,.sol__grid--4{grid-template-columns:1fr;}
  .side__inner{grid-template-columns:1fr;row-gap:36px;}
  .steps__grid,.steps__grid--3{grid-template-columns:1fr;}
  .results__grid{grid-template-columns:1fr 1fr;}
  .how__items{grid-template-columns:1fr;gap:16px;}
  .cta__hl{font-size:clamp(36px,10vw,52px);}
  .footer__grid{grid-template-columns:1fr;}
  .footer__brand{max-width:100%;}
  .footer__bottom{flex-direction:column;align-items:flex-start;}
}
