#ap-aggregate{
    --ap-ink: #102229;
    --ap-muted: #5b6b72;
    --ap-line: #dce4e7;
    --ap-paper: #ffffff;
    --ap-soft: #f3f7f8;
    --ap-teal: #0d6f7a;
    --ap-teal-dark: #084f57;
    --ap-deep: #0f2f36;
    --ap-sand: #e9d9b4;
    --ap-coral: #bf5a46;
    color: var(--ap-ink);
    background: var(--ap-paper);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.65;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
  }#ap-aggregate *, #ap-aggregate *::before, #ap-aggregate *::after{ box-sizing: border-box; }#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(1140px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-hero-title{
    font-size: clamp(32px, 4.6vw, 52px);
    line-height: 1.28;
    letter-spacing: -0.012em;
    font-weight: 800;
    margin: 0 0 20px;
  }#ap-aggregate .ap-h2{
    font-size: clamp(25px, 3vw, 35px);
    line-height: 1.22;
    letter-spacing: -0.01em;
    font-weight: 800;
    margin: 0 0 14px;
  }#ap-aggregate .ap-h3{
    font-size: 19px;
    line-height: 1.32;
    font-weight: 700;
    margin: 0 0 8px;
  }#ap-aggregate .ap-label{
    display: inline-block;
    margin-bottom: 12px;
    color: var(--ap-teal);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }#ap-aggregate .ap-hero{
    padding: 56px 0 66px;
    background: linear-gradient(180deg, #f6fafb 0%, #ffffff 100%);
    border-bottom: 1px solid var(--ap-line);
  }#ap-aggregate .ap-hero-grid{
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
    gap: 56px;
    align-items: center;
  }#ap-aggregate .ap-hero-intro{
    font-size: 17.5px;
    color: #24393f;
    max-width: 620px;
    margin-bottom: 0;
  }#ap-aggregate .ap-hero-intro a{
    color: var(--ap-teal);
    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: 30px;
  }#ap-aggregate .ap-hero-media{ position: relative; }#ap-aggregate .ap-hero-media::after{
    content: "";
    position: absolute;
    right: -12px;
    bottom: -12px;
    width: 42%;
    height: 38%;
    border-right: 6px solid var(--ap-sand);
    border-bottom: 6px solid var(--ap-sand);
    border-radius: 0 0 10px 0;
    z-index: 0;
  }#ap-aggregate .ap-hero-media img{
    position: relative;
    z-index: 1;
    width: 100%;
    border-radius: 14px;
    box-shadow: 0 20px 48px rgba(16, 34, 41, 0.16);
  }#ap-aggregate .ap-btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 26px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  }#ap-aggregate .ap-btn-primary{ background: var(--ap-teal); color: #ffffff; }#ap-aggregate .ap-btn-primary:hover{ background: var(--ap-teal-dark); }#ap-aggregate .ap-btn-ghost{ background: #ffffff; color: var(--ap-ink); border-color: var(--ap-ink); }#ap-aggregate .ap-btn-ghost:hover{ background: var(--ap-ink); color: #ffffff; }#ap-aggregate .ap-btn-light{ background: #ffffff; color: var(--ap-deep); }#ap-aggregate .ap-btn-light:hover{ background: var(--ap-sand); }#ap-aggregate .ap-scope{ padding: 24px 0; background: #ffffff; border-bottom: 1px solid var(--ap-line); }#ap-aggregate .ap-scope-inner{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }#ap-aggregate .ap-scope-text{ margin: 0; font-size: 15px; color: var(--ap-muted); max-width: 640px; }#ap-aggregate .ap-anchor-rail{ display: flex; flex-wrap: wrap; gap: 8px; }#ap-aggregate .ap-chip{
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border: 1px solid var(--ap-line);
    border-radius: 999px;
    background: #ffffff;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
  }#ap-aggregate .ap-chip:hover{ border-color: var(--ap-teal); color: var(--ap-teal); }#ap-aggregate .ap-section{ padding: 76px 0; }#ap-aggregate .ap-section-soft{ background: var(--ap-soft); }#ap-aggregate .ap-lead{ color: var(--ap-muted); font-size: 16.5px; max-width: 720px; }#ap-aggregate .ap-head-split{
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 340px);
    gap: 40px;
    align-items: end;
    margin-bottom: 30px;
  }#ap-aggregate .ap-head-split img{
    width: 100%;
    border-radius: 12px;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }#ap-aggregate .ap-table-wrap{
    overflow-x: auto;
    border: 1px solid var(--ap-line);
    border-radius: 14px;
    background: #ffffff;
  }#ap-aggregate .ap-table{ width: 100%; border-collapse: collapse; font-size: 15px; }#ap-aggregate .ap-table thead th{
    background: var(--ap-deep);
    color: #ffffff;
    text-align: left;
    padding: 14px 18px;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }#ap-aggregate .ap-table tbody td{
    padding: 16px 18px;
    border-top: 1px solid var(--ap-line);
    vertical-align: top;
  }#ap-aggregate .ap-table tbody tr:nth-child(even){ background: #fafcfc; }#ap-aggregate .ap-table tbody td:first-child{ font-weight: 700; color: var(--ap-ink); }#ap-aggregate .ap-table tbody td:nth-child(4){ white-space: nowrap; }#ap-aggregate .ap-status{
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }#ap-aggregate .ap-status-yes{ background: #dff1e6; color: #1c6b41; }#ap-aggregate .ap-status-no{ background: #f7e4de; color: #9b3d2b; }#ap-aggregate .ap-zip-layout{
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 48px;
    align-items: start;
  }#ap-aggregate .ap-zip-media img{ width: 100%; border-radius: 14px; box-shadow: 0 14px 36px rgba(16, 34, 41, 0.12); }#ap-aggregate .ap-zip-panels{ display: grid; gap: 16px; margin-top: 26px; }#ap-aggregate .ap-panel{
    padding: 20px 22px;
    border-radius: 12px;
    border: 1px solid var(--ap-line);
    background: #ffffff;
    border-left: 5px solid var(--ap-line);
  }#ap-aggregate .ap-panel-this{ border-left-color: var(--ap-teal); }#ap-aggregate .ap-panel-other{ border-left-color: #b9c5c9; }#ap-aggregate .ap-panel p{ margin: 0; color: var(--ap-muted); font-size: 15px; }#ap-aggregate .ap-verdict{
    margin-top: 18px;
    padding: 18px 22px;
    border-radius: 12px;
    background: var(--ap-deep);
    color: #eaf2f3;
    font-size: 15px;
  }#ap-aggregate .ap-verdict strong{ color: #ffffff; }#ap-aggregate .ap-seam-grid{
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 48px;
    align-items: start;
  }#ap-aggregate .ap-seam-media img{ width: 100%; border-radius: 14px; box-shadow: 0 14px 36px rgba(16, 34, 41, 0.12); }#ap-aggregate .ap-seam-caption{ margin-top: 10px; font-size: 13px; color: var(--ap-muted); }#ap-aggregate .ap-hotspot{
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 14px;
    padding: 14px 0;
    border-top: 1px solid var(--ap-line);
  }#ap-aggregate .ap-hotspot:last-of-type{ border-bottom: 1px solid var(--ap-line); }#ap-aggregate .ap-hotspot-num{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--ap-teal);
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
  }#ap-aggregate .ap-hotspot h3{ margin: 0 0 2px; }#ap-aggregate .ap-hotspot p{ margin: 0; font-size: 14.5px; color: var(--ap-muted); }#ap-aggregate .ap-seam-note{
    margin-top: 22px;
    padding: 16px 20px;
    border-radius: 12px;
    background: #ffffff;
    border: 1px solid var(--ap-line);
    font-size: 15px;
    color: var(--ap-muted);
  }#ap-aggregate .ap-scenario-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }#ap-aggregate .ap-scenario{
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border: 1px solid var(--ap-line);
    border-radius: 14px;
    overflow: hidden;
  }#ap-aggregate .ap-scenario img{ width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }#ap-aggregate .ap-scenario-body{ padding: 22px 24px 24px; display: flex; flex-direction: column; flex: 1; }#ap-aggregate .ap-spec-tags{ display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; padding: 0; list-style: none; }#ap-aggregate .ap-spec-tags li{
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--ap-soft);
    border: 1px solid var(--ap-line);
    font-size: 12px;
    font-weight: 700;
    color: #2c4249;
  }#ap-aggregate .ap-decision{
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px dashed var(--ap-line);
    font-size: 14.5px;
    color: var(--ap-muted);
  }#ap-aggregate .ap-decision b{ color: var(--ap-ink); }#ap-aggregate .ap-fit-grid{
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    gap: 48px;
    align-items: center;
  }#ap-aggregate .ap-fit-media img{ width: 100%; border-radius: 14px; box-shadow: 0 14px 36px rgba(16, 34, 41, 0.12); }#ap-aggregate .ap-size-chips{ display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 20px; padding: 0; list-style: none; }#ap-aggregate .ap-size-chips li{
    min-width: 54px;
    padding: 10px 12px;
    text-align: center;
    border: 1px solid var(--ap-ink);
    border-radius: 8px;
    font-weight: 800;
    font-size: 14px;
    letter-spacing: 0.04em;
  }#ap-aggregate .ap-price{
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 18px;
  }#ap-aggregate .ap-price strong{ font-size: 32px; font-weight: 800; letter-spacing: -0.02em; }#ap-aggregate .ap-price span{ font-size: 13px; color: var(--ap-muted); text-transform: uppercase; letter-spacing: 0.1em; font-weight: 700; }#ap-aggregate .ap-check-list{ margin: 0 0 24px; padding: 0; list-style: none; }#ap-aggregate .ap-check-list li{
    position: relative;
    padding: 9px 0 9px 26px;
    border-bottom: 1px solid var(--ap-line);
    font-size: 15px;
  }#ap-aggregate .ap-check-list li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 17px;
    width: 12px;
    height: 7px;
    border-left: 2px solid var(--ap-teal);
    border-bottom: 2px solid var(--ap-teal);
    transform: rotate(-45deg);
  }#ap-aggregate .ap-fit-actions{ display: flex; flex-wrap: wrap; gap: 12px; }#ap-aggregate .ap-product-grid{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
  }#ap-aggregate .ap-product-card{
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border: 1px solid var(--ap-line);
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    transition: border-color 0.2s ease, transform 0.2s ease;
  }#ap-aggregate .ap-product-card:hover{ border-color: var(--ap-teal); transform: translateY(-2px); }#ap-aggregate .ap-product-card img{ width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: var(--ap-soft); }#ap-aggregate .ap-product-body{ padding: 18px 20px 22px; display: flex; flex-direction: column; flex: 1; }#ap-aggregate .ap-product-body h3{ font-size: 17px; margin: 0 0 8px; }#ap-aggregate .ap-product-body p{ font-size: 14px; color: var(--ap-muted); margin: 0 0 14px; }#ap-aggregate .ap-product-link{
    margin-top: auto;
    font-size: 13.5px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ap-teal);
  }#ap-aggregate .ap-quote-band{ padding: 70px 0; background: var(--ap-soft); }#ap-aggregate .ap-quote{
    background: var(--ap-deep);
    color: #e8f1f2;
    border-radius: 20px;
    padding: 46px 48px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 32px;
    align-items: center;
  }#ap-aggregate .ap-quote h2{ color: #ffffff; }#ap-aggregate .ap-quote p{ margin: 0; max-width: 660px; font-size: 15.5px; }#ap-aggregate .ap-quote-actions{ display: flex; flex-wrap: wrap; gap: 12px; }

  
  @media (max-width: 960px) {#ap-aggregate .ap-hero-grid, #ap-aggregate .ap-zip-layout, #ap-aggregate .ap-seam-grid, #ap-aggregate .ap-fit-grid, #ap-aggregate .ap-head-split{ grid-template-columns: minmax(0, 1fr); gap: 32px; }#ap-aggregate .ap-hero-media::after{ display: none; }#ap-aggregate .ap-product-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }#ap-aggregate .ap-quote{ grid-template-columns: minmax(0, 1fr); padding: 34px 30px; }#ap-aggregate .ap-section{ padding: 58px 0; }#ap-aggregate .ap-quote-band{ padding: 54px 0; }
  }
  @media (max-width: 780px) {#ap-aggregate .ap-table-wrap{ border: 0; background: transparent; overflow-x: visible; }#ap-aggregate .ap-table thead{ display: none; }#ap-aggregate .ap-table, #ap-aggregate .ap-table tbody, #ap-aggregate .ap-table tr, #ap-aggregate .ap-table td{ display: block; width: 100%; }#ap-aggregate .ap-table tbody tr{
      background: #ffffff !important;
      border: 1px solid var(--ap-line);
      border-radius: 12px;
      padding: 6px 16px 12px;
      margin-bottom: 12px;
    }#ap-aggregate .ap-table tbody td{ border-top: 0; padding: 8px 0; }#ap-aggregate .ap-table tbody td::before{
      content: attr(data-label);
      display: block;
      font-size: 10.5px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--ap-muted);
      margin-bottom: 3px;
    }#ap-aggregate .ap-table tbody td:first-child{
      padding-top: 12px;
      font-size: 17px;
      border-bottom: 1px solid var(--ap-line);
      margin-bottom: 4px;
    }#ap-aggregate .ap-table tbody td:first-child::before{ display: none; }
  }
  @media (max-width: 680px) {#ap-aggregate .ap-shell{ width: calc(100% - 32px); }#ap-aggregate .ap-scenario-grid, #ap-aggregate .ap-product-grid{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-hero{ padding: 40px 0 46px; }#ap-aggregate .ap-hero-intro{ font-size: 16.5px; }#ap-aggregate .ap-btn{ width: 100%; }#ap-aggregate .ap-hotspot{ grid-template-columns: 32px minmax(0, 1fr); gap: 12px; }#ap-aggregate .ap-hotspot-num{ width: 30px; height: 30px; font-size: 13px; }
  }
