/* Desktop draft: request cards and separate programme and support screens. */
.request-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.request-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:183px;padding:25px 25px 24px;border:1px solid #dce3f2;border-radius:22px;background:#fff;color:#233452;text-align:left;transition:transform .2s,box-shadow .2s,border-color .2s}
.request-card:hover{transform:translateY(-3px);border-color:#8195d8;box-shadow:0 10px 24px #304b7d10}
.request-card .request-label{font-size:12px;font-weight:600;line-height:1.5;color:#5b6c90;margin-bottom:13px}
.request-card strong{display:block;max-width:100%;padding-right:12px;font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.025em}
.request-plus{display:grid;place-items:center;width:29px;height:29px;align-self:flex-end;margin-top:auto;border-radius:50%;background:#edf1fb;color:#4056d8;font-size:23px;line-height:1;font-weight:400}
.request-card strong{margin-bottom:20px}
.request-complex{background:#334bc2;color:#fff;border-color:#334bc2}
.request-complex .request-label{color:#dbe4ff}
.request-complex .request-plus{background:#ffffff26;color:#fff}
.request-presentation{grid-column:span 2;background:#e9eefb}
.request-presentation strong{max-width:450px}
.request-care,.request-feedback{background:#f5f7fc}
.route-dialog{width:min(1200px,calc(100% - 56px));padding:34px 34px 25px;max-height:92dvh}
.route-dialog>h2{font-size:29px;line-height:1.25;letter-spacing:-.035em;margin:0 30px 22px 0;max-width:1000px}
.route-dialog .route-panel{padding:0;background:transparent;border-radius:0}
.route-dialog .route-map-graph{gap:30px}
.route-dialog .route-map-methods{gap:8px}
.route-dialog .route-map-node{min-height:57px;padding:10px 13px}
.route-dialog .route-map-terminal{padding:24px 22px;min-height:208px}
.route-dialog .route-map-terminal strong{font-size:18px}
.route-dialog .route-terminal-summary{font-size:13.5px;line-height:1.7}
.route-dialog .route-map .route-explanation{padding:17px 22px;margin-top:18px;min-height:110px}
.route-dialog .route-map .route-explanation .journey-label{font-size:11px;margin:0 0 5px}
.route-dialog #route-title{font-size:20px!important;line-height:1.3!important;color:#263753!important;margin:0 0 8px!important}
.route-dialog #route-explanation-text{font-size:14px;line-height:1.65}
.route-dialog .route-bottom{margin-top:17px}
.training-dialog{padding-bottom:24px}
.training-dialog #service-demo{margin-top:17px;margin-bottom:0}
.training-dialog .sd-item:not(.is-open) .sd-reveal{display:none}
.training-dialog .sd-topic-list{margin-bottom:0}
.training-dialog .sd-item:last-child{margin-bottom:0}
.support-screen{background:#f5f6fb}
@media(min-width:1001px){
 .context-update .training-dialog .service-modal-intro{gap:32px;margin-bottom:12px;align-items:center}
 .training-dialog .service-modal-intro h3{font-size:27px;margin-bottom:15px}
 .context-update .training-dialog .product-definition{font-size:20px;line-height:1.65;margin-bottom:20px}
 .training-dialog .service-modal-intro p:not(.product-definition){font-size:17px;line-height:1.7}
 .training-dialog .service-modal-intro .text-link{font-size:15px;margin-top:13px}
 .training-dialog .service-modal-intro .product-object{max-width:390px}
 .training-dialog .sd-topic-button{min-height:84px;padding-block:22px;font-size:29px}
 .routes-section{padding-block:50px}
 #work{padding-block:28px}
 #work>.wrap>.heading{margin-bottom:24px}
 #work>.wrap>.heading h2{font-size:44px;line-height:1.15}
 #work .partnership{column-gap:24px}
 #work .partnership-side{padding:22px 25px;gap:16px}
 #work .partnership-side h3{font-size:23px;line-height:1.25;margin-bottom:12px}
 #work .partnership-side p{font-size:14px;line-height:1.75}
 #work .partnership-connection{height:26px}
 #work .partnership-result{font-size:14px;line-height:1.5;margin-top:8px}
 #work .process-flow{margin-top:22px;gap:18px}
 #work .process-flow article{padding:22px 24px}
 #work .process-flow h3{font-size:22px;line-height:1.2;min-height:52px;margin-bottom:14px}
 #work .process-flow article>p:not(.process-output){font-size:14px;line-height:1.65}
 #work .process-flow .process-output{font-size:15px;line-height:1.55;margin-top:17px;padding-top:13px}
 #work .process-output span{font-size:11px;margin-bottom:5px}
 #work .report-trigger{min-height:42px;font-size:12px;margin-top:15px;padding:9px 12px}
 .support-screen{min-height:100svh;display:flex;align-items:center;padding-block:38px}
 .context-update .support-screen .support-section{margin-top:0}
 .context-update .support-screen .support-heading{margin-bottom:25px}
 .context-update .support-screen .support-heading h3{font-size:36px;line-height:1.2}
 .support-screen .support-feature{padding:30px 32px 24px}
 .support-screen .support-kicker{font-size:24px;margin-bottom:16px}
 .support-screen .support-feature h4{font-size:36px;line-height:1.13;margin-bottom:20px}
 .support-screen .support-feature>p:not(.support-kicker){font-size:17px;line-height:1.7}
 .support-screen .team-constellation,.support-screen .personal-dialogue{padding-top:18px}
 .support-screen .team-constellation svg,.support-screen .personal-dialogue svg{height:145px}
 .support-screen .support-feature-link{font-size:15px;min-height:45px;margin-top:20px;padding-top:17px}
}
@media(max-width:1000px){
 .request-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .request-card{min-height:185px}
 .route-dialog{width:calc(100% - 24px);padding:35px 25px 24px}
 .route-dialog>h2{font-size:25px}
}
@media(max-width:600px){
 .request-grid{grid-template-columns:1fr}
 .request-presentation{grid-column:auto}
 .request-card{min-height:160px}
}
@media(prefers-reduced-motion:reduce){.request-card{transition:none}.request-card:hover{transform:none}}
