/* Model-development catalogue: scoped to the project overview. */
.model-services { padding:clamp(56px,7vw,96px) 24px; background:#f4f7fa; color:#18334c; scroll-margin-top:100px; }
.model-services__inner { max-width:1180px; margin:0 auto; }
.model-services__heading { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:32px; margin-bottom:30px; }
.model-services__eyebrow { display:block; color:#2450c8; font-size:12px; font-weight:750; letter-spacing:.08em; }
body.visual-refresh .model-services h2 { margin:14px 0 0; color:#18334c; font-size:clamp(28px,3.4vw,44px); line-height:1.28; letter-spacing:-.04em; }
.model-services__heading > p { max-width:520px; margin:0; color:#53677c; font-size:16px; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere; }
.model-services__tabs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 28px; }
.model-services__tabs a { padding:11px 16px; border:1px solid #cbd8e5; border-radius:8px; background:#fff; color:#284866; font-size:14px; font-weight:650; line-height:1.4; }
.model-services__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:start; }
.model-service { min-width:0; overflow:hidden; border:1px solid #d5e1eb; border-radius:20px; background:#fff; scroll-margin-top:110px; }
.model-service__media { position:relative; margin:0; overflow:hidden; background:#e4edf4; aspect-ratio:16/8; }
.model-service__media img { display:block; width:100%; height:100%; object-fit:cover; }
.model-service__number { position:absolute; top:16px; left:16px; padding:6px 10px; border-radius:5px; background:#17324ce8; color:#fff; font-size:11px; font-weight:700; letter-spacing:.06em; }
.model-service__media figcaption { position:absolute; bottom:12px; right:12px; padding:4px 7px; background:#17324ce8; color:#fff; font-size:10px; line-height:1.4; border-radius:4px; }
.model-service__copy { padding:clamp(22px,3vw,30px); }
body.visual-refresh .model-services h3 { margin:0 0 12px; color:#18334c; font-size:clamp(20px,2vw,25px); line-height:1.4; letter-spacing:-.035em; word-break:keep-all; overflow-wrap:anywhere; }
.model-service__copy > p { margin:0; color:#52667b; font-size:15px; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere; }
.model-service__tags { display:flex; flex-wrap:wrap; gap:7px; margin:20px 0; padding:0; list-style:none; }
.model-service__tags li { padding:5px 9px; border-radius:5px; background:#edf4f8; color:#395b74; font-size:12px; font-weight:600; line-height:1.45; }
.model-service details { border-top:1px solid #dce5ed; border-bottom:1px solid #dce5ed; }
.model-service summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 0; color:#284866; font-size:14px; font-weight:650; cursor:pointer; list-style:none; }
.model-service summary::-webkit-details-marker { display:none; }
.model-service summary::after { content:'+'; flex:0 0 auto; font-size:21px; font-weight:400; line-height:1; }
.model-service details[open] summary::after { content:'−'; }
.model-service details > div { padding-bottom:18px; }
.model-service details p { margin:0; color:#53677c; font-size:14px; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere; }
.model-service details p + p { margin-top:12px; }
.model-service__link { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:48px; margin-top:15px; color:#2450c8; font-size:14px; font-weight:750; }
.model-service__link span { font-size:20px; }
.model-services__scope { display:grid; grid-template-columns:.8fr 1.2fr; gap:36px; margin-top:32px; padding:clamp(24px,4vw,38px); border:1px solid #cbdcd9; border-radius:16px; background:#eaf3ef; }
.model-services__scope .model-services__eyebrow { margin-bottom:12px; color:#276455; }
.model-services__scope p { margin:0; color:#405f5c; font-size:14px; line-height:1.9; word-break:keep-all; overflow-wrap:anywhere; }
.model-services__scope p + p { margin-top:12px; }
.model-services__scope a { display:flex; flex-wrap:wrap; align-items:center; gap:4px 16px; margin-top:18px; padding-top:16px; border-top:1px solid #bcd4ca; color:#254f49; font-size:14px; font-weight:650; line-height:1.7; }
.model-services__scope a span { color:#2450c8; }
.model-services a:focus-visible,.model-services summary:focus-visible { outline:3px solid #2450c8; outline-offset:4px; border-radius:4px; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .model-service__media img { transition:transform .5s cubic-bezier(.2,.7,.2,1); }
 .model-service:hover .model-service__media img { transform:scale(1.025); }
 .model-services__tabs a { transition:background .2s,border-color .2s; }
 .model-services__tabs a:hover { background:#eaf0ff; border-color:#2450c8; }
}
@media(max-width:760px) {
 .model-services { padding:48px 20px; }
 .model-services__heading,.model-services__scope { grid-template-columns:1fr; gap:18px; }
 .model-services__heading > p { font-size:15px; }
 .model-services__grid { grid-template-columns:1fr; gap:20px; }
 .model-service__media { aspect-ratio:16/9; }
 .model-services__scope { margin-top:24px; }
}
@media(max-width:400px) {
 .model-services { padding-inline:16px; }
 .model-services__tabs { gap:6px; }
 .model-services__tabs a { padding:10px 12px; font-size:13px; }
 .model-service__copy { padding:20px; }
 .model-service__media figcaption { font-size:9px; }
}
