/* ===== BNQ InTech — public site (Website v3 design) ===== */
:root{
  --navy:#0c1220; --navy-2:#101a2e; --line-dark:#22304d; --line-dark-2:#33405c;
  --blue:#1d4ed8; --blue-2:#3b6cf0; --blue-soft:#eef4ff; --blue-line:#c9d6f5; --blue-light:#7ea2ff; --blue-link:#8fb3ff;
  --bg:#f6f7f9; --white:#fff; --line:#e3e6ec; --line-2:#d7dce5;
  --ink:#0c1220; --ink-2:#25304a; --ink-3:#4a556a; --ink-4:#6b7689; --ink-5:#8b96ab; --ink-6:#9aa4b6; --ink-light:#aab4c8; --ink-lighter:#dfe5ef;
  --green:#166534; --green-soft:#eefbf2; --green-line:#bde8cc; --mint:#34d399; --red:#b42318;
  --purple:#7c3aed; --purple-soft:#f3eefc;
  --head:'Space Grotesk',Helvetica,Arial,sans-serif; --body:'IBM Plex Sans',Helvetica,Arial,sans-serif;
  --container:1140px; --r:12px; --r-lg:16px;
  --top-h:88px; --bottom-h:52px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--top-h) + 12px)}
body{margin:0;padding-top:var(--top-h);padding-bottom:var(--bottom-h);font-family:var(--body);font-size:15px;line-height:1.6;color:var(--ink);background:var(--bg)}
::selection{background:#dbe6ff}
img,svg{display:block;max-width:100%}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--ink)}
h1,h2,h3{font-family:var(--head);line-height:1.15;letter-spacing:-.02em;margin:0;font-weight:700}
h2{font-size:clamp(24px,3vw,34px)}
h3.h3{font-size:19px;margin:28px 0 12px}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 40px}
.ico{width:1.1em;height:1.1em;flex:none}
.skip-link{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:8px 14px;z-index:1000}
.skip-link:focus{left:10px;top:10px}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;border:1px solid transparent;cursor:pointer;transition:all .15s;line-height:1.3;font-family:inherit;white-space:nowrap}
.btn--primary{background:var(--blue);color:#fff}
.btn--primary:hover{background:var(--navy);color:#fff}
.btn--ghost{background:none;border-color:var(--line-dark-2);color:var(--ink-lighter)}
.btn--ghost:hover{border-color:var(--blue-light);color:#fff}
.btn--outline{background:#fff;border-color:var(--line-2);color:var(--ink)}
.btn--outline:hover{border-color:var(--blue);color:var(--blue)}
.btn--light{background:#fff;color:var(--blue)}
.btn--light:hover{background:var(--navy);color:#fff}
.btn--outline-light{background:none;border-color:var(--blue-light);color:#fff}
.btn--outline-light:hover{border-color:#fff;color:#fff}
.btn--whatsapp{background:#25d366;color:#fff;border-radius:10px;padding:13px 20px;width:fit-content}
.btn--whatsapp:hover{background:var(--navy);color:#fff}
.btn--lg{padding:14px 28px;font-size:15px}
.btn--sm{padding:8px 16px;font-size:13px}
.btn--block{display:flex;width:100%;padding:13px;font-size:15px}
.btn[disabled]{opacity:.6;cursor:wait}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
.link{font-weight:600;font-size:14.5px;color:var(--blue)}
.link:hover{color:var(--navy)}

/* Topbar + header */
.site-top{position:fixed;top:0;left:0;right:0;z-index:100}
.header{background:var(--bg);border-bottom:1px solid var(--line)}
.header__inner{display:flex;align-items:center;gap:24px;padding-block:6px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}
.brand__mark{min-width:52px;height:34px;padding:0 10px;background:var(--navy);color:#fff;display:grid;place-items:center;font-family:var(--head);font-weight:700;font-size:15px;letter-spacing:.02em;border-radius:6px}
.brand__text{display:flex;flex-direction:column;align-items:center;text-align:center;line-height:1.1}
.brand__legal{font-size:11.5px;font-weight:500;color:#5b6577;letter-spacing:.01em;margin-top:2px}
.brand__mark--sm{width:26px;height:26px;font-size:11px;border-radius:6px;background:var(--blue)}
.brand__name{font-family:var(--head);font-weight:700;font-size:19px;letter-spacing:-.02em}
.nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.nav__list{display:flex;gap:4px;flex-wrap:wrap}
.nav__link{display:inline-block;padding:6px 13px;border-radius:7px;font-size:14px;font-weight:500;color:#3c4658}
.nav__link:hover{background:#e9ecf2;color:var(--ink)}
.nav__link.is-active{background:var(--navy);color:#fff;font-weight:600}
.nav-toggle{display:none;width:42px;height:42px;border:1px solid var(--line-2);background:#fff;border-radius:8px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-left:auto}
.nav-toggle span{display:block;width:18px;height:2px;background:var(--ink);transition:transform .2s,opacity .2s}
.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Hero */
.hero{background:var(--navy);color:#fff;padding:40px 0 44px;min-height:320px;display:flex;flex-direction:column;justify-content:center}
.hero>.container{width:100%}
.hero--home{padding:16px 0 16px}
.hero__grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:center}
.hero--home .hero__grid{gap:32px}
.hero--home .hero__grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.kicker{display:block;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);font-weight:600}
.kicker--light{color:var(--blue-light)}
.hero .kicker{margin-bottom:10px}
.hero>.container,main .container{max-width:none}
.hero__title{font-size:clamp(34px,5vw,54px);line-height:1.08;letter-spacing:-.03em;margin:0 0 14px;max-width:none;width:100%;white-space:pre-line}
.hero__sub{font-size:17px;line-height:1.6;color:var(--ink-light);max-width:none}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.hero__checks{display:flex;gap:8px 24px;flex-wrap:wrap;justify-content:center;font-size:13.5px;color:var(--ink-5)}
.hero__strip{display:grid;gap:10px;justify-items:center;margin-top:18px}
.liveops{background:var(--navy-2);border:1px solid var(--line-dark);border-radius:16px;padding:26px 28px}
.liveops__head{display:flex;align-items:center;gap:8px;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-light);font-weight:600;margin-bottom:18px}
.liveops .dot{width:8px;height:8px;border-radius:50%;background:var(--mint);display:inline-block}
.liveops__rows{display:grid;gap:14px}
.liveops__row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;border-bottom:1px solid var(--line-dark);padding-bottom:12px}
.liveops__row span{font-size:13.5px;color:var(--ink-5)}
.liveops__row strong{font-family:var(--head);font-size:22px;font-weight:700}
.liveops__badges{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.liveops__badges span{display:grid;gap:2px;text-align:center;background:var(--navy);border:1px solid var(--line-dark);border-radius:8px;padding:8px 10px;font-size:11.5px;color:var(--ink-light);line-height:1.3}
.liveops__badges strong{color:#fff;font-size:12.5px}
.liveops__badges small{font-size:11.5px;white-space:nowrap}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);border-radius:12px;overflow:hidden;margin-top:20px}
.stats__cell{background:var(--navy-2);padding:0 20px;margin:0;display:flex;align-items:center;gap:10px;min-height:44px;line-height:1.1}
.stats__value{font-family:var(--head);font-size:22px;font-weight:700}
.stats__label{font-size:13px;color:var(--ink-5);margin-top:0}

/* Sections */
.section{padding:44px 0}
.section--tight{padding-top:0}
.section--alt{background:var(--bg-2,#f4f6fa)}
.section--white{background:#fff;border-block:1px solid var(--line)}
.section--dark{background:var(--navy);color:#fff}
.section--navy{background:var(--navy-2);color:#fff;border-top:1px solid var(--line-dark)}
.section__head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.section__head--row{justify-content:space-between;align-items:flex-end}
.section__intro{color:var(--ink-3);font-size:15.5px;max-width:none;margin:-12px 0 24px;line-height:1.6}
.section__intro--light{color:var(--ink-light)}
.h2--tight{margin:0 0 8px}
.h2--tight+.section__intro{margin-top:0}
.h2--light{margin-bottom:20px}
.group-title{font-family:var(--head);font-weight:700;font-size:17px;margin-bottom:14px}
.label{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-5);font-weight:600;margin-bottom:11px}
.mt-md{margin-top:20px}.mt-xl{margin-top:44px}.mb-xl{margin-bottom:40px}
.grid{display:grid;gap:16px}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.grid--4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.grid--gap-lg{gap:24px}.grid--gap-xl{gap:48px}.grid--start{align-content:start}
.stack{display:grid;gap:10px}
.stack--lg{gap:18px}
.prose{font-size:15.5px;line-height:1.7;color:var(--ink-3);margin-bottom:16px}
.prose--sm{font-size:14px;margin:10px 0 0}
.prose--sm p{margin-bottom:10px}
.prose h2{font-size:22px;margin:24px 0 8px}
.prose h3{font-size:17px;margin:18px 0 6px}
.prose ul{list-style:disc;padding-left:20px;margin-bottom:12px}
.prose p{margin-bottom:12px}

/* Cards */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px}
.card--flat{background:transparent}
.card--lg{padding:28px;border-radius:14px}
.card--sm{padding:18px 22px}
.card--inline{padding:16px 20px;font-size:14px;color:var(--ink-3);width:fit-content}
.card--navy{background:var(--navy-2);border-color:var(--line-dark);color:#fff;border-radius:14px;padding:26px}
.page-about .card--navy{background:var(--navy);border-color:var(--navy)}
.page-about .section--dark .card--navy{background:var(--navy-2);border-color:var(--line-dark)}
.card__title{font-family:var(--head);font-weight:600;font-size:15.5px}
.card__title--lg{font-size:19px}
.card__title--sm{font-family:var(--body);font-size:14.5px}
.card__title--light{color:#fff}
.card__title--blue{color:var(--blue-light)}
.card__text{font-size:13.5px;color:var(--ink-4);margin-top:7px;line-height:1.55}
.card__text--light{color:var(--ink-lighter)}
.card--navy .card__text{color:var(--ink-5)}
.card--navy .card__text--light{color:var(--ink-lighter)}
.card__text--links a{font-weight:500}
.card__text--loose{line-height:1.9;font-size:14px}
.card__text--loose strong{color:var(--ink-2)}
.card--sm .card__text{font-size:14px;color:var(--ink-3);margin-top:4px}
.card__title-note{font-weight:400;color:var(--ink-4);font-size:13px}
.contact__inline{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}
.contact__sep{color:var(--ink-4);opacity:.7}
.contact__depts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.contact__depts .btn{white-space:nowrap}
.card__note{font-size:13px;color:var(--ink-4);margin-top:6px}
.card .btn--block{margin-top:14px}
.service-row{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px 18px;color:var(--ink);transition:border-color .15s}
.service-row:hover{border-color:var(--blue);color:var(--ink)}
.service-row__title{display:block;font-weight:600;font-size:14.5px}
.service-row__text{display:block;font-size:13px;color:var(--ink-4);margin-top:3px;line-height:1.45}
.service-row__arrow{color:var(--blue);font-weight:700}
.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 34px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}
.service-card__title{font-size:21px;letter-spacing:-.01em}
.service-card__title a{color:var(--ink)}
.service-card__title a:hover{color:var(--blue)}
.service-card__text{margin:10px 0 12px;font-size:14.5px;line-height:1.65;color:var(--ink-3)}
.services-cols{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;margin-bottom:40px}
.services-col__head{margin-bottom:22px}
.services-col__head .h2--tight,.services-col__head .section__intro{text-align:left;margin-left:0;margin-right:0}
.services-col__head .section__intro{margin-bottom:0}
.service-card--col{grid-template-columns:1fr;gap:16px;padding:26px 28px}
.dash-list{display:grid;gap:8px}
.dash-list li{display:flex;gap:10px;font-size:13.5px;color:var(--ink-2);line-height:1.5}
.dash-list li::before{content:"—";color:var(--blue);font-weight:700}
.dash-list--2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:8px}
.step{display:flex;align-items:baseline;gap:10px}
.step__n{font-family:var(--head);font-size:22px;font-weight:700;color:var(--blue-line)}
.step__n--sm{font-size:13px;color:var(--blue)}
.step__t{font-family:var(--head);font-weight:600;font-size:16px}
.notsure{background:var(--blue-soft);border:1px solid var(--blue-line);border-radius:14px;padding:26px 30px;margin-top:40px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.notsure__title{font-family:var(--head);font-weight:700;font-size:17px}
.notsure__text{font-size:14px;color:var(--ink-3);margin-top:4px}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.tag{background:#f2f3f7;color:var(--ink-3);font-size:12px;font-weight:600;padding:4px 11px;border-radius:999px}
.tag--blue{background:var(--blue-soft);color:var(--blue)}
.pill{display:inline-block;font-size:12px;font-weight:600;padding:4px 12px;border-radius:999px;width:fit-content;line-height:1.4}
.pill--underway{background:#0c2a1c;color:var(--mint);border:1px solid #1c5c40}
.pill--planned{background:#101f3d;color:var(--blue-light);border:1px solid #2c4275}
.pill--vision{background:#231238;color:#c4b1ec;border:1px solid #4a2f7a}
.pill--milestone{background:var(--green-soft);color:var(--green)}
.pill--target{background:var(--blue-soft);color:var(--blue)}
.dc__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dc__mw{font-family:var(--head);font-size:32px;font-weight:700}
.dc__label{font-size:13.5px;color:var(--blue-light);font-weight:600;margin-top:2px}
.quote{border:1px solid var(--line-dark);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:16px}
.quote__text{font-size:15px;line-height:1.6;color:var(--ink-lighter)}
.quote__who{margin-top:auto;font-weight:600;font-size:13.5px;color:var(--blue-light)}
.quote__org{font-size:12.5px;color:var(--ink-5)}
.post{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:11px;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.post:hover{border-color:var(--blue);box-shadow:0 8px 30px rgba(12,18,32,.08);color:var(--ink)}
.post__title{font-family:var(--head);font-size:17px;font-weight:600;line-height:1.4}
.post__tag{font-family:var(--body);font-size:12px;color:var(--blue);font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-right:10px;vertical-align:middle}
.post__excerpt{font-size:13.5px;color:var(--ink-4);line-height:1.55}
.post__date{font-size:13px;color:var(--ink-6);margin-top:auto}
.post__more summary{cursor:pointer;font-weight:600;font-size:13.5px;color:var(--blue)}
.case{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.case__body{padding:34px 36px}
.case__title{font-size:22px;line-height:1.3;letter-spacing:-.01em}
.case__title .post__tag{font-size:12.5px;letter-spacing:.1em;margin-right:12px}
.case__p{margin-top:14px;font-size:14.5px;line-height:1.65;color:var(--ink-3)}
.case__p+.case__p{margin-top:10px}
.case__p strong{color:var(--ink)}
.case__services{margin-top:14px;font-size:13px;color:var(--ink-4)}
.case__services strong{color:var(--ink-2)}
.case__results{background:var(--navy);color:#fff;padding:34px 36px;display:flex;flex-direction:column;justify-content:center;gap:22px}
.case__value{font-family:var(--head);font-size:28px;font-weight:700}
.case__label{font-size:13px;color:var(--ink-5);margin-top:2px}
.pillar__head{display:flex;align-items:baseline;gap:12px}
.pillar__letter{font-family:var(--head);font-size:34px;font-weight:700;color:var(--blue-light)}
.pillar__title{font-family:var(--head);font-weight:700;font-size:18px}
.pillar__now{margin-top:14px;font-size:12.5px;color:var(--mint);font-weight:600}
.leader{border:1px solid var(--line);border-radius:14px;padding:24px}
.leader__photo{width:56px;height:56px;border-radius:50%;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-family:var(--head);font-weight:700;font-size:16px;margin-bottom:16px}
.leader__name{font-family:var(--head);font-weight:600;font-size:16.5px}
.leader__title{font-size:13.5px;color:var(--blue);font-weight:500;margin-top:3px}
.leader__note{font-size:13px;color:var(--ink-4);margin-top:8px;line-height:1.5}
.check{border:1px solid var(--line-dark);border-radius:10px;padding:13px 17px;font-size:13.5px;color:var(--ink-lighter)}
.check span{color:var(--mint);font-weight:700;margin-right:8px}
.timeline__row{display:grid;grid-template-columns:90px 110px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--line);align-items:baseline}
.timeline__year{font-family:var(--head);font-weight:700;font-size:17px;color:var(--blue)}
.timeline__text{font-size:14.5px;color:var(--ink-2);line-height:1.55}
.job{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.job__title{font-weight:600;font-size:15.5px}
.job__meta{font-size:13px;color:var(--ink-4);margin-top:3px}
.job__right{display:flex;gap:14px;align-items:center}
.job__type{font-size:13px;color:var(--blue);font-weight:600}
.newsletter{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 28px;margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.newsletter__title{font-family:var(--head);font-weight:700;font-size:16.5px}
.newsletter__text{font-size:13.5px;color:var(--ink-4);margin-top:4px}
.newsletter__form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.newsletter__form input{min-width:220px}
.newsletter__form .form__msg{width:100%;margin:0}
.detail{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start}
.detail__side{display:grid;gap:16px;position:sticky;top:calc(var(--top-h) + 16px)}
.side-links li{padding:6px 0;border-top:1px solid var(--line);font-size:14px}
.side-links li:first-child{border-top:0}
.map{height:300px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#e6eaf2}
.map iframe{width:100%;height:100%;border:0}

/* Forms */
.form{display:grid;gap:12px;align-content:start;padding:28px;border-radius:14px}
.form__title{font-family:var(--head);font-weight:700;font-size:17px}
.form__lead{margin:-4px 0 2px;font-size:13.5px;color:var(--ink-3);line-height:1.5}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form__row--3{grid-template-columns:repeat(3,1fr)}
input,select,textarea{width:100%;padding:12px 14px;border:1px solid var(--line-2);border-radius:8px;font-size:14.5px;font-family:inherit;background:#fff;color:var(--ink);line-height:1.4}
select{color:var(--ink-3)}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:0;border-color:var(--blue)}
.file{display:block;border:1px dashed #b9c2d0;border-radius:8px;padding:14px;font-size:13.5px;color:var(--ink-4);text-align:center;cursor:pointer}
.file input{margin-top:8px;padding:0;border:0;font-size:13px}
.form__msg{min-height:1.2em;font-size:14px;font-weight:500;margin:0}
.form__msg.is-ok{color:var(--green);background:var(--green-soft);border:1px solid var(--green-line);border-radius:8px;padding:12px 14px}
.form__msg.is-error{color:var(--red)}
.form__note{font-size:12.5px;color:var(--ink-4)}

/* CTA band + footer */
.cta-band{background:var(--blue);color:#fff;padding:36px 0}
.cta-band__inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band__title{font-family:var(--head);font-size:clamp(22px,3vw,30px);font-weight:700;letter-spacing:-.02em}
.cta-band__text{font-size:15px;color:#c8d6ff;margin-top:6px}
.cta-band__actions{display:flex;gap:12px;flex-wrap:wrap}
.footer{background:var(--navy);color:var(--ink-5);padding:36px 0 28px;font-size:13.5px}
.footer__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 28px;margin-bottom:32px}
.footer__contact li{line-height:1.55}
@media (max-width:1100px){.footer__grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:720px){.footer__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.footer__grid{grid-template-columns:1fr}}
.footer__brand{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--ink-lighter);font-weight:600}
.footer__about{line-height:1.65;font-size:13px}
.footer__social{display:flex;gap:14px;margin-top:14px}
.footer__social a,.footer a{color:var(--blue-link)}
.footer a:hover{color:#fff}
.footer__title{color:var(--ink-lighter);font-weight:600;margin-bottom:12px}
.footer__links{display:grid;gap:8px;font-size:13px}
.footer__links a{color:var(--ink-5)}
.footer__bottom{position:fixed;left:0;right:0;bottom:0;z-index:100;background:var(--navy);color:var(--ink-5);font-size:13px;border-top:1px solid var(--line-dark)}
.footer__bottom a{color:var(--blue-link)}
.footer__bottom a:hover{color:#fff}
.footer__portals{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 10px;padding-block:7px 0;font-size:13px;line-height:1.3}
.footer__portals a{color:var(--ink-lighter)}
.footer__portals a:hover{color:#fff}
.footer__portals-label{color:#fff;font-weight:600;margin-right:2px}
.footer__portals-sep{color:var(--ink-5);opacity:.6}
.footer__bottom-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px 24px;padding-block:7px 8px}
.footer__copy{text-align:left}
.footer__meaning{text-align:center;font-family:var(--head);font-size:13.5px;color:var(--ink-lighter);letter-spacing:.04em;white-space:nowrap}
.footer__meaning b{color:var(--blue-light)}
.footer__legal{text-align:right;white-space:nowrap}
@media (max-width:960px){
  .footer__bottom-inner{grid-template-columns:1fr;text-align:center;gap:4px;padding-block:6px 8px}
  .footer__copy,.footer__legal{text-align:center}
  .footer__meaning{display:none}
}
.whatsapp{position:fixed;right:20px;bottom:calc(var(--bottom-h) + 16px);width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 25px rgba(0,0,0,.2);z-index:90}
.whatsapp:hover{color:#fff;transform:scale(1.05)}
.whatsapp .ico{width:26px;height:26px}

/* Portfolio */
.counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:40px}
.counters--inline{margin:0;grid-template-columns:repeat(2,minmax(150px,1fr));flex:0 0 auto}
.counter{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 26px;border-left:5px solid var(--green)}
.counter--wip{border-left-color:var(--blue)}
.counter__value{font-family:var(--head);font-size:40px;font-weight:700;line-height:1}
.counter__label{font-size:13.5px;color:var(--ink-4);margin-top:8px;font-weight:500}
.portal__head{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.portal__client{font-size:13px;color:var(--blue);font-weight:600;margin-top:3px}
.portal__link{display:inline-block;margin-top:12px;font-size:13.5px}
.portal--wip{border-style:dashed}
.portfolio-strip{background:var(--blue-soft);border:1px solid var(--blue-line);border-radius:14px;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.portfolio-strip .counter{padding:14px 18px}
.portfolio-strip .counter__value{font-size:30px}
.nav__link{padding:8px 11px;font-size:13.5px}

/* Responsive */
@media (max-width:960px){
  .container{padding:0 20px}
  .services-cols{grid-template-columns:1fr}
  .nav{position:fixed;inset:0;top:0;background:var(--bg);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:calc(var(--top-h) + 16px) 20px 20px;overflow-y:auto;gap:12px;transform:translateX(100%);transition:transform .25s;z-index:99}
  .nav.is-open{transform:none}
  .nav__list{flex-direction:column;gap:2px}
  .nav__link{display:block;padding:12px 14px;font-size:16px}
  .nav__cta{width:100%}
  .nav-toggle{display:flex;position:relative;z-index:101}
  .detail{grid-template-columns:1fr}
  .detail__side{position:static}
  .timeline__row{grid-template-columns:70px 1fr}
  .timeline__text{grid-column:1/-1}
}
@media (max-width:640px){
  .counters--inline{grid-template-columns:1fr 1fr;width:100%}
  .form__row,.form__row--3{grid-template-columns:1fr}
  .case__body,.case__results{padding:24px}
  .service-card{padding:22px}
  .hero__title{font-size:32px}
  .grid--2,.grid--3,.grid--4{grid-template-columns:1fr}
}

/* ===== SEO additions: article pages, FAQ ===== */
.card__title,.post__title,.job__title,.group-title,.leader__name,.notsure__title{letter-spacing:0;line-height:1.35}
h3.card__title,h2.card__title{margin:0}
.post__link,.case__link{color:inherit}
.post__link:hover,.case__link:hover{color:var(--blue)}
.case__more{display:inline-block;margin-top:16px;font-weight:600;font-size:14px}
.case--single{margin-bottom:8px}
.article__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--ink-4);margin-bottom:18px}
.article__body{font-size:16px}
.article__share{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:28px;padding-top:16px;border-top:1px solid var(--line);font-size:13.5px;color:var(--ink-4)}
.article__share a{font-weight:600}
.newsletter__form--stack{flex-direction:column;align-items:stretch;margin-top:12px}
.newsletter__form--stack input{min-width:0;width:100%}
.mt-xl{margin-top:40px}
.faq{max-width:860px;display:grid;gap:10px}
.faq__item{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:0 20px}
.faq__item[open]{border-color:var(--blue-line)}
.faq__q{list-style:none;cursor:pointer;padding:16px 0;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq__q::-webkit-details-marker{display:none}
.faq__q h3{font-size:16px;font-weight:600;letter-spacing:0;line-height:1.4}
.faq__q::after{content:"+";font-family:var(--head);font-size:22px;color:var(--blue);flex:none;line-height:1}
.faq__item[open] .faq__q::after{content:"–"}
.faq__a{padding:0 0 18px;font-size:14.5px;line-height:1.65;color:var(--ink-3)}

/* Centered section headings + intro text (site-wide, 2026-09-15) */
.hero__grid>div:first-child{text-align:center}
.hero .crumbs ol{justify-content:center}
.hero__title,.hero__sub{width:100%;max-width:100%;text-align:center;margin-left:auto;margin-right:auto}
.section__head,.section__head--row{flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;max-width:100%;gap:6px}
.section__head h2,.section__head .kicker{width:100%;max-width:100%;text-align:center}
.section__head--row .link{margin-top:4px}
.section__intro,.h2--tight,.h2--light,.group-title,h3.h3{width:100%;max-width:100%;text-align:center;margin-left:auto;margin-right:auto}
.section__head+p,.section__head+.section__intro,h1+p,h2+p,h2+.prose,h2+.section__intro,h3.h3+p{width:100%;max-width:100%;text-align:center}
.card h2+p,.card h3+p,.service-card h2+p,.service-card h3+p,.post h2+p,.case h2+p{text-align:inherit}
