/* Presentation only: the shared stylesheet retains layout and navigation behavior. */
:root {
  --navy: oklch(28% .055 248);
  --ivory: oklch(98% .014 85);
  --blue: oklch(46% .11 247);
  --sand: color-mix(in oklch, var(--ivory), var(--navy) 7%);
  --page: var(--ivory);
  --panel: color-mix(in oklch, var(--ivory), var(--navy) 3%);
  --card: oklch(99.5% .004 85);
  --popover: var(--navy);
  --text: var(--navy);
  --muted: oklch(46% .025 248);
  --edge: color-mix(in oklch, var(--navy) 18%, transparent);
  --state: color-mix(in oklch, var(--blue) 8%, transparent);
  --focus: var(--blue);
  --state-shadow: none;
  --panel-shadow: none;
  --pane-shadow: none;
  --popover-shadow: 0 6px 12px color-mix(in oklch, var(--navy) 15%, transparent);
  --ink-hover: color-mix(in oklch, var(--navy), white 14%);
}
body { font-size: 1rem; }
h1, h2, h3, h4 { font-weight: 600; letter-spacing: -.035em; }
.eyebrow { color: var(--blue); font-size: .72rem; letter-spacing: .12em; }
.glass-panel, .glass-card, .ticket-option { border: 1px solid var(--edge); border-radius: .25rem; }
.glass-panel, .glass-card, .site-header, .nav-group ul, .nav-enhanced .primary-menu { backdrop-filter: none; }
.button, .ticket-call, .menu-toggle, .nav-group a, .nav-group > summary, .primary-menu > li > a, .nav-group ul, .nav-enhanced .primary-menu, .card-link::after { border-radius: .2rem; }
.button, .ticket-call { border: 1px solid var(--edge); box-shadow: none; }
.button-primary, .ticket-call { border-color: var(--navy); }
.button:not(.button-primary) { background: transparent; }
.top-bar { background: var(--sand); color: var(--navy); }
.site-header, .solution-panel, .contact-panel, .site-footer {
  --muted: color-mix(in oklch, var(--ivory), var(--navy) 20%);
  --edge: color-mix(in oklch, var(--ivory) 25%, transparent);
  --state: color-mix(in oklch, var(--ivory) 12%, transparent);
  --focus: oklch(83% .075 245);
  background: var(--navy);
  color: var(--ivory);
}
.site-header { border-block-end: 1px solid var(--edge); box-shadow: none; }
.site-header .brand img, .solution-mark img, .footer-brand img, .site-footer .linkedin-logo { filter: brightness(0) invert(1); }
.primary-menu > li > a, .nav-group > summary { font-weight: 600; }
.primary-menu > li:last-child > a, .contact-panel .button-primary { background: var(--ivory); color: var(--navy); box-shadow: none; border: 1px solid var(--ivory); }
.nav-group ul, .nav-enhanced .primary-menu { color: var(--ivory); }
.nav-group ul { border: 1px solid var(--edge); }
.menu-toggle { background: transparent; color: var(--ivory); border: 1px solid var(--edge); box-shadow: none; }
.hero-copy h1 { line-height: 1.08; }
.hero-copy h1 span { color: var(--blue); font-weight: 400; }
.hero-intro { font-size: 1.0625rem; }
.hero-note { padding-inline-start: 1rem; border-inline-start: 3px solid var(--blue); }
.solution-panel { border: 0; padding: clamp(1.5rem, 1rem + 2vw, 2.5rem); }
.solution-list li > p { font-size: .9375rem; }
.solution-list li::before { color: var(--muted); font-weight: 600; }
.intro-layout { border: 0; border-block: 1px solid var(--edge); border-radius: 0; background: transparent; }
.intro-copy :is(h2, h3) { font-weight: 500; }
.service-card { border-block-start: 3px solid var(--blue); }
.service-card h3 { font-size: 1.5rem; }
.card-index, .card-end { color: var(--blue); font-size: .75rem; font-weight: 600; }
.about-layout { border: 0; border-radius: 0; }
.about-heading h2 { max-inline-size: 14ch; }
.link-list a { padding-inline: .75rem; }
.resource-card { background: transparent; border: 0; border-block-start: 1px solid var(--edge); border-radius: 0; }
.resource-card > span { color: var(--blue); }
.contact-panel { border: 0; border-inline-start: .3rem solid var(--blue); }
.contact-panel .eyebrow, .site-footer .eyebrow { color: var(--muted); }
.page-heading h1, .ticket-title { font-weight: 600; }
.article-aside { border-block-start: 3px solid var(--blue); }
.article-body { border: 0; }
.prose :is(h2, h3, h4, h5, h6) { color: var(--navy); }
.prose blockquote { border-inline-start-color: var(--blue); }
.ticket-option { border-block-start: 3px solid var(--blue); }
.site-footer { box-shadow: none; }
.primary-menu > li:last-child > a:active, .contact-panel .button-primary:active { background: var(--sand); }
@media (hover: hover) and (pointer: fine) {
  .primary-menu > li:last-child > a:hover, .contact-panel .button-primary:hover { background: var(--sand); }
  .service-card:hover { border-block-start-color: var(--navy); }
  .resource-card:has(a):hover { background: var(--panel); }
}
@media (width <= 68rem) {
  .nav-enhanced .primary-menu { border: 1px solid var(--edge); }
  .nav-group ul { border: 0; }
}
@media (forced-colors: active) {
  .glass-panel, .glass-card, .ticket-option, .button, .ticket-call, .menu-toggle, .nav-group ul, .nav-enhanced .primary-menu, .primary-menu > li:last-child > a { border: 1px solid ButtonText; }
  .site-header .brand, .solution-mark img, .footer-brand > a, .site-footer .linkedin-logo { background: var(--navy); forced-color-adjust: none; }
}
