/* The solutions page extends the established V10 public identity. */
.solutions-page{color:var(--rappli-ink);caret-color:var(--rappli-blue)}
.solutions-page [hidden]{display:none!important}
.solutions-page ::selection{background:var(--rappli-surface);color:var(--rappli-navy)}
.solutions-page a{text-underline-offset:.22em}
.solutions-page :is(a,summary,input[type=checkbox]):focus-visible{outline:3px solid var(--rappli-blue);outline-offset:4px}
.solutions-container{width:min(1120px,calc(100% - 80px));margin-inline:auto}
.solutions-page .page-hero>.wrap{max-width:1120px}
.solutions-page .page-hero h1{max-width:850px}
.solutions-page .page-hero p{max-width:780px}
.solutions-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:30px}
.solutions-text-link{font-weight:750;color:var(--rappli-blue)}
.solutions-section{padding:68px 0;border-top:1px solid var(--rappli-line);scroll-margin-top:94px}
.solutions-section h2{font-size:clamp(28px,3vw,38px);line-height:1.2;letter-spacing:-.02em;font-weight:800;color:var(--rappli-navy);margin:0 0 24px;text-wrap:balance}
.solutions-section h3{font-size:21px;line-height:1.4;color:var(--rappli-navy);margin:0 0 12px;font-weight:750}
.solutions-section p{font-size:18px;line-height:1.7;max-width:70ch;margin:0 0 20px}
.solutions-columns{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.solutions-details{padding:32px;background:var(--rappli-surface);border-radius:var(--rappli-radius-card)}
.solutions-details dl{margin:24px 0}
.solutions-details dl>div+div{margin-top:21px;padding-top:21px;border-top:1px solid var(--rappli-line)}
.solutions-details dt{font-size:17px;font-weight:750;color:var(--rappli-navy);margin-bottom:7px}
.solutions-details dd{margin:0;font-size:16px;line-height:1.65}
.solutions-details p:last-child{margin-bottom:0}
.solutions-map{margin-top:48px;margin-bottom:0;text-align:center}
.solutions-map-agency{width:max-content;max-width:100%;margin:0 auto;padding:18px 30px;border-radius:12px;background:var(--rappli-blue);color:#fff}
.solutions-map strong,.solutions-map span{display:block}
.solutions-map strong{font-size:18px}.solutions-map span{font-size:15px;margin-top:5px}
.solutions-map-clients{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:780px;margin:32px auto 0;position:relative}
.solutions-map-clients::before{content:"";position:absolute;left:25%;right:25%;top:-17px;height:16px;border:1px solid var(--rappli-line);border-bottom:0}
.solutions-map-clients::after{content:"";position:absolute;left:50%;top:-32px;height:16px;border-left:1px solid var(--rappli-line)}
.solutions-map-clients>div{padding:20px;border:1px solid var(--rappli-line);border-radius:12px;background:var(--rappli-surface)}
.solutions-map-clients ul{list-style:none;padding:15px 0 0;margin:15px 0 0;border-top:1px solid var(--rappli-line);font-size:15px;line-height:1.8}
.solutions-map figcaption{max-width:66ch;margin:20px auto 0;font-size:15px;line-height:1.6;color:var(--rappli-muted)}
@media(max-width:480px){.solutions-map-clients{gap:12px}.solutions-map-clients>div{padding:14px 9px}.solutions-map-clients strong{font-size:16px}.solutions-map-clients span,.solutions-map-clients ul{font-size:14px}}
.solutions-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;list-style:none;counter-reset:steps;margin:38px 0 0;padding:0}
.solutions-steps li{counter-increment:steps}
.solutions-steps h3::before{content:counter(steps) ". ";color:var(--rappli-blue)}
.solutions-steps p{font-size:17px}
.solutions-steps--journey{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.solutions-ready{background:var(--rappli-surface)}
.solutions-ready .solutions-details{background:#fff}
.solutions-partner-entry{margin-top:24px!important}
.solutions-custom{background:var(--rappli-surface)}
.solutions-form-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.3fr);gap:56px;align-items:start}
.solutions-form-intro h2{max-width:10ch}
.solutions-form-intro p{font-size:17px}
.solutions-form-surface{padding:32px}
.solutions-form-surface fieldset{border:0;padding:0;margin:0;min-width:0}
.solutions-form-surface .rp-alert{margin-bottom:24px}
.solutions-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.solutions-field{margin-bottom:23px;min-width:0}
.solutions-field .rp-label{font-size:15px}
.solutions-field .rp-label span{font-size:12px;font-weight:500;white-space:nowrap}
.solutions-page .solutions-hint,.solutions-page .solutions-required{font-size:14px;line-height:1.6;color:var(--rappli-muted);margin-bottom:12px}
.solutions-required{margin-bottom:24px!important}
.solutions-field textarea{resize:vertical;min-height:142px}
.solutions-field-error{display:block;color:#94283a;font-size:14px;line-height:1.5;margin-top:7px}
.solutions-field-error:empty{display:none}
.solutions-consent{display:flex;gap:12px;align-items:start;font-size:14px;line-height:1.7;color:var(--rappli-ink)}
.solutions-consent input{width:20px;height:20px;min-width:20px;margin:3px 0 0;accent-color:var(--rappli-blue)}
.solutions-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.solutions-form-surface button[type=submit]{margin-bottom:14px}
.solutions-faq .solutions-container{max-width:850px}
.solutions-faq details{border-bottom:1px solid var(--rappli-line);padding:22px 0}
.solutions-faq summary{font-size:19px;line-height:1.45;font-weight:750;color:var(--rappli-navy);cursor:pointer}
.solutions-faq details p{margin:16px 0 0;font-size:17px}
@media(max-width:1000px){.solutions-columns{gap:36px}.solutions-form-layout{grid-template-columns:minmax(190px,.65fr) minmax(0,1.35fr);gap:30px}.solutions-form-grid{grid-template-columns:1fr;gap:0}.solutions-steps{gap:24px}.solutions-steps--journey{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.solutions-container{width:calc(100% - 40px)}.solutions-section{padding:44px 0}.solutions-columns,.solutions-form-layout{grid-template-columns:1fr;gap:26px}.solutions-steps,.solutions-steps--journey{grid-template-columns:1fr;gap:14px;margin-top:26px}.solutions-details{padding:26px}.solutions-form-surface{padding:24px}.solutions-form-intro h2{max-width:none}.solutions-section p{font-size:17px}.solutions-actions{align-items:flex-start;flex-direction:column;gap:20px}.solutions-section h2{font-size:30px}.solutions-page .page-hero h1{font-size:clamp(32px,8vw,42px)}.solutions-form-surface .rp-button{width:100%}}
@media(prefers-reduced-motion:reduce){.solutions-page{scroll-behavior:auto}}
