#ap-aggregate, #ap-aggregate *{ box-sizing: border-box; }#ap-aggregate{ width: 100%; max-width: 100%; overflow-x: clip; background: #f7f8fa; color: #17212b; font-family: Arial, sans-serif; }#ap-aggregate img{ display: block; max-width: 100%; height: auto; }#ap-aggregate a{ color: inherit; }#ap-aggregate .ap-shell{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-hero{ padding: 42px 0 28px; background: linear-gradient(180deg, #ffffff 0%, #f7f8fa 100%); }#ap-aggregate .ap-hero-grid{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); gap: 26px; align-items: center; }#ap-aggregate .ap-hero-title{ margin: 0 0 12px; font-size: 42px; line-height: 1.28; letter-spacing: 0; font-weight: 700; color: #17212b; }#ap-aggregate .ap-subheadline{ margin: 0; font-size: 17px; line-height: 1.6; color: #46515d; }#ap-aggregate .ap-hero-keyword-link{ color: #0b6b6f; text-decoration: none; }#ap-aggregate .ap-hero-keyword-link strong{ font-weight: 700; }#ap-aggregate .ap-hero-keyword-link:hover{ text-decoration: underline; }#ap-aggregate .ap-hero-actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }#ap-aggregate .ap-btn{ display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 18px; border-radius: 6px; text-decoration: none; font-size: 15px; line-height: 1.2; font-weight: 700; letter-spacing: 0; border: 1px solid transparent; }#ap-aggregate .ap-btn-primary{ background: #0f8b8d; color: #fff; }#ap-aggregate .ap-btn-primary:hover{ background: #0b6f71; }#ap-aggregate .ap-btn-secondary{ background: #fff; color: #17212b; border-color: #cfd8df; }#ap-aggregate .ap-btn-secondary:hover{ background: #f1f5f7; }#ap-aggregate .ap-hero-visual{ margin: 0; display: flex; flex-direction: column; align-items: center; gap: 10px; }#ap-aggregate .ap-hero-visual img{ width: 100%; max-height: 560px; object-fit: contain; object-position: center; background: #fff; border: 1px solid #dde3e8; border-radius: 8px; }#ap-aggregate .ap-hero-visual figcaption{ font-size: 13px; line-height: 1.4; color: #66727d; text-align: center; }#ap-aggregate .ap-section{ padding: 40px 0; }#ap-aggregate .ap-section-inner{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-section-head{ max-width: 760px; margin: 0 auto 22px; text-align: center; }#ap-aggregate .ap-section-head h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.22; letter-spacing: 0; font-weight: 700; color: #17212b; }#ap-aggregate .ap-section-head p{ margin: 0; font-size: 15px; line-height: 1.6; color: #4a5560; }#ap-aggregate .ap-fact-grid{ display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }#ap-aggregate .ap-fact-card{ background: #fff; border: 1px solid #d8dfe5; border-radius: 8px; overflow: hidden; min-width: 0; }#ap-aggregate .ap-fact-card img{ width: 100%; aspect-ratio: 4 / 3; object-fit: contain; object-position: center; background: #fff; }#ap-aggregate .ap-fact-card-body{ padding: 14px; }#ap-aggregate .ap-fact-card h3{ margin: 0 0 8px; font-size: 17px; line-height: 1.3; font-weight: 700; letter-spacing: 0; color: #17212b; }#ap-aggregate .ap-fact-card p{ margin: 0; font-size: 14px; line-height: 1.55; color: #4a5560; }#ap-aggregate .ap-spec-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }#ap-aggregate .ap-spec-panel{ background: #fff; border: 1px solid #d8dfe5; border-radius: 8px; padding: 18px; }#ap-aggregate .ap-spec-list{ display: grid; gap: 12px; margin: 0; }#ap-aggregate .ap-spec-row{ display: grid; grid-template-columns: minmax(150px, 220px) minmax(0, 1fr); gap: 14px; padding-bottom: 12px; border-bottom: 1px solid #edf1f4; }#ap-aggregate .ap-spec-row:last-child{ padding-bottom: 0; border-bottom: 0; }#ap-aggregate .ap-spec-key{ margin: 0; font-size: 14px; line-height: 1.45; font-weight: 700; color: #17212b; }#ap-aggregate .ap-spec-value{ margin: 0; font-size: 14px; line-height: 1.55; color: #4a5560; }#ap-aggregate .ap-support{ background: #eef5f6; border-top: 1px solid #d8e4e6; border-bottom: 1px solid #d8e4e6; }#ap-aggregate .ap-support-inner{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: center; }#ap-aggregate .ap-support h2{ margin: 0 0 6px; font-size: 24px; line-height: 1.22; letter-spacing: 0; }#ap-aggregate .ap-support p{ margin: 0; font-size: 15px; line-height: 1.6; color: #4a5560; }#ap-aggregate .ap-support-actions{ display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-end; }#ap-aggregate .ap-module-inner{ width: min(1180px, calc(100% - 40px)); margin: 0 auto; }#ap-aggregate .ap-module-heading{ max-width: 760px; margin: 0 auto 22px; text-align: center; }#ap-aggregate .ap-module-heading h2{ margin: 0 0 8px; font-size: 28px; line-height: 1.22; font-weight: 700; letter-spacing: 0; color: #17212b; }#ap-aggregate .ap-module-heading p{ margin: 0; font-size: 15px; line-height: 1.6; color: #4a5560; }#ap-aggregate .ap-faq-wrap{ width: min(100%, 800px); margin: 0 auto; }#ap-aggregate .ap-faq-grid{ display: grid; gap: 12px; }#ap-aggregate .ap-faq-item{ border: 1px solid #d8e1e8; border-radius: 12px; background: #fff; overflow: hidden; }#ap-aggregate .ap-faq-question{ display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 20px; font-size: 16px; line-height: 1.4; font-weight: 700; list-style: none; cursor: pointer; color: #17212b; }#ap-aggregate .ap-faq-question::-webkit-details-marker{ display: none; }#ap-aggregate .ap-faq-question::after{ content: "+"; flex: 0 0 auto; font-size: 20px; line-height: 1; color: #0f8b8d; }#ap-aggregate .ap-faq-item[open] .ap-faq-question::after{ content: "−"; }#ap-aggregate .ap-faq-answer{ padding: 0 20px 18px; color: #475569; }#ap-aggregate .ap-faq-answer p{ margin: 0; font-size: 14px; line-height: 1.6; }
@media (max-width: 1024px) {#ap-aggregate .ap-fact-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }#ap-aggregate .ap-spec-grid{ grid-template-columns: 1fr; }#ap-aggregate .ap-support-inner{ grid-template-columns: 1fr; }#ap-aggregate .ap-support-actions{ justify-content: flex-start; }
}
@media (max-width: 800px) {#ap-aggregate .ap-hero-grid{ grid-template-columns: 1fr; }
}
@media (max-width: 560px) {#ap-aggregate .ap-hero{ padding-top: 28px; }#ap-aggregate .ap-hero-title{ font-size: 32px; }#ap-aggregate .ap-section-head h2, #ap-aggregate .ap-module-heading h2, #ap-aggregate .ap-support h2{ font-size: 23px; }#ap-aggregate .ap-spec-row{ grid-template-columns: 1fr; gap: 6px; }
}
