/* Shared spacing and corner sizes for the approved light homepage. */
.jp-home.jp-light {
    --jp-section-gap: var(--jupiter-section-gap);
    --jp-panel-radius: var(--jupiter-panel-radius);
    --jp-card-radius: var(--jupiter-card-radius);
    --jp-preview-radius: var(--jupiter-preview-radius);
    --jp-panel-padding: var(--jupiter-panel-padding);
    --jp-card-gap: var(--jupiter-card-gap);
}

.jp-home.jp-light .jp-section { margin-top: var(--jp-section-gap); }
.jp-home.jp-light #solutions { margin-top: 48px; }
.jp-home.jp-light .jp-section-head,
.jp-home.jp-light #catalog .jp-section-head { margin-bottom: 24px; gap: 24px; }
.jp-home.jp-light .jp-header,
.jp-home.jp-light .jp-hero,
.jp-home.jp-light .jp-format,
.jp-home.jp-light .jp-included-panel,
.jp-home.jp-light .jp-light-panel,
.jp-home.jp-light .jp-integration-panel,
.jp-home.jp-light .jp-support-panel,
.jp-home.jp-light .jp-case,
.jp-home.jp-light .jp-faq,
.jp-home.jp-light .jp-dialog { border-radius: var(--jp-panel-radius); }
.jp-home.jp-light .jp-dialog { padding: var(--jp-panel-padding); }
.jp-home.jp-light .jp-rental-offer { border-radius: var(--jp-card-radius); }

.jp-home.jp-light .jp-hero { padding: 40px; }
.jp-home.jp-light .jp-formats { gap: var(--jp-card-gap); }
.jp-home.jp-light .jp-format { padding: 24px; }
.jp-home.jp-light .jp-format > p { color: var(--jp-muted); }
.jp-home.jp-light .jp-format > .jp-text-link::after { border-radius: var(--jp-panel-radius); }
.jp-home.jp-light .jp-preview,
.jp-home.jp-light .jp-solution .jp-preview,
.jp-home.jp-light .jp-case-picture { border-radius: var(--jp-preview-radius); }
.jp-home.jp-light .jp-solution .jp-round-button::after { border-radius: var(--jp-preview-radius); }

.jp-home.jp-light .jp-process { gap: 16px; }
.jp-home.jp-light .jp-process li { padding: 24px 64px 24px 24px; min-height: 128px; border-radius: var(--jp-card-radius); }
.jp-home.jp-light .jp-step-number { top: 24px; right: 24px; }
.jp-home.jp-light .jp-included-panel,
.jp-home.jp-light .jp-light-panel,
.jp-home.jp-light .jp-integration-panel,
.jp-home.jp-light .jp-support-panel { padding: var(--jp-panel-padding); }

.jp-home.jp-light .jp-pricing article:first-child { padding: 0 28px 0 0; }
.jp-home.jp-light .jp-pricing article:last-child { padding: 0 0 0 28px; }
.jp-home.jp-light .jp-catalog-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--jp-card-gap); }
.jp-home.jp-light .jp-solution-caption { padding-top: 12px; }
.jp-home.jp-light .jp-industries a { border-radius: var(--jp-card-radius); }
.jp-home.jp-light .jp-integration-panel { gap: 32px; }
.jp-home.jp-light .jp-integration-panel p:not(.jp-eyebrow) { color: var(--jp-muted); }
.jp-home.jp-light .jp-support { gap: 48px; }
.jp-home.jp-light .jp-support-panel::before,
.jp-home.jp-light .jp-contact::before { display: none; }
.jp-home.jp-light .jp-cases { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--jp-card-gap); }
.jp-home.jp-light .jp-case { padding: 24px; }
.jp-home.jp-light .jp-faq { padding: 12px 28px; }
.jp-home.jp-light .jp-faq summary { padding-block: 16px; }
.jp-home.jp-light .jp-faq details[open] summary { padding-block: 16px 8px; font-size: 17px; }
.jp-home.jp-light #contact { margin-top: var(--jp-section-gap); padding: var(--jp-panel-padding); }
.jp-home.jp-light .jp-contact-actions { align-items: flex-start; }

@media (max-width: 980px) {
    .jp-home.jp-light .jp-catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .jp-home.jp-light .jp-cases { grid-template-columns: minmax(0,1fr); }
    .jp-home.jp-light .jp-support { gap: 32px; }
}

@media (max-width: 640px) {
    .jp-home.jp-light #solutions { margin-top: 40px; }
    .jp-home.jp-light .jp-section-head,
    .jp-home.jp-light #catalog .jp-section-head { margin-bottom: 20px; gap: 20px; }
    .jp-home.jp-light .jp-hero { padding: 30px 24px 24px; }
    .jp-home.jp-light .jp-format { padding: 20px; }
    .jp-home.jp-light .jp-process li { min-height: 120px; padding: 20px 60px 20px 20px; }
    .jp-home.jp-light .jp-step-number { top: 20px; right: 20px; }
    .jp-home.jp-light .jp-included { gap: 24px 20px; }
    .jp-home.jp-light .jp-included h3 { font-size: 13px; }
    .jp-home.jp-light .jp-included p { font-size: 12px; }
    .jp-home.jp-light .jp-pricing article:first-child { padding: 0 0 24px; }
    .jp-home.jp-light .jp-pricing article:last-child { padding: 0; }
    .jp-home.jp-light .jp-catalog-grid { grid-template-columns: minmax(0,1fr); }
    .jp-home.jp-light .jp-integration-panel,
    .jp-home.jp-light .jp-support { gap: 24px; }
    .jp-home.jp-light .jp-integration-panel .jp-button { white-space: normal; }
    .jp-home.jp-light .jp-case { padding: 20px; }
    .jp-home.jp-light .jp-faq { padding: 8px 20px; }
    .jp-home.jp-light .jp-faq summary,
    .jp-home.jp-light .jp-faq details[open] summary { font-size: 14px; line-height: 1.5; }
}
