
.qac-home { --heading-color: var(--qac-ink); }
.qac-hero {
  position: relative; min-height: 650px; display:flex; align-items:center; color:#fff;
  background: linear-gradient(90deg, rgba(2,35,23,.94) 0%, rgba(1,61,31,.82) 52%, rgba(0,39,22,.36) 100%),
              url('../img/optimized/hero-qac.webp') center/cover no-repeat;
}
.qac-hero::after { content:""; position:absolute; inset:auto 0 0; height:130px; background:linear-gradient(to top, rgba(0,0,0,.28), transparent); pointer-events:none; }
.qac-hero .container { position:relative; z-index:2; padding-block:92px; }
.qac-eyebrow { display:inline-flex; align-items:center; gap:8px; padding:8px 13px; border:1px solid rgba(255,255,255,.35); border-radius:999px; background:rgba(255,255,255,.1); font-size:13px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.qac-hero h1 { color:#fff; font-size:clamp(2.65rem, 5.5vw, 5.2rem); line-height:.98; max-width:900px; margin:22px 0; font-weight:800; letter-spacing:-.045em; }
.qac-hero .lead { max-width:760px; font-size:clamp(1.05rem, 1.7vw, 1.3rem); line-height:1.65; color:rgba(255,255,255,.9); }
.qac-btn-primary, .qac-btn-secondary { display:inline-flex; align-items:center; gap:9px; padding:14px 22px; border-radius:999px; font-weight:700; }
.qac-btn-primary { background:#fff; color:var(--qac-green-dark); }
.qac-btn-primary:hover { color:var(--qac-green); transform:translateY(-2px); }
.qac-btn-secondary { border:1px solid rgba(255,255,255,.55); color:#fff; background:rgba(255,255,255,.06); }
.qac-btn-secondary:hover { color:#fff; background:rgba(255,255,255,.14); transform:translateY(-2px); }
.qac-hero-panel { margin-left:auto; max-width:390px; border:1px solid rgba(255,255,255,.22); background:rgba(5,43,29,.68); backdrop-filter:blur(12px); border-radius:24px; padding:25px; box-shadow:0 26px 80px rgba(0,0,0,.24); }
.qac-hero-panel h2 { color:#fff; font-size:1.15rem; margin-bottom:18px; }
.qac-hero-line { display:flex; gap:13px; align-items:flex-start; padding:13px 0; border-top:1px solid rgba(255,255,255,.14); }
.qac-hero-line:first-of-type { border-top:0; }
.qac-hero-line i { font-size:1.35rem; color:#a9f5c2; }
.qac-hero-line strong { display:block; color:#fff; }
.qac-hero-line span { display:block; font-size:.9rem; color:rgba(255,255,255,.72); margin-top:2px; }
.qac-trust-strip { position:relative; z-index:4; margin-top:-36px; }
.qac-trust-box { background:#fff; border:1px solid var(--qac-line); border-radius:20px; box-shadow:0 18px 60px rgba(22,72,48,.12); padding:22px; }
.qac-trust-item { display:flex; gap:13px; align-items:center; height:100%; padding:6px 14px; }
.qac-trust-item i { width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:var(--qac-green-soft); color:var(--qac-green); font-size:1.2rem; }
.qac-trust-item strong { display:block; color:var(--qac-ink); }
.qac-trust-item span { display:block; color:var(--qac-muted); font-size:.9rem; }
.qac-section { padding:92px 0; }
.qac-section-soft { background:#f5f9f7; }
.qac-section-kicker { color:var(--qac-green); font-size:.82rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.qac-section-title { font-size:clamp(2rem, 4vw, 3.5rem); letter-spacing:-.035em; margin:12px 0 16px; color:var(--qac-ink); }
.qac-section-lead { color:var(--qac-muted); font-size:1.08rem; line-height:1.7; max-width:750px; }
.qac-service-card { height:100%; background:#fff; border:1px solid var(--qac-line); border-radius:22px; padding:30px; position:relative; overflow:hidden; transition:.25s ease; box-shadow:0 10px 35px rgba(12,60,36,.05); }
.qac-service-card::after { content:""; position:absolute; width:120px; height:120px; right:-55px; top:-55px; border-radius:50%; background:var(--qac-green-soft); transition:.25s ease; }
.qac-service-card:hover { transform:translateY(-6px); box-shadow:0 20px 50px rgba(12,60,36,.12); border-color:#bddac8; }
.qac-service-card:hover::after { transform:scale(1.25); }
.qac-card-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:16px; background:var(--qac-green-soft); color:var(--qac-green); font-size:1.6rem; margin-bottom:24px; position:relative; z-index:1; }
.qac-card-label { color:var(--qac-green); font-weight:800; font-size:.76rem; text-transform:uppercase; letter-spacing:.1em; }
.qac-service-card h3 { color:var(--qac-ink); font-size:1.42rem; margin:9px 0 12px; }
.qac-service-card p { color:var(--qac-muted); line-height:1.65; }
.qac-text-link { color:var(--qac-green-dark); font-weight:800; display:inline-flex; align-items:center; gap:7px; margin-top:10px; }
.qac-text-link:hover { color:var(--qac-green); gap:10px; }
.qac-line-card { height:100%; padding:28px; border-radius:20px; background:#0b3324; color:#fff; position:relative; overflow:hidden; }
.qac-line-card:nth-child(even) { background:#07542f; }
.qac-line-card i { font-size:2rem; color:#b8f7cb; }
.qac-line-card h3 { color:#fff; margin:18px 0 10px; font-size:1.3rem; }
.qac-line-card p { color:rgba(255,255,255,.72); line-height:1.6; margin:0; }
.qac-process-step { position:relative; height:100%; padding:26px 22px 22px; border-top:3px solid var(--qac-green); background:#fff; border-radius:0 0 16px 16px; box-shadow:0 12px 35px rgba(20,68,44,.07); }
.qac-step-number { color:var(--qac-green); font-size:2.3rem; font-weight:800; opacity:.25; line-height:1; }
.qac-process-step h3 { font-size:1.1rem; margin:9px 0; color:var(--qac-ink); }
.qac-process-step p { color:var(--qac-muted); font-size:.95rem; line-height:1.55; }
.qac-coverage-copy { padding:25px 20px 25px 0; }
.qac-map-shell { min-height:500px; border-radius:24px; overflow:hidden; border:1px solid var(--qac-line); background:linear-gradient(135deg,#e9f4ee,#f7faf8); box-shadow:0 22px 60px rgba(10,63,38,.11); position:relative; }
#coverage-map { min-height:500px; width:100%; }
.qac-map-loading { position:absolute; inset:0; display:grid; place-items:center; color:var(--qac-green-dark); font-weight:700; }
.qac-check-list { list-style:none; padding:0; margin:26px 0; }
.qac-check-list li { display:flex; gap:11px; margin:13px 0; color:var(--qac-ink); }
.qac-check-list i { color:var(--qac-green); }
.clients .client-logo img { filter:grayscale(100%); opacity:.72; transition:.25s ease; }
.clients .client-logo:hover img { filter:none; opacity:1; }
.qac-cta { background:linear-gradient(135deg,#006f34,#073b28); border-radius:28px; padding:52px; color:#fff; overflow:hidden; position:relative; }
.qac-cta::after { content:""; position:absolute; width:260px; height:260px; border:45px solid rgba(255,255,255,.06); border-radius:50%; right:-80px; top:-95px; }
.qac-cta h2 { color:#fff; font-size:clamp(1.8rem,3vw,3rem); max-width:700px; }
.qac-cta p { color:rgba(255,255,255,.78); max-width:700px; font-size:1.05rem; }
@media (max-width:991px) {
  .qac-hero { min-height:auto; }
  .qac-hero-panel { margin:35px 0 0; max-width:none; }
  .qac-trust-strip { margin-top:0; padding-top:20px; }
  .qac-coverage-copy { padding-right:0; }
}
@media (max-width:575px) {
  .qac-hero .container { padding-block:70px; }
  .qac-hero h1 { font-size:2.65rem; }
  .qac-btn-primary,.qac-btn-secondary { width:100%; justify-content:center; }
  .qac-section { padding:68px 0; }
  .qac-cta { padding:34px 24px; }
  .qac-map-shell,#coverage-map { min-height:420px; }
}
