.client-portal__banner img { display:block; width:100%; height:220px; object-fit:cover; }
.client-portal__breadcrumb { margin-top:2rem; padding:.3rem .65rem; background:#f6f8f2; font-size:.94rem; }
.client-portal__breadcrumb a { color:#555; }
.client-portal__breadcrumb strong { color:var(--mk-red); }
.client-portal__intro { padding:1.8rem 0 1.5rem; border-bottom:1px solid #555; font-size:1.05rem; line-height:1.5; }
.client-portal__intro p:last-child { margin-bottom:0; }
.client-portal__intro img { max-width:100%; height:auto; }
.client-portal__section-title { position:relative; font-family:'Barlow',sans-serif; font-weight:500; font-size:1.5rem; text-transform:uppercase; color:#111; margin:0 0 1.5rem; padding-bottom:.8rem; }
.client-portal__section-title::after { content:''; position:absolute; bottom:0; left:0; width:76px; height:2px; background:var(--mk-red); }
.client-portal__heading { font-family:'Barlow',sans-serif; font-weight:300; font-size:clamp(1.75rem,3.1vw,2.5rem); line-height:1.2; color:#555; margin:0 0 .8rem; }
.client-portal__heading strong { font-weight:700; }
.client-portal__access { padding-top:1.75rem; }
.client-portal__access-inner { display:grid; grid-template-columns:130px minmax(0,1fr) minmax(0,1fr); gap:2rem; padding:2rem; background:#f6f8f2; }
.client-portal__access-inner--login { grid-template-columns:130px minmax(0,600px); justify-content:center; }
.client-portal__lock { font-size:7rem; align-self:center; color:#fff; }
.client-portal__access h2 { font-family:'Barlow',sans-serif; font-size:1.8rem; font-weight:700; color:#555; line-height:1.2; margin:0 0 .6rem; }
.client-portal__access p { line-height:1.5; color:#666; }
.client-portal__login .form-control { border:1px solid #e6e7df; border-radius:4px; background:#fff; margin-bottom:.75rem; padding:.7rem .85rem; }
.client-portal__login-actions { display:flex; gap:1rem; align-items:center; flex-wrap:wrap; }
.client-portal__login-actions > a { font-weight:600; }
.client-portal__button { display:inline-flex; align-items:center; justify-content:center; padding:.65rem 1.5rem; min-width:140px; border:0; border-radius:4px; background:var(--mk-red); color:#fff; font-weight:600; line-height:1.4; }
.client-portal__button:hover { background:var(--mk-red-dark); color:#fff; }
.client-portal__first { border-left:1px solid var(--mk-red); padding-left:2rem; align-self:stretch; display:flex; flex-direction:column; justify-content:center; }
.client-portal__first > i { font-size:5rem; line-height:1; color:#fff; margin-bottom:1rem; }
.client-portal__first .client-portal__button { align-self:flex-start; }
.client-benefits { padding-top:3rem; padding-bottom:3rem; }
.client-benefits__body { display:grid; grid-template-columns:230px minmax(0,1fr); gap:2.5rem; margin-top:2rem; align-items:center; }
.client-benefits__illustration { border-right:1px solid var(--mk-red); padding:1.5rem 2rem 1.5rem 0; }
.client-benefits__illustration img { display:block; width:100%; height:auto; object-fit:contain; }
.client-benefits__drawing { text-align:center; }
.client-benefits__drawing > div { display:flex; justify-content:center; gap:.15rem; color:#25a8db; font-size:1.6rem; }
.client-benefits__drawing > i { font-size:7rem; line-height:1.4; color:#555; }
.client-benefits__body ul { list-style:none; padding:0; margin:0; }
.client-benefits__body li { display:flex; gap:1.25rem; align-items:start; margin:1.5rem 0; line-height:1.5; }
.client-benefits__body li > i { font-size:1.8rem; color:#25a8db; line-height:1.2; }
.client-portal a:focus-visible, .client-portal button:focus-visible, .client-portal input:focus-visible { outline:3px solid var(--mk-red); outline-offset:3px; }
.client-portal__account { padding:2rem 0 3rem; }
.client-portal__account .client-auth__card { box-shadow:none; border-radius:0; background:#f6f8f2; }
@media(max-width:991.98px) {
 .client-portal__access-inner { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .client-portal__lock { display:none; }
}
@media(max-width:767.98px) {
 .client-portal__banner img { height:135px; object-position:60% center; }
 .client-portal__breadcrumb { margin-top:1rem; font-size:.85rem; }
 .client-portal__intro { padding:1.5rem 0; }
 .client-portal__heading { font-size:1.9rem; }
 .client-portal__section-title { font-size:1.2rem; }
 .client-portal__access-inner, .client-portal__access-inner--login { grid-template-columns:minmax(0,1fr); padding:1.5rem; gap:1.75rem; }
 .client-portal__first { border-left:0; border-top:1px solid var(--mk-red); padding:1.5rem 0 0; }
 .client-portal__first > i { display:none; }
 .client-portal__first .client-portal__button, .client-portal__login-actions .client-portal__button { width:100%; }
 .client-portal__login-actions { gap:.85rem; }
 .client-benefits { padding-top:2.5rem; padding-bottom:2.5rem; }
 .client-benefits__body { grid-template-columns:minmax(0,1fr); gap:.5rem; margin-top:1rem; }
 .client-benefits__illustration { border-right:0; border-bottom:1px solid var(--mk-red); padding:1rem 0; max-width:240px; margin:0 auto; }
 .client-benefits__body li { gap:1rem; }
}
