/* Approved consultation additions; existing homepage and shared styles stay unchanged. */
.hero .home-consultation-note {margin-top:.8rem;color:#bce4ff;font-size:.9rem;line-height:1.5;overflow-wrap:anywhere}
.hero .home-consultation-note span {color:#55d9e5}
.contact-copy .home-consultation-invite {color:#c2e4ff;font-size:1rem}

.home-services-more {display:flex;justify-content:center;margin-top:1.5rem}

/* Public service catalog: scoped separately from the homepage and authenticated portal. */
.services-page .catalog-hero,.services-page .catalog-consultation {background:linear-gradient(110deg,#03253d,#032239);color:#fff;padding:3.5rem 0}
.services-page .catalog-hero h1 {font-size:36px;font-weight:700;line-height:1.12;max-width:24ch;letter-spacing:-.04em}
.services-page .catalog-hero .eyebrow {color:#86c5ff}
.services-page .catalog-hero p:not(.eyebrow),.services-page .catalog-consultation p:not(.eyebrow) {max-width:70ch;margin-top:1.2rem;line-height:1.6}
.services-page .catalog-hero-layout {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:2.5rem;align-items:center}
.services-page .catalog-hero-copy {min-width:0}
.services-page .catalog-hero-image {display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:.45rem}
.services-page .catalog-hero-actions {display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.8rem}
.services-page .catalog-section {padding:3rem 0;background:#fcfdff}
.services-page .catalog-service {border:1px solid #d5e1eb;border-radius:.45rem;background:#fff;padding:2rem;margin-top:2rem}
.services-page .catalog-service-heading {max-width:60ch;margin-bottom:1.5rem}
.services-page .catalog-service-heading h3 {font-size:1.7rem;line-height:1.25}
.services-page .catalog-service-layout {display:block}
.services-page .catalog-service-copy {min-width:0;line-height:1.6}
.services-page .catalog-service-copy p + p {margin-top:.9rem}
.services-page .catalog-tagline {margin-bottom:1rem;color:#184d74}
.services-page .catalog-service-copy h4 {font-size:1.05rem;margin:1.3rem 0 .5rem}
.services-page .catalog-service-copy ul {margin:.5rem 0 1.2rem;padding-left:1.4rem}
.services-page .catalog-service-copy li + li {margin-top:.35rem}
.services-page .catalog-detail p {margin-top:.4rem}
.services-page .catalog-scope {padding-left:1rem}
.services-page .catalog-why {background:linear-gradient(110deg,#f3f8fc,#f2f7fb)}
.services-page .catalog-reasons {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:1.8rem}
.services-page .catalog-reason {min-width:0;background:#fff;border:1px solid #d5e1eb;border-radius:.45rem;padding:1.5rem}
.services-page .catalog-reason h3 {line-height:1.3;color:#184d74}
.services-page .catalog-reason p {line-height:1.6;margin-top:.9rem}
.services-page .catalog-consultation .button {margin-top:1.6rem}
.services-page .catalog-consultation .catalog-account-note {font-size:.9rem;color:#c2e4ff}
.services-page h1,.services-page h2,.services-page h3,.services-page p,.services-page li {overflow-wrap:anywhere}
.services-page .button {max-width:100%;text-align:center}
@media(max-width:900px) {
  .services-page .catalog-hero h1 {font-size:32px}
  .services-page .catalog-hero-layout {grid-template-columns:minmax(0,1fr)}
  .services-page .catalog-reasons {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px) {
  .services-page .catalog-hero h1 {font-size:26px}
  .services-page .catalog-hero,.services-page .catalog-consultation,.services-page .catalog-section {padding:2.5rem 0}
  .services-page .catalog-reasons {grid-template-columns:minmax(0,1fr)}
  .services-page .catalog-service {padding:1.2rem}
  .services-page .catalog-service-heading h3 {font-size:1.4rem}
  .services-page .catalog-hero-actions {gap:.8rem}
}
@media(hover:hover) {
  .services-page .catalog-reason:hover {border-color:#9fbcd4}
}

/* Keep the existing form toggle as a close control above the open panel. */
.services-page .catalog-form-area {max-width:52rem}
.services-page #contact-toggle {display:block;margin:1.5rem 0 0 auto}
.services-page #contact-toggle[aria-expanded="false"] {display:none}
.services-page .catalog-form-area .contact-form-panel.is-open {margin-top:1rem}

/* Contact cards only; preserve the existing CTA and submission controller. */
#contact .contact-form-panel {max-width:none;margin-inline:auto;transition:none}
#contact .catalog-form-area {max-width:none}
#contact #contact-toggle[aria-expanded="true"] {display:none}
#contact .contact-card {background:#fff;color:var(--text);border-radius:.45rem;padding:clamp(1.25rem,3vw,2rem)}
#contact .contact-card .form-field label span {color:#526579}
#contact .contact-card-close {display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:0 0 1.25rem auto;padding:0;border:0;border-radius:.25rem;background:transparent;color:#184d74;cursor:pointer}
#contact .contact-card-close:hover {background:#E7EDF3;color:#126bb3}
#contact .contact-card-close svg {width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
#contact .contact-card-close:focus-visible {outline:3px solid #16bfdf;outline-offset:3px}


.services-page .catalog-hero-copy > p:not(.eyebrow) {color:#DCE7F1}


/* Light contact/consultation sections only; preserve their existing layout. */
body#home #contact.contact-section,.services-page #contact.catalog-consultation {background:#E7EDF3;color:var(--text)}
body#home #contact .eyebrow,.services-page #contact .eyebrow {color:#184d74}
.services-page #contact.catalog-consultation > .container > p:not(.eyebrow) {color:var(--text)}

/* Small breadcrumb sits in the hero's existing top padding without moving it. */
.services-page #main {position:relative}
.services-page .services-breadcrumb {position:absolute;top:.7rem;left:0;right:0;font-size:.85rem;color:#86c5ff;z-index:1}
.services-page .services-breadcrumb a:hover {text-decoration:underline}
.services-page .services-breadcrumb [aria-hidden] {margin-inline:.4rem}

@media(max-width:600px) {
  .services-page .services-breadcrumb {top:0;display:flex;align-items:center;font-size:18px;line-height:1.4;color:#DCE7F1;white-space:nowrap}
  .services-page .services-breadcrumb a {display:inline-flex;align-items:center;min-height:44px;padding:.5rem .25rem;color:#fff;font-weight:400}
  .services-page .catalog-hero {padding-top:3rem}
}
