/* Joomlastyle dedicated service detail pages */
.service-detail-page{--sd-gold:#cba568;--sd-ink:#102237;color:#24364a;padding:12px 0 6px;background:#f7f9fc}
.service-detail-page .service-detail-hero{max-width:1160px;margin:0 auto 62px;padding:42px 38px;display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;background:linear-gradient(135deg,#0b1b2d,#142f49);border-radius:22px;overflow:hidden;box-shadow:0 24px 60px rgba(12,31,50,.14);color:#fff}
.service-detail-copy{position:relative;z-index:1}.service-detail-kicker{display:inline-block;color:#e0bd83;font-size:11px;letter-spacing:.15em;font-weight:800;margin-bottom:18px}.service-detail-copy h1{font-size:clamp(30px,4vw,48px);line-height:1.3;color:#fff;margin:0 0 18px}.service-detail-copy p{font-size:15px;line-height:2.1;color:#c5d2df;margin:0 0 12px}.service-detail-copy .service-detail-lead{font-size:19px;line-height:1.9;color:#fff;font-weight:700;margin-bottom:12px}.service-detail-visual{height:330px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(203,165,104,.2),transparent 68%);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:20px}.service-detail-visual img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 30px rgba(0,0,0,.2))}.service-detail-cta{display:inline-flex;align-items:center;gap:22px;margin-top:18px;padding:13px 21px;border-radius:9px;background:linear-gradient(135deg,#e0bd83,#b88949);color:#14283c!important;text-decoration:none!important;font-size:14px;font-weight:800;transition:transform .2s,box-shadow .2s}.service-detail-cta:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(203,165,104,.22)}.service-detail-benefits{max-width:1100px;margin:0 auto 62px;text-align:center;padding:0 20px}.service-detail-label{font-size:12px;color:#ad854c;font-weight:800;letter-spacing:.08em}.service-detail-benefits>h2,.service-detail-bottom h2{font-size:clamp(23px,3vw,32px);color:#10263d;margin:12px 0 28px}.service-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;text-align:right}.service-detail-page[dir=ltr] .service-benefit-grid{text-align:left}.service-benefit-grid article{background:#fff;border:1px solid #e8edf3;border-radius:14px;padding:24px;box-shadow:0 10px 28px rgba(18,42,65,.05)}.service-benefit-grid b{color:#c49a5c;font-size:13px;letter-spacing:.08em}.service-benefit-grid h3{font-size:17px;color:#142b42;margin:12px 0 8px}.service-benefit-grid p{font-size:13px;line-height:1.9;color:#718094;margin:0}.service-detail-bottom{max-width:1100px;margin:auto;text-align:center;padding:38px 20px;background:#edf2f7;border-radius:18px}.service-detail-bottom h2{margin:0 0 8px}.service-detail-bottom p{color:#718094;font-size:14px;margin:0}.service-detail-inline-link{display:inline-flex;margin-top:14px;color:#b18449;font-weight:800;font-size:13px;text-decoration:none}.service-detail-inline-link:hover{color:#142b42}
@media(max-width:800px){.service-detail-page{padding:24px 0 48px}.service-detail-page .service-detail-hero{margin:0 14px 42px;padding:28px 21px;grid-template-columns:1fr;gap:20px;border-radius:16px}.service-detail-copy h1{font-size:30px}.service-detail-copy .service-detail-lead{font-size:17px}.service-detail-visual{height:230px;order:-1}.service-benefit-grid{grid-template-columns:1fr;gap:12px}.service-benefit-grid article{padding:19px}.service-detail-benefits{margin-bottom:40px}.service-detail-bottom{margin:0 14px;padding:30px 17px}}


/* Same CTA component and visual treatment as /services.php */
.service-detail-page .service-detail-bottom { display: none !important; }
.service-pages-shared-cta {
    position: relative; max-width: 1240px; margin: 2px auto; padding: 55px 70px;
    background: linear-gradient(180deg,#0d1b2d 0%,#0b1626 100%);
    border: 1px solid rgba(212,170,75,.35); border-radius: 24px;
    overflow: hidden; text-align: center; box-sizing: border-box;
}
.service-pages-shared-cta::before {
    content: ""; position: absolute; left: -120px; bottom: -40px; width: 340px; height: 340px;
    background: url("../images/rocket.png") no-repeat center; background-size: contain; pointer-events: none;
}
.service-pages-shared-cta h2 {
    position: relative; z-index: 1; color: #fff; font-size: 54px; margin: 0 0 15px; font-weight: 700;
}
.service-pages-shared-cta p {
    position: relative; z-index: 1; font-size: 24px; line-height: 1.8; color: #c7d4ea; margin: 0 0 40px;
}
.service-pages-shared-cta .cta-buttons {
    display: flex; justify-content: center; align-items: center; gap: 22px;
    flex-wrap: wrap; position: relative; z-index: 2;
}
.service-pages-shared-cta .btn {
    min-width: 220px; height: 58px; border-radius: 14px; font-size: 20px; font-weight: 700;
    transition: .3s; display: inline-flex; align-items: center; justify-content: center; text-decoration: none;
}
.service-pages-shared-cta .btn-primary { background: #d4aa4b; color: #071321; border: none; }
.service-pages-shared-cta .btn-outline { border: 2px solid #d4aa4b; color: #fff; background: transparent; }
.service-pages-shared-cta .btn-success { border: 2px solid #d4aa4b; background: transparent; color: #fff; }
@media (max-width: 991px) {
    .service-pages-shared-cta { padding: 40px 25px; }
    .service-pages-shared-cta h2 { font-size: 38px; }
    .service-pages-shared-cta p { font-size: 18px; margin-bottom: 28px; }
}
@media (max-width: 576px) {
    .service-pages-shared-cta { margin: 24px 14px 0; padding: 34px 20px; }
    .service-pages-shared-cta h2 { font-size: 28px; }
    .service-pages-shared-cta p { font-size: 16px; }
    .service-pages-shared-cta .cta-buttons { flex-direction: column; gap: 12px; }
    .service-pages-shared-cta .btn { width: 100%; min-width: 0; font-size: 17px; }
    .service-pages-shared-cta::before { width: 190px; height: 190px; left: -75px; bottom: -25px; opacity: .8; }
}


/* Service detail pages: keep the entire page aligned with the dark site identity. */
.page-section.service-detail-page-shell {
    background: #071321 !important;
    color: #e8eef6 !important;
    padding-top: 28px;
    padding-bottom: 0px;
}
.page-section.service-detail-page-shell .section-header .section-badge,
.page-section.service-detail-page-shell .section-header .section-title {
    color: #fff !important;
}
.page-section.service-detail-page-shell .page-content {
    background: transparent !important;
    color: #e8eef6 !important;
}
.page-section.service-detail-page-shell .service-detail-page,
.page-section.service-detail-page-shell .service-detail-benefits {
    background: transparent !important;
}
.page-section.service-detail-page-shell .service-detail-benefits {
    display: none !important;
}
.page-section.service-detail-page-shell .service-detail-bottom {
    display: none !important;
}
