:root{
  --navy:#162040;--navy2:#1E2E5C;--navy3:#2A3F78;
  --teal:#4A8FA8;--teal2:#6AAFCA;--teal3:#89C8DC;
  --sand:#F9EDE8;--sand2:#F3E0D8;--sand3:#EAC8BE;
  --blue-light:#C8D8EE;--blue-light2:#D8E6F4;--blue-light3:#EBF2FA;
  --text:#0E1A38;--text2:#2A3A5C;--muted:#5A6A8A;--muted2:#7A8AAA;--muted3:#9AAAC8;
  --white:#FFFFFF;--offwhite:#FDFBF9;
  --surface:rgba(74,143,168,.06);--surface2:rgba(74,143,168,.12);--surface3:rgba(74,143,168,.20);
  --border:rgba(30,46,92,.08);--border2:rgba(30,46,92,.14);--border-t:rgba(74,143,168,.28);--border-t2:rgba(74,143,168,.50);
  --shadow:0 32px 100px rgba(14,26,56,.18);--shadow2:0 8px 40px rgba(14,26,56,.12);
  --ring:0 0 0 3px rgba(74,143,168,.26);
  --radius:12px;--radius2:18px;--radius3:26px;
  --max:1160px;--sans:ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --section-xl:108px;--section-lg:76px;--section-md:52px;
  --h1:clamp(40px,7vw,88px);--h2:clamp(24px,3.2vw,40px);--lead:clamp(16px,1.8vw,20px)
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--text);background:var(--white);overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
img,svg{display:block}
input,select,textarea{font-family:inherit}

::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--blue-light3)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--teal),var(--navy2));border-radius:3px}
::selection{background:rgba(74,143,168,.22);color:var(--text)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.wrap-narrow{max-width:760px;margin:0 auto}
.text-center{text-align:center}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:999px;border:2px solid transparent;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.2px;transition:all 200ms;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}
.btn:focus-visible{outline:none;box-shadow:var(--ring)}
.btn:active{transform:translateY(1px)}

.btn-primary{background:var(--navy);color:var(--white);border-color:var(--navy);box-shadow:0 4px 24px rgba(22,32,64,.30)}
.btn-primary:hover{background:var(--navy2);border-color:var(--navy2);transform:translateY(-2px);box-shadow:0 8px 40px rgba(22,32,64,.38)}

.btn-outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.50)}
.btn-outline:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.80)}

.btn-teal{background:var(--teal);color:var(--white);border-color:var(--teal);box-shadow:0 4px 24px rgba(74,143,168,.36)}
.btn-teal:hover{background:var(--teal2);border-color:var(--teal2);transform:translateY(-2px);box-shadow:0 8px 40px rgba(74,143,168,.46)}

.btn-light{background:var(--white);color:var(--navy);border-color:var(--white);box-shadow:0 4px 24px rgba(14,26,56,.18)}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 8px 40px rgba(14,26,56,.24)}

.btn-ghost{background:transparent;color:var(--muted);border-color:var(--border2)}
.btn-ghost:hover{color:var(--text);background:var(--surface);border-color:var(--border-t)}

.btn-lg{padding:17px 36px;font-size:17px}
.btn-sm{padding:10px 20px;font-size:13px}

/* HEADER */
header{position:sticky;top:0;z-index:100;background:rgba(22,32,64,.97);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-bottom:1px solid rgba(255,255,255,.08)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.brand{display:flex;flex-direction:column;gap:1px}
.brand-name{font-size:15px;font-weight:800;color:var(--white);letter-spacing:-.1px}
.brand-sub{font-size:11px;font-weight:500;color:var(--teal3);letter-spacing:1.5px;text-transform:uppercase}
.header-cta{display:flex;align-items:center;gap:10px}
@media(max-width:580px){.header-cta .btn-label{display:none}}

/* HERO */
.hero{background:var(--navy);min-height:100svh;min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:120px 0 100px}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 80% at 80% 20%,rgba(74,143,168,.18),transparent 65%),radial-gradient(ellipse 50% 60% at 10% 80%,rgba(42,63,120,.40),transparent 60%);pointer-events:none}
.hero-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 80% 80% at 18% 30%,black,transparent);-webkit-mask-image:radial-gradient(ellipse 80% 80% at 18% 30%,black,transparent);pointer-events:none}
.hero-inner{position:relative;z-index:1;max-width:760px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;text-transform:uppercase;letter-spacing:3px;font-weight:800;color:var(--teal3);padding:6px 18px;border-radius:999px;border:1px solid rgba(74,143,168,.35);background:rgba(74,143,168,.12);margin-bottom:30px}
.hero-dot{width:6px;height:6px;border-radius:50%;background:var(--teal2);animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}
.hero h1{font-size:var(--h1);font-weight:900;line-height:1.04;letter-spacing:-2.5px;color:var(--white);margin-bottom:28px}
.hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--teal3) 0%,var(--teal2) 50%,var(--blue-light) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{font-size:var(--lead);color:rgba(255,255,255,.72);line-height:1.72;max-width:52ch;margin-bottom:40px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:52px}
.hero-note{font-size:13px;color:rgba(255,255,255,.40);display:flex;align-items:center;gap:6px}
.hero-note svg{color:var(--teal3);opacity:.7}
.hero-divider{height:1px;max-width:240px;margin-bottom:36px;background:linear-gradient(90deg,var(--teal),rgba(74,143,168,0));box-shadow:0 0 16px rgba(74,143,168,.30)}

/* PROBLEM SECTION */
.section-problem{padding:var(--section-xl) 0;background:var(--offwhite)}
.problem-intro{max-width:640px;margin:0 auto 56px;text-align:center}
.section-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:3px;font-weight:800;color:var(--teal);padding:5px 16px;border-radius:999px;border:1px solid var(--border-t);background:var(--surface);margin-bottom:18px}
.eyebrow-dot{width:5px;height:5px;border-radius:50%;background:var(--teal)}
h2.section-title{font-size:var(--h2);font-weight:900;letter-spacing:-.5px;line-height:1.14;color:var(--text);margin-bottom:14px}
.section-sub{font-size:16px;color:var(--muted);line-height:1.72;max-width:54ch;margin:0 auto}
.problem-text{text-align:center;margin-bottom:52px}
.problem-text p{font-size:18px;line-height:1.72;color:var(--text2);max-width:54ch;margin:0 auto}

.symptoms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:56px}
@media(max-width:860px){.symptoms-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.symptoms-grid{grid-template-columns:1fr}}
.symptom-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius2);padding:28px 24px;display:flex;align-items:flex-start;gap:14px;transition:border-color 220ms,box-shadow 200ms,transform 200ms;position:relative;overflow:hidden}
.symptom-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--teal),var(--navy3));opacity:0;border-radius:0 2px 2px 0;transition:opacity 220ms}
.symptom-card:hover{border-color:var(--border-t);box-shadow:0 8px 40px rgba(14,26,56,.08);transform:translateY(-2px)}
.symptom-card:hover::before{opacity:1}
.symptom-icon{width:40px;height:40px;border-radius:12px;background:var(--blue-light3);border:1px solid var(--blue-light2);display:grid;place-items:center;flex:0 0 auto}
.symptom-icon svg{width:20px;height:20px;color:var(--navy2)}
.symptom-text h3{font-size:14px;font-weight:800;color:var(--text);margin-bottom:4px;letter-spacing:-.1px}
.symptom-text p{font-size:13px;color:var(--muted);line-height:1.6}

.problem-closing{text-align:center;padding:40px 36px;background:var(--white);border-radius:var(--radius2);border:1px solid var(--border);max-width:600px;margin:0 auto}
.problem-closing p{font-size:18px;font-weight:600;color:var(--text2);line-height:1.70;margin-bottom:6px}
.problem-closing .highlight{color:var(--navy);font-weight:700}
.problem-closing .sub{font-size:15px;color:var(--teal);font-weight:700;margin-top:10px}

/* SOLUTION SECTION */
.section-solution{padding:var(--section-xl) 0;background:var(--blue-light);position:relative;overflow:hidden}
.section-solution::before{content:"";position:absolute;top:-80px;right:-120px;width:600px;height:600px;background:radial-gradient(circle,rgba(30,46,92,.10),transparent 65%);pointer-events:none}
.section-solution::after{content:"";position:absolute;bottom:-60px;left:-60px;width:400px;height:400px;background:radial-gradient(circle,rgba(74,143,168,.14),transparent 65%);pointer-events:none}
.solution-header{text-align:center;margin-bottom:16px;position:relative;z-index:1}
.solution-header .section-eyebrow{color:var(--navy2);border-color:rgba(30,46,92,.22);background:rgba(30,46,92,.06)}
.solution-header .eyebrow-dot{background:var(--navy2)}
.solution-header h2{color:var(--navy)}
.solution-body{text-align:center;margin-bottom:48px;position:relative;z-index:1}
.solution-body p{font-size:17px;color:var(--text2);max-width:52ch;margin:0 auto 10px;line-height:1.72}
.solution-body p:last-child{font-weight:700;color:var(--navy);font-size:18px}

.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;position:relative;z-index:1}
@media(max-width:860px){.features-grid{grid-template-columns:1fr}}
.feature-card{background:rgba(255,255,255,.72);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.60);border-radius:var(--radius2);padding:32px 28px;transition:border-color 220ms,box-shadow 200ms,transform 200ms;display:flex;flex-direction:column;gap:14px}
.feature-card:hover{background:var(--white);border-color:rgba(74,143,168,.30);box-shadow:0 12px 52px rgba(14,26,56,.12);transform:translateY(-3px)}
.feature-num{font-size:42px;font-weight:900;color:var(--navy);opacity:.10;line-height:1;letter-spacing:-2px;margin-bottom:-6px}
.feature-icon{width:48px;height:48px;border-radius:15px;background:var(--navy);display:grid;place-items:center;flex:0 0 auto}
.feature-icon svg{width:24px;height:24px;color:var(--white)}
.feature-card h3{font-size:17px;font-weight:800;color:var(--navy);letter-spacing:-.2px}
.feature-card p{font-size:14px;color:var(--text2);line-height:1.68;flex:1}

/* ABOUT SECTION */
.section-about{padding:var(--section-xl) 0;background:var(--sand)}
.about-grid{display:grid;grid-template-columns:420px 1fr;gap:72px;align-items:center}
@media(max-width:1000px){.about-grid{grid-template-columns:340px 1fr;gap:48px}}
@media(max-width:780px){.about-grid{grid-template-columns:1fr;gap:40px}}
.about-photo-wrap{position:relative}
.about-photo{width:100%;aspect-ratio:3/4;border-radius:var(--radius3);overflow:hidden;background:var(--sand3);position:relative;box-shadow:var(--shadow2)}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.about-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--sand2),var(--blue-light2));border-radius:var(--radius3)}
.about-photo-placeholder svg{width:120px;height:120px;opacity:.28;color:var(--navy2)}
.about-badge{position:absolute;bottom:-16px;right:-16px;background:var(--navy);color:var(--white);padding:16px 22px;border-radius:var(--radius2);text-align:center;box-shadow:var(--shadow2)}
.about-badge strong{display:block;font-size:22px;font-weight:900;line-height:1}
.about-badge span{font-size:11px;font-weight:600;color:var(--teal2);text-transform:uppercase;letter-spacing:1.5px}
@media(max-width:780px){.about-badge{bottom:-12px;right:-4px}}

.about-content .section-eyebrow{margin-bottom:20px}
.about-content h2{font-size:clamp(28px,4vw,44px);font-weight:900;letter-spacing:-1px;line-height:1.12;color:var(--navy);margin-bottom:28px}
.about-content h2 em{font-style:normal;color:var(--teal)}
.about-content p{font-size:15px;color:var(--text2);line-height:1.80;margin-bottom:18px;max-width:52ch}
.about-content p:last-of-type{margin-bottom:36px}

.trust-items{display:flex;flex-wrap:wrap;gap:10px}
.trust-item{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:999px;border:1px solid var(--border2);background:var(--white);font-size:13px;font-weight:700;color:var(--text2)}
.trust-item svg{color:var(--teal);flex:0 0 auto}

/* CTA SECTION */
.section-cta{padding:var(--section-xl) 0;background:var(--navy);position:relative;overflow:hidden}
.section-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 80% at 80% 50%,rgba(74,143,168,.18),transparent 65%),radial-gradient(ellipse 50% 60% at 5% 20%,rgba(42,63,120,.50),transparent 60%);pointer-events:none}
.section-cta::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:54px 54px;pointer-events:none}
.cta-inner{position:relative;z-index:1;text-align:center;max-width:680px;margin:0 auto}
.cta-inner .section-eyebrow{color:var(--teal3);border-color:rgba(74,143,168,.35);background:rgba(74,143,168,.10);margin-bottom:22px}
.cta-inner .eyebrow-dot{background:var(--teal3)}
.cta-inner h2{font-size:var(--h2);font-weight:900;letter-spacing:-.5px;color:var(--white);margin-bottom:20px;line-height:1.12}
.cta-inner p{font-size:16px;color:rgba(255,255,255,.68);line-height:1.72;max-width:50ch;margin:0 auto 16px}
.cta-urgency{font-size:14px;color:var(--teal3);font-weight:700;margin:0 auto 40px;display:flex;align-items:center;justify-content:center;gap:6px}
.cta-urgency svg{opacity:.8}
.cta-buttons{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-bottom:28px}
.cta-note{font-size:13px;color:rgba(255,255,255,.38);display:flex;align-items:center;justify-content:center;gap:6px}
.cta-note svg{opacity:.5}

/* FOOTER */
footer{padding:56px 0 36px;background:var(--navy2);border-top:1px solid rgba(255,255,255,.08)}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px 60px;margin-bottom:40px}
@media(max-width:720px){.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.footer-top{grid-template-columns:1fr}}
.footer-brand{display:flex;flex-direction:column;gap:2px;margin-bottom:16px}
.footer-brand-name{font-size:16px;font-weight:800;color:var(--white)}
.footer-brand-sub{font-size:11px;color:var(--teal2);letter-spacing:1.5px;text-transform:uppercase}
.footer-desc{font-size:13px;color:rgba(255,255,255,.48);line-height:1.72;max-width:28ch;margin-bottom:22px}
.footer-col-title{font-size:10px;text-transform:uppercase;letter-spacing:2.5px;color:var(--teal2);font-weight:800;margin-bottom:18px}
.footer-contact-list{display:flex;flex-direction:column;gap:12px}
.footer-contact-item{display:flex;align-items:center;gap:10px;font-size:13px;color:rgba(255,255,255,.60)}
.footer-contact-item svg{color:var(--teal3);flex:0 0 auto}
.footer-contact-item a{color:rgba(255,255,255,.60);transition:color 150ms}
.footer-contact-item a:hover{color:var(--white)}
.footer-social{display:flex;gap:10px;margin-top:4px}
.social-btn{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);display:grid;place-items:center;color:rgba(255,255,255,.55);transition:all 150ms}
.social-btn:hover{background:rgba(74,143,168,.20);border-color:rgba(74,143,168,.40);color:var(--teal3)}
.social-btn svg{width:17px;height:17px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:28px;border-top:1px solid rgba(255,255,255,.06)}
.footer-legal{font-size:12px;color:rgba(255,255,255,.28)}
.footer-nokto{font-size:12px;color:rgba(255,255,255,.28);display:flex;align-items:center;gap:5px}
.footer-nokto span{color:rgba(74,143,168,.70)}

/* STICKY CTA (mobile) */
.sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;padding:10px 16px 14px;background:rgba(22,32,64,.98);border-top:1px solid rgba(74,143,168,.20);backdrop-filter:blur(20px);gap:10px;align-items:center;justify-content:center}
.sticky-cta .btn{flex:1;max-width:220px}
@media(max-width:768px){.sticky-cta{display:flex}body{padding-bottom:80px}input,select,textarea{font-size:16px!important}}
@media(max-width:640px){body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}.sticky-cta{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}}

/* REVEAL ANIMATION */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .60s cubic-bezier(.22,1,.36,1),transform .60s cubic-bezier(.22,1,.36,1)}
.reveal.visible{opacity:1;transform:none}

/* RESPONSIVE */
@media(max-width:640px){
  .hero{padding:100px 0 80px}
  .hero h1{letter-spacing:-1.5px}
  .hero-ctas{flex-direction:column}
  .hero-ctas .btn{width:100%;justify-content:center}
  .wrap{padding:0 20px}
  .section-problem,.section-solution,.section-about,.section-cta{padding:var(--section-lg) 0}
}
@media(max-width:860px){
  .about-grid{gap:36px}
}

a,button{-webkit-tap-highlight-color:transparent}
