/* ADDON Group of Companies — neutral corporate shell
   Brand accents taken from the supplied logo. */
:root{
  --addon-blue-dark:#0a5ca8;
  --addon-blue:#0aa1f0;
  --addon-blue-light:#8fd2f7;
  --addon-red:#e2231a;
  --ink:#101418;
  --muted:#5d6b7a;
  --line:#e5eaf0;
  --bg:#ffffff;
  --bg-soft:#f6f9fc;
  --radius:10px;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:"Segoe UI",system-ui,-apple-system,Arial,sans-serif;line-height:1.65;}
h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.01em;color:var(--ink)}
a{color:var(--addon-blue-dark);text-decoration:none}
a:hover{color:var(--addon-blue)}
.text-muted{color:var(--muted)!important}

.btn-primary{background:var(--addon-blue-dark);border-color:var(--addon-blue-dark)}
.btn-primary:hover{background:var(--addon-blue);border-color:var(--addon-blue)}
.btn-outline-primary{color:var(--addon-blue-dark);border-color:var(--addon-blue-dark)}
.btn-outline-primary:hover{background:var(--addon-blue-dark);border-color:var(--addon-blue-dark)}

.site-header{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1030;background:#fff}
.navbar{padding:.9rem 0}
.nav-link{color:var(--ink);font-weight:500;padding:.5rem 1rem!important}
.nav-link.active,.nav-link:hover{color:var(--addon-blue-dark)}

.hero{padding:6rem 0 5rem;background:linear-gradient(180deg,var(--bg-soft),#fff)}
.hero h1{font-size:clamp(2rem,4.5vw,3.25rem);max-width:18ch}
.hero .lead{max-width:60ch;color:var(--muted)}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}

.page-hero{padding:4.5rem 0 2.5rem;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(1.75rem,3.5vw,2.5rem)}
.page-hero .lead{color:var(--muted);max-width:65ch}

.section{padding:4.5rem 0}
.card-plain{border:1px solid var(--line);border-radius:var(--radius);padding:2rem;height:100%;background:#fff}
.card-plain h3{font-size:1.15rem;margin-bottom:.5rem}
.card-plain p{color:var(--muted);margin:0}

.site-footer{background:var(--bg-soft);border-top:1px solid var(--line);padding:3.5rem 0 1.5rem;margin-top:2rem}
.footer-heading{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:1rem}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin-bottom:.45rem}
.footer-bottom{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;
  border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.25rem;
  font-size:.875rem;color:var(--muted)}

/* ---------- topbar ---------- */
.topbar{background:var(--addon-blue-dark);color:#fff;font-size:.85rem;padding:.5rem 0}
.topbar a{color:#fff;margin-left:1.25rem}
.topbar a:hover{color:var(--addon-blue-light)}

/* ---------- hero slider ---------- */
.hero-slider .carousel-item{position:relative;height:min(78vh,660px);min-height:420px}
.hero-slide-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-slide-overlay{position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(6,32,58,.88) 0%,rgba(6,32,58,.62) 45%,rgba(6,32,58,.18) 100%)}
.hero-slide-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;
  justify-content:center;color:#fff;max-width:1140px}
.hero-slide-content h1{color:#fff;font-size:clamp(1.9rem,4.4vw,3.3rem);max-width:20ch;margin-bottom:1rem}
.hero-slide-content .lead{color:rgba(255,255,255,.9);max-width:58ch}
.hero-slider .carousel-control-prev,.hero-slider .carousel-control-next{width:6%}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}

/* ---------- stats ---------- */
.stats-strip{background:var(--addon-blue-dark);color:#fff;padding:2.25rem 0}
.stats-strip .stat-value{display:block;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;line-height:1.1}
.stats-strip .stat-label{display:block;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75)}

/* ---------- sections ---------- */
.bg-soft{background:var(--bg-soft)}
.section-head{margin-bottom:2.5rem}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--addon-blue);margin-bottom:.5rem}

/* ---------- service cards ---------- */
.service-card{display:block;height:100%;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;transition:.2s;color:inherit}
.service-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(10,92,168,.14);color:inherit}
.service-card img{width:100%;height:190px;object-fit:cover;display:block}
.service-card-body{padding:1.5rem}
.service-card-body h3{font-size:1.1rem;margin-bottom:.5rem}
.service-card-body p{color:var(--muted);font-size:.95rem;margin-bottom:.75rem}
.link-more{color:var(--addon-blue-dark);font-weight:600;font-size:.9rem}

.mini-card{border-left:3px solid var(--addon-blue);background:#fff;border-radius:6px;
  padding:1rem 1.15rem;height:100%;box-shadow:0 1px 2px rgba(16,20,24,.05)}
.mini-card h3{font-size:1rem;margin-bottom:.35rem}
.mini-card p{color:var(--muted);font-size:.9rem;margin:0}

/* ---------- chips, clients ---------- */
.industry-chips{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}
.chip{background:#fff;border:1px solid var(--line);border-radius:100px;padding:.5rem 1.1rem;font-size:.9rem}
.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}
.client-tile{display:flex;align-items:center;justify-content:center;text-align:center;
  border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:1rem;min-height:96px;
  font-size:.9rem;font-weight:600;color:var(--muted)}
.client-tile img{max-height:56px;max-width:100%;object-fit:contain}

/* ---------- CTA band, forms ---------- */
.cta-band{background:linear-gradient(120deg,var(--addon-blue-dark),var(--addon-blue));color:#fff;padding:4rem 0}
.cta-band h2{color:#fff}
.cta-band p{color:rgba(255,255,255,.9);max-width:60ch;margin:0 auto}
.form-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:2rem}
.page-hero nav{font-size:.9rem;margin-bottom:.75rem}
.accordion-button:not(.collapsed){background:var(--bg-soft);color:var(--addon-blue-dark)}
