
:root{
  --dark:#020815;
  --navy:#061321;
  --blue:#071a2b;
  --green:#58b947;
  --green2:#80d65f;
  --white:#fff;
  --muted:#cbd5e1;
  --text:#07111f;
  --gray:#64748b;
  --line:#e5e7eb;
  --soft:#f8fafc;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{max-width:1240px;margin:0 auto;padding:0 28px}
.site-header{height:94px;background:rgba(2,8,21,.98);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 46px;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.09)}
.logo-wrap{display:flex;align-items:center;gap:14px}
.logo-mark{width:50px;height:50px;border:2px solid var(--green);border-radius:13px;display:grid;place-items:center;font-size:30px;font-weight:900;color:var(--green)}
.logo-text{font-size:36px;letter-spacing:.16em;font-weight:900;line-height:.9}
.logo-sub{font-size:11px;color:var(--green2);font-weight:900;letter-spacing:.18em;margin-top:7px}
.site-nav a{font-weight:900;font-size:13px;margin:0 10px;color:white}
.site-nav a.active,.site-nav a:hover{color:var(--green2)}
.header-cta{border:1px solid var(--green);padding:14px 22px;border-radius:5px;font-weight:900;color:white}
.header-cta:hover{background:var(--green)}
.menu-btn{display:none;background:none;border:1px solid rgba(255,255,255,.25);color:white;border-radius:6px;font-size:24px;padding:8px 12px}
.hero{background:linear-gradient(90deg,rgba(2,8,21,.98),rgba(2,8,21,.75),rgba(2,8,21,.82)),url('../images/skyline.svg');background-size:cover;background-position:center;color:white;overflow:hidden}
.hero-inner{min-height:720px;display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:center}
.hero h1{font-size:70px;line-height:.98;text-transform:uppercase;letter-spacing:-.045em;margin:0 0 22px}
.hero h1 .green,.green{color:var(--green)}
.hero p{font-size:18px;line-height:1.65;color:white;max-width:650px}
.eyebrow{font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:var(--green2);font-weight:900;margin-bottom:15px}
.btn{display:inline-block;margin:24px 14px 0 0;padding:16px 26px;border-radius:5px;font-weight:900;font-size:14px}
.btn.primary{background:var(--green);color:white}.btn.primary:hover{background:#4aa536}
.btn.outline{border:1px solid rgba(255,255,255,.7);color:white}.btn.outline:hover{background:rgba(255,255,255,.08)}
.btn.dark{background:var(--text);color:white}.btn.dark:hover{background:#111827}
.btn.link{padding-left:0;color:var(--green);border-radius:0;border-bottom:2px solid var(--green)}
.hero-visual{position:relative;border-radius:34px;padding:26px;background:rgba(4,13,24,.24);border:1px solid rgba(93,190,69,.34);box-shadow:0 0 70px rgba(93,190,69,.2);overflow:hidden}
.hero-visual:before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle,rgba(93,190,69,.30),transparent 55%);z-index:0}
.hero-visual img{position:relative;z-index:1;margin:0 auto;max-height:540px;object-fit:contain}
.hero-visual .caption{position:relative;z-index:2;margin-top:12px;text-align:center;color:white;font-size:24px;font-weight:900;line-height:1.25}
.training-hero .hero-inner{grid-template-columns:1.05fr .95fr}
.training-hero .hero-visual{background:rgba(255,255,255,.04);padding:18px}
.training-hero .hero-visual img{max-height:560px;border-radius:22px}
.process{background:#061321;color:white;border-top:1px solid rgba(255,255,255,.1)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.process-item{display:flex;gap:20px;align-items:center;padding:28px 34px;border-right:1px solid rgba(255,255,255,.18)}
.process-item:last-child{border-right:0}
.process-icon{font-size:42px;color:var(--green)}
.process-item b{display:block;font-size:18px;text-transform:uppercase}
.process-item span{display:block;color:#dbeafe;line-height:1.45;font-size:14px}
.section{padding:82px 0}
.center{text-align:center}
h2{font-size:42px;line-height:1.12;letter-spacing:-.025em;margin:0 0 14px}
h3{font-size:21px;margin:0 0 10px}
.muted{color:var(--gray);line-height:1.65}
.lead{font-size:18px;line-height:1.7;color:#334155;max-width:840px}
.cards{display:grid;gap:22px;margin-top:34px}
.cards.two{grid-template-columns:repeat(2,1fr)}
.cards.three{grid-template-columns:repeat(3,1fr)}
.cards.four{grid-template-columns:repeat(4,1fr)}
.card{background:white;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 16px 45px rgba(15,23,42,.08)}
.card-icon{width:62px;height:62px;border-radius:50%;background:#eef8eb;color:var(--green);display:grid;place-items:center;font-size:28px;margin-bottom:18px}
.source-band{background:linear-gradient(90deg,rgba(2,8,21,.98),rgba(2,8,21,.62)),url('../images/tr_icons.png');background-size:cover;background-position:center;border-radius:20px;color:white;padding:48px;min-height:280px;display:flex;align-items:center}
.source-band .copy{max-width:490px}
.source-band h2{font-size:36px}
.source-band p{color:#dbeafe;line-height:1.6}
.split{display:grid;grid-template-columns:1fr 1fr}
.panel{padding:66px}
.panel.soft{background:var(--soft)}
.panel.dark{background:var(--navy);color:white}
.check{margin:16px 0;font-weight:700;line-height:1.55}
.check:before{content:"✓";color:var(--green);font-weight:900;margin-right:10px}
.page-hero{background:linear-gradient(90deg,rgba(2,8,21,.98),rgba(2,8,21,.74)),url('../images/skyline.svg');background-size:cover;color:white;padding:102px 0}
.page-hero h1{font-size:52px;line-height:1.08;text-transform:uppercase;margin:0 0 16px}
.page-hero .lead{color:#dbeafe}
.price{font-size:42px;color:var(--green);font-weight:900;margin:10px 0}
.form{display:grid;gap:14px}
.form input,.form select,.form textarea{padding:14px;border:1px solid #d1d5db;border-radius:8px;font:inherit}
.form textarea{min-height:150px}
.form button{border:0;cursor:pointer}
.faq-item{border-bottom:1px solid var(--line);padding:22px 0}
.faq-item h3{margin-bottom:8px}
.cta-band{background:var(--navy);color:white;border-radius:20px;padding:46px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.cta-band p{color:#dbeafe;line-height:1.6}
.footer{background:var(--dark);color:white;padding:38px 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}
.footer a,.footer p{color:#cbd5e1;line-height:1.7}
.kicker{display:inline-block;background:#ecfdf5;color:#166534;border:1px solid #bbf7d0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:900;margin-bottom:18px}
.table{width:100%;border-collapse:collapse;margin-top:24px}
.table th,.table td{border:1px solid var(--line);padding:16px;text-align:left;vertical-align:top}
.table th{background:#f1f5f9}
.image-callout{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}
.image-card{background:var(--navy);border-radius:24px;padding:24px;box-shadow:0 20px 60px rgba(15,23,42,.18)}
.image-card img{border-radius:18px;margin:auto}
@media(max-width:1050px){
  .site-header{height:auto;padding:18px 22px;align-items:flex-start}
  .menu-btn{display:block}
  .site-nav{display:none;position:absolute;left:0;right:0;top:78px;background:#020815;padding:16px 24px}
  .site-nav.open{display:block}
  .site-nav a{display:block;margin:16px 0}
  .header-cta{display:none}
  .hero-inner,.training-hero .hero-inner,.split,.cards.two,.cards.three,.cards.four,.process-grid,.footer-grid,.image-callout{grid-template-columns:1fr}
  .hero-inner{min-height:auto;padding-top:54px;padding-bottom:54px}
  .hero h1{font-size:43px}.page-hero h1{font-size:38px}
  .process-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
  .panel{padding:34px 24px}
  .source-band{padding:30px 24px}
  .cta-band{display:block}
}
