/* Vivid production theme: stronger SECNET-style blue/cyan with warmer CTA accents. */
:root{
  --bg:#eef7ff;
  --bg-alt:#dff1ff;
  --card:rgba(255,255,255,.94);
  --text:#071b35;
  --muted:#52657c;
  --muted-strong:#253f5d;
  --accent:#0057d9;
  --accent-2:#00a3c7;
  --accent-3:#ff8a00;
  --shadow:0 22px 55px rgba(0,57,122,.16);
  --shadow-glow:0 28px 90px rgba(0,117,255,.30);
}

body{
  background:
    radial-gradient(circle at 12% 5%, rgba(0,163,199,.38), transparent 30rem),
    radial-gradient(circle at 88% 10%, rgba(255,138,0,.30), transparent 25rem),
    radial-gradient(circle at 50% 42%, rgba(0,110,255,.14), transparent 36rem),
    linear-gradient(180deg,#f8fcff 0%,#e4f5ff 39%,#d4ecff 100%);
}
body::before{
  background-image:
    linear-gradient(rgba(0,87,217,.095) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,87,217,.095) 1px, transparent 1px);
  mask-image:linear-gradient(180deg, rgba(0,0,0,.68), transparent 84%);
}
body::after{
  background:radial-gradient(closest-side, rgba(255,138,0,.30), transparent 72%);
}

.topbar{
  background:linear-gradient(180deg, rgba(247,252,255,.96), rgba(226,245,255,.93));
  border-bottom:1px solid rgba(0,87,217,.20);
  box-shadow:0 12px 35px rgba(0,57,122,.13);
}
.brand{
  padding:5px 9px;
  border-radius:14px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(0,87,217,.10);
}
.logo{
  filter:drop-shadow(0 5px 13px rgba(0,87,217,.18));
}
.nav{
  border-color:rgba(0,87,217,.16);
  background:rgba(255,255,255,.64);
}
.nav a{
  color:#123a64;
}
.nav a:hover{
  background:rgba(0,163,199,.14);
  color:#003f8f;
}
.nav-right .btn-primary{
  background:linear-gradient(135deg,#ff9d1b 0%,#ff7a00 58%,#f04b00 100%);
  border-color:rgba(255,170,65,.85);
  color:#111827;
  box-shadow:0 16px 34px rgba(255,122,0,.26);
}
.nav-right .btn-primary:hover{
  background:linear-gradient(135deg,#ffad3b 0%,#ff850d 58%,#f05a00 100%);
  color:#111827;
}

main{
  position:relative;
}
main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 6% 25%, rgba(0,87,217,.18), transparent 25rem),
    radial-gradient(circle at 96% 54%, rgba(0,180,216,.20), transparent 28rem),
    radial-gradient(circle at 10% 84%, rgba(255,138,0,.16), transparent 24rem);
}

.hero{
  position:relative;
  padding-top:92px;
}
.hero::before{
  content:"";
  position:absolute;
  inset:24px 0 auto 0;
  height:430px;
  z-index:-1;
  background:
    radial-gradient(circle at 18% 16%, rgba(0,180,216,.30), transparent 24rem),
    radial-gradient(circle at 82% 18%, rgba(255,138,0,.24), transparent 20rem),
    linear-gradient(135deg,rgba(0,87,217,.24),rgba(0,163,199,.17),rgba(255,138,0,.16));
  border-top:1px solid rgba(0,87,217,.13);
  border-bottom:1px solid rgba(0,87,217,.12);
}
.kicker{
  color:#003f8f;
  border-color:rgba(0,87,217,.30);
  background:linear-gradient(90deg,rgba(0,87,217,.16),rgba(0,163,199,.15),rgba(255,138,0,.10));
}
h1{
  color:#061b35;
  text-shadow:0 1px 0 rgba(255,255,255,.45);
}
.lead{
  color:#233d59;
}
.smallnote{
  color:#4b6076;
}
.pill{
  border-color:rgba(0,87,217,.26);
  background:linear-gradient(180deg,#ffffff,#ddf4ff);
  color:#083464;
  box-shadow:0 12px 28px rgba(0,87,217,.13);
}
.pill::before{
  background:#ff8a00;
  box-shadow:0 0 0 5px rgba(255,138,0,.20);
}

.section-head p{
  max-width:none;
  width:100%;
}

.btn-primary,
.actions .btn-primary,
.contact-form .btn-primary{
  background:linear-gradient(135deg,#006eff 0%,#0057d9 55%,#00a3c7 135%);
  border-color:rgba(0,99,235,.72);
  box-shadow:0 18px 38px rgba(0,87,217,.28);
}
.btn-primary:hover,
.actions .btn-primary:hover,
.contact-form .btn-primary:hover{
  background:linear-gradient(135deg,#167bff 0%,#005ee8 55%,#00b4d8 135%);
}
.actions .btn:not(.btn-primary){
  border-color:rgba(0,87,217,.24);
  background:#ffffff;
}

.hero-right{
  background:
    radial-gradient(circle at 85% 0%,rgba(255,138,0,.24),transparent 36%),
    radial-gradient(circle at 12% 18%,rgba(0,180,216,.20),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.99),rgba(218,243,255,.96));
  border-color:rgba(0,163,199,.34);
}
.hero-right::before{
  background:
    radial-gradient(circle at 20% 0%, rgba(0,163,199,.36), transparent 33%),
    radial-gradient(circle at 88% 10%, rgba(0,87,217,.28), transparent 34%);
}
.stat{
  border-color:rgba(0,87,217,.20);
  background:linear-gradient(180deg,#fff,#e2f6ff);
  box-shadow:0 12px 28px rgba(0,87,217,.10);
}
.stat-top{
  color:#003f8f;
}
.stat-bottom{
  color:#33516c;
}

.section.alt{
  background:
    radial-gradient(circle at 5% 20%, rgba(0,163,199,.16), transparent 22rem),
    radial-gradient(circle at 95% 72%, rgba(255,138,0,.13), transparent 22rem),
    linear-gradient(180deg,rgba(199,234,255,.96),rgba(225,246,255,.93));
  border-top:1px solid rgba(0,87,217,.16);
  border-bottom:1px solid rgba(0,87,217,.15);
}
.section:not(.alt){
  background:
    radial-gradient(circle at 90% 25%, rgba(0,180,216,.08), transparent 24rem),
    radial-gradient(circle at 8% 82%, rgba(255,138,0,.07), transparent 18rem);
}
.section-head h2{
  color:#061b35;
}
.section-head p{
  color:#28445f;
}
.card{
  border-color:rgba(255,255,255,.95);
  box-shadow:0 20px 52px rgba(0,57,122,.16);
}
.service{
  border:1px solid rgba(0,87,217,.16);
  background:
    radial-gradient(circle at 100% 0%, rgba(0,180,216,.08), transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,251,255,.95));
}
.service::after{
  background:linear-gradient(90deg,#0057d9,#00a3c7,#ff8a00);
  opacity:.78;
  height:4px;
}
.service:hover{
  border-color:rgba(0,87,217,.36);
  box-shadow:0 26px 76px rgba(0,87,217,.24);
}
.service h3,
.pad h3{
  color:#08264a;
}
.service p,
.pad p,
.service ul,
.checklist li{
  color:#2f4963;
}
.service li::before{
  background:#00a3c7;
  box-shadow:0 0 0 4px rgba(0,163,199,.18);
}
.icon{
  background:linear-gradient(180deg,#ffffff,#dcf4ff);
  border-color:rgba(0,87,217,.30);
  box-shadow:0 15px 30px rgba(0,87,217,.20);
}
.highlight{
  border-color:rgba(255,138,0,.46);
  background:
    radial-gradient(circle at 100% 0%,rgba(255,138,0,.25),transparent 40%),
    radial-gradient(circle at 0% 100%,rgba(0,180,216,.14),transparent 36%),
    linear-gradient(180deg,#ffffff,#e7f7ff);
  box-shadow:0 26px 76px rgba(255,138,0,.22);
}
.checklist li::before{
  background:linear-gradient(135deg,#006eff,#00a3c7);
  color:#fff;
}
.mini-cta{
  border-color:rgba(0,87,217,.24);
  background:linear-gradient(135deg,rgba(0,87,217,.13),rgba(0,163,199,.13),rgba(255,138,0,.11));
}

.ms{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,138,0,.28), transparent 34%),
    radial-gradient(circle at 0% 0%, rgba(0,163,199,.26), transparent 36%),
    linear-gradient(135deg,#ffffff,#dff4ff);
  border-color:rgba(0,87,217,.18);
}
.ms::before{
  color:rgba(0,87,217,.085);
}
.badge{
  border-color:rgba(0,87,217,.21);
  background:linear-gradient(180deg,#ffffff,#e4f6ff);
  color:#08264a;
}
.badge::before{
  background:#ff8a00;
}

.contact-form input,
.contact-form textarea{
  border-color:rgba(0,87,217,.26);
  background:#fff;
}
.contact-form input:focus,
.contact-form textarea:focus{
  border-color:rgba(0,87,217,.76);
  box-shadow:0 0 0 4px rgba(0,87,217,.16);
}
.consent{
  border-color:rgba(0,87,217,.18);
  background:#eef9ff;
}
.consent input{
  accent-color:#0057d9;
}
.footer{
  background:linear-gradient(180deg,#071b35,#061326);
  color:#d9f3ff;
  border-top:1px solid rgba(0,163,199,.35);
}
.footer .muted,
.footer-legal{
  color:#a8c8df;
}
.footer a{
  color:#e6f8ff;
}
.footer a:hover{
  color:#ffb154;
}

.form-alert-error{
  border-color:rgba(220,38,38,.30);
  background:linear-gradient(180deg,#fff5f5,#ffe8e8);
}

@media (max-width:680px){
  .hero::before{height:500px;}
}
