/* Corporate visual layer for every public service page. */
.corporate-services {
  --corp-ink: #10203b;
  --corp-muted: #64748b;
  --corp-line: #dbe5f2;
  --corp-surface: #ffffff;
  --corp-soft: #f3f7fc;
  --corp-navy: #0d1d3c;
  --corp-accent: #375dfb;
  --corp-accent-dark: #2448d8;
  background: radial-gradient(circle at 78% 0%, #dce9ff 0, transparent 34rem), #f5f8fc;
  color: var(--corp-ink);
}

.corporate-services .page.service-page { width: min(1200px, calc(100% - 56px)); padding-top: 44px; }
.corporate-services .button {
  border-color: var(--corp-accent); background: var(--corp-accent); color: #fff;
  box-shadow: none; transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.corporate-services .button:hover { border-color: var(--corp-accent-dark); background: var(--corp-accent-dark); transform: translateY(-2px); box-shadow: 0 12px 24px rgba(55, 93, 251, .2); }
.corporate-services .button:active { transform: translateY(0); box-shadow: none; }
.corporate-services .button.secondary { color: #203557; border-color: #cbd8e9; background: rgba(255,255,255,.9); }
.corporate-services .button.secondary:hover { color: var(--corp-accent-dark); border-color: var(--corp-accent); background: #fff; }
.corporate-services .eyebrow, .corporate-services .section-number { color: #516889; }

.corporate-services .service-back { margin-bottom: 34px; }
.corporate-services .service-hero {
  position: relative; display: grid; grid-template-columns: minmax(0, .95fr) minmax(400px, .8fr); gap: clamp(32px, 6vw, 84px);
  align-items: center; min-height: 500px; margin-bottom: 92px; padding: clamp(38px, 6vw, 76px);
  overflow: hidden; border: 1px solid rgba(142, 174, 232, .26); border-radius: 28px;
  background:
    radial-gradient(circle at 78% 33%, rgba(82, 132, 239, .36), transparent 26%),
    radial-gradient(circle at 38% 120%, rgba(47, 94, 198, .32), transparent 44%),
    linear-gradient(125deg, #07101f, #0b1a38 60%, #122754);
}
.corporate-services .service-hero::before { position: absolute; inset: 0; opacity: .42; background-image: linear-gradient(rgba(159,188,238,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(159,188,238,.06) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(90deg, transparent, #000 36%, #000); content: ""; }
.corporate-services .service-hero-copy, .corporate-services .service-hero-cover, .corporate-services .service-caption { position: relative; z-index: 1; }
.corporate-services .service-hero h1 { color: #f8fbff; font-size: clamp(3rem, 5.5vw, 5.55rem); line-height: .96; text-wrap: balance; }
.corporate-services .service-hero .eyebrow { color: #aabfee; }
.corporate-services .service-lead { color: #c6d5ee; font-size: clamp(1.06rem, 1.45vw, 1.25rem); line-height: 1.6; }
.corporate-services .service-hero-cover { min-height: 0; aspect-ratio: 16 / 9; border-color: rgba(151, 187, 255, .32); border-radius: 22px; background: linear-gradient(145deg, rgba(75,123,228,.42), rgba(15,34,72,.74)), radial-gradient(circle at 70% 24%, rgba(151,194,255,.5), transparent 9%), linear-gradient(135deg, rgba(143,182,255,.12) 0 48%, rgba(192,215,255,.17) 49% 51%, rgba(143,182,255,.08) 52% 100%); box-shadow: 0 30px 65px rgba(0,0,0,.3); }
.corporate-services .service-hero-cover span, .corporate-services .service-visual span { border-color: rgba(213,227,255,.32); background: rgba(6,17,38,.45); color: #eaf1ff; }
.corporate-services .service-caption { grid-column: 1 / -1; margin: -14px 0 0; color: #9fb3d6; }

.corporate-services .service-section, .corporate-services .service-result { gap: 30px; }
.corporate-services .service-section h2, .corporate-services .service-panel h2, .corporate-services .service-result h2, .corporate-services .service-related h2, .corporate-services .service-final h2, .corporate-services .service-articles h2, .corporate-services .service-cases h2 { color: var(--corp-ink); }
.corporate-services .service-section-copy > p, .corporate-services .service-result p, .corporate-services .service-final p { color: var(--corp-muted); }
.corporate-services .service-intro blockquote { border-color: var(--corp-line); border-left-color: var(--corp-accent); background: #fff; color: #23395d; box-shadow: 0 12px 28px rgba(25,47,85,.05); }
.corporate-services .service-visual { border-color: var(--corp-line); background: linear-gradient(135deg, #e7eef9 0 48%, #d8e4f5 49% 51%, #f0f5fc 52% 100%); color: #32517f; }
.corporate-services .service-visual > img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.corporate-services .service-visual span { background: #fff; color: #32517f; border-color: #c8d8ee; }
.corporate-services .service-photo { box-shadow: 0 18px 44px rgba(25,47,85,.08); }

.corporate-services .service-panel, .corporate-services .service-result, .corporate-services .service-related, .corporate-services .service-articles, .corporate-services .service-cases { border-color: var(--corp-line); background: var(--corp-surface); box-shadow: 0 16px 34px rgba(25,47,85,.055); }
.corporate-services .service-panel { background: linear-gradient(145deg, #fff, #f7faff); }
.corporate-services .service-panel ul, .corporate-services .service-panel li, .corporate-services .service-steps p, .corporate-services .service-faq p, .corporate-services .service-cases-head p { color: var(--corp-muted); }
.corporate-services .service-panel li::before { background: var(--corp-accent); }
.corporate-services .service-steps li, .corporate-services .service-faq details { border-color: var(--corp-line); background: #f9fbff; }
.corporate-services .service-steps li > span { background: #dce8ff; color: #244a9d; }
.corporate-services .service-result { background: linear-gradient(135deg, #edf4ff, #fff 66%); }
.corporate-services .service-faq summary { color: var(--corp-ink); }
.corporate-services .service-faq summary::after { color: var(--corp-accent); }

.corporate-services .service-case-card, .corporate-services .service-article-card, .corporate-services .related-service-card { border-color: var(--corp-line); background: #fff; box-shadow: 0 10px 24px rgba(25,47,85,.045); transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.corporate-services .service-case-card:hover, .corporate-services .service-article-card:hover, .corporate-services .related-service-card:hover { border-color: #aabde1; transform: translateY(-4px); box-shadow: 0 18px 32px rgba(25,47,85,.1); }
.corporate-services .service-case-status, .corporate-services .service-article-meta, .corporate-services .related-service-card > span { color: #3f5e94; }
.corporate-services .service-case-card h3, .corporate-services .service-article-card h3, .corporate-services .related-service-card h3 { color: var(--corp-ink); }
.corporate-services .service-case-card p, .corporate-services .service-article-excerpt, .corporate-services .related-service-card p { color: var(--corp-muted); }
.corporate-services .service-article-cover { background: linear-gradient(135deg, #e7eef9 0 48%, #d8e4f5 49% 51%, #f0f5fc 52% 100%); color: #32517f; }

.corporate-services .service-final { border: 0; background: linear-gradient(130deg, #0c1c3c, #1a3975); box-shadow: 0 24px 60px rgba(13,35,76,.22); }
.corporate-services .service-final .eyebrow { color: #aebfe4; }
.corporate-services .service-final h2 { color: #fff; }
.corporate-services .service-final p { color: #c4d2ec; }
.corporate-services .service-final .button.secondary { color: #fff; border-color: #7188b6; background: transparent; }
.corporate-services .service-lead-form { border-color: rgba(170,198,246,.22); background: rgba(255,255,255,.08); }
.corporate-services .service-lead-form .lead-field span { color: #edf4ff; }
.corporate-services .service-lead-form .lead-field input, .corporate-services .service-lead-form .lead-field textarea { border-color: rgba(179,204,247,.42); background: rgba(255,255,255,.96); color: var(--corp-ink); }

@media (max-width: 900px) {
  .corporate-services .service-hero { grid-template-columns: 1fr; min-height: 0; gap: 28px; }
  .corporate-services .service-hero-cover { max-width: 650px; width: 100%; margin: 0 auto; }
}
@media (max-width: 760px) {
  .corporate-services .page.service-page { width: min(100% - 28px, 560px); padding-top: 28px; }
  .corporate-services .service-hero { margin-bottom: 62px; padding: 32px 22px 24px; border-radius: 22px; }
  .corporate-services .service-hero h1 { font-size: clamp(2.55rem, 12vw, 4rem); }
  .corporate-services .service-hero-cover { min-height: 0; aspect-ratio: 16 / 9; }
  .corporate-services .service-caption { margin: -6px 0 0; }
  .corporate-services .service-section .section-number, .corporate-services .service-result .section-number { border-color: var(--corp-line); }
  .corporate-services .service-panel, .corporate-services .service-result, .corporate-services .service-related, .corporate-services .service-articles, .corporate-services .service-cases { box-shadow: 0 10px 24px rgba(25,47,85,.05); }
  .corporate-services .service-case-card:hover, .corporate-services .service-article-card:hover, .corporate-services .related-service-card:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) { .corporate-services *, .corporate-services *::before, .corporate-services *::after { transition-duration: .01ms !important; } }
