/* Scoped styles — all selectors prefixed with .ap- */
    .ap-page *{ box-sizing: border-box; margin: 0; }.ap-page{ font-family: Arial, Helvetica, sans-serif; color: #1f2722; background: #fff; line-height: 1.6; }.ap-page a{ color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }.ap-page img{ display: block; max-width: 100%; height: auto; }.ap-page h1, .ap-page h2, .ap-page h3, .ap-page p{ margin-top: 0; }.ap-page h1{ font-size: 44px; line-height: 1.28; margin-bottom: 20px; }.ap-page h2{ font-size: 32px; line-height: 1.22; margin-bottom: 16px; }.ap-page h3{ font-size: 20px; line-height: 1.3; margin-bottom: 10px; }.ap-page ul{ padding-left: 20px; }#ap-aggregate .ap-shell{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-hero{ padding: 50px 0 56px; background: #f4f5f1; }#ap-aggregate .ap-hero-grid{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 0.75fr); gap: 50px; align-items: center; }#ap-aggregate .ap-hero-text{ }#ap-aggregate .ap-hero-text p{ font-size: 17px; color: #667069; margin-bottom: 20px; }#ap-aggregate .ap-hero-actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }#ap-aggregate .ap-hero-actions .ap-btn{ display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 11px 24px; border: 1px solid #1f2722; border-radius: 4px; font-size: 15px; font-weight: 700; text-decoration: none; transition: background-color .2s, color .2s; }#ap-aggregate .ap-hero-actions .ap-btn-primary{ background: #4d5a43; color: #fff !important; border-color: #4d5a43; }#ap-aggregate .ap-hero-actions .ap-btn-primary:hover{ background: #35402f; }#ap-aggregate .ap-hero-actions .ap-btn-secondary:hover{ background: #1f2722; color: #fff !important; }#ap-aggregate .ap-hero-facts{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 30px; }#ap-aggregate .ap-hero-fact{ padding: 12px 0; border-top: 2px solid #1f2722; }#ap-aggregate .ap-hero-fact strong{ display: block; font-size: 14px; }#ap-aggregate .ap-hero-fact span{ font-size: 13px; color: #667069; }#ap-aggregate .ap-hero-media img{ width: 100%; max-height: 500px; object-fit: cover; border-radius: 8px; box-shadow: 0 18px 44px rgba(31,39,34,0.14); }#ap-aggregate .ap-section{ padding: 70px 0; }#ap-aggregate .ap-section-soft{ background: #f4f5f1; }#ap-aggregate .ap-center-head{ max-width: 720px; margin: 0 auto 36px; text-align: center; }#ap-aggregate .ap-criteria-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 20px; }#ap-aggregate .ap-criteria-card{ background: #fff; padding: 24px 18px; border-radius: 8px; border: 1px solid #dfe3dc; text-align: center; }#ap-aggregate .ap-criteria-card svg{ width: 40px; height: 40px; margin-bottom: 12px; fill: #4d5a43; }#ap-aggregate .ap-criteria-card h3{ font-size: 17px; margin-bottom: 6px; }#ap-aggregate .ap-criteria-card p{ font-size: 14px; color: #667069; }#ap-aggregate .ap-product-spotlight{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 50px; align-items: start; }#ap-aggregate .ap-product-spotlight img{ width: 100%; max-height: 500px; object-fit: cover; border-radius: 8px; box-shadow: 0 12px 32px rgba(31,39,34,0.1); }#ap-aggregate .ap-features ul{ list-style: none; padding: 0; }#ap-aggregate .ap-features li{ padding: 8px 0 8px 24px; position: relative; }#ap-aggregate .ap-features li::before{ content: "✓"; position: absolute; left: 0; color: #4d5a43; font-weight: 700; }#ap-aggregate .ap-specs table{ width: 100%; border-collapse: collapse; background: #fff; margin-top: 20px; }#ap-aggregate .ap-specs td, #ap-aggregate .ap-specs th{ border: 1px solid #dfe3dc; padding: 10px 14px; text-align: left; font-size: 14px; }#ap-aggregate .ap-specs th{ background: #f4f5f1; font-weight: 600; }#ap-aggregate .ap-cta-btn{ display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 11px 28px; border: 1px solid #4d5a43; border-radius: 4px; font-size: 15px; font-weight: 700; text-decoration: none; background: #4d5a43; color: #fff !important; transition: background .2s; }#ap-aggregate .ap-cta-btn:hover{ background: #35402f; }#ap-aggregate .ap-application-grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; }#ap-aggregate .ap-app-card{ background: #fff; padding: 24px; border-radius: 8px; border: 1px solid #dfe3dc; }#ap-aggregate .ap-app-card h3{ font-size: 18px; margin-bottom: 6px; }#ap-aggregate .ap-app-card p{ font-size: 14px; color: #667069; }#ap-aggregate .ap-installation{ display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 40px; align-items: center; }#ap-aggregate .ap-installation img{ width: 100%; max-height: 400px; object-fit: cover; border-radius: 8px; }#ap-aggregate .ap-installation ul{ list-style: none; padding: 0; }#ap-aggregate .ap-installation li{ padding: 10px 0 10px 28px; position: relative; font-size: 15px; }#ap-aggregate .ap-installation li::before{ content: "→"; position: absolute; left: 0; color: #4d5a43; font-weight: 700; }#ap-aggregate .ap-product-card{ background: #fff; border: 1px solid #dfe3dc; border-radius: 8px; overflow: hidden; transition: box-shadow 0.2s; }#ap-aggregate .ap-product-card:hover{ box-shadow: 0 8px 24px rgba(31,39,34,0.1); }#ap-aggregate .ap-product-card img{ width: 100%; height: 200px; object-fit: cover; }#ap-aggregate .ap-product-card-body{ padding: 16px 18px; }#ap-aggregate .ap-product-card-body h3{ font-size: 16px; margin-bottom: 6px; }#ap-aggregate .ap-product-card-body p{ font-size: 13px; color: #667069; margin-bottom: 12px; }#ap-aggregate .ap-faq-list{ max-width: 800px; margin: 0 auto; }#ap-aggregate .ap-faq-item{ border-bottom: 1px solid #dfe3dc; padding: 18px 0; }#ap-aggregate .ap-faq-question{ font-weight: 700; font-size: 16px; margin-bottom: 8px; cursor: default; }#ap-aggregate .ap-faq-answer{ font-size: 15px; color: #667069; }#ap-aggregate .ap-final-cta{ text-align: center; padding: 60px 0; background: #f4f5f1; }#ap-aggregate .ap-final-cta h2{ margin-bottom: 12px; }#ap-aggregate .ap-final-cta p{ margin-bottom: 24px; color: #667069; }#ap-aggregate .ap-final-cta .ap-cta-btn{ font-size: 16px; padding: 14px 36px; }
    @media (max-width: 768px) {#ap-aggregate .ap-hero-grid{ grid-template-columns: 1fr; }#ap-aggregate .ap-hero-media{ order: -1; }#ap-aggregate .ap-product-spotlight{ grid-template-columns: 1fr; }#ap-aggregate .ap-installation{ grid-template-columns: 1fr; }
    }
  