
    .agg-page {
      --ink: #1d2522;
      --muted: #606a64;
      --paper: #ffffff;
      --soft: #f4f5f0;
      --line: #dbe1d7;
      --olive: #3c4a41;
      --olive-deep: #27312b;
      --accent: #b06a3d;
      --sand: #f8f7f2;
      color: var(--ink);
      background: var(--paper);
      font-family: Arial, Helvetica, sans-serif;
      line-height: 1.6;
      overflow: hidden;
    }
    .agg-page * { box-sizing: border-box; letter-spacing: 0; }
    .agg-page a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
    .agg-page h1,.agg-page h2,.agg-page h3,.agg-page p,.agg-page ul,.agg-page ol,.agg-page figure { margin-top: 0; }
    .agg-shell { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
    .agg-hero { padding: 58px 0 50px; background: #fff; }
    .agg-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 42px; align-items: center; }
    .agg-kicker { margin-bottom: 14px; color: var(--accent); font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
    .agg-title { margin-bottom: 18px; font-size: 48px; line-height: 1.1; }
    .agg-lede { max-width: 700px; margin-bottom: 0; color: var(--muted); font-size: 18px; }
    .agg-lede strong a { color: var(--olive-deep); }
    .agg-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
    .agg-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 11px 18px; border: 1px solid var(--olive-deep); border-radius: 4px; font-size: 15px; font-weight: 700; text-decoration: none; }
    .agg-btn-primary { color: #fff !important; background: var(--olive); border-color: var(--olive); }
    .agg-btn-primary:hover { background: var(--olive-deep); border-color: var(--olive-deep); }
    .agg-btn-secondary:hover { color: #fff !important; background: var(--olive-deep); }
    .agg-hero-notes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 30px; }
    .agg-note { padding: 14px 16px; border-top: 2px solid var(--olive-deep); background: #fff; }
    .agg-note strong { display: block; margin-bottom: 3px; font-size: 15px; }
    .agg-note span { color: var(--muted); font-size: 13px; }
    .agg-figure { padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--sand); }
    .agg-figure img { display: block; width: 100%; height: 100%; object-fit: contain; }
    .agg-figure-main { aspect-ratio: 4 / 3; }
    .agg-section { padding: 72px 0; }
    .agg-section-soft { background: var(--soft); }
    .agg-snapshot { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 34px; align-items: start; }
    .agg-panel { padding: 24px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
    .agg-panel h2,.agg-center h2,.agg-related h2,.agg-faq h2 { margin-bottom: 14px; font-size: 32px; line-height: 1.15; }
    .agg-panel p,.agg-center p,.agg-related p,.agg-faq p { color: var(--muted); }
    .agg-table-wrap { width: 100%; overflow-x: auto; }
    .agg-table { width: 100%; border-collapse: collapse; min-width: 620px; background: #fff; }
    .agg-table th,.agg-table td { padding: 12px 14px; border: 1px solid var(--line); text-align: left; vertical-align: top; }
    .agg-table th { width: 190px; background: #f6f7f4; font-weight: 700; }
    .agg-snapshot-list { display: grid; gap: 12px; margin-top: 18px; padding: 0; list-style: none; }
    .agg-snapshot-list li { padding: 12px 14px; border-left: 3px solid var(--accent); background: #fff; }
    .agg-snapshot-list strong { display: block; margin-bottom: 2px; }
    .agg-center { max-width: 760px; margin: 0 auto 36px; text-align: center; }
    .agg-path-grid,.agg-related-grid,.agg-reading-grid { display: grid; gap: 18px; }
    .agg-path-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .agg-mini-card { padding: 22px; border: 1px solid var(--line); border-radius: 8px; background: #fff; min-height: 224px; }
    .agg-mini-card h3 { margin-bottom: 10px; font-size: 20px; }
    .agg-mini-card ul { margin: 14px 0 0; padding-left: 20px; color: var(--muted); }
    .agg-related-grid { grid-template-columns: minmax(0, 1fr); }
    .agg-product-card { display: flex; flex-direction: column; min-height: 100%; border: 1px solid var(--line); border-radius: 8px; background: #fff; overflow: hidden; text-decoration: none; }
    .agg-product-card figure { margin: 0; padding: 18px; background: var(--sand); aspect-ratio: 4 / 3; }
    .agg-product-card img { display: block; width: 100%; height: 100%; object-fit: contain; }
    .agg-product-copy { display: flex; flex: 1; flex-direction: column; padding: 20px 20px 22px; }
    .agg-product-copy h3 { margin-bottom: 10px; font-size: 20px; }
    .agg-product-copy p { margin-bottom: 0; color: var(--muted); }
    .agg-reading-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .agg-article-card { display: flex; flex-direction: column; min-height: 100%; padding: 22px; border: 1px solid var(--line); border-radius: 8px; background: #fff; text-decoration: none; }
    .agg-article-card h3 { margin-bottom: 12px; font-size: 19px; line-height: 1.25; }
    .agg-article-card p { margin-bottom: 0; color: var(--muted); }
    .agg-faq-list { max-width: 900px; margin: 0 auto; border-top: 1px solid var(--line); }
    .agg-faq-item { padding: 22px 0; border-bottom: 1px solid var(--line); }
    .agg-faq-item h3 { margin-bottom: 8px; font-size: 18px; }
    .agg-faq-item p { margin-bottom: 0; }
    .agg-footer { padding: 26px 0 34px; background: #1a231f; color: #d8ded7; text-align: center; font-size: 13px; }
    @media (max-width: 960px) {
      .agg-title { font-size: 40px; }
      .agg-hero-grid,.agg-snapshot { grid-template-columns: 1fr; }
      .agg-path-grid,.agg-reading-grid,.agg-hero-notes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .agg-reading-grid article:last-child { grid-column: 1 / -1; }
    }
    @media (max-width: 680px) {
      .agg-shell { width: min(100% - 28px, 1180px); }
      .agg-hero { padding: 40px 0 42px; }
      .agg-title { font-size: 34px; }
      .agg-lede { font-size: 16px; }
      .agg-section { padding: 56px 0; }
      .agg-panel h2,.agg-center h2,.agg-related h2,.agg-faq h2 { font-size: 28px; }
      .agg-hero-notes,.agg-path-grid,.agg-reading-grid { grid-template-columns: 1fr; }
      .agg-table { min-width: 540px; }
      .agg-btn { min-height: 42px; padding: 9px 14px; font-size: 13px; }
    }
  