/* Services page: clear editorial layout with bespoke artwork and the shared site palette. */
.service-hero { position:relative; overflow:hidden; background:#111d35; color:white; }
.service-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 75% 35%,rgba(67,163,165,.14),transparent 55%); pointer-events:none; }
.service-hero-layout { position:relative; display:grid; grid-template-columns:1fr .9fr; align-items:center; gap:64px; min-height:420px; padding:48px 0; }
.service-hero .eyebrow { color:#a9efd9; }
.service-hero h1 { margin:0 0 12px; color:#fff; font-size:clamp(3rem,5vw,4.5rem); line-height:1.08; }
.service-hero-subtitle { margin:0 0 25px; max-width:42rem; color:#c6d5e5; font-size:1.08rem; }
.service-hero .breadcrumb { margin:0; }
.service-hero .breadcrumb-item,.service-hero .breadcrumb-item.active { color:#d4e1e9; }
.service-hero .breadcrumb-item a { color:#a9efd9; }
.service-hero .breadcrumb-item + .breadcrumb-item::before { color:#90a6b9; }
.service-hero-art { position:relative; width:100%; max-width:360px; justify-self:center; }
.service-hero-art::after { content:''; position:absolute; inset:13px -13px -13px 13px; border:1px solid #a9efd933; border-radius:22px; pointer-events:none; }
.service-hero-art img { display:block; width:100%; aspect-ratio:1; object-fit:cover; border-radius:22px; }
.services-overview-head { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:60px; margin-bottom:32px; }
.services-overview-head h2 { margin-bottom:0; }
.services-overview-head p { margin:0; font-size:.94rem; line-height:1.8; }
.service-detail-card { display:grid; grid-template-columns:38% 62%; height:100%; min-height:260px; overflow:hidden; border:1px solid #e1e7ef; border-radius:14px; background:white; transition:border-color .2s,box-shadow .2s; }
.service-detail-card:hover { border-color:#b6cec8; box-shadow:0 12px 30px #111d350b; }
.service-detail-art { position:relative; min-height:260px; overflow:hidden; background:#f3f6fa; }
.service-detail-art img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.service-detail-card:hover .service-detail-art img { transform:scale(1.025); }
.service-detail-icon { position:absolute; top:17px; left:17px; display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:9px; color:#147d79; background:white; box-shadow:0 4px 16px #111d3514; font-size:.9rem; }
.service-detail-body { display:flex; flex-direction:column; align-items:flex-start; padding:26px; }
.service-detail-body h3 { margin:0 0 11px; font-size:1.15rem; line-height:1.4; }
.service-detail-body p { margin:0 0 20px; font-size:.87rem; line-height:1.75; }
.service-detail-body .link-arrow { width:100%; margin-top:auto; justify-content:space-between; color:#09635f; font-size:.82rem; }
.service-detail-body .link-arrow i { display:inline-flex; align-items:center; justify-content:center; width:27px; height:27px; border-radius:50%; background:#e7f5f1; }
@media (max-width:991.98px) { .service-hero-layout { min-height:0; gap:28px; } .services-overview-head { gap:28px; } }
@media (max-width:767.98px) { .service-hero-layout { grid-template-columns:1fr; padding:42px 0; } .service-hero-art { max-width:260px; justify-self:start; } .services-overview-head { grid-template-columns:1fr; gap:15px; } }
@media (max-width:575.98px) { .service-hero h1 { font-size:2.7rem; } .service-hero-art { max-width:210px; } .service-detail-card { grid-template-columns:1fr; } .service-detail-art { height:200px; min-height:0; } .service-detail-body { padding:23px; } }
