:root{
  --bg:#f7fafc;
  --accent:#0966d2;
  --muted:#6b7280;
  --card:#ffffff;
  --glass: rgba(255,255,255,0.7);
}
*{box-sizing:border-box}
body{font-family:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; margin:0; background:var(--bg); color:#0f172a; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
.container{max-width:1100px; margin:0 auto; padding:28px;}
.site-header{background:linear-gradient(to right, #D3D3D3 30%, #1e90ff ); color:#fff; position:sticky; top:0; z-index:40; box-shadow:0 6px 8px rgba(2,6,23,0.08);
height: 160px; /* Make sure the header has a defined height */

.site-logo {
  height: 100%;
  width: auto; /* Ensures the aspect ratio is maintained */
}}
.header-inner{display:flex; align-items:center; justify-content:space-between; gap:12px;}
.brand{font-weight:700; font-size:10px; color:white; text-decoration:none;}
.brand span{display:block; font-weight:400; font-size:12px; opacity:0.9;}
.nav{display:flex; gap:12px;}
.nav a{color:rgba(255,255,255,0.95); text-decoration:none; padding:14px 10px; border-radius:8px;}
.nav a:hover, .nav a.active{background:rgba(255,255,255,0.08);}
.nav-toggle{display:none; background:transparent; border:none; color:white; font-size:20px;}
.hero{padding:64px 0; background:linear-gradient(180deg, rgba(255,255,255,0.02), transparent);}
.hero-grid{display:grid; grid-template-columns:1fr 360px; gap:32px; align-items:center;}
.hero h1{font-size:32px; margin:0 0 12px;}
.hero p{color:var(--muted); margin:0 0 18px;}
.hero-cta .btn{margin-right:10px}
.features{padding:34px 0;}
.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:18px;}
.card{background:var(--card); padding:18px; border-radius:12px; box-shadow:0 6px 18px rgba(8,15,30,0.06)}
.cta{background:linear-gradient(90deg, rgba(9,102,210,0.06), rgba(30,144,255,0.04)); padding:34px; margin:28px 0; border-radius:12px;}
.site-footer{background:#0b1220; color:#cbd5e1; margin-top:32px; padding:22px 0;}
.footer-grid{display:flex; justify-content:space-between; gap:20px; align-items:center; flex-wrap:wrap;}
.footer-links a{color:#cbd5e1; margin-left:12px; text-decoration:none; font-size:14px}
.btn{display:inline-block; padding:10px 14px; border-radius:10px; text-decoration:none; cursor:pointer; border:1px solid transparent; font-weight:600;}
.btn.primary{background:var(--accent); color:white; box-shadow:0 8px 20px rgba(9,102,210,0.15);}
.btn.outline{background:transparent; color:var(--accent); border-color:rgba(9,102,210,0.12)}
.contact-grid{display:grid; grid-template-columns:1fr 320px; gap:24px; align-items:start;}
.contact-form{background:var(--card); padding:18px; border-radius:12px; box-shadow:0 8px 30px rgba(2,6,23,0.06); display:flex; flex-direction:column; gap:12px;}
.contact-form label{display:flex; flex-direction:column; font-size:14px; color:var(--muted);}
.contact-form input, .contact-form textarea{margin-top:6px; padding:10px; border-radius:8px; border:1px solid #e6e9ef; font-size:14px;}
.form-msg{min-height:26px; margin-top:6px; color:var(--muted)}
.modal{position:fixed; inset:0; display:none; align-items:center; justify-content:center; background:rgba(4,8,15,0.5);}
.modal.show{display:flex;}
.modal-content{background:var(--card); padding:20px; border-radius:12px; width:min(720px, 92%); max-width:720px; position:relative;}
.modal-close{position:absolute; right:12px; top:12px; background:transparent; border:none; font-size:20px; cursor:pointer;}
.toast{position:fixed; right:20px; bottom:20px; background:#0b1220; color:white; padding:12px 18px; border-radius:10px; display:none;}
.toast.show{display:block; animation:toastIn 0.3s ease;}
.small{font-size:13px; color:var(--muted);}
.page-intro{padding:34px 0;}
.service-list{display:grid; gap:12px;}
.service-card{background:var(--card); padding:18px; border-radius:12px; box-shadow:0 6px 18px rgba(8,15,30,0.05)}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr; text-align:center;}
  .cards{grid-template-columns:1fr; }
  .contact-grid{grid-template-columns:1fr;}
  .nav-toggle{display:block;}
  .nav{position:absolute; right:18px; top:64px; background:rgba(3,7,18,0.95); padding:12px; border-radius:10px; display:none; flex-direction:column;}
  .nav.show{display:flex;}
  .nav a{color:white; padding:8px 10px;}
}
[data-animate]{opacity:0; transform:translateY(12px); transition:all 560ms cubic-bezier(.2,.9,.3,1);}
[data-animate].in{opacity:1; transform:none;}
:focus{outline:3px solid rgba(9,102,210,0.18); outline-offset:2px}
