/* Shared service catalog and accessible grouped navigation. */
.service-catalog-page { padding-top: 100px; }
.service-offer-hero { padding: 4rem 0 4.5rem; background: radial-gradient(ellipse at 85% 0, rgba(34,211,238,.12), transparent 65%); }
.service-offer-hero h1 { max-width: 980px; font-weight: 750; letter-spacing: -.035em; }
.service-catalog-lead { max-width: 800px; }
.service-breadcrumb { display:flex; flex-wrap:wrap; gap:.5rem 1rem; list-style:none; padding:0; margin:0 0 2.5rem; font-size:.85rem; }
.service-breadcrumb li + li::before { content:'/'; margin-right:1rem; color:#94a3b8; }
.service-offer-grid, .service-deliverables { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.service-offer-card { display:flex; flex-direction:column; color:inherit; text-decoration:none; }
.service-offer-card h3 { margin:.75rem 0; }
.service-offer-link { margin-top:auto; padding-top:1rem; color:var(--cyan); font-weight:650; }
.service-offer-card:hover, .service-offer-card:focus-visible { border-color:var(--cyan); color:inherit; }
.service-start-card { border-top:3px solid var(--cyan); }
.service-scope-note { display:block; font-size:.85rem; color:#cbd5e1; border-top:1px solid #334155; padding-top:1rem; }
.service-delivery-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; padding-left:1.5rem; }
.service-delivery-steps strong, .service-delivery-steps span { display:block; margin-bottom:.5rem; }
.service-inquiry-panel { display:flex; align-items:center; gap:2rem; justify-content:space-between; }
.service-inquiry-panel .btn { flex-shrink:0; }
.service-related-links { display:flex; flex-wrap:wrap; gap:1rem 2rem; padding-left:1rem; }
.nav-service-catalog > .nav-catalog-heading::after { display:none; }
.nav-service-catalog .nav-submenu-toggle { display:inline-flex; align-items:center; justify-content:center; width:30px; min-height:44px; }
.nav-service-catalog .nav-submenu-toggle span { width:7px; height:7px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(45deg); }
.nav-service-catalog > .nav-catalog-menu { display:none; }
.nav-service-catalog.submenu-open > .nav-catalog-menu { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:min(720px,calc(100vw - 48px)); left:0; transform:none; gap:1rem; padding:1.25rem; max-height:min(75vh,680px); }
.nav-service-group h2 { font-size:.8rem; color:var(--cyan); margin:.5rem 0; padding:0 .75rem; text-transform:uppercase; letter-spacing:.06em; }
.nav-service-group ul { list-style:none; padding:0; }
.nav-service-group a { display:block; font-size:.85rem; letter-spacing:0; }
.nav-service-catalog a:focus-visible, .nav-service-catalog button:focus-visible { outline:2px solid var(--cyan); outline-offset:2px; }
@media(max-width:991.98px) {
  .navbar.menu-open .navbar-collapse { background:#03080f; }
  body.nav-open .instant-chat { visibility:hidden; }
  .service-offer-grid, .service-deliverables { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nav-service-catalog.submenu-open > .nav-catalog-menu { width:100%; max-height:none; padding:.75rem; grid-template-columns:1fr; overflow:visible; }
  .service-inquiry-panel { flex-direction:column; align-items:flex-start; }
}
@media(max-width:575.98px) {
  .service-catalog-page { padding-top:80px; }
  .service-offer-hero { padding:2.5rem 0; }
  .service-offer-grid, .service-deliverables, .service-delivery-steps { grid-template-columns:1fr; }
  .service-related-links { display:block; }
  .service-related-links li { margin-bottom:1rem; }
}
