:root{
    --primary:#00AD7D;
    --dark:#083d30;
    --light:#f4fffb;
}

/* GLOBAL */
body{
    margin:0;
    padding-top:72px; /* fixed topbar space */
    font-family:Arial, Helvetica, sans-serif;
    background:#f7f9f8;
    color:#222;
}
a{text-decoration:none}

/* =====================
   FIXED TOP BAR
===================== */
.topbar-wrapper{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    background:#fff;
    box-shadow:0 4px 18px rgba(0,0,0,0.08);
    z-index:1000;
}

.top-bar{
    max-width:1200px;
    margin:auto;
    padding:14px 24px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.logo img{height:44px}

.right-menu{
    display:flex;
    align-items:center;
    gap:28px;
}

.nav{
    display:flex;
    gap:26px;
}

.nav a{
    color:#222;
    font-weight:600;
}

.nav a:hover{color:var(--primary)}

.login-btn{
    background:var(--primary);
    color:#fff;
    padding:10px 22px;
    border-radius:5px;
    font-weight:bold;
}

/* MOBILE */
@media(max-width:900px){
    .nav{display:none}
}

/* =====================
   HERO
===================== */
.hero{
    background:linear-gradient(135deg,var(--primary),#008f67);
    color:#fff;
    text-align:center;
    padding:90px 20px 110px;
}

.hero h1{
    font-size:44px;
    margin-bottom:15px;
}

.hero p{
    font-size:18px;
    line-height:1.6;
    max-width:900px;
    margin:auto;
}

/* BUTTONS */
.btn{
    display:inline-block;
    margin:24px 10px 0;
    padding:15px 34px;
    background:#fff;
    color:var(--primary);
    border-radius:6px;
    font-weight:bold;
}
.btn.secondary{
    background:transparent;
    color:#fff;
    border:2px solid #fff;
}

/* SECTIONS */
section{
    padding:65px 20px;
    max-width:1200px;
    margin:auto;
}

section h2{
    text-align:center;
    font-size:34px;
    margin-bottom:45px;
    color:var(--dark);
}

/* FEATURES */
.features{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:28px;
}

.box{
    background:#fff;
    padding:32px;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    border-top:5px solid var(--primary);
}

/* STEPS */
.steps{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:22px;
    text-align:center;
}

.step{
    background:#fff;
    padding:26px;
    border-radius:10px;
    font-weight:bold;
    box-shadow:0 6px 18px rgba(0,0,0,0.08);
}

/* META */
.meta{
    background:var(--light);
    border-left:6px solid var(--primary);
}

/* CTA */
.cta-box{
    background:#eef5f3;
    padding:55px 22px;
    margin:55px auto;
    max-width:940px;
    border-radius:22px;
    text-align:center;
}

.cta-box h2{
    font-size:30px;
    margin-bottom:30px;
    color:#083d30;
}

/* FIXED CTA POINTS */
.cta-points{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:22px;
    margin-bottom:32px;
}

.cta-points span{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:15px;
    color:#333;
    white-space:nowrap;
}

.cta-points span::before{
    content:"✔";
    color:#fff;
    background:#00AD7D;
    width:20px;
    height:20px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:11px;
    font-weight:bold;
}

.cta-btn{
    display:inline-block;
    padding:13px 32px;
    background:#00AD7D;
    color:#fff;
    font-size:15px;
    font-weight:bold;
    border-radius:5px;
}

/* FOOTER */
footer{
    background:var(--dark);
    color:#fff;
    padding:55px 20px 25px;
}

.footer-grid{
    max-width:1200px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:35px;
}

footer a{color:#c9f7e9}

.copyright{
    text-align:center;
    margin-top:40px;
    font-size:14px;
    color:#cdeee4;
}

.policy-wrapper{
    max-width:1100px;
    margin:40px auto 80px;
    background:#ffffff;
    padding:40px 35px;
    border-radius:12px;
    box-shadow:0 8px 25px rgba(0,0,0,0.06);
}

.policy-wrapper h1{
    font-size:34px;
    color:#083d30;
    margin-bottom:20px;
}

.policy-wrapper h2{
    font-size:22px;
    color:#083d30;
    margin-top:30px;
    margin-bottom:10px;
}

.policy-wrapper p{
    font-size:15px;
    line-height:1.9;
    color:#333;
    margin-bottom:14px;
}

.policy-wrapper ul{
    padding-left:22px;
    margin-bottom:16px;
}

.policy-wrapper ul li{
    margin-bottom:8px;
}