:root {
  --blue: #2563eb;
  --navy: #0f172a;
  --white: #ffffff;
  --gray: #f8fafc;
  --gray-200: #e2e8f0;
  --gray-400: #94a3b8;
  --gray-600: #475569;
  --gray-800: #1e293b;
  --green: #10b981;
  --gradient: linear-gradient(135deg, var(--blue) 0%, var(--navy) 100%);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;color:var(--gray-800);line-height:1.6;background:var(--white)}
img{max-width:100%;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* NAV */
.nav{background:var(--navy);position:sticky;top:0;z-index:100;padding:0 20px}
.nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:70px}
.nav-logo{color:var(--white);font-size:1.4rem;font-weight:800;letter-spacing:-.5px}
.nav-logo span{color:var(--blue)}
.nav-links{display:flex;gap:8px;align-items:center;list-style:none}
.nav-links a{color:#cbd5e1;padding:8px 14px;border-radius:6px;font-size:.95rem;transition:all .2s}
.nav-links a:hover,.nav-links a.active{color:var(--white);background:rgba(255,255,255,.1);text-decoration:none}
.dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:var(--navy);border:1px solid rgba(255,255,255,.1);border-radius:8px;min-width:200px;padding:8px 0;box-shadow:0 10px 40px rgba(0,0,0,.3)}
.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:10px 20px;color:#cbd5e1;font-size:.9rem}
.dropdown-menu a:hover{background:rgba(255,255,255,.05);color:var(--white)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.hamburger span{width:24px;height:2px;background:var(--white);transition:.3s}

/* HERO */
.hero{background:var(--gradient);color:var(--white);padding:100px 20px 80px;text-align:center}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);font-weight:800;margin-bottom:20px;line-height:1.15}
.hero p{font-size:1.15rem;max-width:650px;margin:0 auto 30px;opacity:.9;line-height:1.7}
.hero-sm{padding:70px 20px 50px}
.hero-sm h1{font-size:clamp(1.8rem,4vw,2.6rem)}

/* BUTTONS */
.btn{display:inline-block;padding:14px 32px;border-radius:8px;font-weight:600;font-size:1rem;transition:all .2s;border:none;cursor:pointer}
.btn-primary{background:var(--green);color:var(--white)}
.btn-primary:hover{background:#059669;text-decoration:none;transform:translateY(-1px)}
.btn-outline{border:2px solid var(--white);color:var(--white);background:transparent}
.btn-outline:hover{background:var(--white);color:var(--navy);text-decoration:none}
.btn-blue{background:var(--blue);color:var(--white)}
.btn-blue:hover{background:#1d4ed8;text-decoration:none;transform:translateY(-1px)}
.hero-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* SECTIONS */
.section{padding:80px 20px}
.section-gray{background:var(--gray)}
.section-title{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;text-align:center;margin-bottom:12px;color:var(--navy)}
.section-sub{text-align:center;color:var(--gray-600);max-width:600px;margin:0 auto 50px;font-size:1.05rem}

/* CARDS */
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}
.card{background:var(--white);border-radius:12px;padding:36px 30px;box-shadow:0 1px 3px rgba(0,0,0,.08);border:1px solid var(--gray-200);transition:all .3s}
.card:hover{box-shadow:0 8px 30px rgba(0,0,0,.1);transform:translateY(-3px)}
.card-icon{font-size:2.4rem;margin-bottom:16px}
.card h3{font-size:1.2rem;margin-bottom:10px;color:var(--navy)}
.card p{color:var(--gray-600);font-size:.95rem;line-height:1.7}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px;text-align:center;counter-reset:step}
.step{position:relative;padding:20px}
.step-num{width:50px;height:50px;background:var(--blue);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;margin:0 auto 16px}
.step h3{margin-bottom:8px;color:var(--navy)}
.step p{color:var(--gray-600);font-size:.9rem}

/* STATS */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;text-align:center}
.stat-num{font-size:2.8rem;font-weight:800;color:var(--blue)}
.stat-label{color:var(--gray-600);margin-top:4px}

/* CASE STUDY */
.case-card{background:var(--white);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08);border:1px solid var(--gray-200)}
.case-metric{background:var(--gradient);color:var(--white);padding:30px;text-align:center}
.case-metric .big{font-size:2.6rem;font-weight:800;display:block}
.case-metric .label{opacity:.85;font-size:.95rem}
.case-body{padding:30px}
.case-body h3{color:var(--navy);margin-bottom:12px;font-size:1.15rem}
.case-body p{color:var(--gray-600);font-size:.9rem;line-height:1.7;margin-bottom:12px}

/* FORM */
.form-group{margin-bottom:20px}
.form-group label{display:block;font-weight:600;margin-bottom:6px;color:var(--navy);font-size:.95rem}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:1px solid var(--gray-200);border-radius:8px;font-size:1rem;font-family:inherit;transition:border .2s}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}
.form-group textarea{resize:vertical;min-height:120px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}

/* CONTACT INFO */
.contact-info{display:flex;flex-direction:column;gap:24px}
.contact-block h3{color:var(--navy);margin-bottom:8px;font-size:1.1rem}
.contact-block p{color:var(--gray-600);font-size:.95rem;line-height:1.7}

/* SERVICE DETAIL */
.service-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:40px}
.feature{display:flex;gap:16px;align-items:flex-start}
.feature-icon{flex-shrink:0;width:44px;height:44px;background:rgba(37,99,235,.1);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.3rem}
.feature h4{color:var(--navy);margin-bottom:4px}
.feature p{color:var(--gray-600);font-size:.9rem;line-height:1.6}
.service-cta{text-align:center;padding:60px 20px;background:var(--gradient);border-radius:16px;margin-top:60px;color:var(--white)}
.service-cta h2{font-size:1.8rem;margin-bottom:12px}
.service-cta p{opacity:.9;margin-bottom:24px;max-width:500px;margin-left:auto;margin-right:auto}

/* CONTENT */
.content{padding:60px 20px}
.content h2{font-size:1.5rem;color:var(--navy);margin:32px 0 12px}
.content h3{font-size:1.2rem;color:var(--navy);margin:24px 0 8px}
.content p,.content li{color:var(--gray-600);line-height:1.8;margin-bottom:12px}
.content ul{padding-left:24px}

/* FOOTER */
.footer{background:var(--navy);color:#94a3b8;padding:60px 20px 30px}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px;max-width:1200px;margin:0 auto 40px}
.footer h4{color:var(--white);margin-bottom:16px;font-size:1rem}
.footer p,.footer a{color:#94a3b8;font-size:.9rem;line-height:1.8}
.footer a:hover{color:var(--white)}
.footer-links{list-style:none}
.footer-links li{margin-bottom:8px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:24px;text-align:center;max-width:1200px;margin:0 auto;font-size:.85rem}
.social-links{display:flex;gap:16px;margin-top:12px}
.social-links a{width:36px;height:36px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:.85rem;transition:.2s}
.social-links a:hover{background:var(--blue);text-decoration:none}

/* RESPONSIVE */
@media(max-width:768px){
  .hamburger{display:flex}
  .nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:var(--navy);flex-direction:column;padding:20px;border-top:1px solid rgba(255,255,255,.1)}
  .nav-links.open{display:flex}
  .dropdown-menu{position:static;box-shadow:none;border:none;padding-left:20px}
  .dropdown:hover .dropdown-menu{display:block}
  .form-row{grid-template-columns:1fr}
  .hero{padding:70px 20px 50px}
}
