/* Home-only R5 visual layer. Shared Header/Footer and the D1 foundation are unchanged. */
@layer d2-legacy, d2-foundation, d2-home;
@import url("website-v2.css?v=2.1.0") layer(d2-legacy);
@import url("main.css?v=2.1.0") layer(d2-legacy);
@import url("aigosea-design-system-v1.css?v=2.1.0") layer(d2-foundation);

@layer d2-home {
  #main-content.home-d2 {
    margin: 0;
    padding-inline: 0;
    padding-bottom: 0;
    color: var(--aigosea-ds-text-body);
    background: var(--aigosea-ds-surface);
    font-family: var(--aigosea-ds-font-family);
  }
  #main-content.home-d2 *,
  #main-content.home-d2 *::before,
  #main-content.home-d2 *::after { box-sizing: border-box; }
  #main-content.home-d2 :is(h1, h2, h3, p, figure, dl, dd, ol, ul) { margin: 0; }
  #main-content.home-d2 :is(h1, h2, h3, strong) { color: var(--aigosea-ds-ink); }
  #main-content.home-d2 :is(h1, h2, h3, p) { text-align: start; }
  #main-content.home-d2 section { scroll-margin-block-start: var(--aigosea-ds-space-22); }
  #main-content.home-d2 .home-kicker { color: var(--aigosea-ds-action-primary); }
  #main-content.home-d2 :is(.home-hero-copy, .home-heading-group) > .home-kicker { font-size: clamp(16px, 1.2vw, 17px); font-weight: 600; line-height: 1.4; letter-spacing: 0; }
  #main-content.home-d2 .home-heading-group { display: grid; align-content: start; gap: var(--aigosea-ds-space-4); min-inline-size: 0; }
  #main-content.home-d2 .home-heading-group > .aigosea-ds-type-body { max-inline-size: 78ch; text-wrap: pretty; }
  #main-content.home-d2 .home-section { padding-block: clamp(48px, 5vw, 72px); border-top: 1px solid var(--aigosea-ds-border); }
  #main-content.home-d2 .home-actions { display: flex; flex-wrap: wrap; gap: var(--aigosea-ds-space-3); align-items: center; }

  #main-content.home-d2 .home-hero { padding-block: clamp(56px, 6vw, 80px); background: var(--aigosea-ds-canvas); }
  #main-content.home-d2 .home-hero-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: clamp(32px, 4vw, 72px); align-items: center; }
  #main-content.home-d2 .home-hero-copy { display: grid; gap: var(--aigosea-ds-space-6); align-content: center; min-inline-size: 0; }
  #main-content.home-d2 .home-hero-copy h1 { max-inline-size: 20ch; text-wrap: balance; font-size: 28px; line-height: 1.22; }
  @media (min-width: 768px) { #main-content.home-d2 .home-hero-copy h1 { font-size: 34px; } }
  @media (min-width: 1200px) { #main-content.home-d2 .home-hero-copy h1 { font-size: 36px; line-height: 1.2; } }
  html[lang="en"] #main-content.home-d2 .home-hero-copy h1 { max-inline-size: 24ch; }
  #main-content.home-d2 h2.aigosea-ds-type-section-title { font-size: 25px; line-height: 1.3; }
  @media (min-width: 768px) { #main-content.home-d2 h2.aigosea-ds-type-section-title { font-size: 28px; } }
  @media (min-width: 1200px) { #main-content.home-d2 h2.aigosea-ds-type-section-title { font-size: 30px; line-height: 1.28; } }
  #main-content.home-d2 .home-hero-lead { max-inline-size: 62ch; text-wrap: pretty; }
  html[lang="en"] #main-content.home-d2 .home-hero-lead { max-inline-size: 48ch; }
  #main-content.home-d2 .home-hero-copy .aigosea-ds-scope-note { max-inline-size: 60ch; }
  #main-content.home-d2 .home-workspace-preview { min-inline-size: 0; overflow: clip; border: 1px solid var(--aigosea-ds-border); border-radius: var(--aigosea-ds-radius-feature); background: var(--aigosea-ds-surface); box-shadow: 0 1px 2px rgb(16 35 31 / 4%); }
  #main-content.home-d2 .home-workspace-topbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--aigosea-ds-space-2); min-block-size: 44px; padding: var(--aigosea-ds-space-3) var(--aigosea-ds-space-4); border-bottom: 1px solid var(--aigosea-ds-border); color: var(--aigosea-ds-text-secondary); font-size: 12px; }
  #main-content.home-d2 .home-workspace-topbar strong { color: var(--aigosea-ds-action-primary); font-size: 13px; letter-spacing: .03em; }
  #main-content.home-d2 .home-workspace-disclosure { color: var(--aigosea-ds-text-secondary); }
  #main-content.home-d2 .home-workspace-body { display: grid; grid-template-columns: minmax(140px, .36fr) minmax(0, 1fr); min-inline-size: 0; }
  #main-content.home-d2 .home-workspace-sidebar { display: grid; align-content: start; gap: var(--aigosea-ds-space-2); padding: var(--aigosea-ds-space-4) var(--aigosea-ds-space-3); border-right: 1px solid var(--aigosea-ds-border); background: #f7faf8; }
  #main-content.home-d2 .home-workspace-menu-label { margin-block: var(--aigosea-ds-space-1); color: var(--aigosea-ds-text-secondary); font-size: 11px; font-weight: 600; letter-spacing: .03em; }
  #main-content.home-d2 .home-workspace-menu-label:not(:first-child) { margin-block-start: var(--aigosea-ds-space-4); }
  #main-content.home-d2 .home-workspace-menu-item { display: flex; gap: var(--aigosea-ds-space-2); align-items: center; min-inline-size: 0; padding: var(--aigosea-ds-space-2); border-radius: var(--aigosea-ds-radius-state); color: var(--aigosea-ds-text-body); font-size: 12px; line-height: 1.4; }
  #main-content.home-d2 .home-workspace-menu-item.is-selected { color: var(--aigosea-ds-action-primary); background: var(--aigosea-ds-action-soft); font-weight: 600; }
  #main-content.home-d2 .home-workspace-menu-marker { flex: none; inline-size: 6px; block-size: 6px; border-radius: 50%; background: var(--aigosea-ds-border-strong); }
  #main-content.home-d2 .home-workspace-menu-item.is-selected .home-workspace-menu-marker { background: var(--aigosea-ds-action-primary); }

  #main-content.home-d2 .home-workspace-main { display: grid; align-content: start; gap: var(--aigosea-ds-space-3); min-inline-size: 0; padding: var(--aigosea-ds-space-5); }
  #main-content.home-d2 .home-workspace-heading { display: flex; flex-wrap: wrap; gap: var(--aigosea-ds-space-2); justify-content: space-between; align-items: start; padding-block-end: var(--aigosea-ds-space-3); border-bottom: 1px solid var(--aigosea-ds-border); }
  #main-content.home-d2 .home-workspace-heading > div { display: grid; gap: var(--aigosea-ds-space-1); }
  #main-content.home-d2 .home-workspace-overline { color: var(--aigosea-ds-text-secondary); font-size: 11px; }
  #main-content.home-d2 .home-workspace-heading strong { font-size: 17px; font-weight: 600; line-height: 1.35; }
  #main-content.home-d2 .home-workspace-state { padding: 3px var(--aigosea-ds-space-2); border: 1px solid var(--aigosea-ds-border); border-radius: var(--aigosea-ds-radius-pill); color: var(--aigosea-ds-text-secondary); background: var(--aigosea-ds-canvas); font-size: 11px; font-weight: 500; }
  #main-content.home-d2 .home-workspace-record { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: var(--aigosea-ds-space-3); align-items: start; padding-block: var(--aigosea-ds-space-2); }
  #main-content.home-d2 .home-workspace-record + .home-workspace-record { border-top: 1px solid var(--aigosea-ds-border); }
  #main-content.home-d2 .home-workspace-record-icon { display: grid; place-items: center; inline-size: 26px; block-size: 26px; border: 1px solid var(--aigosea-ds-border); border-radius: var(--aigosea-ds-radius-state); color: var(--aigosea-ds-action-primary); font-size: 11px; font-weight: 600; }
  #main-content.home-d2 .home-workspace-record > div { display: grid; gap: var(--aigosea-ds-space-1); min-inline-size: 0; }
  #main-content.home-d2 .home-workspace-record-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: var(--aigosea-ds-space-1) var(--aigosea-ds-space-2); }
  #main-content.home-d2 .home-workspace-record strong { font-size: 13px; font-weight: 600; line-height: 1.4; }
  #main-content.home-d2 .home-workspace-record small { color: var(--aigosea-ds-text-secondary); font-size: 11px; line-height: 1.45; }
  #main-content.home-d2 .home-workspace-attention { display: flex; flex-wrap: wrap; gap: var(--aigosea-ds-space-1) var(--aigosea-ds-space-2); align-items: baseline; padding: var(--aigosea-ds-space-2) var(--aigosea-ds-space-3); border: 1px solid var(--aigosea-ds-border); border-radius: var(--aigosea-ds-radius-state); color: var(--aigosea-ds-text-secondary); background: var(--aigosea-ds-canvas); font-size: 11px; line-height: 1.4; }
  #main-content.home-d2 .home-workspace-attention strong { color: var(--aigosea-ds-ink); font-size: 11px; }
  #main-content.home-d2 .home-workspace-review { display: flex; flex-wrap: wrap; gap: var(--aigosea-ds-space-1) var(--aigosea-ds-space-2); align-items: center; margin-block-start: var(--aigosea-ds-space-1); padding: var(--aigosea-ds-space-3); border: 1px solid #d3e5d9; border-radius: var(--aigosea-ds-radius-state); background: #f1f8f3; color: var(--aigosea-ds-ink); font-size: 11px; line-height: 1.45; }
  #main-content.home-d2 .home-workspace-review strong { color: var(--aigosea-ds-action-primary); font-size: 11px; }
  #main-content.home-d2 .home-workspace-review-sep { color: var(--aigosea-ds-text-secondary); }

  #main-content.home-d2 .home-families { padding-block: clamp(44px, 4.4vw, 62px); }
  #main-content.home-d2 .home-families .home-heading-group { margin-block-end: clamp(18px, 2vw, 24px); }
  #main-content.home-d2 .home-families .home-heading-group > .aigosea-ds-type-body { max-inline-size: 70ch; }
  @media (min-width: 1200px) { #main-content.home-d2 .home-families .home-heading-group > .aigosea-ds-type-body { max-inline-size: 1000px; } }
  #main-content.home-d2 .home-family-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(32px, 5vw, 72px); align-items: start; }
  #main-content.home-d2 .home-family { position: relative; display: flex; flex-direction: column; gap: var(--aigosea-ds-space-4); min-inline-size: 0; padding-block-start: var(--aigosea-ds-space-4); border-top: 1px solid #c7d0d8; }
  #main-content.home-d2 .home-legacy-anchor { position: absolute; inset-block-start: 0; inline-size: 0; block-size: 0; }
  #main-content.home-d2 .home-family-top { display: flex; gap: var(--aigosea-ds-space-3); align-items: center; color: var(--aigosea-ds-action-primary); font-size: 12px; font-weight: 600; letter-spacing: .08em; }
  #main-content.home-d2 .home-family-marker { inline-size: 22px; block-size: 2px; background: var(--aigosea-ds-action-primary); }
  #main-content.home-d2 .home-family h3 { max-inline-size: 26ch; text-wrap: pretty; font-size: 20px; line-height: 1.3; }
  #main-content.home-d2 .home-family-story { display: grid; gap: var(--aigosea-ds-space-3); margin-block-start: var(--aigosea-ds-space-1); }
  #main-content.home-d2 .home-family-story > div { display: grid; gap: var(--aigosea-ds-space-1); }
  #main-content.home-d2 .home-family-story dt { color: var(--aigosea-ds-text-secondary); font-size: 12px; font-weight: 600; letter-spacing: .02em; line-height: 1.5; }
  #main-content.home-d2 .home-family-story dd { color: var(--aigosea-ds-ink); font-size: 15px; line-height: 1.6; text-wrap: pretty; }
  #main-content.home-d2 .home-family > .aigosea-ds-scope-note { padding-block-start: var(--aigosea-ds-space-1); color: var(--aigosea-ds-text-secondary); }
  #main-content.home-d2 .home-family > a { align-self: start; margin-block-start: var(--aigosea-ds-space-2); }
  #main-content.home-d2 .home-family a:focus-visible { outline: 2px solid var(--aigosea-ds-action-primary); outline-offset: 4px; }

  #main-content.home-d2 .home-editorial { background: var(--aigosea-ds-canvas); }
  #main-content.home-d2 .home-editorial-wrap { display: grid; gap: clamp(22px, 2.6vw, 30px); }
  #main-content.home-d2 .home-editorial-wrap .home-heading-group { max-inline-size: 880px; }
  @media (min-width: 1200px) { #main-content.home-d2 .home-editorial-wrap .home-heading-group { max-inline-size: 1100px; } }
  @media (min-width: 1200px) { #main-content.home-d2 .home-editorial-wrap .home-heading-group > .aigosea-ds-type-body { max-inline-size: 1100px; } }
  #main-content.home-d2 .home-editorial-body { display: grid; gap: clamp(22px, 3vw, 34px); }
  #main-content.home-d2 .home-editorial-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(32px, 5vw, 80px); padding: 0; margin: 0; list-style: none; }
  #main-content.home-d2 .home-editorial-list li { display: grid; align-content: start; gap: var(--aigosea-ds-space-2); min-inline-size: 0; padding-block: var(--aigosea-ds-space-4); border-top: 1px solid var(--aigosea-ds-border); }
  #main-content.home-d2 .home-editorial-list h3 { font-size: 16px; line-height: 1.4; }
  #main-content.home-d2 .home-editorial-list p { color: var(--aigosea-ds-text-secondary); font-size: 14px; line-height: 1.6; text-wrap: pretty; }
  #main-content.home-d2 .home-editorial-list li:last-child { border-top: 2px solid var(--aigosea-ds-action-primary); }
  #main-content.home-d2 .home-editorial-list li:last-child h3 { color: var(--aigosea-ds-action-primary); }
  #main-content.home-d2 .home-editorial-note { max-inline-size: 880px; margin: 0; padding-block-start: var(--aigosea-ds-space-4); border-top: 1px solid var(--aigosea-ds-border-strong); color: var(--aigosea-ds-text-secondary); }

  #main-content.home-d2 .home-trust { background: var(--aigosea-ds-canvas); }
  #main-content.home-d2 .home-trust-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .82fr); gap: clamp(36px, 3.6vw, 56px); align-items: center; }
  #main-content.home-d2 .home-trust .home-heading-group > .aigosea-ds-type-body { max-inline-size: 72ch; }
  #main-content.home-d2 .home-trust-points { display: grid; gap: 0; padding: var(--aigosea-ds-space-2) 0 0; list-style: none; }
  #main-content.home-d2 .home-trust-points li { display: grid; grid-template-columns: minmax(110px, .38fr) minmax(0, 1fr); gap: var(--aigosea-ds-space-3); align-items: baseline; padding-block: var(--aigosea-ds-space-3); border-top: 1px solid var(--aigosea-ds-border); font-size: 14px; line-height: 1.45; }
  #main-content.home-d2 .home-trust-points strong { font-weight: 600; }
  #main-content.home-d2 .home-trust-points li > span { color: var(--aigosea-ds-text-secondary); }
  #main-content.home-d2 .home-insight-link { display: grid; align-content: start; justify-items: start; gap: var(--aigosea-ds-space-2); min-inline-size: 0; max-inline-size: 384px; justify-self: start; }
  #main-content.home-d2 .home-insight-link::before { content: ""; inline-size: 64px; block-size: 2px; background: var(--aigosea-ds-ink); margin-block-end: var(--aigosea-ds-space-1); }
  #main-content.home-d2 .home-insight-link a:focus-visible,
  #main-content.home-d2 .home-final a:focus-visible,
  #main-content.home-d2 .home-actions a:focus-visible { outline: 2px solid var(--aigosea-ds-action-primary); outline-offset: 4px; }
  #main-content.home-d2 .home-actions a,
  #main-content.home-d2 .home-final-actions a { transition: transform 180ms ease; }
  #main-content.home-d2 .home-actions a:is(:hover, :focus-visible),
  #main-content.home-d2 .home-final-actions a:is(:hover, :focus-visible) { transform: translateY(-2px); }

  #main-content.home-d2 .home-final { padding-block: clamp(30px, 3.2vw, 42px); border-top-color: #d2e7db; background: #f1f8f3; }
  #main-content.home-d2 .home-final-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .48fr); gap: clamp(32px, 6vw, 88px); align-items: center; }
  #main-content.home-d2 .home-final .home-heading-group > .aigosea-ds-type-body { max-inline-size: 54ch; }
  #main-content.home-d2 .home-final-prep { max-inline-size: 64ch; color: var(--aigosea-ds-action-primary); font-size: 14px; font-weight: 600; line-height: 1.6; text-wrap: pretty; }
  #main-content.home-d2 .home-final-actions { display: grid; justify-items: start; gap: var(--aigosea-ds-space-4); }
  #main-content.home-d2 .home-final-actions .aigosea-ds-scope-note { max-inline-size: 42ch; }

  @media (max-width: 900px) {
    #main-content.home-d2 .home-hero-grid,
    #main-content.home-d2 .home-trust-grid,
    #main-content.home-d2 .home-final-grid { grid-template-columns: minmax(0, 1fr); gap: var(--aigosea-ds-space-8); }
    #main-content.home-d2 .home-hero-copy h1 { max-inline-size: 19ch; }
  }
  @media (max-width: 700px) {
    #main-content.home-d2 .home-family-grid { grid-template-columns: minmax(0, 1fr); gap: var(--aigosea-ds-space-8); }
    #main-content.home-d2 .home-editorial-list { grid-template-columns: minmax(0, 1fr); }
  }
  @media (max-width: 480px) {
    #main-content.home-d2 .home-section { padding-block: var(--aigosea-ds-space-12); }
    #main-content.home-d2 .home-hero { padding-block: var(--aigosea-ds-space-12); }
    #main-content.home-d2 .home-actions { align-items: stretch; }
    #main-content.home-d2 .home-actions > a { width: 100%; justify-content: center; }
    #main-content.home-d2 .home-workspace-body { grid-template-columns: minmax(0, 1fr); }
    #main-content.home-d2 .home-workspace-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--aigosea-ds-space-2); padding: var(--aigosea-ds-space-3); border-right: 0; border-bottom: 1px solid var(--aigosea-ds-border); }
    #main-content.home-d2 .home-workspace-menu-label { display: none; }
    #main-content.home-d2 .home-workspace-menu-item { padding: var(--aigosea-ds-space-2); font-size: 11px; }
    #main-content.home-d2 .home-workspace-main { padding: var(--aigosea-ds-space-4); }
    #main-content.home-d2 .home-family-story > div { grid-template-columns: minmax(0, 1fr); gap: var(--aigosea-ds-space-1); }
    #main-content.home-d2 .home-trust-points li { grid-template-columns: minmax(0, 1fr); gap: var(--aigosea-ds-space-1); }
  }
  @media (prefers-reduced-motion: reduce) {
    #main-content.home-d2 :is(.home-family, .home-insight-link, .home-actions a, .home-final-actions a) { transition: none; }
    #main-content.home-d2 :is(.home-family, .home-insight-link, .home-actions a, .home-final-actions a):is(:hover, :focus-within, :focus-visible) { transform: none; }
  }
}
