/* UI-02, composed against the 1672 × 941 master. Shared UI lives in home.css. */
.solution-hero{position:relative;isolation:isolate;max-width:var(--max);height:calc(533 * var(--u));margin:auto;overflow:hidden;background:linear-gradient(#fff 20%,#f8fbfc 65%,#edf2f2)}
.solution-visual{position:absolute;inset:0;z-index:-1;pointer-events:none}.solution-visual>:is(svg,img.adt-raster-art){width:100%;height:100%}
.solution-visual .mobile-scene{display:none}
.solution-copy{position:absolute;top:calc(13 * var(--u));left:50%;transform:translateX(-50%);width:calc(1240 * var(--u));text-align:center}
.solution-copy .eyebrow{font-size:calc(10 * var(--u));letter-spacing:calc(3.7 * var(--u));line-height:1.6}
.solution-copy .short-rule{width:calc(49 * var(--u));height:calc(2 * var(--u));margin:calc(11 * var(--u)) auto calc(14 * var(--u))}
.solution-copy h1{font-size:calc(60 * var(--u));line-height:1.05;letter-spacing:calc(-1.6 * var(--u));white-space:nowrap}
.solution-subtitle{font-size:calc(30 * var(--u));font-weight:700;line-height:1.3;margin-top:calc(8 * var(--u));letter-spacing:calc(-.3 * var(--u))}
.solution-intro{font-size:calc(18 * var(--u));line-height:1.45;margin:calc(8 * var(--u)) auto 0;color:var(--body);max-width:calc(1120 * var(--u))}
.solution-buttons{display:flex;justify-content:center;gap:calc(17 * var(--u));margin-top:calc(20 * var(--u))}
.solution-buttons .button{min-height:calc(48 * var(--u));font-size:calc(17 * var(--u));padding:calc(10 * var(--u)) calc(25 * var(--u));gap:calc(20 * var(--u));white-space:nowrap}
.solution-buttons .button>span{font-size:calc(28 * var(--u))}.solution-buttons .primary{min-width:calc(263 * var(--u))}.solution-buttons .secondary{min-width:calc(214 * var(--u))}
.illustration-note{position:absolute;right:calc(18 * var(--u));bottom:calc(6 * var(--u));font-size:calc(10 * var(--u));line-height:1.5;color:#304b5a;background:#ffffffed;padding:calc(3 * var(--u)) calc(8 * var(--u));border-radius:3px}
.process-band{display:grid;grid-template-columns:calc(449 * var(--u)) 1fr;gap:calc(30 * var(--u));max-width:var(--max);min-height:calc(201 * var(--u));margin:auto;padding:calc(26 * var(--u)) calc(45 * var(--u)) calc(25 * var(--u)) calc(71 * var(--u));background:linear-gradient(100deg,#eaf8f8,#edfafa 60%,#e8f7f7)}
.process-intro{padding-right:calc(22 * var(--u));border-right:1px solid #cee3e7}
.process-intro .eyebrow,.benefit-intro .eyebrow{display:flex;align-items:center;gap:calc(10 * var(--u));font-size:calc(9.5 * var(--u));letter-spacing:calc(3 * var(--u));white-space:nowrap}
.process-intro .eyebrow>span,.benefit-intro .eyebrow>span{height:1px;background:var(--teal);width:calc(44 * var(--u));flex-shrink:0}
.process-intro h2{font-size:calc(30 * var(--u));line-height:1.18;letter-spacing:calc(-.5 * var(--u));margin-top:calc(17 * var(--u))}
.process-intro>p:not(.eyebrow){font-size:calc(15 * var(--u));line-height:1.4;margin-top:calc(10 * var(--u));color:var(--body)}
.process-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(26 * var(--u));align-items:start}
.process{position:relative;border:0;padding:0 calc(5 * var(--u));background:transparent;text-align:center;min-width:0}
.process:not(:last-child):after{content:'→';position:absolute;right:calc(-25 * var(--u));top:calc(29 * var(--u));font:400 calc(29 * var(--u))/1 Arial;color:var(--teal)}
.process-icon{width:calc(74 * var(--u));height:calc(74 * var(--u));border-radius:50%;margin:calc(-3 * var(--u)) auto calc(3 * var(--u));display:grid;place-items:center;background:#d8f1f4;transition:background .2s,transform .2s}
.process-icon :is(svg,img.adt-raster-art){width:calc(39 * var(--u));height:calc(39 * var(--u))}.process strong{display:block;font:600 calc(23 * var(--u))/1.2 var(--latin)}
.process-copy{display:block;font-size:calc(16 * var(--u));line-height:1.35;color:var(--body);margin-top:calc(5 * var(--u))}
.process-more{display:block;font-size:calc(10 * var(--u));line-height:1.5;color:var(--teal);margin-top:calc(5 * var(--u));text-decoration:underline;text-underline-offset:3px}.process:hover .process-icon{background:#bce5ed;transform:translateY(-3px)}
.benefit-band{display:grid;grid-template-columns:calc(394 * var(--u)) 1.04fr 1fr .94fr;max-width:var(--max);margin:auto;min-height:calc(127 * var(--u));padding:calc(24 * var(--u)) calc(45 * var(--u)) calc(24 * var(--u)) calc(71 * var(--u));background:#fff}
.benefit-intro{padding-right:calc(22 * var(--u))}.benefit-intro h2{font-size:calc(27 * var(--u));line-height:1.18;margin-top:calc(12 * var(--u));letter-spacing:calc(-.5 * var(--u))}
.benefit{display:flex;gap:calc(24 * var(--u));align-items:center;border-left:1px solid #d4e1e7;padding:0 calc(25 * var(--u)) 0 calc(29 * var(--u))}
.benefit-icon{width:calc(69 * var(--u));height:calc(69 * var(--u));border-radius:50%;display:grid;place-items:center;background:#edf9fa;flex-shrink:0}.benefit-icon :is(svg,img.adt-raster-art){width:calc(42 * var(--u));height:calc(42 * var(--u))}
.benefit h3{font:600 calc(18 * var(--u))/1.2 var(--latin);margin:0}.benefit p{font-size:calc(14 * var(--u));line-height:1.4;color:var(--body);margin-top:calc(6 * var(--u))}
html[lang=en] .solution-subtitle{font-family:var(--latin);font-size:calc(31 * var(--u))}html[lang=en] .solution-buttons .button{font-family:var(--latin);font-size:calc(19 * var(--u))}html[lang=en] .process-intro h2,html[lang=en] .benefit-intro h2{font-family:var(--latin)}
.solution-page .contact-band{border-top:1px solid #e5eeee}
@media(max-width:1120px){
 .solution-hero{height:590px}.solution-copy{top:24px;width:94%}.solution-copy .eyebrow{font-size:9px;letter-spacing:2.3px}.solution-copy .short-rule{width:45px;height:2px;margin:12px auto 15px}.solution-copy h1{font-size:48px;letter-spacing:-1px;white-space:normal}.solution-subtitle,html[lang=en] .solution-subtitle{font-size:26px;line-height:1.4;margin-top:13px}.solution-intro{font-size:16px;line-height:1.6;max-width:790px;margin-top:12px}.solution-buttons{gap:13px;margin-top:19px}.solution-buttons .button{font-size:16px;min-height:48px;padding:11px 20px;gap:20px;border-radius:5px}.solution-buttons .button>span{font-size:28px}.solution-buttons .primary,.solution-buttons .secondary{min-width:0}html[lang=en] .solution-buttons .button{font-size:18px}
 .solution-visual{top:0}.solution-visual>:is(svg,img.adt-raster-art){width:100%;height:100%}.illustration-note{font-size:10px;right:12px;bottom:8px;padding:4px 7px}
 .process-band{grid-template-columns:1fr;padding:30px 4%;gap:27px}.process-intro{border:0;padding:0;max-width:700px}.process-intro .eyebrow,.benefit-intro .eyebrow{font-size:9px;letter-spacing:2.3px;white-space:normal;gap:12px}.process-intro .eyebrow>span,.benefit-intro .eyebrow>span{width:35px}.process-intro h2{font-size:29px;margin-top:13px;line-height:1.3;letter-spacing:0}.process-intro>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-top:12px}.process-flow{gap:24px}.process{padding:0 5px}.process-icon{width:70px;height:70px;margin:0 auto 8px}.process-icon :is(svg,img.adt-raster-art){width:37px;height:37px}.process strong{font-size:23px}.process-copy{font-size:15px;line-height:1.5;margin-top:6px}.process-more{font-size:12px;margin-top:7px}.process:not(:last-child):after{right:-23px;top:25px;font-size:26px}
 .benefit-band{grid-template-columns:repeat(3,minmax(0,1fr));padding:28px 4%;gap:25px}.benefit-intro{grid-column:1/-1;padding:0}.benefit-intro h2{font-size:28px;line-height:1.3;margin-top:12px;letter-spacing:0}.benefit-intro h2 br{display:none}.benefit{display:block;padding:0 18px 0 0;border-left:0}.benefit+.benefit{border-left:1px solid #d4e1e7;padding-left:22px}.benefit-icon{width:62px;height:62px;margin-bottom:13px}.benefit-icon :is(svg,img.adt-raster-art){width:36px;height:36px}.benefit h3{font-size:20px}.benefit p{font-size:15px;line-height:1.55;margin-top:7px}
}
@media(max-width:760px){
 .solution-hero{height:auto;display:flex;flex-direction:column;background:#fff}.solution-copy{position:relative;top:auto;left:auto;transform:none;width:100%;padding:29px 6% 25px;background:linear-gradient(#fff,#f8fbfc)}.solution-copy .eyebrow{font-size:8px;letter-spacing:1.9px;line-height:1.7}.solution-copy h1{font-size:clamp(35px,7.6vw,54px);line-height:1.05;letter-spacing:-1px;text-wrap:balance}.solution-copy .short-rule{margin:13px auto 17px}.solution-subtitle,html[lang=en] .solution-subtitle{font-size:clamp(21px,4.1vw,29px);line-height:1.4;margin-top:16px;letter-spacing:0}.solution-intro{font-size:16px;line-height:1.65;margin-top:15px}.solution-buttons{gap:10px;margin-top:21px;flex-wrap:wrap}.solution-buttons .button{font-size:15px;gap:17px;padding:12px 17px;min-height:49px}.solution-visual{position:relative;inset:auto;z-index:0;width:100%;height:auto;aspect-ratio:1.7;overflow:hidden}.solution-visual>:is(svg,img.adt-raster-art){position:absolute;inset:0;width:100%;height:100%;}
 /* The lower source viewport contains the scene only, with no reference copy. */
 .solution-visual>:is(svg,img.adt-raster-art):not(.mobile-scene){display:none}.solution-visual .mobile-scene{display:block}.illustration-note{position:relative;right:auto;bottom:auto;margin:0;padding:7px 6%;font-size:10px;background:#f6fafb;text-align:center}
 .process-band{padding:29px 6%;gap:24px}.process-intro h2{font-size:27px}.process-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 16px}.process:not(:last-child):after{display:none}.process-icon{width:68px;height:68px}.process strong{font-size:23px}.process-copy{font-size:15px}.process-more{font-size:12px}.benefit-band{display:block;padding:29px 6%}.benefit-intro h2{font-size:27px}.benefit-intro h2 br{display:block}.benefit{display:flex;align-items:center;gap:19px;padding:22px 0!important;border-left:0!important;border-bottom:1px solid #e0ebee}.benefit:last-child{border:0;padding-bottom:0!important}.benefit-icon{width:63px;height:63px;margin:0}.benefit h3{font-size:21px}.benefit p{font-size:16px;line-height:1.6;margin-top:6px}
}
@media(max-width:390px){.solution-copy{padding-left:5%;padding-right:5%}.solution-buttons{flex-direction:column}.solution-buttons .button{width:100%}.solution-copy h1{font-size:35px}.process-intro h2,.benefit-intro h2{font-size:25px}.process-intro .eyebrow,.benefit-intro .eyebrow{font-size:8px;letter-spacing:2px}.process-copy{font-size:14px}.benefit{gap:15px}}
