/* Shared solutions components. Intentionally no rules for existing feature pages. */
.solution-page{--sol-ink:#162d38;--sol-muted:#536772;--sol-accent:#a9eadc;--sol-line:#dce5e6;color:var(--sol-ink);font-family:Manrope,Arial,sans-serif;font-size:17px;line-height:1.7;background:#fff}
.solution-page *{box-sizing:border-box}.solution-page h1,.solution-page h2,.solution-page h3,.solution-page p,.solution-page figure{margin:0}.solution-page a{color:inherit}.solution-page img{max-width:100%;height:auto}.solution-page button{font:inherit}.solution-page h1,.solution-page h2,.solution-page h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;font-weight:650;color:inherit}.solution-page h2{font-size:clamp(30px,3.15vw,49px);line-height:1.18;margin:14px 0 25px}.solution-page h3{font-size:25px;line-height:1.3;margin:12px 0 18px}.solution-page p{margin:0 0 18px}.solution-page p:last-child{margin-bottom:0}.solution-page section[id]{scroll-margin-top:100px}.solution-wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.solution-section{padding:94px 0}.solution-label{font-size:12px!important;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:#39756d;margin-bottom:18px!important}.solution-small{font-size:11px;letter-spacing:.13em;font-weight:750}.solution-heading{max-width:810px;margin-bottom:42px}.solution-heading>p:not(.solution-label),.solution-copy>p{color:var(--sol-muted)}
.solution-hero{position:relative;isolation:isolate;background:#10212d;color:#fff;overflow:hidden}.solution-hero-photo{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:center;z-index:-2}.solution-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,23,35,.88),rgba(7,23,35,.55) 44%,rgba(7,23,35,.08) 80%),linear-gradient(0deg,rgba(7,23,35,.8),transparent 26%)}.solution-hero-inner{padding-top:26px;padding-bottom:30px}.solution-breadcrumb{display:flex;gap:13px;font-size:12px;color:#d1e0e4;margin-bottom:65px;flex-wrap:wrap}.solution-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.solution-hero-copy{max-width:810px}.solution-hero .solution-label{color:#a9eadc}.solution-page h1{font-size:clamp(38px,4.45vw,68px);line-height:1.12;letter-spacing:-.05em;margin-bottom:26px}.solution-page h1 em{font-style:normal;color:#a9eadc}.solution-hero .solution-lead{max-width:640px;color:#e0e9ed;font-size:18px;line-height:1.7}.solution-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.solution-page .solution-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;max-width:100%;padding:16px 23px;min-height:56px;border:1px solid transparent;border-radius:12px;background:#a9eadc;color:#173b3a;text-decoration:none;font-size:14px;font-weight:750;line-height:1.5;cursor:pointer;transition:background .2s}.solution-page .solution-btn:hover{background:#c6f7e9;color:#173b3a}.solution-page .solution-btn-secondary{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.4);color:#fff}.solution-page .solution-btn-secondary:hover{background:rgba(255,255,255,.17);color:white}.solution-hero-note{color:#c5d4da;font-size:12px;margin-top:20px!important}.solution-hero-bottom{display:flex;gap:35px;border-top:1px solid #ffffff35;margin-top:60px;padding-top:23px;font-size:13px;color:#e0e9ed}.solution-hero-bottom span:before{content:"";width:6px;height:6px;border-radius:100%;background:#a9eadc;display:inline-block;margin-right:10px;vertical-align:middle}.solution-section-nav{border-bottom:1px solid var(--sol-line);background:#f8faf9}.solution-section-nav .solution-wrap{display:flex;gap:38px;flex-wrap:wrap;padding-block:21px}.solution-section-nav a{font-size:13px;font-weight:650;text-decoration:none;border-bottom:1px solid transparent}.solution-section-nav a:hover{border-color:#39756d}
.solution-compare{display:grid;grid-template-columns:1fr 1fr;gap:24px}.solution-card{padding:35px 38px;border:1px solid var(--sol-line);border-radius:22px;background:#f6f8f8}.solution-card-accent{background:#e9f6f0;border-color:#cbe6db}.solution-card ul,.solution-checks{padding:0!important;margin:22px 0 0!important;list-style:none}.solution-card li,.solution-checks li{position:relative;padding-left:25px;margin:13px 0;color:#405b63}.solution-card li:before,.solution-checks li:before{content:"✓";position:absolute;left:0;color:#267867}.solution-footnote{font-size:12px;color:#63777e;margin-top:17px!important}.solution-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:76px}.solution-reverse .solution-copy{order:2}.solution-reverse .solution-visual{order:1}.solution-copy h2{font-size:clamp(29px,2.9vw,44px)}.solution-copy .solution-link{margin-top:25px}.solution-example{padding:20px 24px;background:#f1f6f3;border-left:3px solid #70b7a4;margin-top:25px;border-radius:0 12px 12px 0}.solution-example>span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.solution-example p{font-size:15px;margin-top:9px!important}.solution-page .solution-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:750;text-decoration:none;border-bottom:1px solid #b3d3c9;padding-bottom:5px}.solution-page .solution-link:hover{color:#277267}.solution-visual{padding:24px;border-radius:24px;background:#eef3f2;border:1px solid #dbe7e3;min-width:0}.solution-visual-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:750;letter-spacing:.03em;margin-bottom:22px;color:#4b6970}.solution-status{color:#367c68}.solution-screen{display:block;border-radius:14px;overflow:hidden;background:#fff;border:1px solid #dce5e6;line-height:0;box-shadow:0 12px 32px #1537430c}.solution-screen img{display:block;width:100%;height:auto}.solution-visual-answer .solution-screen{max-width:338px;margin:auto;outline:5px solid #d3e9de;outline-offset:5px}.solution-page figcaption{font-size:11px;line-height:1.6;color:#57717a;margin-top:20px;text-align:center}.solution-visual-handoff{background:#eff2f9;border-color:#dde2f0}.solution-handoff-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:18px;align-items:center}.solution-callout{font-size:12px;line-height:1.65;color:#51677c}.solution-callout b{display:block;font-size:14px;color:#233f59}.solution-callout p{margin:8px 0 0}.solution-callout>span{display:block;font-size:27px;margin:24px 0;color:#768cad}.solution-mini-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:25px 0}.solution-mini-grid>div{border-top:2px solid #bdd9ce;padding-top:15px}.solution-mini-grid b{display:block;font-size:14px}.solution-mini-grid span{display:block;font-size:12px;color:#536772;line-height:1.5;margin-top:6px}.solution-visual-hours{background:#f6f0e7;border-color:#e9dfd1;display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;align-items:center}.solution-hours-note h3{font-size:24px}.solution-hours-note p{font-size:13px;color:#6c675e}.solution-hours-note .solution-small{font-size:9px}.solution-phone{padding:7px;border:2px solid #293f43;background:#293f43;border-radius:27px;box-shadow:0 20px 30px #263a4020}.solution-phone .solution-screen{border-radius:19px;border:0;box-shadow:none}.solution-visual-hours figcaption{grid-column:1/-1;margin-top:0}
.solution-quality{background:#f1f6f6}.solution-quality .solution-heading{max-width:830px}.solution-quality-grid{display:grid;grid-template-columns:1.75fr 1fr;gap:30px;align-items:start;margin-bottom:28px}.solution-report,.solution-dialogue{padding:28px;background:#fff;border-radius:22px;border:1px solid var(--sol-line);min-width:0}.solution-report .solution-screen{border-radius:10px;box-shadow:none}.solution-report-note{margin-top:35px;background:#edf5f2;border-radius:14px;padding:25px}.solution-report-note b{font-size:18px}.solution-report-note p{font-size:15px;color:#4d6872;margin-top:10px}.solution-dialogue .solution-screen{max-width:270px;margin:auto}.solution-responsibility{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.solution-responsibility article{border-top:1px solid #bcd0d2;padding-top:23px}.solution-role-number{font-size:12px;color:#408177;font-weight:800}.solution-responsibility p{color:#536772;font-size:16px}.solution-disclaimer{padding:20px 25px;border-radius:12px;background:#f4f6f6;font-size:13px;color:#526871;margin-top:30px!important}.solution-process{background:#132d3b;color:#f3fafb}.solution-process .solution-label{color:#a9eadc}.solution-process .solution-heading>p:not(.solution-label){color:#c0d3db}.solution-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:0;margin:0;list-style:none}.solution-steps li{border-top:1px solid #587480;padding-top:25px}.solution-steps li>span{font-size:33px;color:#a9eadc;font-weight:500;letter-spacing:-.06em}.solution-steps h3{font-size:20px;letter-spacing:-.025em;margin:20px 0 12px}.solution-steps p{font-size:14px;color:#c0d3db}.solution-process .solution-footnote{color:#a7bdc7;margin-top:30px!important}.solution-faq-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:65px}.solution-faq details{border-bottom:1px solid #d5e1e3;padding:20px 0}.solution-faq details:first-child{border-top:1px solid #d5e1e3}.solution-faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;font-size:16px;font-weight:650;list-style:none;line-height:1.6}.solution-faq summary::-webkit-details-marker{display:none}.solution-faq summary span{font-size:27px;color:#47776e;flex:none}.solution-faq details[open] summary span{transform:rotate(45deg)}.solution-faq details p{margin-top:15px;color:#526871;font-size:15px}.solution-final{text-align:center;padding:76px 0 86px;background:#e4f3ed;border-top:1px solid #cfe5dc}.solution-final p:not(.solution-label){max-width:680px;margin:0 auto 27px;color:#45645f}.solution-final .solution-btn{background:#173d39;color:white}.solution-final .solution-btn:hover{background:#24574f}.solution-final-note{display:block;margin-top:18px;color:#55756b;font-size:12px}.solution-page :focus-visible{outline:3px solid #438caa;outline-offset:5px}
@media(min-width:1700px){.solution-hero-inner{padding-top:30px}.solution-hero-copy{padding-block:25px}.solution-hero-photo{object-position:center 40%}}
@media(max-width:1100px){.solution-wrap{width:calc(100% - 60px)}.solution-split{gap:38px}.solution-section{padding:70px 0}.solution-hero-copy{max-width:690px}.solution-page h1{font-size:53px}.solution-hero .solution-lead{max-width:560px}.solution-handoff-grid{grid-template-columns:1.6fr 1fr;gap:12px}.solution-visual{padding:18px}.solution-callout b{font-size:12px}.solution-callout p{font-size:11px}.solution-visual-hours{gap:12px}.solution-hours-note h3{font-size:20px}.solution-faq-layout{gap:30px}}
@media(max-width:767px){.solution-wrap{width:calc(100% - 36px)}.solution-section{padding:52px 0}.solution-page{font-size:16px}.solution-page h2{font-size:32px}.solution-label{font-size:10px!important}.solution-hero-photo{position:relative;height:280px!important;object-fit:cover;object-position:right;display:block;z-index:0;width:100%}.solution-hero{display:flex;flex-direction:column}.solution-hero:after{display:none}.solution-hero-inner{order:-1;padding-top:18px;padding-bottom:0}.solution-breadcrumb{margin-bottom:33px;font-size:11px}.solution-page h1{font-size:clamp(33px,8.5vw,49px);line-height:1.14;letter-spacing:-.045em}.solution-hero .solution-lead{font-size:16px;line-height:1.65}.solution-actions{gap:11px;margin-top:25px}.solution-page .solution-btn{min-height:50px;padding:13px 17px;font-size:13px}.solution-actions .solution-btn{width:100%;justify-content:space-between}.solution-hero-note{font-size:11px}.solution-hero-bottom{gap:12px;flex-wrap:wrap;margin-top:28px;padding:18px 0;font-size:10px}.solution-hero-bottom span:before{margin-right:6px;width:4px;height:4px}.solution-section-nav .solution-wrap{gap:12px 20px;padding-block:16px}.solution-section-nav a{font-size:11px}.solution-compare,.solution-split,.solution-quality-grid,.solution-faq-layout{grid-template-columns:1fr;gap:26px}.solution-reverse .solution-copy{order:0}.solution-reverse .solution-visual{order:0}.solution-heading{margin-bottom:28px}.solution-card{padding:26px}.solution-card h3{font-size:24px}.solution-card li{font-size:14px}.solution-small{font-size:10px}.solution-visual-answer .solution-screen{max-width:290px}.solution-callout b{font-size:12px}.solution-callout p{font-size:11px}.solution-visual-hours{grid-template-columns:.85fr 1.15fr}.solution-hours-note h3{font-size:21px}.solution-hours-note p{font-size:12px}.solution-mini-grid b{font-size:12px}.solution-mini-grid span{font-size:11px}.solution-visual-top{font-size:10px;gap:6px}.solution-report,.solution-dialogue{padding:18px}.solution-report-note{margin-top:22px;padding:18px}.solution-report-note b{font-size:16px}.solution-report-note p{font-size:13px}.solution-responsibility{grid-template-columns:1fr;gap:24px}.solution-responsibility article{padding-top:16px}.solution-responsibility h3{font-size:24px;margin:8px 0 10px}.solution-responsibility p{font-size:15px}.solution-steps{grid-template-columns:1fr 1fr;gap:25px 20px}.solution-steps h3{font-size:18px;margin-top:15px}.solution-steps p{font-size:13px}.solution-faq-layout{gap:12px}.solution-faq summary{font-size:15px}.solution-final{padding:55px 0}.solution-final h2{font-size:30px}.solution-final h2 br{display:none}.solution-page section[id]{scroll-margin-top:25px}}
@media(max-width:360px){.solution-wrap{width:calc(100% - 28px)}.solution-page h1{font-size:31px}.solution-page h2{font-size:29px}.solution-hero-photo{height:225px!important}.solution-handoff-grid{grid-template-columns:1fr}.solution-handoff-grid .solution-screen{max-width:240px;margin:auto}.solution-callout{display:none}.solution-visual-hours{grid-template-columns:1fr}.solution-hours-note h3 br{display:none}.solution-phone{max-width:225px;margin:auto}.solution-steps{grid-template-columns:1fr}.solution-steps li{display:grid;grid-template-columns:36px 1fr;column-gap:15px}.solution-steps h3{margin:0 0 8px}.solution-steps p{grid-column:2}.solution-hero-bottom{gap:8px 12px}}
.solution-hero-inner{padding-top:65px}.solution-process .solution-steps li,.solution-process .solution-steps h3{color:#f3fafb}
@media(max-width:767px){.solution-hero-inner{padding-top:35px}}
@media(prefers-reduced-motion:reduce){.solution-page *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
