:root{
  --bg1:#2563eb; /* primary blue */
  --bg2:#6d28d9; /* deep purple */
  --card:#ffffff;
  --muted:#6b7280;
  --glass: rgba(255,255,255,0.06);
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial;color:#0f172a;background:linear-gradient(135deg,var(--bg1),var(--bg2));}
.container{max-width:1100px;margin:0 auto;padding:1rem}
.site-header{backdrop-filter:blur(6px);position:sticky;top:0;z-index:40}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 0}
.brand{display:flex;align-items:center;gap:0.6rem;text-decoration:none}
.brand img{height:44px;width:auto;border-radius:6px}
.nav a{color:rgba(255,255,255,0.92);margin-left:1rem;text-decoration:none}
.btn-outline{padding:0.45rem 0.9rem;border-radius:8px;border:1px solid rgba(255,255,255,0.18);background:transparent}

.hero{padding:3rem 0}
.hero-inner{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}
.hero-copy h1{color:#fff;font-size:1.8rem;margin:0 0 0.5rem}
.hero-copy .sub{color:rgba(255,255,255,0.9);margin:0 0 1rem}
.hero-ctas a{display:inline-block;margin-right:0.8rem}
.btn-primary{background:linear-gradient(90deg,#6ee7b7,rgba(255,255,255,0.15));color:#021124;padding:0.7rem 1rem;border-radius:10px;text-decoration:none;border:0;font-weight:600;display:inline-block;box-shadow:0 6px 18px rgba(124,58,237,0.18);transition:transform .14s ease,box-shadow .14s ease}
.btn-primary:hover{transform:translateY(-3px)}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,0.18);color:#fff;padding:0.65rem 0.95rem;border-radius:10px;text-decoration:none}
.trust-row{list-style:none;padding:0;margin:1rem 0 0;display:flex;gap:1rem;color:#fff}

.hero-cards{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1rem}
/* Hero visual image */
.hero-visual img{width:100%;height:auto;border-radius:12px;display:block;box-shadow:0 18px 50px rgba(2,6,23,0.12)}

.card{background:rgba(255,255,255,0.06);padding:1rem;border-radius:12px;color:#fff}
.card{transition:transform .18s ease,box-shadow .18s ease;background:#fff;color:#061122}
.card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(2,6,23,0.12)}
.card.glass{background:rgba(255,255,255,0.06);color:#fff}
.quick-form .field{margin-bottom:0.5rem}
.quick-form input{width:100%;padding:0.6rem;border-radius:8px;border:1px solid rgba(15,23,42,0.06);background:#fff}
.features h4{margin:0 0 0.6rem}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.75rem}
.svc{display:flex;flex-direction:column;align-items:center;padding:1rem;border-radius:10px;background:linear-gradient(180deg,rgba(59,130,246,0.06),rgba(124,58,237,0.04));backdrop-filter: blur(4px)}
.svc i{font-size:1.35rem;margin-bottom:0.35rem;color:transparent;background:linear-gradient(90deg,var(--bg1),var(--bg2));-webkit-background-clip:text;background-clip:text}
.svc span{font-weight:600;color:var(--muted);margin-top:0.2rem}

.why{padding:2rem 0}
.why-grid{display:grid;grid-template-columns:1fr;gap:0.75rem}
.feature-card{display:flex;flex-direction:column;gap:0.5rem;padding:1rem;align-items:flex-start}
.feature-card i{font-size:1.6rem;color:var(--bg2)}
.feature-card h3{margin:0}
.feature-card p{margin:0;color:var(--muted)}

.how{padding:2rem 0}
.steps{display:grid;grid-template-columns:1fr;gap:0.75rem}
.step{padding:1rem;text-align:center}
.step-num{display:inline-block;background:linear-gradient(90deg,var(--bg1),var(--bg2));width:48px;height:48px;border-radius:50%;line-height:48px;color:#fff;font-weight:700;margin-bottom:0.5rem;box-shadow:0 10px 22px rgba(124,58,237,0.18)}
.step h4{margin:0 0 0.4rem}
.step p{margin:0;color:var(--muted)}

.testimonials{padding:2rem 0}
.test-grid{display:grid;grid-template-columns:1fr;gap:0.75rem}
.test{background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(255,255,255,0.95));color:#061122;padding:1rem;border-radius:10px}
.test p{margin:0 0 0.6rem}

.partner-card{display:flex;justify-content:space-between;align-items:center;gap:1rem}

.site-footer{padding:1.5rem 0;color:rgba(255,255,255,0.95);background:linear-gradient(180deg,rgba(0,0,0,0.06),transparent);margin-top:2rem}
.footer-inner{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;align-items:start}
.footer-nav a{display:block;color:rgba(255,255,255,0.9);text-decoration:none;margin:0.25rem 0}
.social-icons a{color:rgba(255,255,255,0.95);margin-right:0.5rem}

/* Responsive layout */
@media(min-width:760px){
  .hero-inner{grid-template-columns:1fr 420px}
  .hero-copy h1{font-size:2.2rem}
  .hero-cards{grid-template-columns:1fr}
  .services-grid{grid-template-columns:repeat(4,1fr)}
  .why-grid{grid-template-columns:repeat(4,1fr)}
  .steps{grid-template-columns:repeat(3,1fr)}
  .test-grid{grid-template-columns:repeat(3,1fr)}
  .footer-inner{grid-template-columns:1fr 1fr 1fr 1fr}
}

/* Services and contact pages */
.service-hero img{width:100%;height:auto;border-radius:12px;margin-bottom:1rem;box-shadow:0 20px 50px rgba(2,6,23,0.12)}
.services-list{display:grid;grid-template-columns:1fr;gap:0.75rem;padding:1rem 0}
.svc-card{display:flex;align-items:flex-start;gap:0.75rem}
.svc-card i{font-size:1.6rem;color:var(--bg2)}
.contact-grid{display:grid;grid-template-columns:1fr;gap:1rem}
.contact-info{background:linear-gradient(180deg,var(--bg2),var(--bg1));color:#fff;padding:1.25rem;border-radius:10px}
.contact-info a{color:rgba(255,255,255,0.95);text-decoration:none}
.contact-form-card{background:#fff;padding:1.25rem;border-radius:10px}
.contact-form .form-row{margin-bottom:0.6rem}
.contact-form label{display:block;font-size:0.9rem;color:var(--muted);margin-bottom:0.35rem}
.contact-form input,.contact-form textarea{width:100%;padding:0.7rem;border-radius:8px;border:1px solid rgba(2,6,23,0.06)}

@media(min-width:900px){
  .contact-grid{grid-template-columns:1fr 1fr}
}

.auth-page .auth-grid{display:grid;grid-template-columns:1fr;gap:1rem;padding:2rem 0}
.auth-card{padding:1.25rem}

/* Auth layout: center and align forms */
.auth-page{display:flex;align-items:center;justify-content:center;min-height:68vh;padding-top:2rem;padding-bottom:2rem}
.auth-wrap{display:grid;grid-template-columns:1fr;gap:1rem;max-width:980px}
.auth-card{padding:1.5rem;border-radius:12px}
.tab-card{max-width:720px;margin:0 auto;padding:0;border-radius:14px;overflow:hidden}
.tab-head{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(90deg,var(--bg2),var(--bg1));color:#fff}
.tab-head img{height:44px}
.tabs{margin-left:auto;display:flex;gap:0.5rem}
.tab{background:transparent;border:none;padding:0.6rem 0.9rem;border-radius:8px;color:rgba(255,255,255,0.9);font-weight:700;cursor:pointer;opacity:0.9}
.tab.active{background:rgba(255,255,255,0.12);box-shadow:inset 0 -3px 0 rgba(255,255,255,0.06)}
.tab:focus{outline:2px solid rgba(255,255,255,0.12)}
.tab-body{padding:1.25rem;background:#fff}
.tab-panel{display:none}
.tab-panel.active{display:block}
.register-card{background:linear-gradient(180deg,rgba(124,58,237,0.06),rgba(59,130,246,0.04));}
.auth-form{display:flex;flex-direction:column;gap:0.75rem;margin-top:0.5rem}
.form-row label{display:block;font-size:0.9rem;color:var(--muted);margin-bottom:0.35rem}
.form-row input{width:100%;padding:0.75rem;border-radius:8px;border:1px solid rgba(2,6,23,0.06);font-size:1rem}
.tab-panel h3{margin:0 0 0.25rem}
.tab-panel .muted{margin:0 0 0.75rem}
.form-row input:focus{box-shadow:0 8px 20px rgba(59,130,246,0.06);outline:none}
.form-actions{display:flex;align-items:center;gap:0.75rem;justify-content:space-between;margin-top:0.5rem}
.link{color:var(--muted);text-decoration:none}

@media(min-width:880px){
  .auth-wrap{grid-template-columns:1fr}
  .auth-page{min-height:72vh}
}

/* Buttons polished */
.btn-primary{background:linear-gradient(90deg,var(--bg2),var(--bg1));color:#fff;padding:0.75rem 1.1rem;border-radius:12px;text-decoration:none;border:0;font-weight:700;display:inline-block;box-shadow:0 14px 30px rgba(59,130,246,0.12);transition:transform .14s ease,box-shadow .14s ease}
.btn-primary.small{padding:0.5rem 0.8rem;border-radius:10px}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 20px 38px rgba(59,130,246,0.18)}
.btn-ghost{background:transparent;border:1px solid rgba(15,23,42,0.08);color:#fff;padding:0.65rem 0.95rem;border-radius:10px;text-decoration:none}

/* Hero headline stronger */
.hero-copy h1{font-size:2.4rem;line-height:1.05}
.hero-copy .sub{font-size:1.05rem}

/* Make main sections stand out on gradient */
main{padding-bottom:2rem}
section.container{background:transparent}

/* subtle background for large screens to make content pop */
@media(min-width:760px){
  body{background:linear-gradient(135deg,var(--bg1),var(--bg2));}
  main{background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));backdrop-filter: blur(6px);}
}

@media(min-width:900px){
  .services-list{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr 1fr}
  .auth-grid{grid-template-columns:1fr 1fr}
}

/* small touches */
.muted{color:var(--muted)}
.lead{color:rgba(255,255,255,0.9);margin-bottom:1rem}
