.service-link,.service-back{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#2464ac;padding:12px 0}.service-link:hover,.service-back:hover{text-decoration:underline;text-underline-offset:5px}.service .service-link{margin-top:15px}.service{display:flex;flex-direction:column}.service .deliverables{margin-top:auto}.service .service-link{align-self:flex-start}
.technology-band{background:#f5f8fc;overflow:hidden;padding-bottom:52px}.technology-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:32px}.technology-heading h2{font-size:clamp(29px,3vw,40px);margin-bottom:0}.technology-heading>div:last-child{max-width:420px;justify-self:end}.technology-heading p:not(.eyebrow){font-size:14px;margin-bottom:10px}.technology-toggle{margin-top:2px}.technology-toggle-icon{font-size:10px;display:inline-block;min-width:10px}.technology-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);padding:18px 0}.technology-track{display:flex;width:max-content;animation:technology-drift 45s linear infinite;will-change:transform}.technology-set{display:flex;align-items:center;gap:42px;margin:0;padding:0 42px 0 0;list-style:none;flex-shrink:0}.technology-logo{display:flex;gap:11px;align-items:center;white-space:nowrap;min-height:50px;color:#30445e;font-size:17px;font-weight:600;letter-spacing:-.4px}.technology-logo img{object-fit:contain;opacity:.85}.technology-wordmark img{width:212px;height:32px}.technology-paused .technology-track{animation-play-state:paused}@keyframes technology-drift{to{transform:translateX(-50%)}}
.reviews-section{background:#fff}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.review-card{margin:0;border-top:2px solid #e6b34b;background:linear-gradient(145deg,#f3f7fc,#fff);padding:28px;display:flex;flex-direction:column;min-width:0}.review-context{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#526987;font-weight:600}.review-card blockquote{margin:25px 0 30px;position:relative;flex:1}.review-quote-mark{display:block;color:#b57c17;font-family:Georgia,serif;font-size:48px;line-height:.7;margin-bottom:14px}.review-card blockquote p{font-size:17px;line-height:1.7;color:#1f3654;margin:0;letter-spacing:-.15px}.review-card figcaption{border-top:1px solid #dce4ef;padding-top:18px}.review-card figcaption strong{display:block;font-size:13px}.review-card figcaption small{display:block;color:#60738c;font-size:10px;margin-top:5px}
.service-hero{background:radial-gradient(ellipse at 85% 25%,#e4efff,transparent 60%),#f8fbff;padding-top:28px;padding-bottom:55px}.service-back{margin-bottom:38px}.service-hero h1{max-width:1000px;font-size:clamp(38px,5vw,68px)}.service-intro{max-width:740px;font-size:18px;margin-bottom:28px}.service-signal{margin-top:50px;border-top:1px solid #d2dfef;padding-top:24px;display:flex;gap:30px;align-items:center}.service-signal>span{font-size:11px;max-width:170px;color:#5c708b}.service-signal ol{list-style:none;display:flex;flex:1;margin:0;padding:0;gap:15px}.service-signal li{flex:1;font-size:13px;padding:16px 20px;background:#fff;border:1px solid #cdddef;border-radius:10px;position:relative}.service-signal li:last-child{background:#fff3d7;border-color:#e8c47c}.service-signal li+li:before{content:'→';position:absolute;left:-14px;color:#668bb7}.service-understand{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.service-needs{list-style:none;margin:0;padding:0;max-width:500px}.service-needs li{padding:15px 0 15px 23px;border-bottom:1px solid #e0e7ef;position:relative;color:#4f6380;font-size:15px}.service-needs li:before{content:'';width:5px;height:5px;border-radius:50%;background:#d9981b;position:absolute;left:0;top:26px}.service-approach{border-left:3px solid #dba127;padding:10px 0 10px 32px}.service-approach h3{font-size:28px;line-height:1.18}.service-approach p{margin:0;line-height:1.8}.service-delivery{background:#f5f8fc}.service-deliverables{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:40px 0 25px}.service-deliverables article{border-top:1px solid #cad8e9;padding-top:20px}.service-deliverables h3{margin:25px 0 18px;font-size:24px}.service-deliverables p{font-size:15px;margin-bottom:0}.service-evidence{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}.service-evidence-copy h2{font-size:clamp(29px,3.4vw,45px)}.service-evidence-copy>p:not(.eyebrow){line-height:1.85}.service-principle{padding:35px;background:#102745;border-radius:14px}.service-principle h3{color:#fff;line-height:1.2;font-size:27px}.service-principle p{color:#c4d4e8;font-size:15px;line-height:1.8;margin-bottom:0}.principle-mark{display:block;color:#f4ba48;font-size:45px;line-height:1.1;margin-bottom:28px}.service-method{border-top:1px solid #e4ebf3}.service-next{background:#edf4fc}.service-next .button{margin-bottom:35px}.related-services{display:flex;gap:20px 35px;border-top:1px solid #cbd9ea;padding-top:25px;flex-wrap:wrap}.related-services a{font-size:13px;color:#2b547f}.related-services a:hover{text-decoration:underline}
@media(max-width:800px){.technology-heading{gap:25px}.reviews-grid{grid-template-columns:1fr}.review-card{padding:25px;display:grid;grid-template-columns:1fr 2fr;gap:0 25px}.review-card blockquote{grid-row:1/3;grid-column:2;margin:0}.review-card figcaption{align-self:end;margin-top:25px}.review-quote-mark{font-size:36px;margin-bottom:8px}.service-signal{display:block}.service-signal>span{display:block;margin-bottom:15px;max-width:none}.service-understand,.service-evidence{gap:40px;grid-template-columns:1fr}.service-approach{max-width:650px}.service-deliverables{gap:25px}.service-deliverables h3{font-size:21px}}
@media(max-width:500px){.technology-band{padding-bottom:32px}.technology-heading{grid-template-columns:1fr;gap:22px}.technology-heading>div:last-child{justify-self:start}.technology-set{gap:30px;padding-right:30px}.technology-logo{font-size:15px}.technology-logo img{width:27px;height:27px}.review-card{display:flex;gap:0;padding:25px}.review-card blockquote{margin:20px 0 25px}.review-card figcaption{align-self:stretch;margin:0}.review-card blockquote p{font-size:16px}.service-hero{padding-top:22px}.service-back{margin-bottom:25px}.service-hero h1{font-size:39px;line-height:1.1}.service-intro{font-size:16px}.service-signal{margin-top:35px}.service-signal ol{gap:10px;flex-direction:column}.service-signal li{flex:none;padding:14px 17px}.service-signal li+li:before{content:none}.service-deliverables{grid-template-columns:1fr;gap:25px;margin-top:30px}.service-deliverables h3{margin:14px 0;font-size:25px}.service-approach{padding-left:22px}.service-principle{padding:28px}.related-services{flex-direction:column;gap:18px}}
@media(max-width:500px){.technology-logo.technology-wordmark img{width:180px;height:27px}}

/* Native disclosure controls: all questions are initially closed; answer text stays in HTML. */
.service-faq{background:#f8fafc;border-top:1px solid #dce4ef}
.service-faq .section-heading{margin-bottom:34px}
.service-faq h2{font-size:clamp(30px,3.3vw,46px);max-width:620px}
.faq-list{border-top:1px solid #d2deec}
.faq-item{border-bottom:1px solid #d2deec;scroll-margin-top:100px}
.faq-question{display:grid;grid-template-columns:32px minmax(0,1fr) 30px;align-items:center;gap:18px;min-height:80px;padding:24px 8px;cursor:pointer;list-style:none;border-radius:8px;transition:color .2s,background .2s}
.faq-question::-webkit-details-marker{display:none}
.faq-question::marker{content:''}
.faq-question:hover{background:#edf3fa}
.faq-question:focus-visible{outline:3px solid #1965cc;outline-offset:3px}
.faq-number{color:#976400;font-size:12px;font-weight:600;letter-spacing:1px}
.faq-question h3{font-size:clamp(19px,1.65vw,24px);line-height:1.4;letter-spacing:-.025em;margin:0}
.faq-toggle-icon{width:28px;height:28px;border:1px solid #c4d4e7;border-radius:50%;padding:5px;color:#24558c}
.faq-toggle-vertical{transform-origin:center;transition:transform .2s}
.faq-item[open] .faq-toggle-vertical{transform:scaleY(0)}
.faq-item[open] .faq-question{color:#24558c}
.faq-answer{max-width:1000px;padding:0 48px 28px 58px}
.faq-answer p{font-size:16px;line-height:1.8;color:#455a75;margin:0 0 16px;overflow-wrap:break-word}
.faq-answer p:last-child{margin-bottom:0}
.service-faq-jump{display:inline-flex;align-items:center;gap:10px;margin-left:22px;padding:14px 0;font-size:13px;font-weight:600;color:#24558c;text-decoration:underline;text-underline-offset:5px}
.service-faq-jump .ui-icon{width:16px;height:16px}
@media(max-width:700px){.faq-question{grid-template-columns:22px minmax(0,1fr) 26px;gap:12px;padding:22px 4px}.faq-question h3{font-size:19px}.faq-toggle-icon{width:26px;height:26px}.faq-answer{padding:0 4px 24px 38px}.faq-answer p{font-size:15px;line-height:1.8}.service-faq-jump{display:flex;width:fit-content;margin:12px 0 0}.service-faq .section-heading{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){.faq-question,.faq-toggle-vertical{transition:none}}
