.ap-page{
    --ap-ink: #14252f;
    --ap-muted: #5f7180;
    --ap-soft: #f2f8fa;
    --ap-line: #dbe8ed;
    --ap-brand: #0a6c74;
    --ap-brand-dark: #084b52;
    --ap-slate: #1b2e41;
    --ap-accent: #bf6f2c;
    --ap-white: #ffffff;
    width: 100%;
    overflow: hidden;
    background: var(--ap-white);
    color: var(--ap-ink);
    font-family: Arial, Helvetica, "Segoe UI", sans-serif;
    line-height: 1.65;
    letter-spacing: 0;
  }.ap-page *{ box-sizing: border-box; }.ap-page a{ color: inherit; text-underline-offset: 3px; }.ap-page img{ display: block; max-width: 100%; height: auto; border: 0; }.ap-page h1, .ap-page h2, .ap-page h3, .ap-page h4, .ap-page p{ margin-top: 0; }.ap-page h1{ font-size: clamp(33px, 4.2vw, 47px); line-height: 1.28; letter-spacing: -0.5px; }.ap-page h2{ font-size: clamp(26px, 3vw, 34px); line-height: 1.24; letter-spacing: -0.2px; }.ap-page h3{ font-size: 19px; line-height: 1.32; }#ap-aggregate .ap-shell{ width: min(1140px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-section{ padding: 78px 0; }#ap-aggregate .ap-section--soft{ background: var(--ap-soft); border-top: 1px solid var(--ap-line); border-bottom: 1px solid var(--ap-line); }#ap-aggregate .ap-section--plain{ background: var(--ap-white); }#ap-aggregate .ap-head-center{ max-width: 780px; margin: 0 auto 40px; text-align: center; }#ap-aggregate .ap-head-center p{ color: var(--ap-muted); font-size: 16px; margin: 0 auto; max-width: 720px; }#ap-aggregate /* Buttons */
  .ap-btn{ display: inline-flex; align-items: center; justify-content: center; min-height: 48px; gap: 8px; padding: 12px 22px; border-radius: 8px; font-size: 15px; font-weight: 800; text-decoration: none !important; border: 1px solid transparent; transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease; }#ap-aggregate .ap-btn-brand{ background: var(--ap-brand); border-color: var(--ap-brand); color: var(--ap-white) !important; }#ap-aggregate .ap-btn-brand:hover{ background: var(--ap-brand-dark); border-color: var(--ap-brand-dark); }#ap-aggregate .ap-btn-ghost{ background: var(--ap-white); border-color: #b8d2dc; color: var(--ap-brand-dark) !important; }#ap-aggregate .ap-btn-ghost:hover{ border-color: var(--ap-brand); color: var(--ap-brand) !important; }#ap-aggregate .ap-btn-light{ background: var(--ap-white); border-color: var(--ap-white); color: var(--ap-brand-dark) !important; }#ap-aggregate .ap-btn-light:hover{ background: #e7f2f5; }#ap-aggregate /* Hero */
  .ap-hero{ padding: 56px 0 64px; background: linear-gradient(135deg, #edf6f8 0%, #ffffff 55%, #f9f5ee 100%); }#ap-aggregate .ap-hero-grid{ display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr); align-items: center; gap: 56px; }#ap-aggregate .ap-hero h1{ margin-bottom: 20px; }#ap-aggregate .ap-hero-lead{ font-size: 18px; color: var(--ap-muted); margin: 0 0 30px; max-width: 62ch; }#ap-aggregate .ap-hero-lead a{ color: var(--ap-brand); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }#ap-aggregate .ap-hero-lead strong{ font-weight: 800; }#ap-aggregate .ap-hero-actions{ display: flex; flex-wrap: wrap; gap: 14px; }#ap-aggregate .ap-hero-media{ position: relative; z-index: 0; }#ap-aggregate .ap-hero-media::before{ content: ""; position: absolute; inset: 18px -18px -18px 18px; z-index: -1; border-radius: 20px; background: linear-gradient(135deg, rgba(10,108,116,0.10), rgba(191,111,44,0.08)); }#ap-aggregate .ap-hero-media img{ width: 100%; border-radius: 18px; box-shadow: 0 22px 55px rgba(20,37,47,0.16); }#ap-aggregate /* Trust snapshots */
  .ap-snap-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }#ap-aggregate .ap-snap-card{ display: flex; align-items: flex-start; gap: 16px; background: var(--ap-white); border: 1px solid var(--ap-line); border-radius: 14px; padding: 22px 20px; box-shadow: 0 4px 12px rgba(20,37,47,0.04); }#ap-aggregate .ap-snap-icon{ display: flex; align-items: center; justify-content: center; flex: 0 0 48px; width: 48px; height: 48px; border-radius: 12px; background: rgba(10,108,116,0.1); color: var(--ap-brand); }#ap-aggregate .ap-snap-card h3{ margin: 0 0 4px; font-size: 16px; }#ap-aggregate .ap-snap-card p{ margin: 0; color: var(--ap-muted); font-size: 14px; }#ap-aggregate /* Product / spec module */
  .ap-prod-grid{ display: grid; grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr); gap: 52px; align-items: center; }#ap-aggregate .ap-prod-media img{ width: 100%; border-radius: 18px; box-shadow: 0 18px 44px rgba(20,37,47,0.12); }#ap-aggregate .ap-prod-caption{ margin-top: 14px; font-size: 13px; color: var(--ap-muted); text-align: center; }#ap-aggregate .ap-table-wrap{ width: 100%; overflow-x: auto; border: 1px solid var(--ap-line); border-radius: 14px; background: var(--ap-white); }#ap-aggregate .ap-tbl{ width: 100%; min-width: 600px; border-collapse: separate; border-spacing: 0; font-size: 14.5px; }#ap-aggregate .ap-tbl th, #ap-aggregate .ap-tbl td{ padding: 14px 16px; text-align: left; vertical-align: top; }#ap-aggregate .ap-tbl thead th{ background: var(--ap-brand); color: var(--ap-white); font-size: 13.5px; letter-spacing: 0.4px; text-transform: uppercase; }#ap-aggregate .ap-tbl thead th:first-child{ border-top-left-radius: 13px; }#ap-aggregate .ap-tbl thead th:last-child{ border-top-right-radius: 13px; }#ap-aggregate .ap-tbl tbody th{ background: #f0f6f8; color: var(--ap-ink); font-weight: 800; white-space: nowrap; }#ap-aggregate .ap-tbl tbody td{ border-top: 1px solid var(--ap-line); color: var(--ap-muted); }#ap-aggregate .ap-tbl tbody tr:hover td{ background: #fbfdfe; }#ap-aggregate .ap-product-facts{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 24px 0 0; padding: 0; list-style: none; }#ap-aggregate .ap-product-facts li{ display: flex; gap: 10px; align-items: flex-start; background: var(--ap-soft); border-left: 3px solid var(--ap-brand); border-radius: 8px; padding: 12px 14px; color: var(--ap-ink); font-size: 14px; }#ap-aggregate .ap-product-facts strong{ display: block; font-size: 14px; margin-bottom: 2px; }#ap-aggregate /* Decision module */
  .ap-match-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }#ap-aggregate .ap-match-card{ display: flex; flex-direction: column; background: var(--ap-white); border: 1px solid var(--ap-line); border-radius: 16px; padding: 26px; box-shadow: 0 8px 22px rgba(20,37,47,0.05); }#ap-aggregate .ap-tag{ align-self: flex-start; display: inline-block; margin-bottom: 12px; padding: 5px 11px; border-radius: 100px; background: rgba(191,111,44,0.12); color: #8a4c1d; font-size: 11.5px; font-weight: 800; letter-spacing: 0.5px; text-transform: uppercase; }#ap-aggregate .ap-match-card h3{ margin-bottom: 10px; font-size: 18px; }#ap-aggregate .ap-match-card p{ color: var(--ap-muted); font-size: 14.5px; margin-bottom: 12px; }#ap-aggregate .ap-match-card .ap-pull{ margin: 0 0 10px; padding-left: 12px; border-left: 3px solid var(--ap-brand); color: var(--ap-ink); font-size: 14.5px; }#ap-aggregate .ap-match-card .ap-pull strong{ color: var(--ap-brand); }#ap-aggregate .ap-match-decision{ margin-top: auto; color: var(--ap-ink); font-size: 14.5px; }#ap-aggregate .ap-match-decision strong{ display: block; color: var(--ap-brand-dark); text-transform: uppercase; font-size: 12px; letter-spacing: 0.5px; margin-bottom: 4px; }#ap-aggregate /* Documentation checklist */
  .ap-doc-grid{ display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.92fr); gap: 52px; align-items: start; }#ap-aggregate .ap-check-list{ list-style: none; margin: 0; padding: 0; }#ap-aggregate .ap-check-list li{ display: flex; gap: 14px; padding: 15px 4px; border-bottom: 1px solid var(--ap-line); }#ap-aggregate .ap-check-list li:last-child{ border-bottom: 0; }#ap-aggregate .ap-check-list strong{ display: block; font-size: 15.5px; }#ap-aggregate .ap-check-list span{ color: var(--ap-muted); font-size: 14px; }#ap-aggregate .ap-doc-note{ background: var(--ap-white); border: 1px solid var(--ap-line); border-radius: 16px; padding: 28px; box-shadow: 0 10px 26px rgba(20,37,47,0.06); }#ap-aggregate .ap-doc-note h3{ margin-bottom: 12px; }#ap-aggregate .ap-doc-note p{ color: var(--ap-muted); font-size: 15px; }#ap-aggregate .ap-doc-note .ap-contact-line{ margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--ap-line); color: var(--ap-ink); font-size: 14px; font-weight: 700; }#ap-aggregate .ap-doc-note .ap-contact-line a{ color: var(--ap-brand); }#ap-aggregate /* Qualification path */
  .ap-steps{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-bottom: 44px; }#ap-aggregate .ap-step{ position: relative; background: var(--ap-white); border: 1px solid var(--ap-line); border-radius: 16px; padding: 24px 20px; }#ap-aggregate .ap-step-num{ display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: var(--ap-brand); color: var(--ap-white); font-size: 15px; font-weight: 800; margin-bottom: 12px; }#ap-aggregate .ap-step h3{ font-size: 16.5px; margin-bottom: 8px; }#ap-aggregate .ap-step p{ color: var(--ap-muted); font-size: 14px; margin-bottom: 0; }#ap-aggregate .ap-mid-cta{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; background: var(--ap-brand); border-radius: 18px; padding: 34px 38px; color: var(--ap-white); }#ap-aggregate .ap-mid-cta h3{ margin-bottom: 6px; font-size: 22px; }#ap-aggregate .ap-mid-cta p{ margin-bottom: 0; color: rgba(255,255,255,0.86); font-size: 15px; }#ap-aggregate .ap-mid-cta .ap-cta-group{ display: flex; flex-wrap: wrap; gap: 12px; }

  /* Responsive */
  @media (max-width: 920px) {#ap-aggregate .ap-hero-grid, #ap-aggregate .ap-prod-grid, #ap-aggregate .ap-doc-grid{ grid-template-columns: minmax(0, 1fr); gap: 40px; }#ap-aggregate .ap-prod-media{ max-width: 560px; margin: 0 auto; }#ap-aggregate .ap-steps{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (max-width: 640px) {#ap-aggregate .ap-section{ padding: 60px 0; }#ap-aggregate .ap-hero{ padding: 42px 0 50px; }#ap-aggregate .ap-snap-grid, #ap-aggregate .ap-match-grid{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-product-facts{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-mid-cta{ padding: 26px 22px; }#ap-aggregate .ap-steps{ grid-template-columns: minmax(0, 1fr); }#ap-aggregate .ap-prod-gallery{ grid-template-columns: minmax(0, 1fr) !important; }
  }
  @media (max-width: 390px) {#ap-aggregate .ap-shell{ width: min(1140px, calc(100% - 28px)); }#ap-aggregate .ap-hero-actions .ap-btn{ width: 100%; }
  }
