/*
 * Nova theme — modern multi-niche look, scoped to html[data-theme="nova"].
 * Soft cream sections, rounded photos, black pill buttons, centred section
 * titles and clean product cards on a light photo well.
 */

html[data-theme="nova"] {
    --sf-mk-gap: 18px;
    --sf-mk-radius: 12px;
}

/* Announcement bar + header */
html[data-theme="nova"] .sf-ticker {
    background: #000000;
    color: #ffffff;
    border-bottom: 0;
    font-size: 0.8rem;
}

html[data-theme="nova"] .sf-masthead {
    border-bottom: 1px solid var(--theme-color-border);
}

html[data-theme="nova"] .sf-masthead .sf-search-input {
    border-radius: 999px 0 0 999px;
    background: var(--theme-color-surface);
    border-color: transparent;
}

[dir="rtl"][data-theme="nova"] .sf-masthead .sf-search-input {
    border-radius: 0 999px 999px 0;
}

html[data-theme="nova"] .sf-search-btn {
    border-radius: 0 999px 999px 0;
    background: #000000;
}

[dir="rtl"][data-theme="nova"] .sf-search-btn {
    border-radius: 999px 0 0 999px;
}

html[data-theme="nova"] .sf-catbar-link:hover,
html[data-theme="nova"] .sf-catbar-link.active {
    color: #000000;
    border-bottom-color: #000000;
}

/* Section titles centred, "view all" as a pill under them */
html[data-theme="nova"] .sf-block {
    margin-top: 3.25rem;
}

html[data-theme="nova"] .sf-row-head {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.5rem;
    margin-bottom: 1.6rem;
}

html[data-theme="nova"] .sf-row-title {
    font-size: clamp(1.35rem, 1.05rem + 0.9vw, 1.9rem);
    font-weight: var(--theme-weight-semibold, 600);
}

html[data-theme="nova"] .sf-row-link {
    margin-inline-start: 0;
    padding: 0.3rem 0.95rem;
    border: 1px solid var(--theme-color-border);
    border-radius: 999px;
    color: var(--theme-color-text);
    font-size: 0.82rem;
}

html[data-theme="nova"] .sf-row-link:hover {
    border-color: #000000;
}

/* Product cards: rounded photo well, centred text, pill add button */
html[data-theme="nova"] .sf-product-card,
html[data-theme="nova"] .sf-product-card:hover {
    border: 0;
    box-shadow: none;
    background: transparent;
}

html[data-theme="nova"] .sf-product-card .sf-product-media {
    border-radius: 12px;
    border-bottom: 0;
    background: var(--theme-color-surface);
    overflow: hidden;
}

html[data-theme="nova"] .sf-product-card .sf-product-media img {
    padding: 8%;
    mix-blend-mode: multiply;
    transition: transform 500ms ease;
}

html[data-theme="nova"] .sf-product-card:hover .sf-product-media img {
    transform: scale(1.05);
}

html[data-theme="nova"] .sf-product-card .sf-product-body {
    align-items: center;
    text-align: center;
    padding: 0.85rem 0.25rem 0;
}

html[data-theme="nova"] .sf-product-card .sf-price {
    justify-content: center;
}

html[data-theme="nova"] .sf-product-perks {
    display: none;
}

html[data-theme="nova"] .btn {
    border-radius: 999px;
}

html[data-theme="nova"] .sf-product-card .sf-product-actions .btn-primary {
    background: #000000;
    border-color: #000000;
}

html[data-theme="nova"] .sf-flag {
    border-radius: 999px;
    padding-inline: 0.6rem;
}

html[data-theme="nova"] .sf-flag.is-warning {
    background: var(--theme-color-danger);
}

/* Builder blocks: rounded banners, black pill caption buttons, cream category cards */
html[data-theme="nova"] .sfb-hero,
html[data-theme="nova"] .sfb-banner,
html[data-theme="nova"] .sfb-video {
    border-radius: 18px;
    overflow: hidden;
}

html[data-theme="nova"] .sfb-hero.is-full,
html[data-theme="nova"] .sfb-video.is-full {
    border-radius: 0;
}

html[data-theme="nova"] .sfb-caption-btn {
    background: #000000;
    color: #ffffff;
}

html[data-theme="nova"] .sfb-caption-btn:hover {
    background: #ffffff;
    color: #000000;
}

html[data-theme="nova"] .sfb-cat.is-card .sfb-cat-media {
    border-radius: 14px;
    background: var(--theme-color-surface);
}

html[data-theme="nova"] .sfb-trust.is-cards .sfb-trust-item {
    border-radius: 14px;
    background: var(--theme-color-surface);
    border: 0;
}

html[data-theme="nova"] .sfb-marquee {
    --sfb-mq-bg: var(--theme-color-surface);
    --sfb-mq-fg: #000000;
}

/* Newsletter + footer */
html[data-theme="nova"] .sf-newsletter {
    flex-direction: column;
    text-align: center;
    border: 0;
    border-radius: 18px;
    background: var(--theme-color-surface);
    padding: 3rem 1.5rem;
}

html[data-theme="nova"] .sf-newsletter-form {
    width: 100%;
    max-width: 520px;
    flex: none;
}

html[data-theme="nova"] .sf-newsletter-form .form-control {
    border-radius: 999px;
}

html[data-theme="nova"] .sf-reason {
    border: 0;
    border-radius: 14px;
    background: var(--theme-color-surface);
}

@media (prefers-reduced-motion: reduce) {
    html[data-theme="nova"] .sf-product-card .sf-product-media img,
    html[data-theme="atelier"] .sf-product-card .sf-product-media img {
        transition: none;
    }
}
