.ap-page, .ap-page *, .ap-page *::before, .ap-page *::after{
  box-sizing: border-box;
}.ap-page{
  margin: 0;
  background: #f9fafb;
  color: #18212b;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}#ap-aggregate .ap-wrap{
  width: min(1180px, calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
}#ap-aggregate .ap-hero{
  background: linear-gradient(135deg, #f8fafc 0%, #eef7f5 100%);
  padding: 58px 0;
  border-bottom: 1px solid #e2e8f0;
}#ap-aggregate .ap-hero-grid{
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 42px;
  align-items: center;
}#ap-aggregate .ap-hero-copy{
  min-width: 0;
}#ap-aggregate .ap-hero-title{
  margin: 0 0 18px;
  color: #0f172a;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.28;
  font-weight: 700;
  letter-spacing: -0.02em;
}#ap-aggregate .ap-hero-subheadline{
  margin: 0 0 24px;
  color: #334155;
  font-size: 1.06rem;
  line-height: 1.66;
}#ap-aggregate .ap-hero-keyword-link{
  color: #0f766e;
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: inherit;
}#ap-aggregate .ap-hero-actions{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}#ap-aggregate .ap-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 8px;
  font-size: 0.98rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}#ap-aggregate .ap-btn-primary{
  background: #0f766e;
  color: #ffffff;
}#ap-aggregate .ap-btn-secondary{
  background: #ffffff;
  color: #0f172a;
  border-color: #cbd5e1;
}#ap-aggregate .ap-hero-visual{
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}#ap-aggregate .ap-hero-img{
  display: block;
  width: 100%;
  max-width: 520px;
  height: auto;
  max-height: 520px;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 14px;
}#ap-aggregate .ap-hero-caption{
  margin-top: 12px;
  text-align: center;
  color: #64748b;
  font-size: 0.86rem;
  line-height: 1.45;
}#ap-aggregate{
  background: #f9fafb;
}#ap-aggregate .ap-section{
  padding: 56px 0;
}#ap-aggregate .ap-section-alt{
  background: #ffffff;
}#ap-aggregate .ap-section-head{
  max-width: 820px;
  margin: 0 auto 28px;
  text-align: center;
}#ap-aggregate .ap-section-title{
  margin: 0 0 10px;
  color: #0f172a;
  font-size: clamp(1.55rem, 3vw, 2rem);
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.01em;
}#ap-aggregate .ap-section-intro{
  margin: 0;
  color: #475569;
  font-size: 1rem;
  line-height: 1.65;
}#ap-aggregate .ap-body-text{
  margin: 0 0 18px;
  color: #334155;
  font-size: 1rem;
  line-height: 1.7;
}#ap-aggregate .ap-body-text:last-child{
  margin-bottom: 0;
}#ap-aggregate .ap-capability-grid, #ap-aggregate .ap-use-grid, #ap-aggregate .ap-product-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}#ap-aggregate .ap-capability-card, #ap-aggregate .ap-use-card, #ap-aggregate .ap-product-card{
  min-width: 0;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
}#ap-aggregate .ap-capability-card, #ap-aggregate .ap-use-card{
  padding: 20px;
}#ap-aggregate .ap-card-title{
  margin: 0 0 10px;
  color: #0f172a;
  font-size: 1.05rem;
  line-height: 1.35;
  font-weight: 700;
}#ap-aggregate .ap-card-text{
  margin: 0;
  color: #475569;
  font-size: 0.95rem;
  line-height: 1.65;
}#ap-aggregate .ap-core-media{
  max-width: 620px;
  margin: 28px auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}#ap-aggregate .ap-core-img{
  display: block;
  width: 100%;
  height: auto;
  max-height: 440px;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 14px;
}#ap-aggregate .ap-core-caption{
  margin-top: 10px;
  text-align: center;
  color: #64748b;
  font-size: 0.84rem;
  line-height: 1.45;
}#ap-aggregate .ap-spec-table-wrap{
  overflow-x: auto;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
}#ap-aggregate .ap-spec-table{
  width: 100%;
  border-collapse: collapse;
}#ap-aggregate .ap-spec-table th, #ap-aggregate .ap-spec-table td{
  padding: 14px 16px;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
  vertical-align: top;
  font-size: 0.95rem;
  line-height: 1.6;
}#ap-aggregate .ap-spec-table th{
  background: #f1f5f9;
  color: #0f172a;
  font-weight: 700;
}#ap-aggregate .ap-spec-table tr:last-child td{
  border-bottom: 0;
}#ap-aggregate .ap-decision-list, #ap-aggregate .ap-check-list{
  margin: 0;
  padding-left: 1.2rem;
  display: grid;
  gap: 10px;
}#ap-aggregate .ap-decision-list li, #ap-aggregate .ap-check-list li{
  color: #334155;
  font-size: 0.98rem;
  line-height: 1.65;
}#ap-aggregate .ap-product-card{
  display: flex;
  flex-direction: column;
  overflow: hidden;
}#ap-aggregate .ap-product-card-img{
  display: block;
  width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
}#ap-aggregate .ap-cta-section{
  background: #0f766e;
  padding: 52px 0;
}#ap-aggregate .ap-cta-section .ap-section-title, #ap-aggregate .ap-cta-section .ap-section-intro{
  color: #ffffff;
}#ap-aggregate .ap-cta-section .ap-section-intro{
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}#ap-aggregate .ap-cta-actions{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 22px;
}#ap-aggregate .ap-cta-section .ap-btn-primary{
  background: #ffffff;
  color: #0f766e;
}#ap-aggregate .ap-cta-section .ap-btn-secondary{
  background: transparent;
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.65);
}
@media (max-width: 900px) {#ap-aggregate .ap-hero-grid, #ap-aggregate .ap-capability-grid, #ap-aggregate .ap-use-grid, #ap-aggregate .ap-product-grid{
    grid-template-columns: 1fr;
  }#ap-aggregate .ap-hero{
    padding: 44px 0;
  }#ap-aggregate .ap-section{
    padding: 42px 0;
  }
}
@media (max-width: 640px) {#ap-aggregate .ap-hero-title{
    font-size: 2rem;
  }#ap-aggregate .ap-hero-actions .ap-btn, #ap-aggregate .ap-cta-actions .ap-btn{
    width: 100%;
  }#ap-aggregate .ap-section{
    padding: 36px 0;
  }#ap-aggregate .ap-spec-table th, #ap-aggregate .ap-spec-table td{
    padding: 12px;
    font-size: 0.9rem;
  }
}
