#ap-aggregate{
      --ap-ink: #1b231f;
      --ap-muted: #5e6a63;
      --ap-paper: #ffffff;
      --ap-soft: #f3f6f1;
      --ap-line: #dde4da;
      --ap-forest: #2f4c3c;
      --ap-forest-dark: #1f362a;
      --ap-clay: #b25c3b;
      --ap-sand: #efe7d3;
      width: 100%;
      overflow: hidden;
      background: var(--ap-paper);
      color: var(--ap-ink);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
      font-size: 16px;
      line-height: 1.62;
    }#ap-aggregate *{ box-sizing: border-box; letter-spacing: 0; }#ap-aggregate img{ display: block; max-width: 100%; height: auto; }#ap-aggregate p{ margin: 0 0 14px; }#ap-aggregate a{ color: inherit; }#ap-aggregate .ap-shell{ width: min(1120px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-hero{
      padding: 56px 0 64px;
      background: linear-gradient(180deg, #fbfcf9 0%, #ffffff 100%);
      border-bottom: 1px solid var(--ap-line);
    }#ap-aggregate .ap-hero-grid{
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
      gap: 56px;
      align-items: center;
    }#ap-aggregate .ap-hero-title{
      font-size: 44px;
      line-height: 1.28;
      font-weight: 800;
      margin: 0 0 20px;
      letter-spacing: -0.015em;
    }#ap-aggregate .ap-hero-intro{
      font-size: 17px;
      line-height: 1.72;
      color: var(--ap-muted);
      max-width: 620px;
    }#ap-aggregate .ap-hero-intro a{
      color: var(--ap-forest);
      text-decoration: underline;
      text-decoration-thickness: 1px;
      text-underline-offset: 3px;
    }#ap-aggregate .ap-hero-actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }#ap-aggregate .ap-btn{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 48px;
      padding: 12px 22px;
      border-radius: 6px;
      border: 1px solid transparent;
      font-size: 15px;
      font-weight: 700;
      text-decoration: none;
      transition: background-color .2s ease, color .2s ease, border-color .2s ease;
    }#ap-aggregate .ap-btn-primary{ background: var(--ap-forest); color: #fff !important; border-color: var(--ap-forest); }#ap-aggregate .ap-btn-primary:hover{ background: var(--ap-forest-dark); border-color: var(--ap-forest-dark); }#ap-aggregate .ap-btn-ghost{ background: #fff; color: var(--ap-ink) !important; border-color: #c9d3c7; }#ap-aggregate .ap-btn-ghost:hover{ background: var(--ap-ink); color: #fff !important; border-color: var(--ap-ink); }#ap-aggregate .ap-btn-light{ background: #fff; color: var(--ap-forest) !important; border-color: #fff; }#ap-aggregate .ap-btn-light:hover{ background: var(--ap-sand); border-color: var(--ap-sand); }#ap-aggregate .ap-btn-outline{ background: transparent; color: #fff !important; border-color: rgba(255,255,255,.65); }#ap-aggregate .ap-btn-outline:hover{ background: rgba(255,255,255,.14); }#ap-aggregate .ap-hero-media{
      margin: 0;
      border-radius: 12px;
      overflow: hidden;
      background: #eef1ea;
      box-shadow: 0 20px 46px rgba(31, 54, 42, 0.14);
    }#ap-aggregate .ap-hero-media img{ width: 100%; max-height: 560px; object-fit: cover; }#ap-aggregate .ap-section{ padding: 76px 0; }#ap-aggregate .ap-section-soft{ background: var(--ap-soft); }#ap-aggregate .ap-head{ max-width: 780px; margin: 0 0 34px; }#ap-aggregate .ap-h2{
      font-size: 34px;
      line-height: 1.24;
      font-weight: 800;
      margin: 0 0 14px;
      letter-spacing: -0.01em;
    }#ap-aggregate .ap-h3{ font-size: 20px; line-height: 1.34; font-weight: 700; margin: 0 0 8px; }#ap-aggregate .ap-lede{ font-size: 17px; color: var(--ap-muted); margin: 0; }#ap-aggregate .ap-table-wrap{
      border: 1px solid var(--ap-line);
      border-radius: 10px;
      background: #fff;
      overflow: hidden;
    }#ap-aggregate table{ width: 100%; border-collapse: collapse; font-size: 15px; }#ap-aggregate th, #ap-aggregate td{ padding: 14px 16px; text-align: left; vertical-align: top; border-bottom: 1px solid #eef1ec; }#ap-aggregate thead th{
      background: var(--ap-forest);
      color: #fff;
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .06em;
    }#ap-aggregate tbody th{ font-weight: 700; background: #fafbf8; width: 26%; }#ap-aggregate tbody tr:last-child th, #ap-aggregate tbody tr:last-child td{ border-bottom: 0; }#ap-aggregate .ap-mark{ display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; }#ap-aggregate .ap-mark-yes{ color: #2f6b47; }#ap-aggregate .ap-mark-part{ color: #96671c; }#ap-aggregate .ap-mark-no{ color: #8b908b; }#ap-aggregate .ap-callout{
      margin: 22px 0 0;
      padding: 18px 20px;
      background: #fff;
      border-left: 4px solid var(--ap-clay);
      border-radius: 0 8px 8px 0;
      font-weight: 600;
      font-size: 15px;
    }#ap-aggregate .ap-spotlight, #ap-aggregate .ap-layout-grid, #ap-aggregate .ap-split{
      display: grid;
      gap: 44px;
      align-items: start;
    }#ap-aggregate .ap-spotlight{ grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); }#ap-aggregate .ap-layout-grid{ grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); }#ap-aggregate .ap-split{ grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); }#ap-aggregate .ap-media{ margin: 0; border-radius: 12px; overflow: hidden; background: #eef1ea; }#ap-aggregate .ap-media img{ width: 100%; max-height: 580px; object-fit: cover; }#ap-aggregate .ap-spec-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 26px; }#ap-aggregate .ap-spec{
      padding: 14px 16px;
      background: var(--ap-soft);
      border-left: 3px solid var(--ap-forest);
      border-radius: 0 8px 8px 0;
    }#ap-aggregate .ap-spec-label{
      display: block;
      font-size: 11px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .07em;
      color: var(--ap-muted);
      margin-bottom: 4px;
    }#ap-aggregate .ap-spec-value{ display: block; font-size: 15px; font-weight: 700; }#ap-aggregate .ap-options{ list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 10px; }#ap-aggregate .ap-options li{
      padding: 14px 16px;
      background: #fff;
      border: 1px solid var(--ap-line);
      border-radius: 8px;
      font-size: 15px;
      color: var(--ap-muted);
    }#ap-aggregate .ap-options strong{ color: var(--ap-ink); }#ap-aggregate .ap-price{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; margin: 0 0 4px; }#ap-aggregate .ap-price strong{ font-size: 30px; font-weight: 800; }#ap-aggregate .ap-price span{ font-size: 14px; color: var(--ap-muted); }#ap-aggregate .ap-tags{ display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 24px; }#ap-aggregate .ap-tag{
      padding: 6px 13px;
      border-radius: 999px;
      background: var(--ap-sand);
      color: #55492a;
      font-size: 13px;
      font-weight: 600;
    }#ap-aggregate .ap-callouts{ list-style: none; padding: 0; margin: 0 0 26px; display: grid; gap: 18px; }#ap-aggregate .ap-callouts li{ display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 14px; align-items: start; }#ap-aggregate .ap-num{
      display: flex;
      align-items: center;
      justify-content: center;
      width: 38px;
      height: 38px;
      border-radius: 50%;
      background: var(--ap-forest);
      color: #fff;
      font-size: 15px;
      font-weight: 800;
    }#ap-aggregate .ap-callouts p{ margin: 0; font-size: 15px; color: var(--ap-muted); }#ap-aggregate .ap-mini-spec{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
      padding: 18px;
      background: #fff;
      border: 1px solid var(--ap-line);
      border-radius: 10px;
    }#ap-aggregate .ap-mini-spec span{
      display: block;
      font-size: 11px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .06em;
      color: var(--ap-muted);
      margin-bottom: 4px;
    }#ap-aggregate .ap-mini-spec strong{ display: block; font-size: 15px; }#ap-aggregate .ap-checks{ list-style: none; padding: 0; margin: 0; display: grid; gap: 13px; }#ap-aggregate .ap-checks li{ position: relative; padding-left: 28px; font-size: 15px; color: var(--ap-muted); }#ap-aggregate .ap-checks li::before{
      content: "✓";
      position: absolute;
      left: 0;
      top: 0;
      color: var(--ap-forest);
      font-weight: 800;
    }#ap-aggregate .ap-cards{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }#ap-aggregate .ap-card{
      display: flex;
      flex-direction: column;
      background: #fff;
      border: 1px solid var(--ap-line);
      border-radius: 12px;
      overflow: hidden;
      transition: transform .2s ease, box-shadow .2s ease;
    }#ap-aggregate .ap-card:hover{ transform: translateY(-3px); box-shadow: 0 16px 34px rgba(31, 54, 42, 0.12); }#ap-aggregate .ap-card img{ width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: #eef1ea; }#ap-aggregate .ap-card-body{ display: flex; flex-direction: column; gap: 8px; padding: 18px 18px 22px; flex: 1; }#ap-aggregate .ap-card-body h3{ margin: 0; font-size: 18px; line-height: 1.34; }#ap-aggregate .ap-card-body p{ margin: 0; font-size: 14px; color: var(--ap-muted); flex: 1; }#ap-aggregate .ap-quote-wrap{ padding: 76px 0; background: #fff; }#ap-aggregate .ap-quote{
      display: grid;
      grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
      gap: 44px;
      align-items: center;
      padding: 44px;
      border-radius: 16px;
      background: var(--ap-forest);
      color: #fff;
    }#ap-aggregate .ap-h2-light{ color: #fff; }#ap-aggregate .ap-quote-text{ color: rgba(255,255,255,.86); font-size: 16px; margin: 0 0 24px; }#ap-aggregate .ap-quote-actions{ display: flex; flex-wrap: wrap; gap: 12px; }#ap-aggregate .ap-quote-media{ margin: 0; border-radius: 12px; overflow: hidden; background: rgba(255,255,255,.1); }#ap-aggregate .ap-quote-media img{ width: 100%; max-height: 420px; object-fit: cover; }#ap-aggregate .ap-faq{ display: grid; gap: 16px; max-width: 940px; }

    @media (max-width: 960px) {#ap-aggregate .ap-hero-grid, #ap-aggregate .ap-spotlight, #ap-aggregate .ap-layout-grid, #ap-aggregate .ap-split, #ap-aggregate .ap-quote{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-hero{ padding: 42px 0 52px; }#ap-aggregate .ap-hero-media img{ max-height: 440px; }#ap-aggregate .ap-section{ padding: 58px 0; }#ap-aggregate .ap-quote-wrap{ padding: 58px 0; }#ap-aggregate .ap-cards{ grid-template-columns: repeat(2, minmax(0, 1fr)); }#ap-aggregate .ap-quote{ padding: 30px; }
    }

    @media (max-width: 700px) {#ap-aggregate .ap-table-wrap{ border: 0; background: transparent; border-radius: 0; }#ap-aggregate table, #ap-aggregate thead, #ap-aggregate tbody, #ap-aggregate tr, #ap-aggregate th, #ap-aggregate td{ display: block; width: 100%; }#ap-aggregate thead{ display: none; }#ap-aggregate tbody tr{
        margin-bottom: 14px;
        background: #fff;
        border: 1px solid var(--ap-line);
        border-radius: 10px;
        overflow: hidden;
      }#ap-aggregate tbody th{
        width: 100%;
        padding: 12px 16px;
        background: var(--ap-sand);
        color: #4a4126;
        font-size: 14px;
        border-bottom: 0;
      }#ap-aggregate tbody td{
        display: flex;
        justify-content: space-between;
        gap: 16px;
        padding: 10px 16px;
        font-size: 14px;
        border-top: 1px solid #eef1ec;
      }#ap-aggregate tbody td::before{
        content: attr(data-label);
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: .06em;
        color: var(--ap-muted);
        flex: 0 0 auto;
      }#ap-aggregate .ap-mark{ font-size: 13px; }#ap-aggregate .ap-cards{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-mini-spec{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }

    @media (max-width: 640px) {#ap-aggregate .ap-shell{ width: calc(100% - 32px); }#ap-aggregate .ap-hero-title{ font-size: 30px; line-height: 1.28; }#ap-aggregate .ap-hero-intro{ font-size: 16px; }#ap-aggregate .ap-h2{ font-size: 25px; line-height: 1.24; }#ap-aggregate .ap-h3{ font-size: 18px; line-height: 1.36; }#ap-aggregate .ap-lede{ font-size: 16px; }#ap-aggregate .ap-spec-grid{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-btn{ width: 100%; }#ap-aggregate .ap-hero-actions .ap-btn{ width: 100%; }#ap-aggregate .ap-quote{ padding: 24px; }#ap-aggregate .ap-price strong{ font-size: 26px; }
    }
  