:root{
 --primary:#1f3b73;
 --secondary:#f59e0b;
 --dark:#0f172a;
 --text:#334155;
 --light:#f8fafc;
 --border:#e2e8f0;
 --whatsapp:#25D366;
 --phone:#0ea5e9;
 }
 *{box-sizing:border-box}
 html{scroll-behavior:smooth}
 body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);line-height:1.6;background:#fff}
 a{text-decoration:none}
 .container{width:min(1100px,92%);margin:auto}
 .btn{display:inline-block;padding:14px 22px;border-radius:10px;font-weight:700;transition:.2s ease;border:none;cursor:pointer}
 .btn-primary{background:var(--secondary);color:#fff}
 .btn-outline{border:2px solid #fff;color:#fff;background:transparent}
 .btn-dark{background:var(--primary);color:#fff}
 .btn-primary:hover,.btn-dark:hover{opacity:.92}
 .btn-outline:hover{background:#fff;color:var(--primary)}

 header{
 background:linear-gradient(rgba(15,23,42,.78),rgba(15,23,42,.78)),url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1600&q=80') center/cover;
 color:#fff;
 padding:90px 0 70px;
 }
 nav{
 display:flex;justify-content:space-between;align-items:center;margin-bottom:70px;gap:20px;flex-wrap:wrap;
 }
 .logo{
 display:flex;align-items:center;gap:5px;font-size:24px;font-weight:800;color:#fff;
 }
 .logo-mark{
 width:38px;height:38px;border-radius:50%;background:#f59e0b;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:18px;box-shadow:0 8px 18px rgba(0,0,0,.2);
 }
 .nav-links a{color:#fff;margin-left:18px;font-weight:600;opacity:.95}
 .hero{max-width:720px}
 .hero h1{font-size:clamp(34px,5vw,58px);line-height:1.1;margin:0 0 18px;color:#fff}
 .hero p{font-size:18px;color:#e2e8f0;margin:0 0 28px}
 .hero-actions{display:flex;gap:14px;flex-wrap:wrap}

 section{padding:70px 0}
 .section-title{text-align:center;margin-bottom:38px}
 .section-title h2{margin:0 0 10px;color:var(--dark);font-size:32px}
 .section-title p{margin:0;color:#64748b}
 .grid{display:grid;gap:20px}
 .services{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
 .card{
 background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;
 box-shadow:0 8px 24px rgba(15,23,42,.05);
 }
 .card h3{margin-top:0;color:var(--dark)}
 .about{background:var(--light)}
 .two-col{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center}
 .list{padding-left:18px;margin:0}
 .steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
 .step-num{
 width:42px;height:42px;border-radius:50%;background:var(--primary);color:#fff;
 display:flex;align-items:center;justify-content:center;font-weight:800;margin-bottom:14px;
 }
 .cta{
 background:linear-gradient(135deg,var(--primary),#2563eb);
 color:#fff;text-align:center;border-radius:20px;padding:50px 24px;
 }
 .cta h2,.cta p{color:#fff}
 .contact-grid{
 display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;align-items:start;
 }
 .form-group{margin-bottom:14px}
 .form-group label{display:block;margin-bottom:6px;font-weight:700;color:var(--dark)}
 .form-group input,.form-group textarea{
 width:100%;padding:14px;border:1px solid var(--border);border-radius:10px;font:inherit;outline:none;
 }
 .form-group input:focus,.form-group textarea:focus{border-color:var(--primary)}
 .map{width:100%;min-height:360px;border:0;border-radius:16px}

 footer.footer{
 background:#0f172a;
 color:#cbd5e1;
 padding:60px 0 20px;
 }
 .footer-grid{
 display:grid;
 grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
 gap:28px;
 margin-bottom:30px;
 }
 .footer h3{color:#fff;margin-top:0;margin-bottom:16px;font-size:18px}
 .footer a{color:#cbd5e1}
 .footer a:hover{color:#fff}
 .footer-links{list-style:none;padding:0;margin:0}
 .footer-links li{margin-bottom:10px}
 .footer-bottom{
 border-top:1px solid rgba(255,255,255,.1);
 padding-top:18px;
 text-align:center;
 font-size:14px;
 color:#94a3b8;
 }
 .socials{display:flex;gap:12px;flex-wrap:wrap}
 .socials a{
 display:inline-block;
 background:#1e293b;
 padding:10px 14px;
 border-radius:10px;
 }

 .floating{
 position:fixed;right:18px;bottom:18px;z-index:999;display:flex;flex-direction:column;gap:10px;
 }
 .float-btn{
 display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:999px;color:#fff;
 font-weight:700;box-shadow:0 10px 24px rgba(0,0,0,.18);
 }
 .phone-btn{background:var(--phone)}
 .wa-btn{background:var(--whatsapp)}
 .small{font-size:13px;opacity:.95}

 @media (max-width:768px){
 nav{margin-bottom:40px}
 .nav-links a{margin:0 14px 0 0}
 header{padding-top:70px}
 .floating{right:12px;bottom:12px}
 .float-btn span.text{display:none}
 }
  .site-logo{
 width:38px;
 height:38px;
 object-fit:contain;
 display:block;
 }