:root{
  --brand:#22C55E;
  --brand-hover:#16A34A;
  --ink:#0F172A;
  --muted:rgba(15,23,42,.72);
  --bg:#F8FAFC;
  --card:#FFFFFF;
  --line:rgba(15,23,42,.10);
  --radius:18px;
  --shadow:0 20px 40px rgba(15,23,42,.08);
  --shadow-strong:0 36px 60px rgba(15,23,42,.14);
  --max:1120px;
}

*{box-sizing:border-box}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:"Plus Jakarta Sans", system-ui;
  background:var(--bg);
  color:var(--ink);
  letter-spacing:-0.01em;
}

a{text-decoration:none;color:inherit}

.wrap{
  max-width:var(--max);
  margin:0 auto;
  padding:0 20px;
}

.header{
  position:sticky;
  top:0;
  background:rgba(248,250,252,.85);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(15,23,42,.06);
}

.nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px 0;
}

.btn{
  padding:12px 18px;
  border-radius:999px;
  border:1px solid var(--line);
  font-weight:700;
  background:#fff;
  transition:.2s;
}

.btn.primary{
  background:var(--brand);
  color:#fff;
  border:none;
  box-shadow:0 14px 28px rgba(34,197,94,.22);
}

.btn.primary:hover{
  background:var(--brand-hover);
}

.section{
  padding:30px 0;
}

.grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:15px;
}

.card{
  background:var(--card);
  border-radius:var(--radius);
  padding:16px;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  transition:.2s;
}

.card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-strong);
  border-color:rgba(34,197,94,.35);
}

.small{
  font-size:14px;
  color:var(--muted);
}

@media(max-width:900px){
  .grid{
    grid-template-columns:repeat(2,1fr);
  }
}
.hero{
  padding:36px 0 18px;
}

.hero-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:18px;
  align-items:stretch;
}

.panel{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:18px;
}

h2{
  margin:0 0 16px;
  font-size:22px;
}

.banner{
  border-radius:var(--radius);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  padding:18px;
  background:
    radial-gradient(900px 260px at 0% 0%, rgba(34,197,94,.14), transparent 60%),
    radial-gradient(900px 260px at 100% 0%, rgba(15,23,42,.06), transparent 62%),
    #ffffff;
}

.split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.footer{
  padding:34px 0 42px;
  border-top:1px solid rgba(15,23,42,.08);
  margin-top:14px;
}

@media (max-width: 980px){
  .hero-grid{
    grid-template-columns:1fr;
  }

  .split{
    grid-template-columns:1fr;
  }
}
.hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:14px;
}

.badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}
.h1{
  font-size:56px;
  line-height:1.05;
  letter-spacing:-0.03em;
}
.sub{
  font-size:18px;
}
@media (max-width: 980px){
  .h1{ font-size:40px; }
  .sub{ font-size:16px; }
}
.menu a{
  font-weight:600;
}
.actions .btn{
  padding:10px 14px;
}
.card{
  padding:18px;
}

.card h4{
  font-size:17px;
}

.card:hover{
  transform: translateY(-8px);
}
.menu{
  display:flex;
  gap:28px;
  align-items:center;

}
.nav{
  display:flex;
  justify-content:space-between;
  align-items:center;

}
.menu a{
  font-size:14px;
  font-weight:600;
  color:var(--muted);
  padding:6px 10px;
  border-radius:999px;
  transition:.15s;
}

.menu a:hover{
  background:rgba(15,23,42,.05);
  color:var(--ink);
}
.menu a{
  font-size:15px;
  font-weight:600;
  color:var(--muted);
  padding:6px 4px;
  transition:.15s;
}

.menu a:hover{
  color:var(--ink);
}
:root{
  --max:1240px;
}
.h1{
  font-size:56px;
}
.sub{
  font-size:18px;
}
.hero{
  padding:46px 0 22px;
}
.menu{
  display:flex;
  gap:18px;
  align-items:center;
}

.menu a{
  font-size:14px;
  font-weight:600;
  color: rgba(15,23,42,.55);
  padding:6px 8px;
  border-radius:10px;
  background: transparent;
  transition: color .15s ease, background .15s ease;
}

.menu a:hover{
  color: var(--ink);
  background: rgba(15,23,42,.04);
}
.actions{
  display:flex;
  gap:10px;
  align-items:center;
}

.actions .btn{
  padding:10px 14px;
}

.actions .btn.primary{
  padding:10px 16px;
  box-shadow:0 18px 34px rgba(34,197,94,.28);
}
.actions .btn:not(.primary){
  background: rgba(15,23,42,.03);
  border:1px solid rgba(15,23,42,.08);
  color: rgba(15,23,42,.78);
}

.actions .btn:not(.primary):hover{
  background: rgba(15,23,42,.05);
}
.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.menu{
  margin-left:auto;
  margin-right:12px;
}
.menu a{
  position:relative;
}

.menu a.active{
  color: var(--ink);
  background: rgba(15,23,42,.04);
}

.menu a.active::after{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  bottom:-10px;
  height:2px;
  border-radius:999px;
  background: rgba(34,197,94,.9);
}
.section.flash{
  animation: flashSection 900ms ease;
}

@keyframes flashSection{
  0%   { box-shadow: 0 0 0 0 rgba(34,197,94,.0); }
  25%  { box-shadow: 0 0 0 6px rgba(34,197,94,.18); }
  60%  { box-shadow: 0 0 0 10px rgba(34,197,94,.10); }
  100% { box-shadow: 0 0 0 0 rgba(34,197,94,.0); }
}

