@font-face {
    font-family: 'Aptos';
    src: url('../fonts/aptos/aptos-regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aptos';
    src: url('../fonts/aptos/aptos-italic.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Aptos';
    src: url('../fonts/aptos/aptos-semibold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aptos';
    src: url('../fonts/aptos/aptos-bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Aptos';
    src: url('../fonts/aptos/aptos-bolditalic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

button,input,select,textarea{font-family:'Aptos',Arial,Helvetica,sans-serif}
:root{--navy:#0d1b42;--navy2:#08132f;--steel:#b8c8cf;--ice:#edf3f5;--ink:#101827;--muted:#667085;--white:#fff;--line:#dfe5e8;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Aptos',Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.site-header{position:sticky;inset:0 0 auto;z-index:50;height:92px;display:flex;align-items:center;background:#fff;transition:.35s;border-bottom:1px solid rgba(11,24,56,.08)}.site-header.scrolled{height:76px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);box-shadow:0 8px 35px rgba(10,25,50,.07);border-color:#e7ecef}.header-inner{display:flex;align-items:center;justify-content:space-between}.brand{background:#fff;padding:8px 12px;border-radius:3px;display:flex}.brand img{width:210px;height:auto}.main-nav{display:flex;align-items:center;gap:31px;color:var(--navy);font-size:17px;font-weight:600}.scrolled .main-nav{color:var(--navy)}.main-nav>a:not(.nav-cta){position:relative}.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--steel);transition:.25s}.main-nav>a:hover:after{right:0}.nav-cta{background:var(--navy);color:#fff;border:1px solid var(--navy);padding:11px 17px}.scrolled .nav-cta{background:var(--navy);color:#fff;border-color:var(--navy)}.menu-toggle{display:none;background:none;border:0}.hero{height:min(900px,100vh);min-height:720px;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5, 15, 42, 0.56) 0%,rgba(7, 20, 52, 0.52) 48%,rgba(7, 20, 52, 0.23) 100%)}.hero-grid,.cta-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to right,#000,transparent)}.hero-content{position:relative;z-index:2;padding-top:70px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;color:#71808a;margin:0 0 22px}.eyebrow.light{color:#c6d2d8}.eyebrow i{display:inline-block;width:3px;height:3px;background:#c1d1d8;border-radius:50%;vertical-align:middle;margin:0 9px}.hero h1{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:clamp(48px,5vw,60px);line-height:.99;letter-spacing:-.055em;margin:0;max-width:1000px}.hero h1 span{color:#bdcdd4}.hero-copy{font-size:18px;max-width:610px;color:#d5dde4;margin:32px 0}.hero-actions{display:flex;align-items:center;gap:30px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 20px;font-size:17px;font-weight:800;letter-spacing:.02em;transition:.25s}.btn-primary{background:#fff;color:var(--navy)}.btn-primary:hover{background:#c7d5da}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:17px;font-weight:700;border:1px solid rgba(255,255,255,.4);padding:14px 18px;transition:.25s}.text-link:hover{background:#fff;border-color:#fff;color:var(--navy)}.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid rgba(255,255,255,.16);z-index:2}.hero-bottom-inner{height:70px;display:flex;align-items:center;gap:55px;color:#b9c5cf;text-transform:uppercase;letter-spacing:.14em;font-size:14px}.section{padding:110px 0}.intro-grid,.partner-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:100px}.section-title{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:clamp(38px,3.7vw,50px);line-height:1.08;letter-spacing:-.045em;margin:0}.section-title span{color:#899aa2}.intro-copy{padding-top:45px;color:#56616c;font-size:16px}.intro-copy p:first-child{font-size:19px;color:#263342}.arrow-link{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;color:var(--navy);font-weight:800;font-size:17px;margin-top:20px;border:1px solid #cbd4d8;padding:12px 18px;transition:.25s}.arrow-link:hover{background:var(--navy);border-color:var(--navy);color:#fff}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:90px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat-strip div{padding:26px 20px;border-right:1px solid var(--line)}.stat-strip div:last-child{border:0}.stat-strip strong,.stat-strip span{display:block}.stat-strip strong{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:18px;color:var(--navy)}.stat-strip span{font-size:17px;color:#7a858d;margin-top:3px}.solutions{background:#f3f6f7}.section-head,.process-top{display:grid;grid-template-columns:1.2fr .6fr;justify-content:space-between;gap:100px;align-items:end;margin-bottom:60px}.section-side{color:#65717b;margin:0 0 5px;font-size:16px}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ccd5d9;border-left:1px solid #ccd5d9}.solution-card{min-height:365px;padding:28px;display:flex;flex-direction:column;position:relative;border-right:1px solid #ccd5d9;border-bottom:1px solid #ccd5d9;background:#fff;transition:.35s}.solution-card:hover{background:var(--navy);color:#fff;transform:translateY(-4px);box-shadow:0 20px 50px rgba(11,27,65,.15)}.card-num{font-size:14px;letter-spacing:.15em;color:#829098}.card-icon{font-size:38px;color:#9aabb2;margin:35px 0 auto}.solution-card h3{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:22px;line-height:1.2;margin:0 0 13px}.solution-card p{font-size:16px;color:#74808a;margin:0;max-width:290px}.solution-card:hover p,.solution-card:hover .card-num{color:#c8d2da}.card-arrow{position:absolute;right:26px;top:25px;font-size:20px}.center-action{text-align:center;margin-top:45px}.btn-dark{background:var(--navy);color:#fff}.process{background:var(--navy2);color:#fff;position:relative;overflow:hidden}.light-title{color:#fff}.muted{color:#aebbc4}.process-line{display:grid;grid-template-columns:repeat(6,1fr);position:relative;margin-top:95px}.process-line:before{content:"";position:absolute;top:44px;left:0;right:0;height:1px;background:#34415d}.process-progress{position:absolute;top:44px;left:0;width:16.66%;height:1px;background:#c0d0d7}.process-step{position:relative;padding-right:25px}.process-step b{font-size:14px;color:#738198;letter-spacing:.1em}.process-step>span{display:block;width:10px;height:10px;border-radius:50%;background:#b8c9d0;margin:24px 0 38px;position:relative;z-index:2;box-shadow:0 0 0 6px #0a1736}.process-step h3{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:21px;margin:0 0 10px}.process-step p{font-size:17px;color:#9eabb6;margin:0}.why-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:120px}.why-sticky{align-self:start;position:sticky;top:130px}.why-sticky>p:not(.eyebrow){color:#68747d;max-width:430px}.why-item{display:grid;grid-template-columns:1fr;gap:0;padding:34px 0;border-top:1px solid var(--line)}.why-item:last-child{border-bottom:1px solid var(--line)}.why-item>span{font-size:14px;color:#84929b}.why-item h3{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:24px;margin:0 0 8px;color:var(--navy)}.why-item p{margin:0;color:#6a747d;font-size:16px}.serve{background:#edf2f4}.serve-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd5da;border-left:1px solid #cbd5da}.serve-grid div{min-height:160px;padding:25px;border-right:1px solid #cbd5da;border-bottom:1px solid #cbd5da;display:flex;flex-direction:column;justify-content:space-between}.serve-grid span{font-size:14px;color:#89979f}.serve-grid h3{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:19px;margin:0;color:var(--navy)}.partner-copy{padding-top:20px;color:#65717a}.insights{padding-top:20px}.coming-soon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:55px 0;display:grid;grid-template-columns:.3fr 1fr .3fr;gap:40px;align-items:start}.coming-soon h2{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:36px;line-height:1.15;margin:0 0 17px}.coming-soon p:not(.eyebrow){color:#6b767f;max-width:600px}.soon-label{justify-self:end;text-transform:uppercase;letter-spacing:.15em;font-size:9px;border:1px solid #ccd5d9;padding:8px 10px}.cta{background:var(--navy);color:#fff;position:relative;padding:105px 0;overflow:hidden}.cta-inner{position:relative;z-index:2}.cta h2{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:clamp(40px,4.4vw,60px);line-height:1.02;letter-spacing:-.05em;margin:0}.cta h2 span{color:#bdcdd4}.cta p:not(.eyebrow){max-width:610px;color:#c1ccd4;margin:27px 0}.btn-light{background:#fff;color:var(--navy)}.footer{padding:70px 0 25px;background:#f8fafb}.footer-main{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:60px}.footer-brand img{width:220px}.footer-brand p{color:#707c84;font-size:13px}.footer h4{text-transform:uppercase;letter-spacing:.14em;font-size:14px;color:#839099;margin:7px 0 20px}.footer-main>div:not(.footer-brand) a,.footer-main>div:not(.footer-brand) span{display:block;font-size:17px;margin:9px 0;color:#44505a}.footer-bottom{border-top:1px solid var(--line);margin-top:55px;padding-top:20px;display:flex;justify-content:space-between;font-size:14px;color:#89949b;letter-spacing:.08em}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.main-nav{position:fixed;inset:76px 0 auto;background:#fff;color:var(--navy)!important;padding:30px;display:none;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.menu-toggle{display:block;width:36px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:6px 0}.scrolled .menu-toggle span{background:var(--navy)}.brand img{width:175px}.hero{min-height:700px}.intro-grid,.partner-grid,.why-grid,.section-head,.process-top{grid-template-columns:1fr;gap:35px}.intro-copy{padding-top:0}.solution-grid{grid-template-columns:repeat(2,1fr)}.process-line{grid-template-columns:repeat(3,1fr);gap:45px 0}.process-line:before,.process-progress{display:none}.process-step>span{margin:17px 0 20px}.why-sticky{position:static}.stat-strip{grid-template-columns:repeat(2,1fr)}.serve-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1.5fr 1fr 1fr}.footer-main>div:last-child{grid-column:2/4}.coming-soon{grid-template-columns:1fr}.soon-label{justify-self:start}}
@media(max-width:620px){.container{width:min(calc(100% - 30px),var(--max))}.site-header{height:76px}.brand img{width:155px}.hero{min-height:680px}.hero h1{font-size:44px}.hero-copy{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-bottom-inner{gap:20px;overflow:hidden}.hero-bottom-inner span{white-space:nowrap}.section{padding:78px 0}.section-title{font-size:38px}.solution-grid{grid-template-columns:1fr}.solution-card{min-height:310px}.stat-strip{grid-template-columns:1fr}.stat-strip div{border-right:0;border-bottom:1px solid var(--line)}.process-line{grid-template-columns:repeat(2,1fr)}.serve-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/3}.footer-main>div:last-child{grid-column:auto}.footer-bottom{gap:20px;flex-direction:column}.eyebrow i{display:none}.hero .eyebrow{line-height:1.8}}

.partner-marquee{width:100%;overflow:hidden;position:relative;margin-top:35px;padding:28px 0;border-top:1px solid rgba(11,24,56,.10);border-bottom:1px solid rgba(11,24,56,.10)}.partner-track{display:flex;align-items:center;width:max-content;animation:partnerScroll 28s linear infinite}.partner-logo{width:190px;height:80px;flex:0 0 190px;display:flex;align-items:center;justify-content:center;padding:17px 28px}.partner-logo span{font-size:14px;letter-spacing:.12em;font-weight:800;color:#7c8991;white-space:nowrap}.partner-marquee:hover .partner-track{animation-play-state:paused}@keyframes partnerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.partner-track{animation:none}}
@media(max-width:767px){.partner-marquee{margin-top:30px;padding:22px 0}.partner-track{animation-duration:22s}.partner-logo{width:150px;height:60px;flex-basis:150px;padding:12px 22px}.partner-logo span{font-size:14px}}

/* ABOUT / INNER PAGES */
.main-nav>a.active:not(.nav-cta):after{right:0}
.inner-hero{min-height:500px;background:var(--navy2);color:#fff;position:relative;display:flex;align-items:center;overflow:hidden}
.inner-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 25%,rgba(184,200,207,.13),transparent 30%),linear-gradient(115deg,transparent 48%,rgba(255,255,255,.035) 48%,rgba(255,255,255,.035) 49%,transparent 49%)}
.inner-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to right,#000,transparent 82%)}
.inner-hero-content{position:relative;z-index:2;padding:95px 0}
.inner-hero h1{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:clamp(48px,5vw,60px);line-height:1;letter-spacing:-.055em;margin:0;max-width:950px}
.inner-hero h1 span{color:#bdcdd4}
.inner-hero-content>p:last-child{font-size:18px;max-width:700px;color:#c8d2da;margin:28px 0 0}
.editorial-grid,.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:start}
.editorial-copy{color:#5f6b75;font-size:16px}.editorial-copy p:first-child{font-size:20px;color:#263342;margin-top:0}
.value-band{background:var(--navy);color:#fff}.value-band .section-title span{color:#bdcdd4}.value-copy{font-size:17px;color:#c3ced5;padding-top:42px}.value-copy p:first-child{font-size:22px;color:#fff}
.lifecycle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.lifecycle-grid article{padding:34px;min-height:210px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.lifecycle-grid h3,.principles-grid h3,.audience-grid h3,.purpose-grid h3{font-family:'Aptos',Arial,Helvetica,sans-serif;color:var(--navy);margin:0 0 12px}
.lifecycle-grid h3{font-size:24px}.lifecycle-grid p,.principles-grid p,.audience-grid p,.purpose-grid p{font-size:16px;color:#68747d;margin:0}
.about-why{background:#f7f9fa}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #d8e0e4;border-left:1px solid #d8e0e4}.principles-grid article{padding:34px;min-height:225px;border-right:1px solid #d8e0e4;border-bottom:1px solid #d8e0e4}.principles-grid h3{font-size:22px}
.audience-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #cbd5da;border-left:1px solid #cbd5da}.audience-grid article{padding:36px;min-height:190px;border-right:1px solid #cbd5da;border-bottom:1px solid #cbd5da}.audience-grid h3{font-size:23px}
.purpose-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.purpose-grid article{padding:45px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.purpose-grid h3{font-size:30px;line-height:1.2}
.promise{margin-top:70px;background:var(--navy2);color:#fff;padding:55px}.promise h2{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:clamp(34px,3.5vw,48px);line-height:1.12;margin:0}.promise h2 span{color:#bdcdd4}
@media(max-width:980px){.editorial-grid,.value-grid{grid-template-columns:1fr;gap:35px}.value-copy{padding-top:0}.lifecycle-grid,.principles-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.inner-hero{min-height:440px}.inner-hero-content{padding:70px 0}.inner-hero h1{font-size:44px}.inner-hero-content>p:last-child{font-size:16px}.lifecycle-grid,.principles-grid,.audience-grid,.purpose-grid{grid-template-columns:1fr}.promise{padding:35px 25px;margin-top:45px}}

/* =========================================================
   ABOUT V2 â€” concise editorial layout
   ========================================================= */
.about-v2-story { padding-top: 105px; padding-bottom: 105px; }
.about-media-grid { display:grid; grid-template-columns:1.02fr .98fr; gap:72px; align-items:center; }
.about-media { min-height:520px; position:relative; overflow:hidden; background:#e8eef0; }
.about-media img { width:100%; height:100%; min-height:520px; object-fit:cover; display:block; }
.about-media::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,20,49,0),rgba(7,20,49,.12)); pointer-events:none; }
.about-media-copy .section-title { margin-bottom:26px; }
.about-media-copy > p:not(.eyebrow) { font-size:16px; line-height:1.8; color:var(--text-soft); margin:0 0 18px; }
.about-highlight { margin-top:30px; padding:22px 24px; border-left:3px solid var(--navy); background:#f2f6f7; color:var(--navy); font-weight:700; line-height:1.65; }
.about-v2-value { background:var(--navy); color:#fff; }
.about-v2-value .value-grid { padding-bottom:54px; }
.about-v2-value .value-copy p { color:rgba(255,255,255,.76); }
.value-pillars { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.18); }
.value-pillars article { padding:36px 36px 8px 0; }
.value-pillars article + article { padding-left:36px; border-left:1px solid rgba(255,255,255,.18); }
.value-pillars h3 { color:#fff; font-size:20px; margin:0 0 12px; }
.value-pillars p { color:rgba(255,255,255,.68); font-size:17px; line-height:1.7; margin:0; }
.about-v2-purpose { background:#f2f6f7; }
.about-v2-purpose .purpose-grid { margin-bottom:0; }
.about-v2-purpose .purpose-grid article { background:#fff; }
.about-v2-promise { background:#fff; padding:95px 0; text-align:center; }
.about-v2-promise .eyebrow { justify-content:center; }
.about-v2-promise h2 { font-family:'Aptos',Arial,Helvetica,sans-serif; font-size:48px; line-height:1.08; letter-spacing:-.035em; color:var(--navy); margin:16px auto 0; max-width:880px; }
.about-v2-promise h2 span { color:var(--steel); }
@media (max-width:900px){
  .about-media-grid{grid-template-columns:1fr;gap:42px}.about-media{min-height:400px}.about-media img{min-height:400px}.value-pillars{grid-template-columns:1fr}.value-pillars article,.value-pillars article+article{padding:28px 0;border-left:0;border-top:1px solid rgba(255,255,255,.15)}.value-pillars article:first-child{border-top:0}.about-v2-promise h2{font-size:38px}
}
@media (max-width:600px){.about-v2-story{padding-top:72px;padding-bottom:72px}.about-media{min-height:300px}.about-media img{min-height:300px}.about-v2-promise{padding:72px 0}.about-v2-promise h2{font-size:34px}}
.about-media.image-placeholder { background:linear-gradient(135deg,#dbe4e7 0%,#edf2f3 55%,#b9c9cf 100%); }
.about-media.image-placeholder::before { content:"ABOUT IMAGE"; position:absolute; inset:0; display:grid; place-items:center; font-size:14px; font-weight:800; letter-spacing:.18em; color:#607783; z-index:1; }


/* ABOUT V3 â€” Vision & Mission cards */
.about-v3-purpose{background:#fff;}
.purpose-cards{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.purpose-card{min-height:330px;padding:50px;display:flex;flex-direction:column;justify-content:flex-end;}
.purpose-card h3{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:34px;line-height:1.14;letter-spacing:-.035em;margin:0 0 18px;}
.purpose-card p:last-child{font-size:16px;line-height:1.75;margin:0;max-width:500px;}
.purpose-card-vision{background:var(--navy);color:#fff;}
.purpose-card-vision h3{color:#fff;}
.purpose-card-vision p:last-child{color:#c7d2d9;}
.purpose-card-mission{background:#dbe5e9;color:var(--navy);}
.purpose-card-mission .eyebrow{color:#637883;}
.purpose-card-mission h3{color:var(--navy);}
.purpose-card-mission p:last-child{color:#4f6069;}
@media(max-width:760px){.purpose-cards{grid-template-columns:1fr}.purpose-card{min-height:280px;padding:36px}.purpose-card h3{font-size:30px}}

/* =========================================================
   SOLUTIONS PAGE
   ========================================================= */
.solutions-list { background:#fff; }
.solution-row { display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr); gap:70px; padding:64px 0; border-bottom:1px solid rgba(11,24,56,.11); scroll-margin-top:110px; }
.solution-row:first-child { padding-top:0; }
.solution-row:last-child { border-bottom:0; padding-bottom:0; }
.solution-row:nth-child(even) .solution-heading { order:2; }
.solution-row:nth-child(even) .solution-detail { order:1; }
.solution-heading h2 { margin:10px 0 0; font-family:'Aptos',Arial,Helvetica,sans-serif; font-size:clamp(30px,3vw,42px); line-height:1.08; color:var(--navy); }
.solution-heading h2 span { color:var(--steel); }
.solution-detail > p { margin:0 0 25px; font-size:16px; line-height:1.8; color:var(--text-soft); max-width:720px; }
.solution-capabilities { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; margin:0; padding:0; list-style:none; }
.solution-capabilities li { position:relative; padding:12px 0 12px 22px; border-top:1px solid rgba(11,24,56,.09); font-size:17px; line-height:1.45; color:var(--navy); font-weight:600; }
.solution-capabilities li::before { content:'â†—'; position:absolute; left:0; top:12px; color:var(--steel); font-size:13px; }
.solution-note { margin-top:26px !important; padding:18px 20px; border-left:3px solid var(--steel); background:#f5f7f8; color:var(--navy) !important; font-size:17px !important; }
@media (max-width: 800px) {
  .solution-row { grid-template-columns:1fr; gap:25px; padding:45px 0; }
  .solution-row:nth-child(even) .solution-heading, .solution-row:nth-child(even) .solution-detail { order:initial; }
}
@media (max-width: 520px) { .solution-capabilities { grid-template-columns:1fr; } }


/* =========================================================
   SOLUTIONS V2 â€” IMAGE LEFT / CONTENT RIGHT
   ========================================================= */
.solution-row-photo {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: stretch;
}

.solution-row-photo .solution-photo {
  min-height: 430px;
  overflow: hidden;
  background: #e9eef0;
}

.solution-row-photo .solution-photo img {
  width: 100%;
  height: 100%;
  min-height: 430px;
  display: block;
  object-fit: cover;
  transition: transform .55s ease;
}

.solution-row-photo .solution-photo:hover img {
  transform: scale(1.025);
}

.solution-row-photo .solution-content {
  order: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.solution-row-photo .solution-content h2 {
  margin: 10px 0 24px;
  font-family: 'Aptos', sans-serif;
  font-size: clamp(30px,3vw,42px);
  line-height: 1.08;
  color: var(--navy);
}

.solution-row-photo .solution-content h2 span {
  color: var(--steel);
}

.solution-row-photo .solution-content > p {
  margin: 0 0 25px;
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-soft);
  max-width: 720px;
}

.solution-row-photo .solution-content .solution-note {
  margin-top: 22px;
}

@media (max-width: 900px) {
  .solution-row-photo {
    grid-template-columns: 1fr;
  }

  .solution-row-photo .solution-photo,
  .solution-row-photo .solution-photo img {
    min-height: 300px;
  }

  .solution-row-photo .solution-content {
    order: initial;
  }
}


/* =========================================================
   CONTACT PAGE V1
   ========================================================= */
.contact-page .contact-hero {
  background: var(--navy);
  color: #fff;
}

.contact-page .contact-hero h1 {
  color: #fff;
}

.contact-page .contact-hero h1 span {
  color: var(--steel);
}

.contact-page .contact-hero .inner-hero-copy {
  color: rgba(255,255,255,.76);
  max-width: 760px;
}

.contact-main {
  padding: 100px 0;
  background: #fff;
}

.contact-grid {
  display: grid;
  grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  gap: 90px;
  align-items: start;
}

.contact-intro h2 {
  margin: 12px 0 24px;
  font-family: 'Aptos', sans-serif;
  font-size: clamp(34px,4vw,50px);
  line-height: 1.08;
  color: var(--navy);
}

.contact-intro > p {
  max-width: 570px;
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-soft);
}

.contact-detail-list {
  margin-top: 48px;
  border-top: 1px solid #dce3e6;
}

.contact-detail {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 25px;
  padding: 20px 0;
  border-bottom: 1px solid #dce3e6;
}

.contact-detail span {
  color: var(--navy);
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.contact-detail p {
  margin: 0;
  font-size: 16px;
  color: var(--text-soft);
}

.contact-form-wrap {
  padding: 45px;
  background: #f3f6f7;
  border: 1px solid #dce3e6;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.form-field {
  margin-bottom: 24px;
}

.form-field label {
  display: block;
  margin-bottom: 9px;
  color: var(--navy);
  font-size: 14px;
  font-weight: 800;
}

.form-field input,
.form-field select,
.form-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #cbd4d8;
  border-radius: 0;
  background: #fff;
  color: var(--navy);
  font: inherit;
  font-size: 16px;
  padding: 14px 17px;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.form-field textarea {
  resize: vertical;
  min-height: 145px;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
  border-color: var(--navy);
  box-shadow: 0 0 0 2px rgba(11,24,56,.06);
}

.contact-submit {
  border: 0;
  cursor: pointer;
  min-width: 190px;
  justify-content: space-between;
}

.contact-strip {
  padding: 70px 0;
  background: var(--navy);
  color: #fff;
}

.contact-strip-inner {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 80px;
  align-items: end;
}

.contact-strip h2 {
  margin: 10px 0 0;
  color: #fff;
  font-family: 'Aptos', sans-serif;
  font-size: clamp(30px,3.5vw,46px);
  line-height: 1.1;
}

.contact-strip-inner > p {
  margin: 0;
  max-width: 520px;
  font-size: 16px;
  line-height: 1.8;
  color: rgba(255,255,255,.75);
}

.eyebrow-light {
  color: rgba(255,255,255,.65);
}

@media (max-width: 900px) {
  .contact-main {
    padding: 70px 0;
  }

  .contact-grid,
  .contact-strip-inner {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  .contact-form-wrap {
    padding: 30px;
  }
}

@media (max-width: 600px) {
  .form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .contact-form-wrap {
    padding: 24px 20px;
  }

  .contact-detail {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}


/* Contact form status + honeypot */
.hp-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.form-alert {
  padding: 17px 18px;
  margin-bottom: 25px;
  font-size: 17px;
  line-height: 1.6;
}

.form-success {
  background: #eef5f1;
  border: 1px solid #b9d4c4;
  color: #24563a;
}

.form-error {
  background: #faf0f0;
  border: 1px solid #dfbcbc;
  color: #7b2929;
}


/* =========================================================
   INSIGHTS PAGE V1
   ========================================================= */
.insights-page .insights-hero {
  background: #f3f6f7;
}

.insights-page .insights-hero h1 {
  color: var(--navy);
}

.insights-page .insights-hero h1 span {
  color: var(--steel);
}

.insights-empty {
  padding: 105px 0;
  background: #fff;
}

.insights-empty-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(360px,.78fr);
  gap: 110px;
  align-items: start;
}

.insights-empty-copy h2 {
  margin: 12px 0 26px;
  max-width: 650px;
  font-family: 'Aptos', sans-serif;
  font-size: clamp(36px,4vw,50px);
  line-height: 1.08;
  color: var(--navy);
}

.insights-empty-copy > p {
  max-width: 650px;
  margin: 0 0 18px;
  font-size: 16px;
  line-height: 1.8;
  color: var(--text-soft);
}

.insights-topics {
  border-top: 3px solid var(--navy);
}

.topics-label {
  margin: 0;
  padding: 20px 0 16px;
  color: var(--navy);
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.insights-topics a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding: 19px 0;
  border-top: 1px solid #dce3e6;
  color: var(--navy);
  font-size: 16px;
  font-weight: 700;
  transition: padding .2s ease, color .2s ease;
}

.insights-topics a:hover {
  padding-left: 8px;
  color: var(--steel);
}

.insights-topics b {
  font-size: 18px;
  font-weight: 500;
}

.insights-cta {
  padding: 75px 0;
  background: var(--navy);
  color: #fff;
}

.insights-cta-inner {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 60px;
}

.insights-cta h2 {
  margin: 10px 0 0;
  max-width: 760px;
  color: #fff;
  font-family: 'Aptos', sans-serif;
  font-size: clamp(30px,3.5vw,46px);
  line-height: 1.1;
}

@media (max-width: 900px) {
  .insights-empty {
    padding: 75px 0;
  }

  .insights-empty-grid {
    grid-template-columns: 1fr;
    gap: 55px;
  }

  .insights-cta-inner {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* =========================================================
   HORIZONTAL OVERFLOW FIX
   ========================================================= */

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

body {
    position: relative;
}

img,
video,
svg {
    max-width: 100%;
}

/* Local Font Awesome binding only */
@font-face {
    font-family: "Konexnz FA Solid";
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url("../fonts/fa-solid-900.woff2") format("woff2");
}

.footer-contact-icon,
.card-icon {
    font-family: "Konexnz FA Solid" !important;
    font-style: normal;
    font-weight: 900;
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}


/* Footer contact icon alignment only */
.footer-contact-item{
    display:grid;
    grid-template-columns:16px minmax(0,1fr);
    column-gap:8px;
    align-items:start;
    margin:0 0 9px;
}
.footer-contact-item:last-child{
    margin-bottom:0;
}
.footer-contact-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:16px;
    height:20px;
    margin:0;
    padding:0;
    line-height:1;
    align-self:start;
}
.footer-contact-item > a,
.footer-contact-item > span{
    display:block;
    margin:0 !important;
    padding:0;
    line-height:20px;
}


/* Final typography refinements */
h1, h2, h3, h4, h5, h6{
    font-weight:600;
}

/* Slightly more breathing room between footer contact details */
.footer-contact-item{
    margin-bottom:14px;
}
.footer-contact-item:last-child{
    margin-bottom:0;
}


/* =========================================================
   FINAL CLIENT REVIEW UPDATES — OCT 2026
   Extends the existing Konexnz visual system.
   ========================================================= */

.eyebrow{
    font-size:14px;
    font-weight:500;
    letter-spacing:.17em;
    color:#334655;
    margin-bottom:20px;
}
.eyebrow.light,.eyebrow-light{color:#cbd7de;}

.featured-card{box-shadow:inset 0 3px 0 var(--navy);}
.featured-tag{
    position:absolute;left:28px;top:25px;
    text-transform:uppercase;letter-spacing:.12em;
    font-size:10px;font-weight:500;color:var(--navy);
}
.featured-card .card-icon{margin-top:58px;}
.solution-card:hover .featured-tag{color:#c8d2da;}

.priority-solutions{
    background:#fff;
    color:var(--ink);
    padding-top:100px;
    padding-bottom:100px;
}
.priority-intro{
    display:grid;
    grid-template-columns:1.2fr .6fr;
    gap:100px;
    align-items:end;
    margin-bottom:55px;
}
.priority-intro .eyebrow{
    grid-column:1/-1;
    margin-bottom:-76px;
}
.priority-intro h2{
    font-family:'Aptos',Arial,Helvetica,sans-serif;
    font-size:clamp(38px,3.7vw,50px);
    line-height:1.08;
    letter-spacing:-.045em;
    margin:0;
    color:var(--ink);
}
.priority-intro h2 span{color:#899aa2;}
.priority-intro>p:last-child{
    margin:0 0 5px;
    color:#65717b;
    font-size:16px;
}
.priority-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    border-top:1px solid #ccd5d9;
    border-left:1px solid #ccd5d9;
}
.priority-card{
    position:relative;
    min-height:470px;
    overflow:hidden;
    border-right:1px solid #ccd5d9;
    border-bottom:1px solid #ccd5d9;
    background:var(--navy);
    color:#fff;
}
.priority-card>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.48;
    transition:transform .45s ease,opacity .35s ease;
}
.priority-card:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(8,19,47,.08) 15%,rgba(8,19,47,.92) 100%);
}
.priority-card:hover>img{
    transform:scale(1.025);
    opacity:.58;
}
.priority-content{
    position:absolute;
    z-index:2;
    left:34px;
    right:34px;
    bottom:34px;
}
.priority-label{
    display:block;
    position:static;
    margin-bottom:18px;
    text-transform:uppercase;
    letter-spacing:.14em;
    font-size:11px;
    font-weight:500;
    color:#d2dde2;
}
.priority-card h3{
    font-family:'Aptos',Arial,Helvetica,sans-serif;
    font-size:clamp(28px,2.5vw,38px);
    line-height:1.08;
    letter-spacing:-.025em;
    margin:0 0 16px;
    color:#fff;
}
.priority-card p{
    color:#d3dce2;
    margin:0 0 22px;
    max-width:500px;
    font-size:16px;
}
.priority-link{
    color:#fff;
    font-weight:500;
    font-size:15px;
}

.solution-subheading{
    font-family:'Aptos',Arial,Helvetica,sans-serif;
    font-size:23px;line-height:1.25;color:var(--navy);margin:34px 0 12px;
}
.security-solution .solution-detail>p{max-width:none;}

.testimonials{background:#f7f9fa;}
.testimonial-grid{
    display:grid;grid-template-columns:repeat(3,1fr);
    border-top:1px solid var(--line);border-left:1px solid var(--line);
}
.testimonial-placeholder{
    min-height:165px;padding:28px;
    border-right:1px solid var(--line);border-bottom:1px solid var(--line);
    background:#fff;display:flex;flex-direction:column;justify-content:space-between;
}
.testimonial-placeholder span{font-size:12px;letter-spacing:.14em;color:#87949c;}
.testimonial-placeholder p{font-size:17px;font-weight:600;color:#7b8790;margin:0;}

@media(max-width:800px){
    .eyebrow{font-size:14px;}
    .priority-intro{grid-template-columns:1fr;gap:20px;}
    .priority-intro .eyebrow{grid-column:auto;margin-bottom:0;}
    .priority-grid,.testimonial-grid{grid-template-columns:1fr;}
    .priority-card{min-height:390px;}
    .priority-content{left:24px;right:24px;bottom:26px;}
    .featured-tag{left:24px;}
    .solution-subheading{font-size:20px;}
}

/* Sample Insights content for client review */
.insights-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);}
.insight-card{min-height:330px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;}
.insight-card>span{font-size:11px;font-weight:500;letter-spacing:.14em;color:#65717b;margin-bottom:36px;}
.insight-card h3{font-family:'Aptos',Arial,Helvetica,sans-serif;font-size:25px;line-height:1.15;margin:0 0 18px;color:var(--navy);}
.insight-card p{color:#65717b;margin:0 0 28px;}
.insight-card a{margin-top:auto;color:var(--navy);font-weight:500;}
@media(max-width:800px){.insights-grid{grid-template-columns:1fr}.insight-card{min-height:280px}}

/* Final requested fixes */
.solution-detail ul,.solution-capabilities{list-style:none;padding-left:0}
.solution-detail li,.solution-capabilities li{position:relative;padding-left:18px}
.solution-detail li::before,.solution-capabilities li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;border-radius:50%;background:#8da5b0}

.footer-contact a[href^="tel:"]::before,a[href^="tel:"].footer-link::before{content:"☎";margin-right:8px}
.footer-contact a[href^="mailto:"]::before,a[href^="mailto:"].footer-link::before{content:"✉";margin-right:8px}

.testimonial-marquee{overflow:hidden;width:100%}
.testimonial-track{display:flex;width:max-content;animation:konexnz-testimonials 34s linear infinite}
.testimonial-marquee:hover .testimonial-track{animation-play-state:paused}
.testimonial-card{width:360px;min-height:250px;flex:0 0 auto;padding:28px;margin-right:18px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}
.testimonial-rating{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.stars{color:#f4aa00;letter-spacing:2px;font-size:18px}
.google-review{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:Arial,sans-serif;font-weight:700;font-size:18px;color:#4285f4;border:1px solid #dce3e7;background:#fff}
.testimonial-card p{font-size:16px;line-height:1.55;margin:0 0 26px;color:#45535d}
.testimonial-card strong{margin-top:auto;color:var(--navy);font-size:15px}
.testimonial-card small{display:block;color:#71808a;margin-top:5px}
@keyframes konexnz-testimonials{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 27px))}}
@media(prefers-reduced-motion:reduce){.testimonial-track{animation:none;flex-wrap:wrap;width:auto}}

@media(max-width:800px){.testimonial-card{width:300px}}

/* Dependency-free footer contact icons */
.site-footer a[href^="tel:"],
.site-footer a[href^="mailto:"],
.site-footer .footer-address,
.site-footer address{
    position:relative;
    padding-left:24px;
}
.site-footer a[href^="tel:"]::before,
.site-footer a[href^="mailto:"]::before,
.site-footer .footer-address::before,
.site-footer address::before{
    content:"";
    position:absolute;
    left:0;
    top:.15em;
    width:14px;
    height:14px;
    background-repeat:no-repeat;
    background-position:center;
    background-size:14px 14px;
}
.site-footer a[href^="tel:"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d1b42' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
}
.site-footer a[href^="mailto:"]::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d1b42' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E");
}
.site-footer .footer-address::before,
.site-footer address::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d1b42' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 12-9 12S3 17 3 10a9 9 0 1 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}

/* Solutions alignment corrections */
.solution-capabilities li{
    padding:12px 8px 12px 17px;
}
.solution-capabilities li::before{
    content:"";
    width:4px;
    height:4px;
    left:1px;
    top:50%;
    transform:translateY(-50%);
    border-radius:50%;
    background:var(--steel);
}



/* Access Control: full-width row beneath CCTV, aligned to the far left */
.security-solution .access-control-full{
    grid-column:1 / -1;
    width:100%;
    margin-top:8px;
    padding-top:34px;
    border-top:1px solid rgba(11,24,56,.11);
}
.security-solution .access-control-block{
    width:100%;
    margin:0;
}
.security-solution .access-control-heading{
    margin:0 0 10px;
}
.security-solution .access-control-block > p{
    max-width:760px;
    margin:0 0 18px;
    font-size:16px;
    line-height:1.8;
    color:var(--text-soft);
}
.security-solution .access-control-block .solution-capabilities{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 28px;
}
.security-solution .access-control-full > .solution-note{
    margin-top:22px;
    max-width:none;
}
@media(max-width:520px){
    .security-solution .access-control-block .solution-capabilities{
        grid-template-columns:1fr;
    }
}


/* Font Awesome glyph binding */
.kx-fa{
    font-family:"Konexnz FA Solid" !important;
    font-style:normal;
    font-weight:900 !important;
    font-variant:normal;
    line-height:1;
    text-rendering:auto;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
