
:root{
  --qcs-navy:#0d2b45;
  --qcs-orange:#f37021;
  --qcs-ink:#0e1b2b;
  --text:#1a1a1a;
  --muted:#6b7280;
  --bg:#ffffff;
  --soft:#f6f7fb;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);}
a{color:var(--qcs-navy);text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(1100px,92%);margin:0 auto}
.topbar{background:var(--bg);position:sticky;top:0;z-index:50;border-bottom:1px solid #eef0f2;backdrop-filter:saturate(180%) blur(8px)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:36px;width:auto;border-radius:6px}
.brand .title{font-weight:800;letter-spacing:.2px;color:var(--qcs-navy)}
.nav a{margin:0 10px;font-weight:600;color:#111}
.cta {
  background: var(--qcs-orange);
  color: #fff;
  padding: 4px 10px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 14px;
  margin-left: 10px;
  line-height: 1.2;
}
.hero{padding:54px 0 20px;background:linear-gradient(180deg,#f8fafc 0%, #ffffff 100%)}
.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--soft);border:1px solid #e8ebf0;border-radius:16px;padding:22px}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.badge{background:#e9eef5;color:#1f2a44;padding:6px 10px;border-radius:999px;font-weight:700;font-size:13px}
.section{padding:36px 0}
.section h2{font-size:32px;margin:0 0 10px}
h1{font-size:40px;line-height:1.1;margin:0 0 10px}
.lead{font-size:18px;color:#374151}
.list{margin:10px 0 0 0;padding-left:18px;color:#374151}
.list li{margin:6px 0}
.footer{border-top:1px solid #eef0f2;margin-top:40px}
.footer .grid-4{grid-template-columns:repeat(4,1fr)}
.footer a{color:#334155}
.small{font-size:14px;color:var(--muted)}
.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.btn{display:inline-block;border:1px solid #dfe3ea;border-radius:12px;padding:10px 14px;font-weight:700;background:#fff}
.btn.primary{background:var(--qcs-orange);border-color:var(--qcs-orange);color:#fff}
.notice{padding:10px 14px;background:#fff1e7;border:1px solid #ffd6bf;border-radius:10px;color:#7a3e12}
/* Testimonials carousel */
.carousel{position:relative;overflow:hidden}
.carousel-track{display:flex;transition:transform .4s ease}
.bubble{min-width:280px;max-width:320px;margin:10px;background:var(--soft);border:1px solid #e5e9f0;border-radius:16px;padding:18px}
.carousel-nav{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}
.carousel button{border:1px solid #dfe3ea;background:#fff;padding:8px 10px;border-radius:10px;font-weight:700}
/* Forms */
form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:800px){.grid-2{grid-template-columns:1fr} form .row{grid-template-columns:1fr} h1{font-size:32px}}
input,select,textarea{width:100%;padding:12px 12px;border:1px solid #dfe3ea;border-radius:12px;font-size:16px}
label{font-weight:700;margin:8px 0 6px;display:block;color:#0f172a}
button[type=submit]{background:var(--qcs-orange);border:none;color:#fff;padding:12px 16px;border-radius:12px;font-weight:800}
/* Modal */
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(15,23,42,.56);z-index:999}
.modal .panel{background:#fff;border-radius:16px;padding:22px;max-width:520px;width:92%;text-align:center;box-shadow:0 12px 40px rgba(0,0,0,.2)}
.modal .panel h3{margin:6px 0 6px}
.modal.show{display:flex}
.kicker{font-weight:800;color:var(--qcs-orange);text-transform:uppercase;letter-spacing:.25px;font-size:13px}
hr.sep{border:0;border-top:1px solid #eef0f2;margin:18px 0}
.time-grid{display:flex;gap:10px;flex-wrap:wrap}
.time-pill{padding:6px 10px;border:1px solid #dfe3ea;border-radius:999px}
address{font-style:normal}


/* Transparent header styling */
header, .topbar, .header, .nav { 
    background: transparent !important; 
    backdrop-filter: blur(6px);
}

/* Navigation fixes */
.nav .quote-button, .topbar .quote-button {
    margin-left: 20px !important;
    white-space: nowrap;
    background:#f76c1b !important;
    color:#fff !important;
    padding:8px 16px;
    border-radius:4px;
    text-decoration:none;
    font-weight:600;
}

/* Branding colors */
h1, h2, h3, nav a { color:#0b2343; } /* navy */
button, .btn-primary { background:#f76c1b; color:#fff; }
button:hover, .btn-primary:hover { background:#d95d15; }

/* Fade-in animations */
.fade-in { opacity:0; transform:translateY(20px); transition:opacity 0.6s ease-out, transform 0.6s ease-out; }
.fade-in.visible { opacity:1; transform:none; }


/* Logo spacing */
header .brand img {
    height: 60px;
    margin: 5px 15px;
}

/* Mobile logo scaling */
@media(max-width:768px) {
  header .brand img {
    height: 45px;
    margin: 5px 10px;
  }
}
