
:root {
  --red:#b20f17; --red-dark:#8f0d13; --ink:#13171d; --muted:#5d6672;
  --soft:#f5f6f8; --line:#e2e5e9; --white:#fff; --max:1180px;
  --shadow:0 18px 45px rgba(18,24,32,.10); --radius:22px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55}
img{max-width:100%;display:block} a{color:inherit;text-decoration:none} button,input,textarea,select{font:inherit}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.eyebrow{font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--red);font-size:.78rem}.section-head{max-width:760px;margin:0 auto 42px;text-align:center}.section-head h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.08;margin:.4rem 0 1rem}.section-head p{color:var(--muted);font-size:1.05rem;margin:0}.section{padding:92px 0}.soft{background:linear-gradient(180deg,#fff,#f7f8fa)}
.skip-link{position:absolute;left:-9999px;top:10px;z-index:1000;background:#fff;padding:12px 16px}.skip-link:focus{left:10px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,229,233,.9)}.nav{height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:178px;height:auto}.nav-links{display:flex;align-items:center;gap:27px;margin-left:auto;font-weight:650;font-size:.94rem}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--red);transform:scaleX(0);transition:.25s}.nav-links a:hover:after,.nav-links a:focus-visible:after,.nav-links a.active:after{transform:scaleX(1)}.header-actions{display:flex;gap:10px;margin-left:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:10px;padding:13px 19px;font-weight:800;transition:.25s;cursor:pointer}.btn-primary{background:var(--red);color:#fff;box-shadow:0 8px 20px rgba(178,15,23,.2)}.btn-primary:hover{background:var(--red-dark);transform:translateY(-2px)}.btn-outline{border-color:#c9ced4;background:#fff}.btn-outline:hover{border-color:var(--red);color:var(--red);transform:translateY(-2px)}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;font-size:1.6rem}
.hero{overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fff 58%,#f5f6f8 100%);padding:54px 0 78px}.hero-grid{min-height:560px;display:grid;grid-template-columns:minmax(0,1fr) minmax(500px,1.08fr);gap:48px;align-items:stretch}.hero-copy{padding:0;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.hero-copy h1{font-size:clamp(3rem,5.1vw,5rem);line-height:.99;letter-spacing:-.055em;margin:14px 0 23px;max-width:690px}.hero-copy h1 span{color:var(--red)}.hero-copy p{font-size:1.06rem;color:#36404b;max-width:620px;margin:0 0 25px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.hero-contact{display:grid;gap:7px;font-weight:650;font-size:.92rem}.hero-contact span{display:flex;gap:9px;align-items:center}.hero-media{height:auto;min-height:560px;min-width:0;align-self:stretch;position:relative;overflow:hidden;isolation:isolate;border-radius:26px;background:#eef0f2;box-shadow:0 24px 62px rgba(18,24,32,.16);border:1px solid rgba(210,215,221,.9)}.hero-media:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,transparent 56%,rgba(10,14,20,.58) 100%)}.hero-slide{position:absolute;inset:0;margin:0;opacity:0;z-index:0;transition:opacity .9s ease}.hero-slide.is-active{opacity:1;z-index:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:66% center;transform:scale(1.005);transition:transform 6.2s ease}.hero-slide.is-active img{transform:scale(1.045)}.hero-slide:nth-child(2) img{object-position:64% center}.hero-slide:nth-child(3) img{object-position:68% center}.hero-slide:nth-child(4) img{object-position:69% center}.hero-caption{position:absolute;left:24px;right:88px;bottom:22px;z-index:4;color:#fff;display:grid;gap:2px;text-shadow:0 1px 8px rgba(0,0,0,.25)}.hero-caption-kicker{font-size:.68rem;font-weight:850;letter-spacing:.13em;color:#ffdadd}.hero-caption strong{font-size:1.18rem;line-height:1.2}.hero-caption>span:last-child{font-size:.84rem;color:rgba(255,255,255,.9);line-height:1.35}.hero-dots{position:absolute;right:22px;bottom:26px;z-index:5;display:flex;gap:8px}.hero-dot{width:9px;height:9px;border-radius:999px;border:1px solid rgba(255,255,255,.85);background:rgba(255,255,255,.32);padding:0;cursor:pointer;transition:.25s}.hero-dot.is-active{width:25px;background:#fff}.hero-dot:focus-visible{outline:3px solid rgba(255,255,255,.55);outline-offset:3px}
.metrics-wrap{position:relative;margin-top:-38px;z-index:5}.metrics{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.metric{padding:34px 35px;display:flex;align-items:center;gap:20px;position:relative}.metric+ .metric{border-left:1px solid var(--line)}.metric-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#fff1f2;color:var(--red);font-size:1.8rem}.metric-label{color:var(--red);font-size:.77rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.metric-number{font-size:clamp(2.5rem,5vw,4.4rem);line-height:1;font-weight:850;letter-spacing:-.04em;margin:3px 0}.metric-desc{color:var(--muted);font-size:.88rem}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 28px rgba(25,31,39,.07);transition:.3s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.service-image{height:185px;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.service-card:hover img{transform:scale(1.05)}.service-body{padding:25px}.service-icon{width:52px;height:52px;margin-top:-50px;margin-bottom:18px;border:5px solid #fff;border-radius:50%;background:var(--red);display:grid;place-items:center;color:#fff;font-weight:900;position:relative}.service-body h3{font-size:1.25rem;line-height:1.2;margin:0 0 12px}.service-body p{color:var(--muted);font-size:.94rem;min-height:88px}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--red);font-weight:800;margin-top:8px}.text-link:hover{gap:13px}
.why-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:68px;align-items:center}.why-image{position:relative}.why-image img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:58% center;border-radius:var(--radius);box-shadow:var(--shadow)}.support-card{position:absolute;left:26px;bottom:26px;background:#fff;padding:22px 24px;border-radius:16px;box-shadow:var(--shadow);width:min(245px,calc(100% - 52px));max-width:none}.support-card strong{font-size:1.7rem;color:var(--red);display:block}.support-card span{color:var(--muted);font-size:.9rem}.why-copy h2{font-size:clamp(2.3rem,4.2vw,4rem);line-height:1.02;letter-spacing:-.045em;margin:8px 0 20px}.why-copy>p{color:var(--muted);font-size:1.05rem}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px 28px;margin:30px 0}.feature{display:grid;grid-template-columns:46px 1fr;gap:14px}.feature-icon{width:46px;height:46px;border-radius:12px;background:#fff1f2;color:var(--red);display:grid;place-items:center;font-weight:900}.feature h3{font-size:1rem;margin:0 0 5px}.feature p{font-size:.9rem;color:var(--muted);margin:0}
.process{background:#15191f;color:#fff;overflow:hidden;position:relative}.process:before{content:"";position:absolute;inset:auto -10% -55% 40%;height:420px;background:radial-gradient(circle,rgba(178,15,23,.28),transparent 66%)}.process .section-head p{color:#bdc3ca}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative}.process-grid:before{content:"";position:absolute;left:8%;right:8%;top:31px;height:2px;background:linear-gradient(90deg,var(--red),#ef646b);transform-origin:left;animation:drawLine 1.2s ease both}.process-step{text-align:center;position:relative}.step-num{width:64px;height:64px;border-radius:50%;background:#fff;color:var(--red);display:grid;place-items:center;font-weight:900;font-size:1.2rem;margin:0 auto 18px;box-shadow:0 0 0 8px rgba(255,255,255,.07)}.process-step h3{font-size:1rem;margin:0 0 7px}.process-step p{font-size:.88rem;color:#bfc5cc;margin:0}
.industries-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.industry{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff;display:flex;gap:14px;align-items:center;font-weight:750;transition:.25s}.industry:hover{border-color:#e6a7aa;transform:translateY(-3px)}.industry span:first-child{color:var(--red);font-size:1.3rem}
.case-shell{position:relative}.case-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 20px}.case-track::-webkit-scrollbar{display:none}.case-card{scroll-snap-align:start;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 12px 28px rgba(25,31,39,.07)}.case-card img{width:100%;height:255px;object-fit:cover;object-position:center center}.case-body{padding:24px}.case-tag{font-size:.72rem;color:var(--red);font-weight:850;letter-spacing:.08em;text-transform:uppercase}.case-body h3{font-size:1.3rem;line-height:1.25;margin:8px 0 12px}.case-body p{color:var(--muted);margin:0 0 14px}.slider-controls{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.round-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:1.2rem}.round-btn:hover{border-color:var(--red);color:var(--red)}
.partner-section{background:#11151a;color:#fff;padding:60px 0;overflow:hidden}.partner-section .section-head{margin-bottom:26px}.partner-section .section-head p{color:#bcc2c9}.logo-viewport{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.logo-track{width:max-content;display:flex;align-items:center;gap:26px;animation:logoSlide 26s linear infinite}.logo-viewport:hover .logo-track,.logo-viewport:focus-within .logo-track{animation-play-state:paused}.logo-tile{width:190px;height:90px;border-radius:14px;background:#fff;padding:15px 22px;display:flex;align-items:center;justify-content:center;flex:none}.logo-tile img{max-height:58px;max-width:145px;object-fit:contain}.logo-note{text-align:center;color:#9ca4ad;font-size:.82rem;margin:18px 0 0}
.faq-grid{max-width:900px;margin:auto}.faq-item{border-bottom:1px solid var(--line)}.faq-button{width:100%;display:flex;justify-content:space-between;gap:20px;text-align:left;background:none;border:0;padding:22px 0;font-weight:800;font-size:1.05rem;cursor:pointer}.faq-button span:last-child{color:var(--red);font-size:1.3rem}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.faq-answer>div{overflow:hidden}.faq-answer p{color:var(--muted);margin:0 0 22px}.faq-item.open .faq-answer{grid-template-rows:1fr}
.cta{background:linear-gradient(110deg,#a80e15,#d21b25);color:#fff;padding:58px 0}.cta-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:40px}.cta h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;margin:0 0 12px}.cta p{margin:0;color:#ffe9ea}.cta-actions{display:flex;justify-content:flex-end;gap:12px}.cta .btn-outline{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}.cta .btn-primary{background:#fff;color:var(--red)}
footer{background:#0d1014;color:#c7ccd2;padding:58px 0 26px}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:42px}.footer-brand img{width:185px;filter:brightness(0) invert(1)}.footer-brand p{max-width:340px;color:#aeb5bd}.footer-col h3{font-size:.9rem;color:#fff;text-transform:uppercase;letter-spacing:.08em}.footer-col a,.footer-col span{display:block;color:#aeb5bd;margin:9px 0}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid #272c33;margin-top:36px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:.84rem;color:#8f98a3}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}
@keyframes heroZoom{to{transform:scale(1.035)}}@keyframes logoSlide{to{transform:translateX(-50%)}}@keyframes drawLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (max-width:1050px){.nav-links,.header-actions{display:none}.menu-toggle{display:block}.nav.open{height:auto;align-items:flex-start;flex-wrap:wrap;padding:18px 0}.nav.open .nav-links{display:flex;width:100%;flex-direction:column;align-items:flex-start;padding:18px 0}.nav.open .header-actions{display:flex;width:100%;padding-bottom:18px}.hero{padding:40px 0 62px}.hero-grid{grid-template-columns:1fr;min-height:auto;gap:34px;align-items:center}.hero-copy{padding:28px 0 0}.hero-media{height:430px;min-height:0;max-width:820px;width:100%;margin:0 auto}.metrics-wrap{margin-top:-24px}.service-grid{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:1fr;gap:42px}.process-grid{grid-template-columns:1fr}.process-grid:before{display:none}.process-step{text-align:left;display:grid;grid-template-columns:64px 1fr;gap:18px}.step-num{grid-row:1/3;margin:0}.industries-grid{grid-template-columns:repeat(2,1fr)}.case-track{grid-auto-columns:calc((100% - 20px)/2)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.support-card{left:16px;bottom:16px;padding:17px 18px;width:min(230px,calc(100% - 32px))}.support-card strong{font-size:1.45rem}.container{width:min(100% - 28px,var(--max))}.section{padding:68px 0}.brand img{width:145px}.nav{height:68px}.hero{padding:30px 0 50px}.hero-copy{padding:12px 0 0}.hero-copy h1{font-size:3.05rem}.hero-media{height:305px;border-radius:20px}.hero-caption{left:18px;right:64px;bottom:17px}.hero-caption strong{font-size:1rem}.hero-caption>span:last-child{font-size:.76rem}.hero-dots{right:16px;bottom:20px;gap:6px}.hero-dot{width:8px;height:8px}.hero-dot.is-active{width:20px}.metrics{grid-template-columns:1fr}.metric+.metric{border-left:0;border-top:1px solid var(--line)}.metric{padding:24px}.service-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.industries-grid{grid-template-columns:1fr}.case-track{grid-auto-columns:86%}.cta-grid{grid-template-columns:1fr}.cta-actions{justify-content:flex-start;flex-wrap:wrap}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.header-actions{flex-direction:column}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}.logo-tile{width:160px;height:80px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.logo-track{flex-wrap:wrap;width:auto;justify-content:center}.logo-viewport{mask-image:none}}


/* About page */
.about-hero{padding:64px 0 78px;background:linear-gradient(135deg,#fff 0%,#fff 62%,#f4f5f7 100%);overflow:hidden}.about-hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);gap:56px;align-items:center}.about-hero-copy h1{font-size:clamp(3rem,5vw,5.1rem);line-height:.99;letter-spacing:-.055em;margin:14px 0 24px}.about-hero-copy h1 span{color:var(--red)}.about-hero-copy p{font-size:1.08rem;color:#37414c;max-width:610px;margin:0 0 27px}.about-hero-image{height:510px;border-radius:26px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#eef0f2}.about-hero-image img{width:100%;height:100%;object-fit:cover;object-position:69% center;transition:transform 7s ease}.about-hero-image.in img{transform:scale(1.035)}
.about-purpose{position:relative;margin-top:-26px;z-index:3}.purpose-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.purpose-card{display:grid;grid-template-columns:72px 1fr;gap:22px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 16px 38px rgba(18,24,32,.08)}.purpose-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;color:var(--red);font-size:2rem;font-weight:900}.purpose-card h2{font-size:1.45rem;line-height:1.18;margin:6px 0 10px}.purpose-card p{color:var(--muted);margin:0}
.story-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.story-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.story-copy h2{font-size:clamp(2.35rem,4.2vw,4rem);line-height:1.04;letter-spacing:-.045em;margin:8px 0 22px}.story-copy p{color:var(--muted);font-size:1.02rem}
.about-metrics-section{background:#12161b;color:#fff;padding:68px 0;position:relative;overflow:hidden}.about-metrics-section:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-140px;bottom:-260px;background:radial-gradient(circle,rgba(178,15,23,.34),transparent 68%)}.about-metrics{display:grid;grid-template-columns:repeat(3,1fr);position:relative;z-index:1}.about-metric{text-align:center;padding:8px 44px}.about-metric+.about-metric{border-left:1px solid #343a42}.about-metric-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:#fff;color:var(--red);font-size:1.5rem;font-weight:900}.about-metric-number{font-size:clamp(3rem,6vw,5.3rem);line-height:1;font-weight:900;letter-spacing:-.055em}.about-metric-label{color:#ff7f85;font-size:.77rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em;margin-top:9px}.about-metric p{color:#bdc4cb;max-width:300px;margin:9px auto 0;font-size:.9rem}
.values-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.value-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:27px 22px;min-height:245px;text-align:center;transition:.28s}.value-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#e8b6b9}.value-icon{width:62px;height:62px;margin:0 auto 17px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;color:var(--red);font-weight:900;font-size:1.45rem}.value-card h3{font-size:1.05rem;margin:0 0 10px}.value-card p{font-size:.9rem;color:var(--muted);margin:0}
.journey-section{overflow:hidden}.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:26px;position:relative;padding-top:38px}.timeline:before{content:"";position:absolute;top:75px;left:7%;right:7%;height:3px;background:linear-gradient(90deg,var(--red),#d55b61,#b7bdc4);transform-origin:left;animation:drawLine 1.2s ease both}.timeline-item{position:relative;padding-top:60px}.timeline-year{font-weight:900;color:var(--red);font-size:.84rem;letter-spacing:.08em;text-transform:uppercase}.timeline-dot{position:absolute;top:29px;left:0;width:18px;height:18px;border-radius:50%;background:var(--red);border:5px solid #fff;box-shadow:0 0 0 2px var(--red);z-index:2}.timeline-item h3{font-size:1rem;margin:8px 0}.timeline-item p{font-size:.88rem;color:var(--muted);margin:0}.about-partners{padding-top:74px}
.community-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}.community-copy h2{font-size:clamp(2.25rem,4vw,3.7rem);line-height:1.04;letter-spacing:-.04em;margin:8px 0 20px}.community-copy p{color:var(--muted)}.community-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.community-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 22px;box-shadow:0 10px 26px rgba(25,31,39,.05)}.community-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#fff1f2;color:var(--red);font-size:1.45rem;font-weight:900}.community-card h3{font-size:1.03rem;margin:18px 0 9px}.community-card p{font-size:.88rem;color:var(--muted);margin:0}
@media (max-width:1050px){.about-hero-grid{grid-template-columns:1fr;gap:34px}.about-hero-image{height:430px;max-width:860px;width:100%;margin:auto}.purpose-grid{grid-template-columns:1fr}.story-grid{grid-template-columns:1fr;gap:40px}.values-grid{grid-template-columns:repeat(3,1fr)}.timeline{grid-template-columns:1fr;padding:0 0 0 32px}.timeline:before{left:8px;right:auto;top:12px;bottom:12px;width:3px;height:auto;transform-origin:top}.timeline-item{padding:0 0 25px 22px}.timeline-dot{top:4px;left:-32px}.community-grid{grid-template-columns:1fr}.community-cards{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.about-hero{padding:36px 0 58px}.about-hero-copy h1{font-size:3.05rem}.about-hero-image{height:310px;border-radius:20px}.purpose-card{grid-template-columns:1fr;padding:24px}.purpose-icon{width:58px;height:58px}.about-metrics{grid-template-columns:1fr}.about-metric{padding:28px}.about-metric+.about-metric{border-left:0;border-top:1px solid #343a42}.values-grid{grid-template-columns:1fr}.value-card{min-height:0}.community-cards{grid-template-columns:1fr}}


/* Services overview and service detail pages */
.services-hero,.service-page-hero{padding:64px 0 82px;background:linear-gradient(135deg,#fff 0%,#fff 61%,#f4f6f8 100%);overflow:hidden}.services-hero-grid,.service-page-hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:56px;align-items:center}.services-hero-copy h1,.service-page-hero-copy h1{font-size:clamp(3rem,5.2vw,5.15rem);line-height:.99;letter-spacing:-.055em;margin:14px 0 24px}.services-hero-copy h1 span,.service-page-hero-copy h1 span{color:var(--red)}.services-hero-copy p,.service-page-hero-copy p{font-size:1.08rem;color:#37414c;max-width:625px;margin:0 0 27px}.services-hero-image,.service-page-hero-image{height:510px;border-radius:26px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#eef0f2;position:relative}.services-hero-image img,.service-page-hero-image>img{width:100%;height:100%;object-fit:cover;object-position:65% center;transition:transform 7s ease}.services-hero-image.in img,.service-page-hero-image.in>img{transform:scale(1.035)}
.services-proof{position:relative;margin-top:-34px;z-index:4}.services-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#fff;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.proof-item{padding:28px 25px;display:grid;gap:3px}.proof-item+.proof-item{border-left:1px solid var(--line)}.proof-item strong{font-size:1.65rem;color:var(--red);line-height:1}.proof-item span{font-size:.88rem;color:var(--muted)}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.service-detail-card{display:grid;grid-template-columns:42% 58%;min-height:390px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 14px 32px rgba(25,31,39,.06);transition:.3s}.service-detail-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-detail-card>img{width:100%;height:100%;object-fit:cover}.service-detail-content{padding:31px 30px}.service-detail-number{color:var(--red);font-weight:900;letter-spacing:.11em;font-size:.78rem}.service-detail-content h3{font-size:1.55rem;line-height:1.14;margin:7px 0 12px}.service-detail-content p{color:var(--muted);margin:0 0 15px}.service-detail-content ul{padding-left:18px;color:#39424c;font-size:.9rem}.service-detail-content li{margin:7px 0}
.engagement-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.engagement-card{border:1px solid var(--line);border-radius:18px;padding:30px 24px;background:#fff;min-height:280px;transition:.28s}.engagement-card:hover{transform:translateY(-5px);border-color:#e6afb2;box-shadow:var(--shadow)}.engagement-icon{width:56px;height:56px;border-radius:15px;background:#fff1f2;color:var(--red);display:grid;place-items:center;font-weight:900;font-size:1.2rem}.engagement-card h3{font-size:1.15rem;margin:19px 0 10px}.engagement-card p{color:var(--muted);font-size:.92rem;margin:0}
.service-process,.service-delivery{background:#14191f;color:#fff;padding:90px 0;position:relative;overflow:hidden}.service-process:after,.service-delivery:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-160px;bottom:-260px;background:radial-gradient(circle,rgba(178,15,23,.34),transparent 68%)}.service-process .section-head p,.service-delivery .section-head p{color:#bdc4cb}.service-process-grid,.delivery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:17px;position:relative;z-index:1}.service-process-step,.delivery-step{padding:24px 17px;text-align:center}.service-process-step span,.delivery-step span{width:58px;height:58px;border-radius:50%;background:#fff;color:var(--red);font-weight:900;display:grid;place-items:center;margin:0 auto 18px}.service-process-step h3,.delivery-step h3{font-size:1rem;margin:0 0 8px}.service-process-step p,.delivery-step p{color:#bdc4cb;font-size:.87rem;margin:0}
.services-choice-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:64px;align-items:center}.services-choice-copy h2{font-size:clamp(2.3rem,4.1vw,3.85rem);line-height:1.03;letter-spacing:-.045em;margin:8px 0 20px}.services-choice-copy>p{color:var(--muted);font-size:1.02rem}.services-choice-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.check-list{list-style:none;padding:0;margin:25px 0}.check-list li{position:relative;padding-left:29px;margin:12px 0;color:#39424c}.check-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--red);font-weight:900}.warning-list li:before{content:"!";width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;font-size:.72rem;top:2px}
.breadcrumb{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:.85rem;margin-bottom:17px}.breadcrumb a{color:var(--red);font-weight:750}.service-page-hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(10,14,20,.62));z-index:1}.service-hero-badge{position:absolute;left:24px;right:24px;bottom:22px;z-index:2;color:#fff;display:grid;gap:4px}.service-hero-badge strong{font-size:1.25rem}.service-hero-badge span{font-size:.88rem;color:#e8eaed}.service-benefit-strip{position:relative;margin-top:-31px;z-index:4}.service-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.service-benefit-grid article{padding:27px 25px;display:grid;gap:4px}.service-benefit-grid article+article{border-left:1px solid var(--line)}.service-benefit-grid strong{color:var(--red);font-size:1.05rem}.service-benefit-grid span{font-size:.86rem;color:var(--muted)}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.capability-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;min-height:235px;transition:.28s}.capability-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#e6afb2}.capability-icon{width:50px;height:50px;border-radius:14px;background:#fff1f2;color:var(--red);display:grid;place-items:center;font-weight:900}.capability-card h3{font-size:1.14rem;line-height:1.2;margin:18px 0 10px}.capability-card p{color:var(--muted);font-size:.91rem;margin:0}
.challenge-outcome-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.challenge-panel,.outcome-panel{padding:42px;border-radius:22px;border:1px solid var(--line)}.challenge-panel{background:#fff}.outcome-panel{background:linear-gradient(135deg,#11161b,#1d232a);color:#fff}.challenge-panel h2,.outcome-panel h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.05;letter-spacing:-.04em;margin:8px 0 20px}.outcome-panel .check-list li{color:#d7dce2}.outcome-panel .eyebrow{color:#ff777e}.featured-case-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center}.featured-case-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.featured-case-copy h2{font-size:clamp(2.2rem,4vw,3.7rem);line-height:1.04;letter-spacing:-.04em;margin:8px 0 19px}.featured-case-copy>p{color:var(--muted)}.case-outcomes{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.case-outcomes span{border:1px solid #e4b6b9;background:#fff1f2;color:#8d1117;border-radius:999px;padding:8px 12px;font-weight:750;font-size:.82rem}.scenario-note{font-size:.78rem!important;font-style:italic;margin-top:16px!important}
@media (max-width:1050px){.services-hero-grid,.service-page-hero-grid{grid-template-columns:1fr;gap:34px}.services-hero-image,.service-page-hero-image{height:430px;max-width:860px;width:100%;margin:auto}.services-proof-grid,.service-benefit-grid{grid-template-columns:repeat(2,1fr)}.proof-item:nth-child(3),.proof-item:nth-child(4),.service-benefit-grid article:nth-child(3),.service-benefit-grid article:nth-child(4){border-top:1px solid var(--line)}.proof-item:nth-child(3),.service-benefit-grid article:nth-child(3){border-left:0}.service-detail-grid{grid-template-columns:1fr}.engagement-grid{grid-template-columns:repeat(2,1fr)}.service-process-grid,.delivery-grid{grid-template-columns:1fr}.service-process-step,.delivery-step{text-align:left;display:grid;grid-template-columns:58px 1fr;column-gap:17px}.service-process-step span,.delivery-step span{grid-row:1/3;margin:0}.services-choice-grid,.featured-case-grid{grid-template-columns:1fr;gap:40px}.capability-grid{grid-template-columns:repeat(2,1fr)}.challenge-outcome-grid{grid-template-columns:1fr}}
@media (max-width:700px){.services-hero,.service-page-hero{padding:36px 0 60px}.services-hero-copy h1,.service-page-hero-copy h1{font-size:3rem}.services-hero-image,.service-page-hero-image{height:310px;border-radius:20px}.services-proof-grid,.service-benefit-grid{grid-template-columns:1fr}.proof-item+.proof-item,.service-benefit-grid article+article{border-left:0;border-top:1px solid var(--line)}.service-detail-card{grid-template-columns:1fr}.service-detail-card>img{height:230px}.engagement-grid,.capability-grid{grid-template-columns:1fr}.challenge-panel,.outcome-panel{padding:29px 24px}.service-hero-badge{left:17px;right:17px;bottom:16px}.service-hero-badge strong{font-size:1.05rem}.service-hero-badge span{font-size:.76rem}}

/* v8 service image refinements */
.service-detail-card:nth-child(2)>img{object-position:63% center}
.service-detail-card:nth-child(3)>img{object-position:center center}
.service-detail-card:nth-child(4)>img{object-position:67% center}
@media (max-width:700px){.service-detail-card:nth-child(2)>img,.service-detail-card:nth-child(3)>img,.service-detail-card:nth-child(4)>img{object-position:center center}}


/* Rich service-page system — v9 */
.rich-service-page{background:#fff}.rich-service-hero{padding:54px 0 76px;background:linear-gradient(105deg,#fff 0%,#fff 48%,#f2f4f6 100%)}.rich-hero-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:46px;align-items:stretch}.rich-hero-copy{padding:25px 0;align-self:center}.rich-hero-copy h1{font-size:clamp(3rem,5vw,5rem);line-height:1;letter-spacing:-.055em;margin:14px 0 14px}.rich-hero-copy h1 span{color:var(--red)}.rich-hero-copy h2{font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.35;color:var(--red);margin:0 0 18px;max-width:650px}.rich-hero-copy p{font-size:1.05rem;color:#3d4650;max-width:660px}.rich-hero-image{min-height:440px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}.rich-hero-image img{width:100%;height:100%;object-fit:cover;transition:transform 7s ease}.rich-hero-image.in img{transform:scale(1.035)}
.rich-metrics{position:relative;margin-top:-38px;z-index:5}.rich-metric-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);overflow:hidden}.service-metric{display:flex;align-items:center;gap:16px;padding:25px 23px}.service-metric+ .service-metric{border-left:1px solid var(--line)}.metric-svg,.rich-icon,.mini-icon,.overview-icon{color:var(--red)}.metric-svg{width:45px;flex:0 0 45px}.metric-svg svg,.rich-icon svg,.mini-icon svg,.overview-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service-metric strong{display:block;font-size:1.85rem;line-height:1;color:#111820}.service-metric span{display:block;color:var(--red);font-weight:850;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;margin:4px 0}.service-metric small{color:var(--muted);font-size:.75rem}
.service-anchor-nav{position:sticky;top:82px;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(20,27,34,.05)}.service-anchor-nav .container{display:flex;overflow-x:auto;scrollbar-width:none}.service-anchor-nav a{white-space:nowrap;padding:18px 22px;font-size:.83rem;font-weight:800;border-bottom:3px solid transparent}.service-anchor-nav a:hover{color:var(--red);border-color:var(--red)}
.rich-section{padding:82px 0;scroll-margin-top:150px}.rich-intro-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:65px;align-items:center}.rich-intro-grid h2,.rich-heading h2,.outcome-case-grid h2,.faq-related-grid h2{font-size:clamp(1.9rem,3vw,3rem);line-height:1.1;margin:8px 0 16px}.rich-intro-grid p,.rich-heading p{color:var(--muted);font-size:1rem}.overview-visual{background:#f7f8fa;border:1px solid var(--line);border-radius:20px;padding:30px;display:grid;grid-template-columns:68px 1fr;gap:22px;align-items:center}.overview-icon{width:68px;height:68px;padding:14px;border-radius:18px;background:#fff0f1}.overview-visual p{margin:0;color:#333e48}.rich-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:38px}.rich-heading>div{max-width:780px}.rich-heading>p{max-width:390px}.challenge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.challenge-item{display:flex;gap:16px;padding:23px 8px}.mini-icon{width:39px;height:39px;flex:0 0 39px;padding:7px;border-radius:12px;background:#fff0f1}.challenge-item h3,.rich-card h3{font-size:1rem;margin:0 0 7px}.challenge-item p,.rich-card p{font-size:.86rem;color:var(--muted);margin:0}.rich-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.rich-card{display:flex;gap:16px;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:.28s}.rich-card:hover{transform:translateY(-5px);box-shadow:0 15px 34px rgba(22,29,38,.09);border-color:#e8b9bc}.rich-icon{width:47px;height:47px;flex:0 0 47px;padding:10px;border-radius:14px;background:#fff0f1}
.rich-process{padding:78px 0;background:linear-gradient(135deg,#11161c,#1a2028);color:#fff;scroll-margin-top:150px}.rich-heading.light p{color:#b9c0c8}.rich-step-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;position:relative}.rich-step-grid:before{content:"";position:absolute;left:6%;right:6%;top:24px;border-top:2px dotted #56606b}.rich-step{position:relative;text-align:center;padding:0 10px}.rich-step span{position:relative;z-index:1;width:50px;height:50px;display:grid;place-items:center;border-radius:50%;margin:0 auto 18px;background:#fff;color:var(--red);font-weight:900;border:5px solid #232a33}.rich-step h3{font-size:.9rem;margin:0 0 8px}.rich-step p{font-size:.78rem;color:#bac1c8;margin:0}.outcome-case-grid{display:grid;grid-template-columns:.75fr .75fr 1.5fr;gap:35px}.outcome-column,.ideal-column{padding-right:20px}.rich-check-list,.rich-ideal-list{padding:0;list-style:none;margin:25px 0}.rich-check-list li,.rich-ideal-list li{position:relative;padding:0 0 13px 27px;color:#34404a}.rich-check-list li:before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:900}.rich-ideal-list li:before{content:"›";position:absolute;left:3px;color:var(--red);font-size:1.3rem;font-weight:900}.featured-rich-case{min-height:430px;position:relative;border-radius:20px;overflow:hidden;background:#111}.featured-rich-case>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.54}.featured-rich-case:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,14,20,.95),rgba(9,14,20,.52))}.featured-case-overlay{position:relative;z-index:2;color:#fff;padding:38px;max-width:680px}.featured-case-overlay>span{color:#ff9ba1;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.featured-case-overlay h2{font-size:1.8rem;margin:10px 0}.featured-case-overlay p{color:#dbe0e5}.case-stat-row{display:flex;gap:10px;margin:24px 0}.case-stat-row>div{border:1px solid rgba(255,255,255,.3);border-radius:9px;padding:10px 13px;display:grid}.case-stat-row strong{font-size:1rem}.case-stat-row span{font-size:.66rem;color:#cdd3d9}.featured-case-overlay a{color:#fff;font-weight:850;border-bottom:1px solid #fff}.faq-related-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}.related-grid{display:grid;grid-template-columns:1fr;gap:13px}.related-card{border:1px solid var(--line);border-radius:14px;padding:19px;display:grid;grid-template-columns:42px 1fr;column-gap:14px}.related-card .mini-icon{grid-row:1/4}.related-card h3{font-size:.95rem;margin:0}.related-card p{font-size:.78rem;color:var(--muted);margin:5px 0}.related-card span{font-size:.78rem;color:var(--red);font-weight:850}.rich-cta{background:linear-gradient(100deg,#a70d15,#df111d);color:#fff;padding:45px 0}.rich-cta-grid{display:flex;align-items:center;justify-content:space-between;gap:35px}.rich-cta h2{font-size:2rem;margin:0 0 8px}.rich-cta p{margin:0;color:#ffe5e7}.rich-cta-grid>div:last-child{display:flex;gap:14px}.btn-white{background:#fff;color:#991019}.btn-ghost-white{border:1px solid rgba(255,255,255,.65);color:#fff}
@media(max-width:1100px){.rich-hero-grid{grid-template-columns:1fr}.rich-hero-image{min-height:430px}.rich-metric-grid{grid-template-columns:repeat(2,1fr)}.service-metric:nth-child(3),.service-metric:nth-child(4){border-top:1px solid var(--line)}.service-metric:nth-child(3){border-left:0}.challenge-grid{grid-template-columns:repeat(2,1fr)}.rich-card-grid{grid-template-columns:repeat(2,1fr)}.rich-step-grid{grid-template-columns:1fr}.rich-step-grid:before{display:none}.rich-step{text-align:left;display:grid;grid-template-columns:50px 1fr;column-gap:15px}.rich-step span{grid-row:1/3;margin:0}.outcome-case-grid{grid-template-columns:1fr 1fr}.featured-rich-case{grid-column:1/-1}.faq-related-grid{grid-template-columns:1fr}.rich-intro-grid{grid-template-columns:1fr}.rich-heading{align-items:start;flex-direction:column;gap:5px}.rich-cta-grid{align-items:flex-start;flex-direction:column}.service-anchor-nav{top:72px}}
@media(max-width:700px){.rich-service-hero{padding:30px 0 64px}.rich-hero-copy h1{font-size:3rem}.rich-hero-image{min-height:290px}.rich-metric-grid{grid-template-columns:1fr}.service-metric+ .service-metric{border-left:0;border-top:1px solid var(--line)}.service-anchor-nav{top:68px}.service-anchor-nav a{padding:14px 15px}.rich-section{padding:62px 0}.challenge-grid,.rich-card-grid,.outcome-case-grid{grid-template-columns:1fr}.challenge-item{padding:16px 0}.outcome-column,.ideal-column{padding-right:0}.case-stat-row{flex-wrap:wrap}.featured-case-overlay{padding:26px}.rich-cta-grid>div:last-child{flex-direction:column;width:100%}.rich-cta .btn{width:100%}.rich-heading h2,.outcome-case-grid h2,.faq-related-grid h2{font-size:2rem}}


/* Version 10 enhanced service-page layouts */
.rich-metric-grid{grid-template-columns:repeat(5,1fr)}
.service-metric{min-height:132px}
.capability-showcase-rich{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.55fr);gap:24px;align-items:stretch}
.capability-showcase-rich .rich-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch}
.capability-visual-rich{position:relative;overflow:hidden;border-radius:18px;min-height:420px;border:1px solid var(--line);box-shadow:0 16px 38px rgba(22,29,38,.12);background:#111}
.capability-visual-rich img{width:100%;height:100%;object-fit:cover;transition:transform 7s ease}
.capability-visual-rich.in img{transform:scale(1.045)}
.capability-visual-rich:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(8,16,25,.88) 100%)}
.capability-visual-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:30px;color:#fff}
.capability-visual-overlay span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#ffb5b9}
.capability-visual-overlay h3{font-size:1.55rem;line-height:1.14;margin:8px 0 10px;color:#fff}
.capability-visual-overlay p{color:#e8edf2;margin:0;font-size:.91rem;line-height:1.55}
.rich-card{min-height:150px;background:linear-gradient(180deg,#fff,#fbfbfc)}
.rich-card h3{font-size:1.04rem}
.rich-process{background:linear-gradient(135deg,#f7f8fa,#fff);color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rich-heading.light h2,.rich-heading.light p{color:inherit}.rich-heading.light .eyebrow{color:var(--red)}
.rich-step-grid:before{border-top-color:#b9c0c8}
.rich-step span{background:#fff;border-color:#e7aeb2;color:var(--red);box-shadow:0 5px 15px rgba(22,29,38,.08)}
.rich-step h3{color:var(--ink)}.rich-step p{color:var(--muted)}
.featured-rich-case{min-height:455px}
.featured-rich-case img{filter:saturate(.92) contrast(1.03)}
.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.related-card{min-height:185px}
@media(max-width:1100px){.rich-metric-grid{grid-template-columns:repeat(2,1fr)}.service-metric:nth-child(n){border-top:1px solid var(--line)}.service-metric:nth-child(1),.service-metric:nth-child(2){border-top:0}.service-metric:nth-child(odd){border-left:0}.capability-showcase-rich{grid-template-columns:1fr}.capability-visual-rich{min-height:390px}.capability-showcase-rich .rich-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.rich-metric-grid{grid-template-columns:1fr}.service-metric:nth-child(n){border-left:0;border-top:1px solid var(--line)}.service-metric:first-child{border-top:0}.capability-showcase-rich .rich-card-grid,.related-grid{grid-template-columns:1fr}.capability-visual-rich{min-height:330px}.capability-visual-overlay{padding:23px}.capability-visual-overlay h3{font-size:1.3rem}}

/* Success stories */
.story-overview-hero,.story-detail-hero{padding:72px 0 78px;background:linear-gradient(135deg,#fff 0%,#fff 62%,#f3f5f7 100%)}
.story-hero-grid,.story-detail-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.story-hero-grid h1,.story-detail-grid h1{font-size:clamp(3rem,5.3vw,5.4rem);line-height:.98;letter-spacing:-.055em;margin:15px 0 25px}.story-hero-grid h1 span{color:var(--red)}.story-hero-grid p,.story-detail-grid p{color:var(--muted);font-size:1.08rem;max-width:650px}.story-hero-grid img,.story-detail-grid img{width:100%;height:480px;object-fit:cover;border-radius:26px;box-shadow:var(--shadow)}.story-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}#all-stories{scroll-margin-top:96px}
.story-proof{background:#151a20;color:#fff;padding:27px 0}.story-proof.detail{background:#fff;color:var(--ink);border-bottom:1px solid var(--line);box-shadow:0 14px 30px rgba(16,22,30,.06)}.story-proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.story-proof-grid>div{padding:12px 30px;border-left:1px solid rgba(255,255,255,.18)}.story-proof.detail .story-proof-grid>div{border-color:var(--line)}.story-proof-grid>div:first-child{border-left:0}.story-proof strong{display:block;font-size:1.75rem}.story-proof span{color:#bdc4cc;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:750}.story-proof.detail span{color:var(--red)}
.story-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:34px}.story-filter{border:1px solid var(--line);background:#fff;padding:10px 17px;border-radius:999px;cursor:pointer;font-weight:750}.story-filter.active,.story-filter:hover{background:var(--red);border-color:var(--red);color:#fff}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.story-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 12px 30px rgba(18,24,32,.07);transition:.3s}.story-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.story-card img{width:100%;height:235px;object-fit:cover}.story-card-body{padding:25px}.story-card-body>span{color:var(--red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:850}.story-card h3{font-size:1.35rem;line-height:1.2;margin:9px 0 13px}.story-card p{color:var(--muted)}.story-card a{color:var(--red);font-weight:850}
.story-method{padding:90px 0;background:#151a20;color:#fff}.story-method .section-head p{color:#bdc4cc}.story-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.story-method article{padding:27px;border:1px solid #343a42;border-radius:17px;background:#1b2027}.story-method b{color:#ef555c;font-size:1.4rem}.story-method h3{margin:16px 0 8px}.story-method p{color:#bfc5cc}
.breadcrumbs{display:flex;gap:9px;align-items:center;font-size:.86rem;color:var(--muted);margin-bottom:30px}.breadcrumbs a{color:var(--red);font-weight:750}.story-detail-grid{grid-template-columns:1fr 1fr}.story-detail-grid h1{font-size:clamp(3rem,5vw,4.8rem)}
.story-narrative{padding:92px 0}.story-narrative-grid{display:grid;grid-template-columns:280px 1fr;gap:72px;align-items:start}.story-sidebar{position:sticky;top:110px;padding:28px;border:1px solid var(--line);border-radius:18px;background:#f7f8fa}.story-sidebar>span{color:var(--red);font-weight:800;font-size:.8rem;text-transform:uppercase}.story-sidebar h2{margin:8px 0 22px}.story-sidebar dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-top:16px}.story-sidebar dd{margin:4px 0 0;font-weight:700}.story-sidebar a{color:var(--red)}.story-copy{display:grid;gap:58px}.story-copy section{display:grid;grid-template-columns:68px 1fr;gap:25px}.story-number{width:58px;height:58px;border-radius:16px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-weight:900;font-size:1.15rem}.story-copy h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:8px 0 15px}.story-copy p{color:var(--muted);font-size:1.04rem}.story-list{padding:0;margin:18px 0 0;list-style:none;display:grid;gap:13px}.story-list li{position:relative;padding-left:28px;color:var(--muted)}.story-list li:before{content:'✓';position:absolute;left:0;color:var(--red);font-weight:900}.story-list.outcomes li{font-weight:650;color:#3e4752}
.story-quote{padding:70px 0;background:#151a20;color:#fff}.story-quote blockquote{margin:0 auto;max-width:900px;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.35;font-weight:650}.story-quote cite{display:block;margin-top:22px;color:#ef777c;font-size:.95rem;font-style:normal;text-transform:uppercase;letter-spacing:.08em}.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.lesson-grid article{padding:28px;border:1px solid var(--line);background:#fff;border-radius:17px}.lesson-grid b{font-size:1.12rem}.lesson-grid p{color:var(--muted);margin-bottom:0}.related-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.related-story{padding:24px;border:1px solid var(--line);border-radius:17px;transition:.25s}.related-story:hover{border-color:#dda1a4;transform:translateY(-4px)}.related-story span{color:var(--red);font-size:.72rem;text-transform:uppercase;font-weight:850}.related-story h3{line-height:1.25}.related-story p{color:var(--muted)}
.story-card[hidden]{display:none}
@media(max-width:1000px){.story-hero-grid,.story-detail-grid{grid-template-columns:1fr}.story-hero-grid img,.story-detail-grid img{height:400px}.story-grid{grid-template-columns:repeat(2,1fr)}.story-method-grid{grid-template-columns:repeat(2,1fr)}.story-narrative-grid{grid-template-columns:1fr}.story-sidebar{position:static}.story-proof-grid{grid-template-columns:repeat(2,1fr)}.story-proof-grid>div:nth-child(3){border-left:0}.related-story-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.story-hero-actions{align-items:stretch}.story-hero-actions .btn{width:100%}.story-overview-hero,.story-detail-hero{padding:45px 0 55px}.story-hero-grid h1,.story-detail-grid h1{font-size:3rem}.story-hero-grid img,.story-detail-grid img{height:290px}.story-grid,.story-method-grid,.lesson-grid,.related-story-grid{grid-template-columns:1fr}.story-proof-grid{grid-template-columns:1fr}.story-proof-grid>div{border-left:0;border-top:1px solid rgba(255,255,255,.18)}.story-proof-grid>div:first-child{border-top:0}.story-copy section{grid-template-columns:1fr}.story-number{width:50px;height:50px}}


/* News & Insights */
.insights-hero{padding:72px 0 82px;background:linear-gradient(135deg,#fff 0%,#f7f8fa 100%)}
.insights-hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:58px;align-items:center}
.insights-hero h1{font-size:clamp(3.2rem,5.5vw,5.7rem);line-height:.98;letter-spacing:-.055em;margin:15px 0 25px}
.insights-hero p{color:var(--muted);font-size:1.1rem;max-width:620px}
.insights-feature{display:grid;grid-template-columns:1.1fr .9fr;background:#151a20;color:#fff;border-radius:25px;overflow:hidden;box-shadow:var(--shadow)}
.insights-feature img{height:100%;min-height:390px;width:100%;object-fit:cover}
.insights-feature>div{padding:34px;align-self:center}.insights-feature span,.insight-meta span:first-child{color:#ef555c;text-transform:uppercase;font-size:.72rem;letter-spacing:.1em;font-weight:850}
.insights-feature h2{font-size:2rem;line-height:1.15}.insights-feature p{color:#c5cbd1;font-size:.95rem}.insights-feature a,.text-link{color:var(--red);font-weight:850}.insights-feature a{color:#fff}
.insight-topics{padding:30px 0;border-bottom:1px solid var(--line)}
.insight-topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.insight-topic-grid a{padding:20px;border:1px solid var(--line);border-radius:15px;transition:.25s}.insight-topic-grid a:hover{transform:translateY(-4px);border-color:#d89a9e}
.insight-topic-grid b,.insight-topic-grid span{display:block}.insight-topic-grid span{color:var(--muted);font-size:.86rem;margin-top:5px}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.insight-card{border:1px solid var(--line);border-radius:19px;overflow:hidden;background:#fff;box-shadow:0 12px 30px rgba(18,24,32,.07);transition:.3s}
.insight-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.insight-card img{width:100%;height:220px;object-fit:cover}
.insight-card-body{padding:24px}.insight-meta{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;color:var(--muted)}
.insight-card h3{font-size:1.35rem;line-height:1.25;margin:12px 0}.insight-card h3 a:hover{color:var(--red)}.insight-card p{color:var(--muted)}
.newsletter-band{padding:75px 0;background:#f5f6f8}.newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.newsletter-grid h2{font-size:2.6rem;margin:.4rem 0}
.newsletter-form label{display:block;font-weight:800;margin-bottom:8px}.newsletter-form>div{display:flex;gap:10px}.newsletter-form input{flex:1;border:1px solid var(--line);border-radius:12px;padding:15px;background:#fff}

/* Articles */
.article-hero{padding:48px 0 70px;background:#f7f8fa}.article-hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:60px;align-items:center}
.article-hero h1{font-size:clamp(3rem,5vw,5rem);line-height:1;letter-spacing:-.05em;margin:14px 0 22px}.article-hero p{font-size:1.12rem;color:var(--muted)}
.article-hero img{height:470px;width:100%;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.article-byline{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:28px;font-size:.82rem;color:var(--muted);font-weight:700}
.article-content{padding:90px 0}.article-layout{display:grid;grid-template-columns:250px 1fr;gap:70px;align-items:start}.article-aside{position:sticky;top:110px;border:1px solid var(--line);border-radius:17px;padding:25px;background:#f7f8fa}
.article-aside>b,.article-aside>a{display:block}.article-aside>a{margin-top:12px;color:var(--muted)}.article-aside>a:hover{color:var(--red)}
.article-call{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.article-call span,.article-call a{display:block}.article-call a{color:var(--red);font-weight:850;margin-top:7px}
.article-main{max-width:820px}.article-intro{font-size:1.35rem;line-height:1.65;color:#3d4651;margin:0 0 65px}.article-main>section{display:grid;grid-template-columns:60px 1fr;gap:24px;margin-bottom:60px}
.article-step{width:52px;height:52px;border-radius:15px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-weight:900}.article-main h2{font-size:2rem;margin:5px 0 18px}
.article-main ul{list-style:none;margin:0;padding:0;display:grid;gap:13px}.article-main li{color:var(--muted);position:relative;padding-left:27px}.article-main li:before{content:'✓';position:absolute;left:0;color:var(--red);font-weight:900}
.article-conclusion{padding:34px;border-radius:18px;background:#151a20;color:#fff}.article-conclusion h2{margin-top:0}.article-conclusion p{color:#c5cbd1;font-size:1.08rem}
.article-related{padding:80px 0;background:#f7f8fa}

/* Contact */
.contact-hero{padding:70px 0 80px;background:linear-gradient(135deg,#fff,#f5f6f8)}.contact-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.contact-hero h1{font-size:clamp(3rem,5.2vw,5.3rem);line-height:1;letter-spacing:-.052em;margin:14px 0 24px}.contact-hero p{font-size:1.1rem;color:var(--muted)}
.contact-hero img{width:100%;height:500px;object-fit:cover;border-radius:26px;box-shadow:var(--shadow)}
.contact-quick{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:28px}.contact-quick a{border:1px solid var(--line);padding:18px;border-radius:14px;background:#fff}.contact-quick b,.contact-quick span{display:block}.contact-quick b{color:var(--red)}.contact-quick span{font-size:.83rem;margin-top:4px}
.contact-paths{padding:38px 0;border-bottom:1px solid var(--line)}.contact-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-path-grid article{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:28px;border:1px solid var(--line);border-radius:18px}.contact-path-grid article>div:last-child>span{font-size:.75rem;color:var(--red);text-transform:uppercase;font-weight:850;letter-spacing:.08em}
.contact-icon{width:55px;height:55px;border-radius:15px;background:#fff0f1;color:var(--red);display:grid;place-items:center;font-size:1.5rem;font-weight:900}.contact-path-grid h2{margin:6px 0}.contact-path-grid p{color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.contact-layout>div>h2{font-size:3rem;line-height:1.08}.contact-layout>div>p{color:var(--muted)}
.contact-expect{margin-top:35px;padding:25px;border-radius:17px;background:#151a20;color:#fff}.contact-expect h3{margin-top:0}.contact-expect ol{padding-left:20px;color:#c5cbd1}
.contact-form{padding:34px;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);background:#fff}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:block;font-weight:750;margin-bottom:18px}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #cfd4da;border-radius:11px;padding:13px 14px;background:#fff;color:var(--ink)}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.newsletter-form input:focus{outline:3px solid rgba(178,15,23,.15);border-color:var(--red)}
.consent{display:flex!important;gap:11px;align-items:flex-start;font-weight:400!important;color:var(--muted);font-size:.86rem}.consent input{width:auto;margin-top:4px}
.form-message{margin:13px 0 0;color:var(--red);font-weight:750}.form-message.success{color:#18794e}.contact-services{padding:85px 0;background:#f7f8fa}
.contact-services .related-story-grid{grid-template-columns:repeat(4,1fr)}

@media(max-width:1000px){
.insights-hero-grid,.article-hero-grid,.contact-hero-grid,.contact-layout{grid-template-columns:1fr}.insights-feature{grid-template-columns:1fr}.insights-feature img{min-height:300px}.insight-grid{grid-template-columns:repeat(2,1fr)}
.insight-topic-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.article-aside{position:static}.contact-hero img{height:400px}.contact-services .related-story-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
.insight-grid,.insight-topic-grid,.contact-path-grid,.field-grid,.contact-quick,.contact-services .related-story-grid{grid-template-columns:1fr}.newsletter-grid{grid-template-columns:1fr}.newsletter-form>div{flex-direction:column}
.article-hero img,.contact-hero img{height:290px}.article-main>section{grid-template-columns:1fr}.article-step{width:48px;height:48px}.contact-form{padding:22px}
}

/* v13: quieter CTA treatment and cleaned partner logos */
.logo-tile{background:#fff;border:1px solid #e5e8ec;box-shadow:0 8px 22px rgba(20,28,38,.05)}
.logo-tile img{width:88%;height:78%;object-fit:contain;filter:none}
.rich-cta .btn-white,.rich-cta .btn-ghost-white{min-width:170px}
.article-call{background:#fff;border-radius:12px;padding:16px}
@media(max-width:700px){.rich-cta-grid>div:last-child{display:flex;flex-direction:column;gap:10px}.rich-cta-grid .btn{width:100%}}

/* v13.2 unified header and navigation */
.site-header .container{
  width:min(1380px,calc(100% - 32px));
}
.site-header .nav{
  height:80px;
  display:flex;
  align-items:center;
  gap:18px;
}
.site-header .brand img{
  width:158px;
  height:auto;
}
.site-header .nav-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  margin-left:auto;
  font-size:.89rem;
  font-weight:700;
  white-space:nowrap;
}
.site-header .nav-links a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
}
.site-header .nav-links a:after{
  bottom:1px;
}
.site-header .header-actions{
  display:flex;
  flex:0 0 auto;
  gap:9px;
  margin-left:4px;
}
.site-header .header-actions .btn{
  white-space:nowrap;
  padding:11px 15px;
  font-size:.86rem;
  border-radius:9px;
}
.site-header .menu-toggle{
  flex:0 0 auto;
}
@media(max-width:1180px){
  .site-header .nav-links,
  .site-header .header-actions{display:none}
  .site-header .menu-toggle{display:block;margin-left:auto}
  .site-header .nav.open{
    height:auto;
    align-items:flex-start;
    flex-wrap:wrap;
    padding:14px 0 18px;
  }
  .site-header .nav.open .nav-links{
    display:flex;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:2px;
    padding:12px 0;
    order:3;
  }
  .site-header .nav.open .nav-links a{
    width:100%;
    padding:9px 4px;
  }
  .site-header .nav.open .nav-links a:after{display:none}
  .site-header .nav.open .header-actions{
    display:flex;
    width:100%;
    gap:10px;
    order:4;
  }
}
@media(max-width:600px){
  .site-header .container{width:min(100% - 24px,1380px)}
  .site-header .nav{height:70px}
  .site-header .brand img{width:142px}
  .site-header .nav.open .header-actions{flex-direction:column}
  .site-header .nav.open .header-actions .btn{width:100%}
}

/* v13.3 About-page story layout fix */
.about-story-section{
  padding-top:88px;
  padding-bottom:96px;
}
.about-story-grid{
  display:grid;
  grid-template-columns:minmax(480px,1fr) minmax(0,1.15fr);
  gap:72px;
  align-items:center;
}
.about-story-grid .story-image{
  width:100%;
}
.about-story-grid .story-image img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center;
  border-radius:24px;
  box-shadow:var(--shadow);
}
.about-story-grid .story-copy{
  max-width:720px;
}
.about-story-grid .story-copy h2{
  font-size:clamp(2.6rem,4.5vw,4.6rem);
  line-height:1.02;
  letter-spacing:-.048em;
  margin:10px 0 26px;
}
.about-story-grid .story-copy p{
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.75;
  margin:0 0 20px;
}
.about-story-grid .story-copy .text-link{
  display:inline-flex;
  margin-top:10px;
}
@media(max-width:1050px){
  .about-story-grid{
    grid-template-columns:1fr;
    gap:42px;
  }
  .about-story-grid .story-image{
    max-width:860px;
  }
  .about-story-grid .story-copy{
    max-width:860px;
  }
}
@media(max-width:700px){
  .about-story-section{
    padding-top:64px;
    padding-bottom:70px;
  }
  .about-story-grid{
    gap:30px;
  }
  .about-story-grid .story-copy h2{
    font-size:2.65rem;
  }
}

/* v13.4 consistent About-page timeline */
.journey-section .timeline{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:34px;
  position:relative;
  padding-top:0;
}
.journey-section .timeline::before{
  content:"";
  position:absolute;
  top:57px;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg,var(--red) 0%,#d45c63 72%,#b9bec5 100%);
  transform-origin:left;
  animation:drawLine 1.2s ease both;
}
.journey-section .timeline-item{
  position:relative;
  padding-top:88px;
}
.journey-section .timeline-year{
  position:absolute;
  top:0;
  left:0;
  height:34px;
  display:flex;
  align-items:center;
  color:var(--red);
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.075em;
  text-transform:uppercase;
  white-space:nowrap;
}
.journey-section .timeline-dot{
  position:absolute;
  top:48px;
  left:0;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--red);
  border:5px solid #fff;
  box-shadow:0 0 0 2px var(--red);
  z-index:2;
}
.journey-section .timeline-item h3{
  min-height:48px;
  margin:0 0 10px;
  font-size:1.05rem;
  line-height:1.25;
}
.journey-section .timeline-item p{
  margin:0;
  color:var(--muted);
  font-size:.91rem;
  line-height:1.55;
}
@media(max-width:1050px){
  .journey-section .timeline{
    grid-template-columns:1fr;
    gap:0;
    padding-left:42px;
  }
  .journey-section .timeline::before{
    top:5px;
    bottom:14px;
    left:10px;
    right:auto;
    width:3px;
    height:auto;
  }
  .journey-section .timeline-item{
    padding:0 0 34px 18px;
  }
  .journey-section .timeline-year{
    position:static;
    height:auto;
    margin-bottom:7px;
  }
  .journey-section .timeline-dot{
    top:3px;
    left:-41px;
  }
  .journey-section .timeline-item h3{
    min-height:0;
    margin-bottom:8px;
  }
}

/* v13.6 remove numeric labels from Services showcase cards */
.service-number,
.service-showcase-card > .eyebrow:first-child{
  display:none!important;
}

.service-detail-number{display:none!important}

/* v13.9 original partner logo assets */
.logo-tile{
  width:230px;
  height:118px;
  padding:22px 28px;
  background:#fff;
  border:1px solid #e3e6ea;
  border-radius:17px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.logo-tile img{
  display:block;
  width:100%;
  height:100%;
  max-width:178px;
  max-height:76px;
  object-fit:contain;
  object-position:center;
  filter:none!important;
}
.logo-track{
  gap:24px;
}
@media(max-width:700px){
  .logo-tile{
    width:180px;
    height:94px;
    padding:17px 22px;
  }
  .logo-tile img{
    max-width:142px;
    max-height:60px;
  }
}

/* Final Demo v3: engagement-model symbols */
.engagement-icon{
  font-size:1.45rem;
  line-height:1;
  font-weight:900;
  font-family:Arial, Helvetica, sans-serif;
}

/* Final Demo v4: fifth service and AI Advisory */
.service-detail-card--ai{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  align-items:stretch;
  overflow:hidden;
  background:linear-gradient(135deg,#fff,#f5f6f8);
}
.service-detail-card--ai .service-detail-content{padding:46px}
.service-detail-card--ai h3{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.05;margin:.5rem 0 1.1rem}
.service-detail-card--ai>img{width:100%;height:100%;min-height:410px;object-fit:cover}
.home-ai-feature{grid-column:1/-1;display:grid;grid-template-columns:.9fr 1.1fr}
.home-ai-feature img{height:100%;min-height:330px;object-fit:cover}
@media(max-width:900px){
  .service-detail-card--ai,.home-ai-feature{grid-template-columns:1fr}
  .service-detail-card--ai>img{min-height:300px}
}

/* Final Demo v5: AI service page and related-card normalization */
.related-card{
  grid-template-columns:42px minmax(0,1fr)!important;
  align-content:start;
}
.related-card .mini-icon{
  display:grid;
  place-items:center;
}
.related-card .mini-icon svg,
.rich-icon svg,
.metric-icon svg,
.overview-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.rich-service-page .capability-showcase-rich{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:24px;
  align-items:stretch;
}
.rich-service-page .capability-visual-rich{
  min-height:540px;
}
.rich-service-page .capability-visual-rich img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.rich-service-page .rich-card-grid{
  align-content:stretch;
}
.rich-service-page .rich-card{
  min-height:165px;
}
@media(max-width:1050px){
  .rich-service-page .capability-showcase-rich{
    grid-template-columns:1fr;
  }
  .rich-service-page .capability-visual-rich{
    min-height:390px;
  }
}

/* Final Demo v6.1: preserve balanced 2x2 related-services layout */
#related .related-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
#related .related-card{
  min-width:0;
  min-height:185px;
}
@media(max-width:700px){
  #related .related-grid{grid-template-columns:1fr}
}

/* Final Demo v6.2: AI page visual and FAQ refresh */
.ai-faq-column .faq-lead{
  max-width:760px;
  margin:0 0 28px;
}
.faq-list--enhanced{
  display:grid;
  gap:18px;
}
.faq-card{
  background:#fff;
  border:1px solid #e6e8ee;
  border-radius:18px;
  padding:0;
  overflow:hidden;
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.faq-card button{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border:0;
  background:transparent;
  padding:20px 24px 16px;
  font-size:1.08rem;
  font-weight:700;
  color:#111827;
  text-align:left;
}
.faq-card button span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:999px;
  background:#fff2f3;
  color:#c3141b;
  font-size:1.25rem;
  flex:0 0 auto;
}
.faq-card .faq-answer{
  display:block;
  padding:0 24px 22px;
  color:#5a6578;
}
.ai-faq-sidecard{
  align-self:start;
  background:linear-gradient(180deg,#ffffff 0%,#f7f8fb 100%);
  border:1px solid #e6e8ee;
  border-radius:22px;
  padding:28px 28px 24px;
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}
.ai-faq-sidecard h3{
  margin:.4rem 0 1rem;
  font-size:1.55rem;
  line-height:1.15;
}
.ai-faq-sidecard .rich-check-list{
  margin:0 0 1.25rem;
}
.ai-faq-sidecard .text-link{
  font-weight:700;
}
.rich-service-page .rich-hero-image img,
.rich-service-page .capability-visual-rich img{
  background:#f5f6f8;
}
@media(max-width:980px){
  .faq-related-grid{
    grid-template-columns:1fr!important;
  }
}

/* Final Demo v6.3: AI home/service card and restored AI FAQ/related section */
.home-ai-feature .service-card-body a.text-link{
  font-weight:700;
}
.home-ai-feature img{
  object-fit:cover;
}

/* Final Demo v6.4: About/Contact reception visual and contact heading cleanup */
.contact-hero h1{
  max-width:700px;
}
.contact-hero h1 span{
  color:var(--red);
}

/* Final Demo v6.5: prevent homepage AI image hover from covering text */
.home-ai-feature{
  isolation:isolate;
}
.home-ai-feature > img{
  position:relative;
  z-index:0;
  width:100%;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  transform-origin:center;
}
.home-ai-feature .service-card-body{
  position:relative;
  z-index:2;
  background:#fff;
  min-width:0;
  padding:34px 38px;
}
.home-ai-feature:hover > img{
  transform:scale(1.025);
}
@media(max-width:900px){
  .home-ai-feature .service-card-body{
    padding:28px;
  }
}

/* Final Demo v6.6: About page story + vertical evolution redesign */
.about-evolution-grid{
  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(0, 1.05fr);
  gap:48px;
  align-items:start;
}
.evolution-copy .lead{
  font-size:1.12rem;
  line-height:1.75;
  color:#415065;
}
.story-highlight-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  margin:28px 0 24px;
}
.story-highlight-card{
  display:flex;
  align-items:center;
  gap:16px;
  background:#fff;
  border:1px solid #e6e8ee;
  border-radius:18px;
  padding:16px 18px;
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.story-highlight-card strong{
  display:block;
  color:#101621;
  font-size:1rem;
  margin-bottom:2px;
}
.story-highlight-card span{
  color:#5f6d80;
  font-size:.97rem;
}
.story-highlight-icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#fff3f4;
  color:var(--red);
  font-size:1.25rem;
  font-weight:800;
  flex:0 0 auto;
}
.evolution-timeline{
  background:linear-gradient(180deg,#ffffff 0%, #f8f9fb 100%);
  border:1px solid #e6e8ee;
  border-radius:28px;
  padding:28px 28px 16px;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}
.evolution-timeline-head{
  margin-bottom:12px;
}
.evolution-timeline-head h3{
  margin:.35rem 0 0;
  font-size:1.55rem;
  line-height:1.18;
}
.evolution-track{
  position:relative;
  padding:8px 0 0 0;
}
.evolution-track::before{
  content:"";
  position:absolute;
  left:23px;
  top:0;
  bottom:22px;
  width:3px;
  background:linear-gradient(180deg, var(--red) 0%, rgba(178,15,23,.28) 100%);
  border-radius:999px;
}
.evolution-item{
  position:relative;
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  gap:16px;
  align-items:start;
  padding:10px 0 18px;
}
.evolution-marker{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:center;
}
.evolution-icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  border:3px solid var(--red);
  color:var(--red);
  box-shadow:0 8px 20px rgba(178,15,23,.12);
  font-size:1.05rem;
  font-weight:800;
}
.evolution-card{
  background:#fff;
  border:1px solid #e8ebf1;
  border-radius:20px;
  padding:18px 20px;
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.evolution-card-current{
  background:linear-gradient(135deg,#fff 0%, #fff6f7 100%);
  border-color:#f0c9cd;
}
.evolution-year{
  display:inline-block;
  margin-bottom:8px;
  font-size:.82rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--red);
}
.evolution-card h4{
  margin:0 0 10px;
  font-size:1.5rem;
  line-height:1.1;
}
.evolution-card p{
  margin:0;
  color:#5f6d80;
  line-height:1.65;
}
@media(max-width:1050px){
  .about-evolution-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .evolution-item{
    grid-template-columns:54px minmax(0,1fr);
    gap:12px;
  }
  .evolution-track::before{
    left:19px;
  }
  .evolution-icon{
    width:38px;
    height:38px;
  }
  .evolution-timeline{
    padding:22px 18px 10px;
  }
}

/* Final Demo v6.7: align the four AI Advisory proof blocks */
.rich-service-page .rich-metric-strip .rich-metric-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
}
.rich-service-page .rich-metric-strip .service-metric{
  min-height:166px;
  display:grid;
  grid-template-columns:62px minmax(0,1fr);
  align-items:center;
  gap:20px;
  padding:28px 26px;
}
.rich-service-page .rich-metric-strip .metric-icon{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff0f1;
  color:var(--red);
  flex:0 0 auto;
}
.rich-service-page .rich-metric-strip .metric-icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.rich-service-page .rich-metric-strip .service-metric > div:last-child{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.rich-service-page .rich-metric-strip .service-metric strong{
  font-size:clamp(1.45rem,2vw,2rem);
  line-height:1.02;
  min-height:2.05em;
  display:flex;
  align-items:flex-end;
}
.rich-service-page .rich-metric-strip .service-metric span{
  min-height:2.7em;
  display:flex;
  align-items:flex-start;
  line-height:1.35;
  margin-top:8px;
}
@media(max-width:1100px){
  .rich-service-page .rich-metric-strip .rich-metric-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .rich-service-page .rich-metric-strip .service-metric:nth-child(3),
  .rich-service-page .rich-metric-strip .service-metric:nth-child(4){
    border-top:1px solid var(--line);
  }
  .rich-service-page .rich-metric-strip .service-metric:nth-child(3){
    border-left:0;
  }
}
@media(max-width:700px){
  .rich-service-page .rich-metric-strip .rich-metric-grid{
    grid-template-columns:1fr;
  }
  .rich-service-page .rich-metric-strip .service-metric{
    min-height:auto;
    grid-template-columns:54px minmax(0,1fr);
    padding:22px;
  }
  .rich-service-page .rich-metric-strip .metric-icon{
    width:54px;
    height:54px;
  }
  .rich-service-page .rich-metric-strip .metric-icon svg{
    width:32px;
    height:32px;
  }
  .rich-service-page .rich-metric-strip .service-metric strong,
  .rich-service-page .rich-metric-strip .service-metric span{
    min-height:0;
  }
}

/* Final Demo v6.8: responsive homepage hero video */
.hero-video-panel{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.hero-video-panel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,rgba(10,14,20,.58) 100%);
}
.hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:1;
}
.hero-video-fallback{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:none;
  z-index:1;
}
.hero-video-caption{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:3;
  color:#fff;
  display:grid;
  gap:4px;
  text-shadow:0 1px 8px rgba(0,0,0,.28);
}
.hero-video-caption span{
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.14em;
  color:#ffdadd;
}
.hero-video-caption strong{
  max-width:520px;
  font-size:1.12rem;
  line-height:1.25;
}
@media(prefers-reduced-motion:reduce){
  .hero-video{
    display:none;
  }
  .hero-video-fallback{
    display:block;
  }
}

/* Final Demo v7.0: full-width homepage hero video with readable text overlay */
.hero.hero-fullwidth-home{
  position:relative;
  min-height:640px;
  padding:0;
  background:#0c1218;
  overflow:hidden;
  display:flex;
  align-items:stretch;
}
.hero-fullwidth-home .hero-video-panel--full{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  border:0;
  border-radius:0;
  background:#0c1218;
  box-shadow:none;
}
.hero-fullwidth-home .hero-video-panel--full::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(8,12,18,.82) 0%, rgba(8,12,18,.72) 26%, rgba(8,12,18,.42) 52%, rgba(8,12,18,.18) 76%, rgba(8,12,18,.08) 100%),
    linear-gradient(180deg, rgba(8,12,18,.18) 0%, rgba(8,12,18,0) 22%, rgba(8,12,18,.1) 72%, rgba(8,12,18,.34) 100%);
}
.hero-fullwidth-home .hero-video-panel--full::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  box-shadow:inset 0 -40px 70px rgba(0,0,0,.12);
}
.hero-fullwidth-home .hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:1;
}
.hero-fullwidth-home .hero-video-fallback{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
  display:none;
}
.hero-fullwidth-container{
  position:relative;
  z-index:3;
  width:min(100% - 48px,var(--max));
  min-height:640px;
  display:flex;
  align-items:center;
}
.hero-fullwidth-copy{
  padding:72px 0 82px;
  max-width:650px;
  color:#fff;
}
.hero-fullwidth-copy .eyebrow{
  color:#ffd7da;
}
.hero-fullwidth-copy h1{
  color:#fff;
  max-width:680px;
  margin:14px 0 22px;
  text-shadow:0 4px 24px rgba(0,0,0,.22);
}
.hero-fullwidth-copy h1 span{
  color:#ffb9c0;
}
.hero-fullwidth-copy p{
  color:rgba(255,255,255,.92);
  max-width:610px;
  font-size:1.08rem;
  line-height:1.75;
  margin:0 0 28px;
  text-shadow:0 2px 12px rgba(0,0,0,.22);
}
.hero-fullwidth-home .hero-actions{
  margin-bottom:22px;
}
.hero-fullwidth-home .hero-actions .btn-outline{
  border-color:rgba(255,255,255,.85);
  color:#fff;
  background:rgba(255,255,255,.06);
}
.hero-fullwidth-home .hero-actions .btn-outline:hover{
  background:#fff;
  color:#101621;
}
.hero-trustline{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  color:rgba(255,255,255,.88);
  font-size:.92rem;
  font-weight:650;
}
.hero-trustline span:nth-child(even){
  color:#ffbdc4;
}
.hero-fullwidth-home .hero-video-caption{
  display:none;
}
@media (max-width:1050px){
  .hero.hero-fullwidth-home{
    min-height:590px;
  }
  .hero-fullwidth-container{
    min-height:590px;
    width:min(100% - 40px,var(--max));
  }
  .hero-fullwidth-copy{
    max-width:600px;
    padding:66px 0 74px;
  }
}
@media (max-width:700px){
  .hero.hero-fullwidth-home{
    min-height:520px;
  }
  .hero-fullwidth-container{
    min-height:520px;
    width:min(100% - 28px,var(--max));
    align-items:flex-end;
  }
  .hero-fullwidth-home .hero-video-panel--full::before{
    background:
      linear-gradient(180deg, rgba(8,12,18,.34) 0%, rgba(8,12,18,.38) 28%, rgba(8,12,18,.58) 62%, rgba(8,12,18,.78) 100%);
  }
  .hero-fullwidth-copy{
    max-width:none;
    width:100%;
    padding:44px 0 34px;
  }
  .hero-fullwidth-copy h1{
    font-size:3rem;
  }
  .hero-fullwidth-copy p{
    font-size:1rem;
    line-height:1.65;
    max-width:none;
  }
  .hero-trustline{
    font-size:.84rem;
    gap:8px;
  }
}
@media(prefers-reduced-motion:reduce){
  .hero-fullwidth-home .hero-video{
    display:none;
  }
  .hero-fullwidth-home .hero-video-fallback{
    display:block;
  }
}

/* Final Demo v7.3: names-only dual-row technology marquee */
.tech-name-marquee{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:16px;
  padding:4px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
}
.tech-name-track{
  display:flex;
  width:max-content;
  animation:techNamesLeft 42s linear infinite;
  will-change:transform;
}
.tech-name-track--reverse{
  animation-name:techNamesRight;
  animation-duration:46s;
}
.tech-name-group{
  display:flex;
  align-items:center;
  gap:16px;
  padding-right:16px;
  flex:none;
}
.tech-name-tile{
  min-width:max-content;
  display:flex;
  align-items:center;
  gap:11px;
  padding:14px 20px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.12);
  backdrop-filter:blur(5px);
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.tech-name-tile:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.3);
}
.tech-name-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(178,15,23,.2);
  color:#ffb7bd;
  font-weight:850;
  font-size:.95rem;
}
.tech-name{
  font-size:.98rem;
  font-weight:760;
  letter-spacing:.01em;
  white-space:nowrap;
}
.tech-name-marquee:hover .tech-name-track,
.tech-name-marquee:focus-within .tech-name-track{
  animation-play-state:paused;
}
@keyframes techNamesLeft{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@keyframes techNamesRight{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
@media(max-width:700px){
  .tech-name-marquee{
    gap:12px;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  }
  .tech-name-group{
    gap:12px;
    padding-right:12px;
  }
  .tech-name-tile{
    padding:12px 16px;
  }
  .tech-name-icon{
    width:27px;
    height:27px;
    flex-basis:27px;
  }
  .tech-name{
    font-size:.91rem;
  }
}
@media(prefers-reduced-motion:reduce){
  .tech-name-marquee{
    overflow:visible;
    -webkit-mask-image:none;
    mask-image:none;
  }
  .tech-name-track,
  .tech-name-track--reverse{
    width:auto;
    animation:none!important;
  }
  .tech-name-track .tech-name-group[aria-hidden="true"]{
    display:none;
  }
  .tech-name-group{
    flex-wrap:wrap;
    justify-content:center;
    width:100%;
  }
}

/* Final Demo v7.6: names-only professional credentials showcase */
.credentials-section{
  background:linear-gradient(180deg,#f7f8fa 0%,#ffffff 100%);
}
.credentials-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:36px;
  margin-bottom:30px;
}
.credentials-heading>div:first-child{
  max-width:760px;
}
.credentials-heading h2{
  margin:.45rem 0 .8rem;
}
.credentials-heading p{
  margin:0;
  color:var(--muted);
  max-width:720px;
}
.credentials-count{
  min-width:180px;
  padding:20px 24px;
  border-radius:22px;
  background:#171c23;
  color:#fff;
  text-align:center;
  box-shadow:0 16px 34px rgba(15,23,42,.12);
}
.credentials-count strong{
  display:block;
  font-size:2.5rem;
  line-height:1;
  color:#ffb7bd;
}
.credentials-count span{
  display:block;
  margin-top:8px;
  font-size:.86rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
.credential-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:26px;
}
.credential-filter{
  border:1px solid #dfe3e8;
  background:#fff;
  color:#394452;
  border-radius:999px;
  padding:11px 17px;
  font:inherit;
  font-size:.9rem;
  font-weight:750;
  cursor:pointer;
  transition:.2s ease;
}
.credential-filter:hover,
.credential-filter:focus-visible{
  border-color:#c9cfd7;
  transform:translateY(-1px);
}
.credential-filter.is-active{
  background:var(--red);
  border-color:var(--red);
  color:#fff;
  box-shadow:0 8px 18px rgba(178,15,23,.18);
}
.credential-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.credential-card{
  min-height:190px;
  display:flex;
  flex-direction:column;
  padding:22px;
  border:1px solid #e4e7eb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,opacity .2s ease;
}
.credential-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 34px rgba(15,23,42,.08);
  border-color:#d5d9df;
}
.credential-card[hidden]{
  display:none!important;
}
.credential-card-top{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:auto;
}
.credential-symbol{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#fff1f2;
  color:var(--red);
  font-weight:850;
}
.credential-category{
  color:#778391;
  font-size:.73rem;
  line-height:1.25;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
}
.credential-card h3{
  margin:18px 0 7px;
  color:#111820;
  font-size:1.45rem;
  line-height:1.05;
}
.credential-card p{
  margin:0;
  color:#5f6c7b;
  line-height:1.52;
  font-size:.94rem;
}
@media(max-width:1100px){
  .credential-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:800px){
  .credentials-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .credentials-count{
    min-width:0;
    width:100%;
    text-align:left;
  }
  .credential-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:560px){
  .credential-grid{
    grid-template-columns:1fr;
  }
  .credential-filters{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .credential-filter:first-child{
    grid-column:1/-1;
  }
  .credential-card{
    min-height:165px;
  }
}

/* Final Demo v7.7: four-column About Us metrics banner */
.about-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.about-metric{
  min-width:0;
}
@media(max-width:1000px){
  .about-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .about-metric:nth-child(3){
    border-left:0;
  }
  .about-metric:nth-child(3),
  .about-metric:nth-child(4){
    border-top:1px solid #343a42;
  }
}
@media(max-width:700px){
  .about-metrics{
    grid-template-columns:1fr;
  }
  .about-metric:nth-child(3),
  .about-metric:nth-child(4){
    border-left:0;
  }
}

/* Final Demo v7.8: Company News & Community */
.company-news-section{
  background:linear-gradient(180deg,#ffffff 0%,#f7f8fa 100%);
}
.company-news-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
}
.company-news-heading>div{
  max-width:760px;
}
.company-news-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.company-news-card{
  display:grid;
  grid-template-columns:minmax(210px,.82fr) minmax(0,1.18fr);
  min-height:310px;
  overflow:hidden;
  background:#fff;
  border:1px solid #e3e6ea;
  border-radius:24px;
  box-shadow:0 14px 34px rgba(15,23,42,.055);
  transition:transform .25s ease,box-shadow .25s ease;
}
.company-news-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 44px rgba(15,23,42,.09);
}
.company-news-image{
  position:relative;
  min-height:100%;
  overflow:hidden;
  background:#e9edf1;
}
.company-news-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 6s ease;
}
.company-news-card:hover .company-news-image img{
  transform:scale(1.045);
}
.company-news-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(10,14,20,.34));
}
.company-news-image span{
  position:absolute;
  left:16px;
  top:16px;
  z-index:2;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--red);
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.company-news-body{
  display:flex;
  flex-direction:column;
  padding:27px;
}
.company-news-meta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  color:#788391;
  font-size:.79rem;
  font-weight:700;
}
.company-news-body h3{
  margin:15px 0 12px;
  font-size:1.55rem;
  line-height:1.12;
}
.company-news-body h3 a{
  color:#111820;
}
.company-news-body p{
  margin:0 0 20px;
  color:#5d6977;
  line-height:1.62;
}
.company-news-body .text-link{
  margin-top:auto;
}
.company-article-hero{
  background:linear-gradient(135deg,#f7f8fa 0%,#fff 58%,#f4f5f7 100%);
}
@media(max-width:1100px){
  .company-news-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .company-news-heading{
    flex-direction:column;
    align-items:flex-start;
  }
  .company-news-card{
    grid-template-columns:1fr;
  }
  .company-news-image{
    min-height:245px;
  }
}

/* Final Demo v7.9: About Us community service & recognition section */
.community-impact-section{
  background:linear-gradient(180deg,#ffffff 0%,#f7f8fa 100%);
}
.community-impact-head > div{
  max-width:860px;
}
.community-story-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.community-story-card{
  display:flex;
  flex-direction:column;
  min-height:300px;
  padding:28px;
  border:1px solid #e4e7eb;
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.05);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.community-story-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 40px rgba(15,23,42,.09);
  border-color:#d6dbe2;
}
.community-story-top{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
}
.community-story-symbol{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,#fff2f3 0%,#ffe4e7 100%);
  color:var(--red);
  font-size:1.55rem;
  font-weight:850;
  box-shadow:inset 0 0 0 1px rgba(178,15,23,.08);
}
.community-story-tag{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  background:#f4f6f8;
  color:#677587;
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.community-story-card h3{
  margin:0 0 12px;
  font-size:1.5rem;
  line-height:1.14;
  color:#121923;
}
.community-story-summary{
  margin:0 0 12px;
  color:#3f4b5a;
  line-height:1.68;
  font-weight:600;
}
.community-story-detail{
  margin:0 0 20px;
  color:#647182;
  line-height:1.68;
}
.community-story-card .text-link{
  margin-top:auto;
}
@media(max-width:900px){
  .community-story-grid{
    grid-template-columns:1fr;
  }
}

/* Final Demo v8.9: top-align hero image and copy */
.hero-align-top .about-hero-grid,
.hero-align-top .story-hero-grid,
.hero-align-top .insights-hero-grid{
  align-items:start;
}
.hero-align-top .about-hero-copy,
.hero-align-top .story-hero-grid > div:first-child,
.hero-align-top .insights-hero-grid > div:first-child{
  align-self:start;
  padding-top:0;
}
.hero-align-top .about-hero-image,
.hero-align-top .story-hero-grid > img,
.hero-align-top .insights-feature{
  align-self:start;
  margin-top:0;
}

/* Final Demo v9.0: Contact page phone-number layout */
.contact-path-grid article{
  align-items:start;
}
.contact-card-details{
  display:grid;
  gap:12px;
  margin-top:22px;
}
.contact-card-number{
  display:grid;
  gap:4px;
}
.contact-card-number span{
  color:#667384;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.contact-card-number strong{
  color:#121923;
  font-size:1.3rem;
  line-height:1.2;
}
.contact-card-option{
  width:max-content;
  padding:7px 11px;
  border-radius:999px;
  background:#fff1f2;
  color:var(--red);
  font-size:.82rem;
  font-weight:850;
}
.support-availability{
  display:flex;
  align-items:center;
  gap:11px;
  margin-top:3px;
  padding:14px 16px;
  border:1px solid #e1e5ea;
  border-radius:14px;
  background:#f7f8fa;
}
.availability-dot{
  width:10px;
  height:10px;
  flex:0 0 10px;
  border-radius:50%;
  background:#2f9e44;
  box-shadow:0 0 0 5px rgba(47,158,68,.12);
}
.support-availability div{
  display:grid;
  gap:2px;
}
.support-availability strong{
  color:#121923;
  font-size:1rem;
  line-height:1.2;
}
.support-availability span:last-child{
  color:#667384;
  font-size:.82rem;
  line-height:1.35;
}


/* Final Demo v9.1: header/footer contact standardization */
.header-contact-btn{
  min-width: 148px;
  justify-content: center;
}

.footer-contact-details{
  display: grid;
  gap: 10px;
  margin-top: 4px;
}

.footer-contact-line{
  color: inherit;
  line-height: 1.5;
}

.footer-contact-line strong{
  color: var(--ink, #121923);
  font-weight: 800;
}

.footer-contact-hours{
  display: inline-flex;
  width: max-content;
  align-items: center;
  justify-content: center;
  margin-top: 4px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  color: inherit;
  font-weight: 700;
  letter-spacing: .04em;
}


/* Final Demo v9.2: footer contact alignment and contrast fix */
footer .footer-col .footer-contact-details{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  margin-top:8px;
}

footer .footer-col .footer-contact-line{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:6px;
  line-height:1.55;
  color:rgba(255,255,255,0.88);
  text-align:left;
}

footer .footer-col .footer-contact-line strong{
  display:inline-block;
  min-width:72px;
  color:#ffffff;
  font-weight:800;
}

footer .footer-col .footer-contact-hours{
  display:inline-flex;
  align-self:flex-start;
  align-items:center;
  justify-content:center;
  margin-top:2px;
  padding:8px 16px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  color:#ffffff;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1;
}

@media (max-width: 640px){
  footer .footer-col .footer-contact-line strong{
    min-width:68px;
  }
}


/* Production candidate: form integration and footer contact links */
.contact-form button[disabled]{
  cursor:not-allowed;
  opacity:.58;
  box-shadow:none;
}
.form-integration-notice{
  margin:12px 0 0;
  padding:13px 15px;
  border:1px solid #e1e5ea;
  border-radius:12px;
  background:#f7f8fa;
  color:#596777;
  font-size:.88rem;
  line-height:1.55;
}
footer .footer-contact-line a{
  color:rgba(255,255,255,.9);
  text-decoration:none;
}
footer .footer-contact-line a:hover,
footer .footer-contact-line a:focus-visible{
  color:#fff;
  text-decoration:underline;
}


/* Production Candidate v1.1: footer contact alignment */
footer .footer-col .footer-contact-details{
  display:grid;
  gap:13px;
  margin-top:8px;
  align-items:start;
}
footer .footer-contact-row{
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  align-items:baseline;
  column-gap:10px;
  color:rgba(255,255,255,.9);
  line-height:1.45;
}
footer .footer-contact-row strong{
  color:#fff;
  font-weight:800;
}
footer .footer-contact-value{
  white-space:nowrap;
  color:rgba(255,255,255,.9);
}
footer .footer-contact-value a{
  color:inherit;
  text-decoration:none;
}
footer .footer-contact-value a:hover,
footer .footer-contact-value a:focus-visible{
  color:#fff;
  text-decoration:underline;
}
footer .footer-contact-hours{
  margin-top:3px;
  margin-left:88px;
}
@media(max-width:1150px){
  footer .footer-contact-row{
    grid-template-columns:1fr;
    row-gap:3px;
  }
  footer .footer-contact-hours{
    margin-left:0;
  }
}
@media(max-width:700px){
  footer .footer-contact-value{
    white-space:normal;
  }
}

/* Production Candidate v1.1: better News & Insights hero balance */
.insights-hero h1{
  font-size:clamp(2.7rem,4.35vw,4.6rem);
  line-height:1.01;
  max-width:640px;
}
@media(max-width:700px){
  .insights-hero h1{
    font-size:2.8rem;
  }
}


/* Production Candidate v1.2: footer contact final alignment */
footer .footer-col .footer-contact-details{
  display:grid;
  gap:20px;
  margin-top:12px;
  align-items:start;
}

footer .footer-contact-item{
  display:grid;
  gap:4px;
  justify-items:start;
}

footer .footer-contact-label{
  color:#fff;
  font-weight:800;
  font-size:1rem;
  line-height:1.2;
}

footer .footer-contact-number{
  color:rgba(255,255,255,.9);
  text-decoration:none;
  line-height:1.4;
  white-space:nowrap;
}

footer .footer-contact-number:hover,
footer .footer-contact-number:focus-visible{
  color:#fff;
  text-decoration:underline;
}

footer .footer-contact-option{
  color:rgba(255,255,255,.75);
  font-size:.9rem;
  line-height:1.25;
}

footer .footer-contact-availability{
  display:grid;
  gap:4px;
  justify-items:start;
  width:max-content;
  max-width:100%;
  padding:10px 14px;
  border-radius:14px;
  background:rgba(255,255,255,.1);
}

footer .footer-contact-availability strong{
  color:#fff;
  font-size:1rem;
  line-height:1.1;
}

footer .footer-contact-availability span{
  color:rgba(255,255,255,.72);
  font-size:.78rem;
  line-height:1.3;
}

@media(max-width:700px){
  footer .footer-contact-number{
    white-space:normal;
  }
}


/* Production Candidate v1.4: restore two-person framing for the Home and Services office image */
.why-image img,
.services-choice-image img{
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center center;
}

@media (max-width: 1024px){
  .why-image img,
  .services-choice-image img{
    aspect-ratio: 16 / 11;
    object-position: center center;
  }
}


/* Production Candidate v1.5: shift crop to keep the girl's full face visible */
.why-image img,
.services-choice-image img{
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: 64% center;
}

@media (max-width: 1024px){
  .why-image img,
  .services-choice-image img{
    aspect-ratio: 16 / 11;
    object-position: 62% center;
  }
}


/* Production Candidate v1.6: Latest News section */
.latest-news-section{
  background:linear-gradient(180deg,#ffffff 0%,#f7f8fa 100%);
}

.latest-news-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
}

.latest-news-heading > div{
  max-width:780px;
}

.latest-news-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.latest-news-card{
  display:flex;
  flex-direction:column;
  min-height:290px;
  padding:28px;
  border:1px solid #e3e7ec;
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.05);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}

.latest-news-card:hover{
  transform:translateY(-4px);
  border-color:#d5dae1;
  box-shadow:0 20px 42px rgba(15,23,42,.09);
}

.latest-news-top{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
}

.latest-news-symbol{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,#fff2f3 0%,#ffe4e7 100%);
  color:var(--red);
  font-size:1.45rem;
  font-weight:850;
  box-shadow:inset 0 0 0 1px rgba(178,15,23,.08);
}

.latest-news-tag{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background:#f3f5f7;
  color:#687587;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.latest-news-card h3{
  margin:0 0 12px;
  color:#111820;
  font-size:1.5rem;
  line-height:1.15;
}

.latest-news-card p{
  margin:0 0 20px;
  color:#5f6c7b;
  line-height:1.68;
}

.latest-news-card .text-link{
  margin-top:auto;
}

@media(max-width:900px){
  .latest-news-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .latest-news-grid{
    grid-template-columns:1fr;
  }
}


/* Production Candidate v1.7: compact footer Contact spacing */
footer .footer-col .footer-contact-details{
  gap:14px;
  margin-top:8px;
}

footer .footer-contact-item{
  gap:1px;
}

footer .footer-contact-label{
  margin:0;
  line-height:1.25;
}

footer .footer-contact-number{
  margin:0;
  line-height:1.3;
}

footer .footer-contact-option{
  margin:0;
  line-height:1.25;
}

footer .footer-contact-availability{
  gap:2px;
  margin-top:0;
  padding:9px 13px;
}


/* Production Release v2.0 */
.contact-direct-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:64px;
  align-items:start;
}
.contact-direct-copy h2{
  font-size:clamp(2.4rem,4vw,4rem);
  line-height:1.02;
  letter-spacing:-.045em;
  margin:8px 0 20px;
}
.contact-direct-copy>p{
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.75;
}

.contact-direct-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.contact-direct-card{
  display:flex;
  min-height:250px;
  flex-direction:column;
  padding:30px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow);
}
.contact-direct-label{
  color:var(--red);
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.contact-direct-card a{
  margin:22px 0 7px;
  color:#111820;
  font-size:1.65rem;
  font-weight:850;
}
.contact-direct-card strong{
  font-size:1rem;
}
.contact-direct-card p{
  margin-top:auto;
  color:var(--muted);
  line-height:1.65;
}
.compact-legal-hero{
  padding:150px 0 70px;
  background:linear-gradient(180deg,#f8f9fa,#fff);
}
.compact-legal-hero h1{
  font-size:clamp(3rem,6vw,5.5rem);
  margin:10px 0 14px;
}
.compact-legal-hero p{
  max-width:700px;
  color:var(--muted);
  font-size:1.1rem;
}
.legal-copy{
  max-width:850px;
}
.legal-copy h2{
  margin:34px 0 10px;
  font-size:1.6rem;
}
.legal-copy p{
  color:var(--muted);
  line-height:1.8;
}
.footer-bottom a{
  margin-left:18px;
}
@media(max-width:900px){
  .contact-direct-grid{
    grid-template-columns:1fr;
    gap:36px;
  }
  .contact-direct-cards{
    grid-template-columns:1fr;
  }
}
