body.modules-page:is(.modules-product, .modules-product-details) { --modules-radius: 8px; }
body.modules-page.modules-product .hero-container,
body.modules-page.modules-product-details .details-container { border: 0; border-radius: 0; background: transparent; }
body.modules-page.modules-product :where(.protein-model-box, .price-selection-card, .technical-docs-menu, .product-feedback-banner, .restriction-mechanism-trigger),
body.modules-page.modules-product-details :where(.details-section, .download-btn, .action-btn),
body.modules-page:is(.modules-product, .modules-product-details) :where(.cf-modal-content, .cf-modal-box, .cf-custom-modal, .rm-dialog) {
    border-radius: var(--modules-radius) !important;
}
body.modules-page.modules-product .product-hero { padding-top: .75rem; }
body.modules-page.modules-product .hero-container { gap: clamp(1.5rem, 3vw, 3rem); }
body.modules-page.modules-product .hero-visual { padding-left: 0; border-left: 0; }
body.modules-page.modules-product .product-title {
    max-width: none;
    font-size: var(--modules-title-size);
    font-weight: 420;
    line-height: 1.05;
    white-space: normal;
    overflow-wrap: anywhere;
    text-wrap: initial;
}
body.modules-page.modules-product .integrated-upsell { margin-top: .85rem; padding: 0; border: 0; border-radius: var(--modules-radius); background: transparent; }
body.modules-page.modules-product .upsell-inline-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
body.modules-page.modules-product .upsell-card {
    min-height: 3rem;
    padding: .55rem .7rem;
    border: 1px solid var(--modules-line);
    border-radius: var(--modules-radius) !important;
    background: var(--modules-surface);
}
body.modules-page.modules-product .upsell-card:first-child { border-top: 1px solid var(--modules-line); }
body.modules-page.modules-product-details .details-main { padding-top: .7rem; }
body.modules-page.modules-product-details .details-container { margin-top: 0; margin-bottom: 0; }
body.modules-page.modules-product-details .details-nav { margin-bottom: .7rem; padding-bottom: .55rem; }
body.modules-page.modules-product-details :is(.details-left, .details-right) { padding: 0; border: 0; }
body.modules-page.modules-product-details .details-grid { gap: clamp(1rem, 1.8vw, 1.5rem); }
body.modules-page.modules-product-details .details-section:last-child { margin-bottom: 0; }
@media (max-width: 700px) {
    body.modules-page.modules-product .product-title { font-size: var(--modules-title-size); white-space: normal; }
    body.modules-page.modules-product .upsell-inline-grid { grid-template-columns: 1fr; }
}

body.modules-page.modules-product :is(#add-to-cart-btn, .pf-trigger-btn) { border-radius: var(--modules-radius); }
body.modules-page.modules-product :is(.hero-info, .hero-visual, .upsell-card) { min-width: 0; }
body.modules-page.modules-product .upsell-card-name { font-size: 1rem; line-height: 1.25; }
body.modules-page.modules-product .upsell-card-action { font-size: .8rem; }
body.modules-page.modules-product .upsell-card-cat { font-size: .72rem; }
body.modules-page.modules-product .upsell-mini-title { margin-bottom: .65rem; }
body.modules-page.modules-product #p-features li::before { content: ''; width: 1.1rem; height: 1.1rem; top: .9rem; background: var(--magenta); mask: url('/assets/symbols/promoter.svg') center / contain no-repeat; border: 0; border-radius: 0; }
