/* DASC MOB DESIGN — page styles: service detail
   Shared components (lightbox) live in assets/css/main.css. */

@media(max-width:900px){.svc-det-grid{grid-template-columns:1fr!important;}}
/* Service hero banner */
.svc-hero { position:relative; height:480px; overflow:hidden; display:flex; align-items:flex-end; }
.svc-hero-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(0.4); }
.svc-hero-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,0.8) 0%,transparent 60%); }
.svc-hero-inner { position:relative; padding-bottom:48px; text-align:center; }
.svc-hero-breadcrumb { font-family:var(--font-heading); font-size:0.72rem; letter-spacing:0.35em; color:var(--gold); margin-bottom:12px; display:flex; align-items:center; justify-content:center; gap:10px; }
.svc-hero-breadcrumb a { color:var(--gold); text-decoration:none; }
.svc-hero-breadcrumb span { opacity:.5; }
.svc-hero-title { font-family:var(--font-display); font-size:clamp(2.5rem,5vw,4rem); font-weight:600; line-height:1.1; margin-bottom:12px; color:#fff; }
.svc-hero-subtitle { color:rgba(255,255,255,.7); font-size:1.05rem; max-width:560px; margin:0 auto; }
/* Service content */
.svc-content-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:80px; align-items:start; }
.svc-desc { font-size:1.05rem; color:var(--text-muted); line-height:1.9; margin-bottom:24px; }
.svc-body { color:var(--text-muted); line-height:1.9; margin-bottom:32px; }
.svc-extra { color:var(--text-muted); line-height:1.9; margin-top:32px; }
.svc-sidebar { background:var(--bg-card); border:1px solid var(--border); padding:36px; position:sticky; top:100px; }
.svc-sidebar-label { font-family:var(--font-heading); font-size:0.72rem; letter-spacing:.25em; text-transform:uppercase; color:var(--gold); margin-bottom:20px; }
.svc-features { list-style:none; margin-bottom:32px; }
.svc-feature-item { display:flex; align-items:flex-start; gap:10px; padding:10px 0; border-bottom:1px solid var(--border); font-size:.88rem; color:var(--text-muted); line-height:1.5; }
.svc-cta-phone { margin-top:16px; text-align:center; font-size:.82rem; color:var(--text-muted); }
.svc-cta-phone a, .link-gold { color:var(--gold); text-decoration:none; }
.svc-other-label { font-family:var(--font-heading); font-size:.7rem; letter-spacing:.25em; text-transform:uppercase; color:var(--text-muted); margin-bottom:12px; }
.svc-other-link { display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid var(--border); color:var(--text-muted); text-decoration:none; font-size:.85rem; transition:color .2s; }
.svc-other-link:hover { color:var(--gold); }
.svc-other-services { margin-top:28px; border-top:1px solid var(--border); padding-top:20px; }
.svc-gallery-margin { margin-top:32px; }
@media(max-width:640px){.svc-hero{height:360px;}.svc-hero-inner{text-align:center;}}
/* Service gallery grid */
.svc-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
}
.svc-gallery-item {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    aspect-ratio: 4/3;
}
.svc-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: brightness(.85) contrast(1.05);
    transition: transform .4s ease, filter .3s ease;
}
.svc-gallery-item:hover img { transform: scale(1.04); filter: brightness(.45) contrast(1.05); }
.svc-gallery-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity .3s ease;
}
.svc-gallery-overlay svg { width: 32px; height: 32px; }
.svc-gallery-item:hover .svc-gallery-overlay { opacity: 1; }
