/* Companies solution: scoped styling; contact form and shared handlers are unchanged. */
.corp-page {
  --corp-ink: #102344; --corp-muted: #4d5e71; --corp-teal: #087487;
  --corp-pale: #edf5f4; --corp-line: #d7e3e3; --corp-paper: #fff;
  --corp-xs: .78rem; --corp-body: 1rem; --corp-title: clamp(1.85rem, 2.8vw, 2.6rem);
  --corp-hero: clamp(2.5rem, 4.2vw, 3.65rem);
  --corp-gap: clamp(32px, 5vw, 72px); --corp-section: clamp(56px, 6.8vw, 96px);
  background: var(--corp-paper); color: var(--corp-ink);
}
.corp-page .nav { background: #0a1838; }
.corp-page .nav.scrolled { background: #fff; }
.corp-page main { padding-top: 84px; }
.corp-page .container { max-width: 1280px; }
.corp-page main h2 { font-size: var(--corp-title); line-height: 1.12; color: var(--corp-ink); }
.corp-page main h3 { font-size: 1.15rem; line-height: 1.3; }
.corp-page main p, .corp-page main li { font-size: var(--corp-body); line-height: 1.75; }
.corp-page main p { color: var(--corp-muted); }
.corp-page .eyebrow { color: var(--corp-teal); font-size: var(--corp-xs); }
.corp-page section[id], .corp-page article[id], .corp-page details[id] { scroll-margin-top: 108px; }
.corp-page .corp-actions .btn, .corp-support .btn { background: var(--corp-teal); color:#fff; box-shadow:none; }
.corp-page .corp-actions .btn:hover, .corp-support .btn:hover { background:#075768; }
.corp-page a:focus-visible, .corp-page button:focus-visible, .corp-page summary:focus-visible { outline:3px solid #159db0; outline-offset:5px; }
.corp-skip { position:fixed; left:16px; top:-100px; z-index:100; padding:12px 20px; background:#fff; color:#102344; }
.corp-skip:focus { top:12px; }
.corp-hero { padding: 48px 0 64px; background:#f5f9f8; }
.corp-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.06fr); gap:48px; align-items:center; }
.corp-crumb { display:flex; flex-wrap:wrap; gap:8px; font-size:var(--corp-xs); margin-bottom:32px; color:var(--corp-muted); }
.corp-crumb a { text-decoration:underline; text-underline-offset:3px; }
.corp-hero h1 { font-size:var(--corp-hero); color:var(--corp-ink); letter-spacing:-.045em; line-height:1.06; margin-bottom:24px; }
.corp-hero h1 span { color:var(--corp-teal); }
.corp-hero .lead { max-width:540px; }
.corp-actions { display:flex; gap:20px; align-items:center; flex-wrap:wrap; margin:28px 0 16px; }
.corp-text-link { color:var(--corp-teal); font-size:.9rem; font-weight:600; display:inline-flex; align-items:center; gap:12px; min-height:44px; text-decoration:underline; text-underline-offset:5px; }
.corp-page main .corp-note { font-size:var(--corp-xs); margin:0; }
.corp-hero-visual { margin:36px 0 0; border:1px solid var(--corp-line); border-radius:14px; overflow:hidden; background:#fff; box-shadow:0 20px 44px rgba(16,35,68,.09); }
.corp-image-header { display:flex; gap:10px; align-items:center; padding:16px 20px; font-size:.83rem; font-weight:600; color:var(--corp-ink); }
.corp-status { width:8px; height:8px; border-radius:50%; background:#087487; }
.corp-hero-visual img { width:100%; height:auto; }
.corp-hero-visual figcaption { padding:14px 18px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; color:var(--corp-muted); font-size:.75rem; }
.corp-intro { padding:56px 0; border-bottom:1px solid var(--corp-line); }
.corp-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--corp-gap); align-items:center; }
.corp-intro h2, .corp-intro p { margin:0; }
.corp-page .corp-intro h2 { font-size:clamp(1.6rem,2.2vw,2rem); }
.corp-experience { padding:var(--corp-section) 0; }
.corp-section-heading { max-width:620px; margin-bottom:48px; }
.corp-feature { display:grid; grid-template-columns:minmax(0,1.13fr) minmax(0,1fr); align-items:center; gap:var(--corp-gap); padding:52px 0; border-top:1px solid var(--corp-line); }
.corp-feature-reverse { grid-template-columns:minmax(0,1fr) minmax(0,1.13fr); }
.corp-feature-reverse figure { grid-column:2; grid-row:1; }
.corp-feature-reverse .corp-feature-copy { grid-column:1; grid-row:1; }
.corp-step { display:block; color:var(--corp-teal); font-size:var(--corp-xs); font-weight:650; letter-spacing:.07em; text-transform:uppercase; margin-bottom:16px; }
.corp-feature-copy ul { padding-left:20px; margin:20px 0; color:var(--corp-muted); }
.corp-feature-copy li { margin:8px 0; padding-left:4px; }
.corp-feature-copy li::marker { color:var(--corp-teal); }
.corp-page main .corp-outcome { font-weight:600; color:var(--corp-ink); border-left:3px solid var(--corp-teal); padding-left:16px; margin:24px 0 0; }
.corp-screen { margin:0; border:1px solid var(--corp-line); border-radius:12px; overflow:hidden; background:var(--corp-pale); }
.corp-screen img { width:100%; height:auto; }
.corp-screen figcaption { padding:16px 20px; background:#fff; color:var(--corp-muted); font-size:.75rem; line-height:1.6; }
.corp-screen-wide { padding-top:40px; }
.corp-screen-wide img { border-block:1px solid var(--corp-line); }
.corp-screen-stack { padding:32px 24px 0; }
.corp-screen-stack figcaption { margin:28px -24px 0; }
.corp-formats { background:var(--corp-pale); padding:var(--corp-section) 0; }
.corp-custom { padding:var(--corp-section) 0; background:#f7f9fc; border-top:1px solid var(--corp-line); }
.corp-custom-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--corp-gap); }
.corp-custom-list>div { padding:0 0 24px; margin-bottom:24px; border-bottom:1px solid var(--corp-line); }
.corp-page main .corp-custom-note { font-size:.83rem; margin:0; }
.corp-formats-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:var(--corp-gap); }
.corp-format-list>div { display:flex; gap:24px; padding:24px 0; border-top:1px solid #c3d6d5; }
.corp-format-list>div>span { color:var(--corp-teal); font-size:var(--corp-xs); padding-top:4px; }
.corp-format-list p { margin:0; }
.corp-support { background:#0a1838; padding:var(--corp-section) 0; }
.corp-support-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--corp-gap); }
.corp-page main .corp-support h2, .corp-page main .corp-support h3 { color:#fff; }
.corp-page main .corp-support p { color:#d2dfeb; }
.corp-page .corp-support .eyebrow { color:#9ce2dc; }
.corp-support .btn { margin-top:16px; background:#9ce2dc; color:#102344; }
.corp-support .btn:hover { background:#fff; color:#102344; }
.corp-support ol { list-style:none; counter-reset:planning; padding:0; margin:0; }
.corp-support li { counter-increment:planning; position:relative; padding:0 0 24px 48px; margin-bottom:24px; border-bottom:1px solid #34455f; }
.corp-support li::before { content:"0" counter(planning); position:absolute; left:0; top:0; font-size:.8rem; color:#9ce2dc; }
.corp-support li:last-child { border:0; margin:0; padding-bottom:0; }
.corp-support li p { margin:0; }
.corp-faq { padding:var(--corp-section) 0; }
.corp-faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:var(--corp-gap); }
.corp-faq details { border-bottom:1px solid var(--corp-line); padding:20px 0; }
.corp-faq details:first-child { border-top:1px solid var(--corp-line); }
.corp-faq summary { cursor:pointer; font-weight:600; line-height:1.5; padding-right:20px; color:var(--corp-ink); }
.corp-faq details p { margin:16px 0 0; }
.corp-legacy-anchors { height:0; }
.corp-image-portrait img { max-height:460px; width:100%; object-fit:contain; background:#fff; }
.corp-page main .corp-pain { color:var(--corp-ink); font-weight:500; }
.corp-related { padding:36px 0; border-top:1px solid var(--corp-line); background:#f7f9fc; }
.corp-page main .corp-related h2 { font-size:1.15rem; margin:0 0 12px; }
.corp-related .container>div { display:flex; flex-wrap:wrap; gap:16px 36px; }
.corp-page footer { padding-top:0; }
.corp-page main #contact h2 { color:#fff; }
.corp-page main #contact p.lead { color:#d2dfeb; }
.corp-page #contact .eyebrow { color:#9ce2dc; }
@media(max-width:1000px) {
  .corp-hero-grid { gap:28px; }
  .corp-actions { gap:10px; }
}
@media(max-width:800px) {
  .corp-page main { padding-top:76px; }
  .corp-hero-grid,.corp-intro-grid,.corp-feature,.corp-feature-reverse,.corp-formats-grid,.corp-support-grid,.corp-faq-grid,.corp-custom-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
  .corp-hero { padding:32px 0 48px; }
  .corp-hero-visual { margin:0; }
  .corp-hero h1 { max-width:620px; }
  .corp-feature { padding:36px 0; }
  .corp-feature figure,.corp-feature-reverse figure { grid-column:1; grid-row:2; }
  .corp-feature-copy,.corp-feature-reverse .corp-feature-copy { grid-column:1; grid-row:1; }
  .corp-crumb { margin-bottom:24px; }
  .corp-section-heading { margin-bottom:32px; }
}
@media(max-width:480px) {
  .corp-hero h1 { font-size:clamp(2.1rem,9vw,2.5rem); }
  .corp-hero-grid { gap:24px; }
}
@media(prefers-reduced-motion:reduce) { .corp-page { scroll-behavior:auto; } .corp-page * { transition:none!important; } html:has(.corp-page) { scroll-behavior:auto; } }
