/* Bóc nguyên xi từ tmt_solar_v5_clean.html — KHÔNG sửa một ký tự.
   Nguồn sự thật vẫn là khối <style> trong index.html. */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0d47a1;--navy2:#0a3878;--navy3:#1565c0;
  --blue:#1976d2;--blue-light:#29B6F6;
  --gold:#FFCA28;--gold2:#F9A825;--gold-glow:rgba(255,202,40,.35);
  --green:#27AE60;--green-light:#E8F8EF;
  --white:#FFF;--off:#F5F8FC;
  --g100:#E3EBF5;--g200:#C7D6E8;--g400:#90A4C4;--g600:#5C6F8C;--g800:#1B2A44;
  --r:18px;--r-sm:12px;
}
html{scroll-behavior:smooth}
body{font-family:'Be Vietnam Pro',system-ui,sans-serif;color:var(--g800);background:var(--white);overflow-x:hidden;line-height:1.6}
.container{max-width:1140px;margin:0 auto;padding:0 24px}

/* ═══ ANIMATIONS ═══ */
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes spin-slow{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}100%{transform:scale(2.2);opacity:0}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes countUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes glow{0%,100%{box-shadow:0 0 20px var(--gold-glow)}50%{box-shadow:0 0 40px var(--gold-glow),0 0 80px rgba(255,202,40,.15)}}
@keyframes slideRight{from{width:0}to{width:100%}}
@keyframes sun-ray{0%,100%{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.15)}}
@keyframes orbit{from{transform:rotate(0) translateX(140px) rotate(0)}to{transform:rotate(360deg) translateX(140px) rotate(-360deg)}}
@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.reveal{opacity:0;transform:translateY(40px);transition:all .7s cubic-bezier(.22,1,.36,1)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ═══ TOPBAR ═══ */
.topbar{background:linear-gradient(90deg,var(--navy),var(--navy2));color:rgba(255,255,255,.8);font-size:.78rem;padding:10px 0;letter-spacing:.02em}
.topbar .inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.topbar a{color:var(--gold);text-decoration:none;font-weight:600}
.topbar .live-dot{width:8px;height:8px;background:#27AE60;border-radius:50%;display:inline-block;margin-right:6px;animation:pulse-ring 2s infinite}

/* ═══ NAV ═══ */
.navbar{background:rgba(255,255,255,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.06);position:sticky;top:0;z-index:100;transition:box-shadow .3s}
.navbar.scrolled{box-shadow:0 4px 30px rgba(0,0,0,.08)}
.navbar .inner{display:flex;align-items:center;justify-content:space-between;padding:12px 0}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo-mark{width:46px;height:46px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:12px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.logo-mark::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.3));pointer-events:none}
.logo-mark span{color:var(--white);font-weight:900;font-size:.95rem;letter-spacing:-.03em;position:relative;z-index:2}
.logo-text{font-size:1.15rem;font-weight:800;color:var(--navy);line-height:1.15}
.logo-text small{display:block;font-size:.68rem;font-weight:600;color:var(--blue);letter-spacing:.1em;text-transform:uppercase}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{font-size:.85rem;font-weight:500;color:var(--g600);text-decoration:none;transition:color .2s;position:relative}
.nav-links a:hover{color:var(--navy)}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--gold);transition:width .3s}
.nav-links a:hover::after{width:100%}
.nav-cta{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);font-weight:700;font-size:.85rem;padding:10px 24px;border-radius:50px;text-decoration:none;transition:all .3s;box-shadow:0 4px 15px rgba(255,202,40,.3)}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,202,40,.4)}
@media(max-width:800px){.nav-links{display:none}}

/* ═══ HERO ═══ */
.hero{background:var(--navy);position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:center;padding:40px 0}

/* Generation-curve backdrop — traces a real daily solar output curve, not decorative blur */
.hero-bg{position:absolute;inset:0;overflow:hidden}
.hero-bg .curve-wrap{position:absolute;left:0;right:0;bottom:-10px;height:46%;opacity:.9}
.hero-bg .curve-wrap svg{width:100%;height:100%}
.hero-bg .curve-fill{opacity:.16}
.hero-bg .curve-line{stroke-dasharray:1400;stroke-dashoffset:1400;animation:drawCurve 2.4s ease-out .3s forwards}
.hero-bg .curve-dot{animation:travelCurve 7s linear infinite 2.6s}
@keyframes drawCurve{to{stroke-dashoffset:0}}
@keyframes travelCurve{
  0%{offset-distance:0%;opacity:0}
  4%{opacity:1}
  96%{opacity:1}
  100%{offset-distance:100%;opacity:0}
}
.hero-bg .curve-axis{stroke:rgba(255,255,255,.08)}
.hero-bg .curve-tick{fill:rgba(255,255,255,.3);font-family:'Be Vietnam Pro',sans-serif;font-size:11px}

/* Sun decoration */
.sun-deco{position:absolute;top:60px;right:8%;width:280px;height:280px;pointer-events:none;opacity:.6}
.sun-core{position:absolute;top:50%;left:50%;width:80px;height:80px;background:radial-gradient(circle,var(--gold),var(--gold2));border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 60px var(--gold-glow),0 0 120px rgba(255,202,40,.15);animation:glow 4s ease-in-out infinite}
.sun-ring{position:absolute;top:50%;left:50%;width:160px;height:160px;border:2px dashed rgba(255,202,40,.2);border-radius:50%;transform:translate(-50%,-50%);animation:spin-slow 30s linear infinite}
.sun-ray-line{position:absolute;top:50%;left:50%;width:200px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,202,40,.15),transparent);transform-origin:0 50%;animation:sun-ray 3s ease-in-out infinite}
.sun-ray-line:nth-child(3){transform:rotate(0deg);animation-delay:0s}
.sun-ray-line:nth-child(4){transform:rotate(45deg);animation-delay:.4s}
.sun-ray-line:nth-child(5){transform:rotate(90deg);animation-delay:.8s}
.sun-ray-line:nth-child(6){transform:rotate(135deg);animation-delay:1.2s}
.sun-ray-line:nth-child(7){transform:rotate(180deg);animation-delay:1.6s}
.sun-ray-line:nth-child(8){transform:rotate(225deg);animation-delay:2s}
.sun-ray-line:nth-child(9){transform:rotate(270deg);animation-delay:2.4s}
.sun-ray-line:nth-child(10){transform:rotate(315deg);animation-delay:2.8s}
.planet{position:absolute;top:50%;left:50%;width:12px;height:12px;background:var(--blue-light);border-radius:50%;animation:orbit 20s linear infinite;box-shadow:0 0 10px rgba(41,182,246,.5)}

/* Grid pattern */
.hero-grid-pattern{position:absolute;inset:0;opacity:.5;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%2329B6F6' stroke-width='1' stroke-opacity='0.16'%3E%3Cpath d='M0 20H30V50H60'/%3E%3Cpath d='M120 40H90V70H60V100'/%3E%3Cpath d='M20 120V90H50V60'/%3E%3Cpath d='M100 0V30H70V60'/%3E%3C/g%3E%3Cg fill='%2329B6F6' fill-opacity='0.35'%3E%3Ccircle cx='30' cy='20' r='2.5'/%3E%3Ccircle cx='60' cy='50' r='2.5'/%3E%3Ccircle cx='90' cy='40' r='2.5'/%3E%3Ccircle cx='60' cy='100' r='2.5'/%3E%3Ccircle cx='20' cy='90' r='2.5'/%3E%3Ccircle cx='50' cy='60' r='2.5'/%3E%3Ccircle cx='100' cy='30' r='2.5'/%3E%3Ccircle cx='70' cy='60' r='2.5'/%3E%3C/g%3E%3C/svg%3E");
  background-size:120px 120px;
  mask-image:radial-gradient(ellipse 70% 60% at 50% 40%, black 40%, transparent 90%);
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%, black 40%, transparent 90%);
}

.hero .container{position:relative;z-index:5}
.hero-layout{display:grid;grid-template-columns:1fr 480px;gap:60px;align-items:center}
@media(max-width:1000px){.hero-layout{grid-template-columns:1fr;gap:36px}.sun-deco{display:none}}

/* Hero content */
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,202,40,.1);border:1px solid rgba(255,202,40,.25);color:var(--gold);font-size:.78rem;font-weight:600;padding:8px 18px;border-radius:50px;margin-bottom:24px;animation:fadeUp .8s ease both}
.hero-badge .pulse{width:8px;height:8px;background:var(--green);border-radius:50%;position:relative}
.hero-badge .pulse::after{content:'';position:absolute;inset:-4px;border:2px solid var(--green);border-radius:50%;animation:pulse-ring 2s infinite}

.hero h1{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:900;color:var(--white);line-height:1.12;margin-bottom:20px;letter-spacing:-.03em;animation:fadeUp .8s ease .15s both}
.hero h1 .highlight{position:relative;display:inline;color:var(--gold)}
.hero h1 .highlight::after{content:'';position:absolute;bottom:4px;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--gold),var(--gold2));opacity:.3;border-radius:3px}
.hero .sub{font-size:1.08rem;color:rgba(255,255,255,.6);line-height:1.75;margin-bottom:32px;max-width:500px;font-weight:300;animation:fadeUp .8s ease .3s both}

.hero-stats{display:flex;gap:32px;flex-wrap:wrap;animation:fadeUp .8s ease .45s both}
.hero-stat{position:relative;padding-left:16px}
.hero-stat::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:3px;background:linear-gradient(180deg,var(--gold),var(--gold2));border-radius:2px}
.hero-stat .num{font-size:1.6rem;font-weight:900;color:var(--white);line-height:1}
.hero-stat .num .accent{color:var(--gold)}
.hero-stat .lbl{font-size:.72rem;color:rgba(255,255,255,.45);font-weight:500;margin-top:4px;text-transform:uppercase;letter-spacing:.05em}

/* ═══ CALCULATOR ═══ */
.calc-card{background:var(--white);border-radius:var(--r);overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,.3);animation:fadeUp .8s ease .2s both;position:relative}
.calc-header{background:linear-gradient(135deg,var(--gold),var(--gold2));padding:22px 28px;text-align:center;position:relative;overflow:hidden}
.calc-header::before{content:'';position:absolute;top:-30px;right:-30px;width:100px;height:100px;background:rgba(255,255,255,.15);border-radius:50%}
.calc-header::after{content:'';position:absolute;bottom:-20px;left:-20px;width:70px;height:70px;background:rgba(255,255,255,.1);border-radius:50%}
.calc-header h3{font-size:1.15rem;font-weight:800;color:var(--navy);position:relative;z-index:2}
.calc-header p{font-size:.8rem;color:rgba(11,29,44,.6);position:relative;z-index:2;margin-top:2px}
.calc-body{padding:28px}
.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:.82rem;font-weight:700;color:var(--navy);margin-bottom:6px}
.form-group label .req{color:#EF4444}
.input-wrap{position:relative}
.input-wrap input,.input-wrap select{width:100%;padding:14px 16px;border:2px solid var(--g100);border-radius:var(--r-sm);font-family:inherit;font-size:.95rem;color:var(--g800);transition:all .3s;background:var(--white);outline:none}
.input-wrap select{cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.input-wrap input:focus,.input-wrap select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(41,182,246,.1)}
.input-wrap .unit{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:.8rem;color:var(--g400);font-weight:600;pointer-events:none}

.btn-calc{width:100%;padding:16px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);font-family:inherit;font-size:1.05rem;font-weight:800;border:none;border-radius:var(--r-sm);cursor:pointer;transition:all .3s;position:relative;overflow:hidden;margin-top:8px}
.btn-calc::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}
.btn-calc:hover::before{left:100%}
.btn-calc:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,202,40,.4)}
.btn-calc:active{transform:translateY(0)}
.calc-trust{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:14px;font-size:.73rem;color:var(--g400)}
.calc-trust svg{width:14px;height:14px}

/* Result panel */
.result-panel{display:none;margin-top:0;padding:28px;background:linear-gradient(135deg,#F0FFF4,#E8F8EF);border-top:1px solid rgba(39,174,96,.15)}
.result-panel.show{display:block;animation:fadeUp .5s ease}
.result-hero{text-align:center;margin-bottom:20px}
.result-hero .emoji{font-size:2.5rem;margin-bottom:8px;display:block}
.result-hero .big-num{font-size:2.4rem;font-weight:900;color:var(--green);line-height:1.1;background:linear-gradient(135deg,#27AE60,#1E8449);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.result-hero .big-lbl{font-size:.85rem;color:var(--g600);font-weight:500;margin-top:4px}
.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.result-cell{background:var(--white);border-radius:var(--r-sm);padding:14px;text-align:center;border:1px solid rgba(39,174,96,.1)}
.result-cell .v{font-size:1.15rem;font-weight:800;color:var(--navy)}
.result-cell .l{font-size:.7rem;color:var(--g400);font-weight:500;margin-top:3px}

/* Savings bar animation */
.savings-bar-wrap{margin:16px 0;padding:16px;background:var(--white);border-radius:var(--r-sm);border:1px solid rgba(39,174,96,.1)}
.savings-bar-label{display:flex;justify-content:space-between;font-size:.78rem;font-weight:600;margin-bottom:8px}
.savings-bar-label .before{color:var(--g600)}
.savings-bar-label .after{color:var(--green)}
.savings-bar{height:14px;background:var(--g100);border-radius:7px;overflow:hidden;position:relative}
.savings-bar .fill{height:100%;background:linear-gradient(90deg,var(--green),#2ECC71);border-radius:7px;transition:width 1.5s cubic-bezier(.22,1,.36,1);position:relative}
.savings-bar .fill::after{content:'';position:absolute;right:0;top:0;bottom:0;width:30px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4));animation:shimmer 2s infinite}

/* Lead form */
.lead-section{display:none;padding:24px 28px;background:var(--off);border-top:2px dashed var(--gold)}
.lead-section.show{display:block;animation:fadeUp .5s ease .2s both}
.lead-section h4{font-size:.95rem;font-weight:800;color:var(--navy);text-align:center;margin-bottom:4px}
.lead-section .lead-sub{font-size:.78rem;color:var(--g600);text-align:center;margin-bottom:16px}
.lead-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
@media(max-width:500px){.lead-row{grid-template-columns:1fr}}
.lead-section input{width:100%;padding:12px 14px;border:2px solid var(--g100);border-radius:10px;font-family:inherit;font-size:.88rem;outline:none;transition:all .3s;margin-bottom:10px}
.lead-section input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(41,182,246,.08)}
.btn-lead{width:100%;padding:15px;background:linear-gradient(135deg,var(--green),#1E8449);color:var(--white);font-family:inherit;font-size:1rem;font-weight:800;border:none;border-radius:10px;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}
.btn-lead:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(39,174,96,.3)}
.btn-lead::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}
.btn-lead:hover::before{left:100%}
.lead-note{font-size:.72rem;color:var(--g400);text-align:center;margin-top:12px;line-height:1.5}
.consent-row{display:flex;align-items:flex-start;gap:8px;font-size:.74rem;color:var(--g600);line-height:1.5;margin-bottom:14px;cursor:pointer}
.consent-row input{width:16px;height:16px;flex-shrink:0;margin-top:1px;accent-color:var(--blue)}
.consent-row a{color:var(--blue);text-decoration:underline}
.consent-row.err{color:#EF4444}

/* Thank you */
.thank-you{display:none;text-align:center;padding:40px 28px}
.thank-you.show{display:block;animation:fadeUp .5s ease}
.thank-check{width:64px;height:64px;background:linear-gradient(135deg,var(--green),#1E8449);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 8px 30px rgba(39,174,96,.3)}
.thank-check svg{width:32px;height:32px;color:var(--white)}
.thank-you h3{font-size:1.2rem;font-weight:800;color:var(--navy);margin-bottom:8px}
.thank-you p{font-size:.9rem;color:var(--g600);line-height:1.7}

/* ═══ MARQUEE PROOF ═══ */
.marquee-section{background:var(--navy);padding:20px 0;overflow:hidden;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}
.marquee-track{display:flex;gap:48px;animation:marquee 25s linear infinite;width:max-content}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.marquee-item{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.5);font-size:.85rem;font-weight:600;white-space:nowrap}
.marquee-item .gold{color:var(--gold);font-weight:800;font-size:1.1rem}
.marquee-item .dot{width:6px;height:6px;background:var(--gold);border-radius:50%;opacity:.5}

/* ═══ PROOF STATS ═══ */
.stats-section{padding:56px 0;background:var(--off) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='90' viewBox='0 0 800 90'%3E%3Cg fill='%230d47a1' fill-opacity='0.05'%3E%3Crect x='20' y='40' width='36' height='50'/%3E%3Crect x='64' y='20' width='26' height='70'/%3E%3Crect x='100' y='50' width='30' height='40'/%3E%3Cpolygon points='150,90 150,30 158,20 166,30 166,90'/%3E%3Crect x='190' y='34' width='40' height='56'/%3E%3Crect x='245' y='55' width='22' height='35'/%3E%3Crect x='280' y='15' width='30' height='75'/%3E%3Crect x='330' y='45' width='34' height='45'/%3E%3Cpolygon points='390,90 390,25 400,12 410,25 410,90'/%3E%3Crect x='440' y='38' width='28' height='52'/%3E%3Crect x='490' y='58' width='24' height='32'/%3E%3Crect x='534' y='24' width='36' height='66'/%3E%3Crect x='590' y='48' width='30' height='42'/%3E%3Cpolygon points='650,90 650,28 660,16 670,28 670,90'/%3E%3Crect x='700' y='40' width='32' height='50'/%3E%3Crect x='748' y='58' width='28' height='32'/%3E%3C/g%3E%3Cline x1='0' y1='90' x2='800' y2='90' stroke='%230d47a1' stroke-opacity='0.1'/%3E%3C/svg%3E") repeat-x bottom;background-size:800px 90px;border-bottom:1px solid var(--g100)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
@media(max-width:700px){.stats-grid{grid-template-columns:repeat(2,1fr)}}
.stat-card{padding:24px 16px;background:var(--white);border-radius:var(--r);border:1px solid var(--g100);transition:all .4s}
.stat-card:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(0,0,0,.08);border-color:var(--gold)}
.stat-icon{width:48px;height:48px;background:linear-gradient(135deg,rgba(255,202,40,.1),rgba(255,202,40,.05));border-radius:12px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:12px}
.stat-icon svg{width:24px;height:24px;color:var(--gold2)}
.stat-num{font-size:2rem;font-weight:900;color:var(--navy);line-height:1}
.stat-num .accent{color:var(--gold2)}
.stat-lbl{font-size:.78rem;color:var(--g600);font-weight:500;margin-top:6px}

/* ═══ SECTION COMMON ═══ */
.section{padding:80px 0}
.section-header{text-align:center;margin-bottom:52px}
.section-tag{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;color:var(--gold2);text-transform:uppercase;letter-spacing:.14em;margin-bottom:10px;padding:6px 16px;background:rgba(255,202,40,.08);border-radius:50px}
.section-title{font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:900;color:var(--navy);line-height:1.2;margin-bottom:12px;letter-spacing:-.02em}
.section-desc{font-size:1rem;color:var(--g600);max-width:560px;margin:0 auto;font-weight:300;line-height:1.7}

/* ═══ HOW IT WORKS ═══ */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}
@media(max-width:768px){.steps-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto;gap:24px}}
.step-card{text-align:center;padding:36px 28px;position:relative;transition:all .4s}
.step-card:hover{transform:translateY(-6px)}
.step-card:not(:last-child)::after{content:'';position:absolute;top:42px;right:-20px;width:40px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);z-index:2}
@media(max-width:768px){.step-card::after{display:none!important}}
.step-num{width:56px;height:56px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--white);font-weight:900;font-size:1.3rem;margin-bottom:18px;box-shadow:0 8px 25px rgba(255,202,40,.25);transition:all .3s}
.step-card:hover .step-num{transform:scale(1.1) rotate(-5deg);box-shadow:0 12px 35px rgba(255,202,40,.35)}
.step-card h3{font-size:1.05rem;font-weight:700;color:var(--navy);margin-bottom:10px}
.step-card p{font-size:.88rem;color:var(--g600);line-height:1.7}

/* ═══ BENEFITS ═══ */
.benefits{background:linear-gradient(175deg,var(--navy) 0%,var(--navy2) 60%,var(--navy3) 100%);position:relative;overflow:hidden}
.benefits::before{content:'';position:absolute;top:0;right:0;width:50%;height:100%;background:radial-gradient(ellipse at 70% 30%,rgba(255,202,40,.06),transparent 70%);pointer-events:none}
.benefits::after{content:'';position:absolute;inset:0;opacity:.35;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%2329B6F6' stroke-width='1' stroke-opacity='0.14'%3E%3Cpath d='M0 20H30V50H60'/%3E%3Cpath d='M120 40H90V70H60V100'/%3E%3Cpath d='M20 120V90H50V60'/%3E%3Cpath d='M100 0V30H70V60'/%3E%3C/g%3E%3C/svg%3E");
  background-size:120px 120px}
.benefits .section-tag{color:var(--gold);background:rgba(255,202,40,.1)}
.benefits .section-title{color:var(--white)}
.benefits .section-desc{color:rgba(255,255,255,.5)}
.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:700px){.benefits-grid{grid-template-columns:1fr}}
.b-card{padding:28px 24px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--r);transition:all .4s;position:relative;overflow:hidden}
.b-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),transparent);opacity:0;transition:opacity .3s}
.b-card:hover{background:rgba(255,255,255,.08);border-color:rgba(255,202,40,.2);transform:translateY(-4px)}
.b-card:hover::before{opacity:1}
.b-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 6px 20px rgba(255,202,40,.2)}
.b-icon.tech{background:linear-gradient(135deg,var(--blue),var(--blue-light));box-shadow:0 6px 20px rgba(41,182,246,.25)}
.b-icon.tech svg{color:var(--white)}
.b-icon svg{width:24px;height:24px;color:var(--navy)}
.b-card h4{font-size:1.05rem;font-weight:700;color:var(--white);margin-bottom:8px}
.b-card p{font-size:.85rem;color:rgba(255,255,255,.5);line-height:1.7}

/* ═══ CASE STUDIES ═══ */
.cases-section{background:var(--off)}
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:768px){.cases-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}
.case-card{border-radius:var(--r);overflow:hidden;background:var(--white);border:1px solid var(--g100);transition:all .4s}
.case-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px rgba(0,0,0,.1)}
.case-visual{height:200px;position:relative;overflow:hidden}
.case-visual .bg{position:absolute;inset:0;transition:transform .5s}
.case-card:hover .case-visual .bg{transform:scale(1.05)}
.case-visual .tag{position:absolute;top:14px;left:14px;background:var(--green);color:var(--white);font-size:.7rem;font-weight:700;padding:5px 12px;border-radius:50px;z-index:2}
.case-visual .icon-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.case-visual svg{width:72px;height:72px;color:rgba(255,255,255,.15)}
.case-body{padding:22px}
.case-body h4{font-size:1rem;font-weight:700;color:var(--navy);margin-bottom:8px}
.case-body p{font-size:.82rem;color:var(--g600);line-height:1.6;margin-bottom:14px}
.case-metrics{display:flex;gap:12px}
.case-metric{flex:1;text-align:center;padding:10px 8px;background:var(--off);border-radius:10px}
.case-metric .v{font-size:1.1rem;font-weight:800;color:var(--green)}
.case-metric .l{font-size:.68rem;color:var(--g400);font-weight:500;margin-top:2px}

/* ═══ TESTIMONIALS ═══ */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:768px){.testi-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}
.testi-card{padding:28px 24px;background:var(--white);border:1px solid var(--g100);border-radius:var(--r);transition:all .4s;position:relative}
.testi-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.08);transform:translateY(-4px)}
.testi-stars{color:var(--gold);font-size:.9rem;letter-spacing:2px;margin-bottom:12px}
.testi-text{font-size:.9rem;color:var(--g800);line-height:1.7;font-style:italic;margin-bottom:16px}
.testi-author{display:flex;align-items:center;gap:12px}
.testi-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--blue-light));display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:700;font-size:.85rem}
.testi-info .name{font-size:.85rem;font-weight:700;color:var(--navy)}
.testi-info .role{font-size:.72rem;color:var(--g400)}

/* ═══ REFERRAL + LEAD MAGNET ═══ */
.perks-section{padding:0 0 80px}
.perks-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:700px){.perks-grid{grid-template-columns:1fr}}
.perk-card{background:var(--off);border:1px solid var(--g100);border-radius:var(--r);padding:30px}
.perk-tag{display:inline-flex;font-size:.72rem;font-weight:700;color:var(--gold2);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}
.perk-card h3{font-size:1.05rem;font-weight:700;color:var(--navy);margin-bottom:8px;line-height:1.4}
.perk-card p{font-size:.85rem;color:var(--g600);line-height:1.65;margin-bottom:16px}
.perk-link{font-size:.85rem;font-weight:700;color:var(--blue);text-decoration:none}
.perk-link:hover{text-decoration:underline}
.perk-form{display:flex;gap:8px}
.perk-form input{flex:1;padding:12px 14px;border:2px solid var(--g100);border-radius:10px;font-family:inherit;font-size:.85rem;outline:none}
.perk-form input:focus{border-color:var(--blue)}
.perk-form button{background:var(--navy);color:var(--white);border:none;padding:0 20px;border-radius:10px;font-family:inherit;font-weight:700;font-size:.85rem;cursor:pointer;white-space:nowrap}
.perk-form button:hover{background:var(--navy2)}
.perk-done{display:none;font-size:.8rem;color:var(--green);font-weight:600;margin-top:10px}
.perk-done.show{display:block}

/* ═══ FAQ ═══ */
.faq-list{max-width:720px;margin:0 auto}
.faq-item{border:1px solid var(--g100);border-radius:var(--r-sm);margin-bottom:10px;overflow:hidden;transition:all .3s;background:var(--white)}
.faq-item:hover{border-color:var(--g200)}
.faq-item.open{border-color:var(--gold);box-shadow:0 4px 20px rgba(255,202,40,.1)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;cursor:pointer;font-size:.92rem;font-weight:600;color:var(--navy);transition:all .2s;gap:16px}
.faq-q:hover{color:var(--blue)}
.faq-q .arrow{width:28px;height:28px;background:var(--off);border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .3s;flex-shrink:0}
.faq-q .arrow svg{width:16px;height:16px;transition:transform .3s}
.faq-item.open .faq-q .arrow{background:var(--gold);color:var(--white)}
.faq-item.open .faq-q .arrow svg{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-item.open .faq-a{max-height:300px}
.faq-a-inner{padding:0 22px 18px;font-size:.88rem;color:var(--g600);line-height:1.75}

/* ═══ FINAL CTA ═══ */
.cta-final{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:80px 0;text-align:center;position:relative;overflow:hidden}
.cta-final::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(255,202,40,.08),transparent 60%)}
.cta-final .container{position:relative;z-index:2}
.cta-final h2{font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:900;color:var(--white);margin-bottom:14px;letter-spacing:-.02em}
.cta-final h2 .highlight{color:var(--gold)}
.cta-final p{font-size:1.05rem;color:rgba(255,255,255,.55);margin-bottom:32px;max-width:480px;margin-left:auto;margin-right:auto}
.btn-final{display:inline-flex;align-items:center;gap:12px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);font-family:inherit;font-size:1.15rem;font-weight:800;padding:18px 48px;border:none;border-radius:60px;cursor:pointer;transition:all .3s;text-decoration:none;animation:glow 3s ease-in-out infinite}
.btn-final:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 16px 50px rgba(255,202,40,.4)}
.cta-note{font-size:.78rem;color:rgba(255,255,255,.35);margin-top:18px}

/* ═══ FOOTER ═══ */
.footer{background:var(--g800);color:rgba(255,255,255,.55);padding:48px 0 28px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;margin-bottom:36px}
@media(max-width:700px){.footer-grid{grid-template-columns:1fr;gap:28px}}
.footer h5{font-size:.85rem;font-weight:700;color:var(--white);margin-bottom:14px;text-transform:uppercase;letter-spacing:.08em}
.footer p,.footer li{font-size:.82rem;line-height:1.8}
.footer ul{list-style:none}
.footer a{color:rgba(255,255,255,.55);text-decoration:none;transition:color .2s}
.footer a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.75rem}

/* ═══ FLOAT CTA MOBILE ═══ */
.float-cta{position:fixed;bottom:0;left:0;right:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--g100);padding:12px 20px;z-index:200;box-shadow:0 -4px 20px rgba(0,0,0,.08);transform:translateY(100%);transition:transform .3s}
.float-cta.show{transform:translateY(0)}
.float-cta button{width:100%;padding:14px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);font-family:inherit;font-size:.95rem;font-weight:800;border:none;border-radius:50px;cursor:pointer}

/* ═══ PRIVACY ═══ */
.privacy-bar{position:fixed;bottom:0;left:0;right:0;background:var(--navy);color:var(--white);padding:14px 24px;z-index:300;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;font-size:.8rem;box-shadow:0 -4px 20px rgba(0,0,0,.25)}
.privacy-bar a{color:var(--gold);text-decoration:underline}
.privacy-bar button{background:var(--gold);color:var(--navy);border:none;padding:8px 22px;border-radius:50px;font-family:inherit;font-weight:700;font-size:.8rem;cursor:pointer}
.privacy-bar.hidden{display:none}
