
.reviews-section{background:#edf3f8;color:#13344c;padding:80px 0}.reviews-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:center}.reviews-heading h2{font-size:clamp(2.2rem,4.1vw,3.6rem);letter-spacing:-.045em;margin:12px 0 0}.reviews-section .eyebrow{color:#246c9e}.rating-score{display:flex;gap:23px;align-items:center}.score-number{font-family:Manrope,sans-serif;font-size:4.2rem;letter-spacing:-.07em;font-weight:800;line-height:1;color:#173e5b}.rating-score strong{display:block;font-size:1rem;margin-top:6px}.rating-score small{display:block;color:#617c90;font-size:.8rem;margin-top:3px}.rating-stars{display:block;position:relative;color:#b7c6d0;font-size:1.5rem;letter-spacing:.07em;line-height:1.1;width:max-content}.rating-stars:before{content:'★★★★★'}.rating-stars>span{position:absolute;left:0;top:0;display:block;width:94%;overflow:hidden;color:#b98017;white-space:nowrap}.review-source-link{display:inline-block;color:#1b68a0;font-weight:700;text-decoration:underline;text-underline-offset:4px;font-size:.87rem;margin-top:16px}.review-intro{font-size:.93rem;color:#577185;max-width:890px;line-height:1.7;margin:28px 0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.review-card{border:1px solid #cddce7;background:white;border-radius:10px;padding:25px;display:flex;flex-direction:column;box-shadow:0 10px 30px #12344a06}.review-top{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:#577185}.individual-stars{font-size:1.14rem;letter-spacing:.08em;color:#a97110}.review-topic{font-size:.75rem;color:#56788f;margin-top:22px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.review-card blockquote{font-family:Manrope,sans-serif;font-weight:700;font-size:1.28rem;line-height:1.5;letter-spacing:-.02em;margin:14px 0 24px;flex:1;color:#15364e}.review-author{display:flex;gap:13px;align-items:center}.review-initial{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e8f1f7;color:#2c6c9a;font-weight:800}.review-author strong{display:block;font-size:.9rem}.review-author small{display:block;font-size:.74rem;color:#6b8394;margin-top:3px}.review-card>a{color:#1f6da7;font-size:.8rem;text-decoration:underline;text-underline-offset:3px;margin-top:22px}.review-note{color:#5c778b;font-size:.79rem;line-height:1.65;max-width:1040px;margin:23px 0 0}.rating-band{background:#e6eff6;color:#173b56;border-block:1px solid #c4d6e4;padding:24px 0}.rating-band .wrap{display:flex;gap:22px;align-items:center;justify-content:space-between}.rating-band strong{display:block;font-size:1rem}.rating-band span{display:block;font-size:.77rem;color:#55768e;margin-top:4px}.rating-band a{font-size:.86rem;font-weight:700;color:#1d679e;text-decoration:underline;text-underline-offset:4px}.project-inline-links{display:flex;flex-wrap:wrap;gap:12px 25px;border-top:1px solid #ffffff28;padding-top:23px;margin-top:30px}.project-inline-links a{color:#9ed0f8;font-size:.91rem;text-decoration:underline;text-underline-offset:4px}.ref .case-inline-link{display:block;padding:10px 0 0;color:#91c8f6;font-size:.82rem;font-weight:700}.compare .case-inline-link{display:block;color:#1a689f;font-size:.84rem;text-decoration:underline;text-underline-offset:4px;padding:0 20px 20px}.references-hero{padding:35px 0 60px;background:radial-gradient(ellipse at 90% 10%,#214864,#0b1a29 80%)}.references-hero h1{font-size:clamp(2.7rem,5vw,4.3rem);letter-spacing:-.045em;max-width:850px;margin:20px 0 26px}.references-hero h1 em{color:#87c7fa;font-style:normal;display:block}.references-hero p{color:#c3d7e7;max-width:780px;font-size:1.08rem;line-height:1.7}.references-hero .breadcrumb{margin-bottom:26px}.references-trust{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:32px;border-top:1px solid #ffffff25;padding-top:27px}.references-trust p{font-size:.9rem;margin:0}.references-trust a{color:#a4d3fa;text-decoration:underline;text-underline-offset:4px;font-weight:700;white-space:nowrap;font-size:.9rem}.portfolio-section{padding:65px 0 80px;background:#eef4f8;color:#163a54}.project-filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 12px}.project-filters button{border:1px solid #b5cbdc;background:transparent;color:#254e6a;padding:11px 19px;border-radius:40px;font-weight:700;font-size:.9rem}.project-filters button[aria-pressed=true]{background:#246fa7;color:white;border-color:#246fa7}.project-result{font-size:.82rem;color:#5c778b;margin:0 0 27px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.portfolio-card{background:white;border:1px solid #d1dfe9;border-radius:11px;overflow:hidden}.portfolio-card[hidden]{display:none}.portfolio-pair{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#c6d9e6}.portfolio-pair figure{position:relative;margin:0;min-width:0}.portfolio-pair img{height:310px;width:100%;object-fit:cover}.portfolio-pair figcaption{position:absolute;left:12px;top:12px;background:#112f48ef;color:white;border-radius:4px;font-size:.69rem;letter-spacing:.06em;font-weight:800;padding:7px 10px}.portfolio-pair figure:last-child figcaption{background:#256fa8}.portfolio-copy{padding:26px}.portfolio-copy .eyebrow{color:#266d9f;font-size:.69rem}.portfolio-copy h2{font-size:1.65rem;letter-spacing:-.035em;line-height:1.2;margin:12px 0 16px}.portfolio-copy p{font-size:.95rem;color:#557185;line-height:1.65;margin:0 0 22px}.portfolio-copy a{display:inline-block;color:#1769a2;font-weight:700;font-size:.92rem;text-decoration:underline;text-underline-offset:4px}.portfolio-note{margin-top:27px;color:#5a778b;font-size:.85rem}.case-hero{background:radial-gradient(ellipse at 80% 5%,#234b67,#0b1a29 75%);padding:35px 0 65px}.case-hero-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.case-hero h1{font-size:clamp(2.5rem,4.7vw,4rem);letter-spacing:-.045em;margin:20px 0 25px}.case-hero p{color:#c4d8e7;line-height:1.75;font-size:1.05rem}.case-hero figure{margin:0;border:1px solid #ffffff27;border-radius:10px;overflow:hidden;background:#133249}.case-hero figure>img{height:470px;width:100%;object-fit:cover}.case-hero figcaption{padding:16px 21px;color:#c4d9e9;font-size:.84rem}.case-facts{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}.case-facts span{border:1px solid #ffffff32;padding:7px 11px;font-size:.8rem;color:#c3d8e8;border-radius:3px}.case-story{padding:70px 0;background:#f0f5f8;color:#17394f}.case-story .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.case-story h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.04em;margin:12px 0 24px}.case-story p{color:#526f83;line-height:1.75;font-size:1rem}.case-story aside{padding:28px;background:#e1edf5;border:1px solid #c4d8e5;border-radius:8px}.case-story aside h3{font-size:1.2rem;margin:0 0 18px}.case-story dl{margin:0}.case-story dt{color:#5c7c92;font-size:.77rem;margin-top:16px}.case-story dd{margin:5px 0 0;font-weight:700;font-size:.96rem}.case-phases{padding:70px 0;background:#e4eef5;color:#17394f}.case-phases h2{font-size:clamp(2rem,3.7vw,3.15rem);letter-spacing:-.04em;margin:12px 0 24px}.case-phases>.wrap>p{color:#526f83;max-width:830px;line-height:1.7}.phase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;margin-top:32px}.phase-card{background:white;border:1px solid #cddde9;border-radius:9px;overflow:hidden}.phase-open{position:relative;width:100%;padding:0;border:0;background:#19394f;color:white;display:block}.phase-open img{width:100%;height:420px;object-fit:cover}.phase-open>span{position:absolute;right:12px;bottom:13px;background:#0d2a43e8;font-size:.72rem;padding:8px 11px;border:1px solid #ffffff50;border-radius:4px}.phase-copy{padding:24px}.phase-copy h3{font-size:1.13rem;margin:0 0 12px}.phase-copy p{font-size:.92rem;color:#557287;line-height:1.7;margin:0}.case-footnote{font-size:.81rem!important;color:#607d91!important;margin-top:22px}.project-dialog{border:1px solid #5e849f;background:#0b2234;color:white;border-radius:10px;max-width:min(1100px,95vw);width:95vw;padding:0;max-height:95vh}.project-dialog::backdrop{background:#03101de3}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;border-bottom:1px solid #ffffff26}.dialog-head strong{font-size:.94rem}.dialog-head button{background:#ffffff16;border:1px solid #ffffff4d;border-radius:4px;color:white;padding:8px 13px;font-size:.85rem}.project-dialog figure{margin:0}.project-dialog img{width:100%;max-height:78vh;object-fit:contain;background:#071926}.project-dialog figcaption{padding:14px 20px;font-size:.87rem;color:#cee1ef}.case-next{padding:65px 0;background:#132f45}.case-next h2{font-size:2rem;letter-spacing:-.03em;margin:0 0 25px}.case-next nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.case-next a{border:1px solid #ffffff35;padding:22px;border-radius:6px;font-weight:700;font-size:.96rem}.case-next a span{display:block;color:#a4c8e1;font-size:.81rem;font-weight:400;margin-top:7px}.ref-cta{padding:70px 0;background:linear-gradient(115deg,#1c5782,#102c43)}.ref-cta h2{font-size:clamp(2.2rem,4vw,3.45rem);letter-spacing:-.04em;margin:12px 0 24px}.ref-cta p{max-width:770px;color:#c9dfee;line-height:1.75}.ref-cta .small-print{font-size:.85rem;margin-top:22px}.case-service-link{display:inline-block;color:#1a6ca3;font-weight:700;text-decoration:underline;text-underline-offset:4px;font-size:.92rem;margin-top:12px}
@media(max-width:1000px){.reviews-heading,.case-hero-layout,.case-story .wrap{gap:35px}.phase-open img{height:350px}.review-card{padding:21px}.review-card blockquote{font-size:1.14rem}.portfolio-pair img{height:280px}.case-hero figure>img{height:440px}}
@media(max-width:760px){.reviews-section{padding:53px 0}.reviews-heading{grid-template-columns:1fr;gap:28px}.reviews-heading h2{font-size:2.25rem}.review-grid{grid-template-columns:1fr}.review-card{padding:25px}.review-card blockquote{font-size:1.22rem;margin-bottom:27px}.score-number{font-size:3.6rem}.review-intro{margin:24px 0}.rating-band .wrap{flex-wrap:wrap;gap:18px}.rating-band .wrap>div{width:100%}.rating-band a{font-size:.83rem}.portfolio-grid{grid-template-columns:1fr}.references-hero{padding:28px 0 45px}.references-hero h1{font-size:2.6rem}.references-hero p{font-size:1rem}.references-trust{flex-direction:column;align-items:start;gap:18px}.references-trust a{white-space:normal}.portfolio-section{padding:38px 0 50px}.portfolio-pair img{height:300px}.portfolio-copy{padding:23px}.portfolio-copy h2{font-size:1.5rem}.project-filters{gap:8px}.project-filters button{font-size:.82rem;padding:9px 14px}.case-hero{padding:27px 0 45px}.case-hero-layout,.case-story .wrap{grid-template-columns:1fr;gap:30px}.case-hero h1{font-size:2.4rem}.case-hero p{font-size:1rem}.case-hero figure>img{height:430px}.case-story,.case-phases{padding:50px 0}.phase-grid{grid-template-columns:1fr;gap:23px}.phase-open img{height:450px}.phase-copy{padding:23px}.case-next{padding:48px 0}.case-next nav{grid-template-columns:1fr}.ref-cta{padding:52px 0}.ref-cta .btn{width:100%}.project-inline-links{gap:14px 23px}.dialog-head{padding:12px 15px}.project-dialog figcaption{padding:12px 15px}.project-dialog img{max-height:72vh}}
@media(max-width:430px){.portfolio-pair img{height:260px}.portfolio-pair figcaption{left:8px;top:9px;font-size:.62rem;padding:6px 8px}.phase-open img{height:400px}.case-hero figure>img{height:390px}.case-hero h1{font-size:2.15rem}.references-hero h1{font-size:2.35rem}}
