
      .agg-page {
        --ink: #20262a;
        --muted: #647078;
        --line: #d7e0e3;
        --soft: #f1f6f7;
        --accent: #356b73;
        --deep: #174d58;
        --warm: #f5f0e7;
        max-width: 1180px;
        margin: 0 auto;
        padding: 28px 22px 58px;
        background: #fff;
        color: var(--ink);
        font:
          16px/1.65 Arial,
          "Helvetica Neue",
          sans-serif;
      }
      .agg-page * {
        box-sizing: border-box;
      }
      .agg-page h1,
      .agg-page h2,
      .agg-page h3,
      .agg-page p {
        margin-top: 0;
      }
      .agg-page h1 {
        font:
          700 3.65rem/1.06 Georgia,
          serif;
        max-width: 740px;
        letter-spacing: 0;
        margin-bottom: 18px;
      }
      .agg-page h2 {
        font-size: 2.1rem;
        line-height: 1.15;
        letter-spacing: 0;
        margin-bottom: 12px;
      }
      .agg-page h3 {
        font-size: 1.04rem;
        line-height: 1.25;
        letter-spacing: 0;
        margin-bottom: 8px;
      }
      .agg-page p {
        color: var(--muted);
      }
      .agg-page a {
        color: var(--deep);
        text-decoration: underline;
        text-underline-offset: 3px;
      }
      .article_content_box:has(.agg-page) > h1.article_title.themes_box_title,
      .article_content_box:has(.agg-page) > h1.main_title.themes_box_title {
        display: none !important;
      }
      .agg-page .hero {
        display: grid;
        grid-template-columns: 1.08fr 0.92fr;
        min-height: 490px;
        border: 1px solid var(--line);
        margin-bottom: 70px;
        background: var(--soft);
      }
      .agg-page .hero-copy {
        padding: 56px 42px;
        display: flex;
        flex-direction: column;
        justify-content: center;
      }
      .agg-page .eyebrow,
      .agg-page .kicker {
        color: var(--accent);
        font-size: 0.78rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        font-weight: 700;
        margin-bottom: 10px;
      }
      .agg-page .hero-lead {
        font-size: 1.05rem;
        max-width: 690px;
        margin-bottom: 24px;
      }
      .agg-page .actions {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
      }
      .agg-page .button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 46px;
        padding: 10px 16px;
        background: var(--accent);
        border: 1px solid var(--accent);
        color: #fff;
        text-decoration: none;
        font-weight: 700;
      }
      .agg-page .button.alt {
        background: transparent;
        color: var(--deep);
      }
      .agg-page .hero-media {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 30px;
        background: #fff;
      }
      .agg-page .hero-media img {
        width: 100%;
        height: 400px;
        object-fit: contain;
      }
      .agg-page section {
        display: flex;
        justify-content: center;
        margin: 0 0 68px;
      }
      .agg-page .inner {
        width: 100%;
      }
      .agg-page .intro {
        max-width: 820px;
        margin-bottom: 24px;
      }
      .agg-page .decision-grid,
      .agg-page .reading-grid,
      .agg-page .scope-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
      }
      .agg-page .decision,
      .agg-page .reading,
      .agg-page .scope {
        border: 1px solid var(--line);
        padding: 20px 18px;
        background: var(--soft);
      }
      .agg-page .decision {
        border-top: 3px solid var(--accent);
      }
      .agg-page .decision p,
      .agg-page .reading p,
      .agg-page .scope p {
        font-size: 0.94rem;
        margin-bottom: 0;
      }
      .agg-page .detail {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
        align-items: start;
      }
      .agg-page .media-panel {
        border: 1px solid var(--line);
        padding: 16px;
        background: #fff;
      }
      .agg-page .media-box {
        height: 330px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fafcfc;
      }
      .agg-page .media-box img {
        width: 100%;
        height: 100%;
        object-fit: contain;
      }
      .agg-page .metric-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
      }
      .agg-page .metric {
        border: 1px solid var(--line);
        padding: 15px 14px;
        background: var(--warm);
      }
      .agg-page .metric strong {
        display: block;
        color: var(--deep);
        font-size: 1.12rem;
      }
      .agg-page .boundary {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px;
      }
      .agg-page .boundary-item {
        padding: 20px 18px;
        border-left: 4px solid var(--accent);
        background: #f8fbfb;
      }
      .agg-page .boundary-item p {
        font-size: 0.94rem;
        margin-bottom: 0;
      }
      .agg-page .reading-grid .reading {
        display: flex;
        flex-direction: column;
        min-height: 245px;
        background: #fff;
      }
      .agg-page .reading .read {
        margin-top: auto;
        font-weight: 700;
      }
      .agg-page .check {
        border-left: 4px solid var(--accent);
        padding: 7px 0 7px 22px;
      }
      .agg-page .check li {
        margin: 7px 0;
        color: var(--muted);
      }
      .agg-page .faq {
        border-top: 1px solid var(--line);
      }
      .agg-page details {
        border-bottom: 1px solid var(--line);
        padding: 15px 0;
      }
      .agg-page summary {
        cursor: pointer;
        font-weight: 700;
      }
      .agg-page details p {
        margin: 10px 0 0;
        max-width: 920px;
      }
      .agg-page .close {
        padding: 34px 38px;
        border: 1px solid #e6dcca;
        background: var(--warm);
      }
      .agg-page .contact {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
      }
      .agg-page .contact a {
        font-weight: 700;
      }
      .agg-page .foot {
        border-top: 1px solid var(--line);
        padding-top: 18px;
        color: #74828a;
        font-size: 0.82rem;
      }
      @media (max-width: 800px) {
        .agg-page {
          padding: 18px 14px 42px;
        }
        .agg-page h1 {
          font-size: 2.35rem;
        }
        .agg-page h2 {
          font-size: 1.8rem;
        }
        .agg-page .hero {
          display: flex;
          flex-direction: column-reverse;
          min-height: 0;
        }
        .agg-page .hero-media {
          height: 260px;
          padding: 16px;
        }
        .agg-page .hero-media img {
          height: 225px;
        }
        .agg-page .hero-copy {
          padding: 30px 22px;
        }
        .agg-page .decision-grid,
        .agg-page .reading-grid,
        .agg-page .scope-grid,
        .agg-page .detail,
        .agg-page .boundary {
          grid-template-columns: 1fr;
        }
        .agg-page section {
          margin-bottom: 52px;
        }
        .agg-page .close {
          padding: 26px 22px;
        }
      }
    