/**
 * Zilenzo — tablet, iPad & landscape mobile
 * Loader efter style.css på alle sider.
 *
 * Forside-hero:
 *   • Mobil portræt  → 100% skærmhøjde (minus header + bundmenu)
 *   • Mobil landscape → ultrawide aspect-ratio (ikke fuld højde)
 */

/* ═══ Mobil portræt: banner fylder ALTID resten af skærmen ═══ */
@media (max-width: 900px) and (orientation: portrait) {
    body[data-page="home"] .zilenzo-front-hero--homepage,
    .theme-topbanner.theme-topbanner--forside:not(.theme-topbanner--fullscreen) {
        aspect-ratio: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding-inline: 0 !important;
        --theme-topbanner-height: calc(100vh - var(--zilenzo-home-header-h, 108px)) !important;
        --zilenzo-homepage-hero-h: calc(100vh - var(--zilenzo-home-header-h, 108px)) !important;
        --theme-topbanner-height: calc(100svh - var(--zilenzo-home-header-h, 108px)) !important;
        --zilenzo-homepage-hero-h: calc(100svh - var(--zilenzo-home-header-h, 108px)) !important;
        --zilenzo-homepage-hero-pad-bottom: calc(88px + env(safe-area-inset-bottom, 0px)) !important;
        height: var(--theme-topbanner-height, var(--zilenzo-homepage-hero-h)) !important;
        min-height: var(--theme-topbanner-height, var(--zilenzo-homepage-hero-h)) !important;
        max-height: var(--theme-topbanner-height, var(--zilenzo-homepage-hero-h)) !important;
        overflow: hidden !important;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-hero-picture,
    .theme-topbanner--forside .zilenzo-front-hero-picture,
    .theme-topbanner--forside .theme-topbanner__viewport,
    .theme-topbanner--forside .theme-topbanner__track,
    .theme-topbanner--forside .theme-topbanner__slide--forside {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-image,
    .theme-topbanner--forside .zilenzo-front-image {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 100% !important;
        min-height: 100% !important;
        object-fit: cover !important;
        object-position: center 12% !important;
    }

    body[data-page="home"] .zilenzo-front-content.zilenzo-front-content--homepage,
    .theme-topbanner--forside .zilenzo-front-content--homepage {
        position: absolute !important;
        inset: 0 !important;
        justify-content: flex-end !important;
        padding-bottom: var(--zilenzo-homepage-hero-pad-bottom, calc(88px + env(safe-area-inset-bottom, 0px))) !important;
    }
}

@supports (height: 100dvh) {
    @media (max-width: 900px) and (orientation: portrait) {
        body[data-page="home"] .zilenzo-front-hero--homepage,
        .theme-topbanner.theme-topbanner--forside:not(.theme-topbanner--fullscreen) {
            --theme-topbanner-height: calc(100dvh - var(--zilenzo-home-header-h, 108px)) !important;
            --zilenzo-homepage-hero-h: calc(100dvh - var(--zilenzo-home-header-h, 108px)) !important;
        }
    }
}

/* ═══ Mobil landscape (lille skærmhøjde) — også når bredden >900px ═══ */
@media (orientation: landscape) and (max-height: 540px) {
    .desktop-only {
        display: none !important;
    }

    .nav-links {
        display: none !important;
    }

    .mobile-menu-toggle {
        display: inline-flex !important;
        flex-shrink: 0;
        width: 36px;
        height: 36px;
        font-size: 1.1rem;
        border-radius: 8px;
    }

    .mobile-bottom-nav {
        display: flex !important;
    }

    body {
        padding-bottom: calc(56px + env(safe-area-inset-bottom, 0px)) !important;
    }

    .top-bar {
        padding: 4px 10px !important;
        font-size: clamp(0.58rem, 1.6vw, 0.68rem) !important;
        line-height: 1.15 !important;
    }

    .navbar {
        display: grid !important;
        grid-template-columns: minmax(0, auto) minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 6px !important;
        padding: 6px 10px !important;
        min-height: 0 !important;
        flex-wrap: nowrap !important;
        overflow: visible !important;
        position: relative !important;
        top: auto !important;
    }

    .navbar > .logo {
        display: none !important;
    }

    .navbar:has(.navbar-brand-row) > .logo {
        display: none !important;
    }

    .navbar-brand-row {
        display: flex !important;
        align-items: center;
        gap: 8px;
        grid-column: 1;
        grid-row: 1;
    }

    .navbar-brand-row .logo {
        display: inline-flex !important;
        width: 36px;
        height: 36px;
        min-width: 36px;
        max-width: 36px;
    }

    .navbar-brand-row .logo img {
        height: 20px;
        max-width: 28px;
    }

    .navbar-brand-identity {
        display: none !important;
    }

    .nav-actions {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        gap: 4px !important;
        flex-wrap: nowrap !important;
    }

    .nav-actions > .cart-icon {
        display: none !important;
    }

    .nav-actions > .icon-link {
        display: none !important;
    }

    .search-container {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: 3px 6px 3px 12px !important;
    }

    .search-container input {
        font-size: 0.8rem !important;
        min-width: 0 !important;
    }

    .search-btn {
        width: 32px !important;
        height: 32px !important;
    }

    .lang-switch-trigger {
        min-height: 32px !important;
        padding: 2px 4px !important;
    }

    body[data-page="home"] {
        --zilenzo-home-header-h: 64px;
    }

    /* Hero: ultrawide banner — IKKE 100svh */
    body[data-page="home"] .zilenzo-front-hero--homepage,
    .zilenzo-front-hero--homepage,
    .theme-topbanner.theme-topbanner--forside {
        aspect-ratio: 3811 / 1171 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
        --zilenzo-homepage-hero-h: auto !important;
        --theme-topbanner-height: auto !important;
        --zilenzo-homepage-hero-pad-bottom: 10px !important;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-hero-picture {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-image {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center 30% !important;
        transform: none !important;
    }

    body[data-page="home"] .zilenzo-front-content.zilenzo-front-content--homepage {
        position: absolute !important;
        inset: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: flex-start !important;
        padding: 8px 14px 10px !important;
    }

    body[data-page="home"] .zilenzo-front-homepage-stack {
        max-width: min(420px, 52vw) !important;
        margin: 0 !important;
    }

    body[data-page="home"] .zilenzo-front-homepage-title {
        font-size: clamp(0.92rem, 2.6vw, 1.28rem) !important;
        line-height: 1.08 !important;
        margin: 0 0 4px !important;
        white-space: normal !important;
    }

    body[data-page="home"] .zilenzo-front-homepage-lead {
        font-size: clamp(0.68rem, 1.7vw, 0.82rem) !important;
        line-height: 1.25 !important;
        margin: 0 0 6px !important;
        white-space: normal !important;
    }

    body[data-page="home"] .zilenzo-front-homepage-lead-line1,
    body[data-page="home"] .zilenzo-front-homepage-lead-line2 {
        display: inline !important;
    }

    body[data-page="home"] .zilenzo-front-homepage-actions {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-hero-btn {
        min-height: 32px !important;
        padding: 0 12px !important;
        font-size: 0.72rem !important;
    }

    body[data-page="home"] .zilenzo-front-homepage-trust {
        font-size: 0.58rem !important;
        margin-top: 4px !important;
        line-height: 1.2 !important;
    }

    .shop-catalog-hero__banner,
    .about-story-hero,
    .club-lp-hero {
        aspect-ratio: 3811 / 1171 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    .mobile-bottom-nav {
        padding: 3px 0 calc(3px + env(safe-area-inset-bottom, 0px)) !important;
    }

    .mobile-nav-item {
        font-size: 0.56rem !important;
        gap: 1px !important;
        padding: 2px 4px !important;
    }

    .mobile-nav-item .material-symbols-outlined {
        font-size: 1.1rem !important;
    }
}

/* ── 769–900px: sync header med bundmenu (burger + skjul desktop-nav) ── */
@media (max-width: 900px) and (min-width: 769px) {
    .desktop-only {
        display: none !important;
    }

    .mobile-menu-toggle {
        display: inline-flex !important;
        flex-shrink: 0;
        width: 38px;
        height: 38px;
        font-size: 1.2rem;
        border-radius: 8px;
    }

    .nav-links {
        display: none !important;
    }

    .nav-actions > .cart-icon {
        display: none !important;
    }

    .navbar-brand-identity {
        display: none !important;
    }

    .top-bar {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: center;
        padding: 10px 12px;
        font-size: clamp(0.62rem, 1.4vw, 0.72rem);
    }

    .top-bar-right {
        display: contents;
    }
}

/* ── iPad / tablet (901–1024px) — desktop-nav, ingen bundmenu ── */
@media (min-width: 901px) and (max-width: 1024px) {
    section.webshop-editor-row.content-shell,
    .content-shell.webshop-editor-row {
        padding-left: clamp(20px, 3vw, 32px);
        padding-right: clamp(20px, 3vw, 32px);
    }

    .navbar {
        gap: clamp(8px, 1.2vw, 14px);
        padding-inline: clamp(16px, 2.5vw, 24px);
    }

    .nav-links {
        gap: clamp(8px, 1vw, 12px);
        margin-right: clamp(8px, 1vw, 12px);
    }

    .nav-links > a,
    .nav-dropdown-toggle {
        font-size: clamp(0.72rem, 1.1vw, 0.82rem);
        letter-spacing: 0.04em;
    }

    .search-container {
        min-width: 160px;
        max-width: min(280px, 34vw);
    }

    .shop-catalog-page .catalog-product-grid,
    .shop-catalog-page .zilenzo-product-catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: clamp(14px, 2vw, 20px);
    }

    .product-grid,
    .webshop-editor-grid--4,
    .webshop-editor-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .footer-fusion-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: clamp(20px, 3vw, 32px);
    }

    .footer-fusion-form-grid {
        grid-template-columns: 1fr 1fr;
    }

    .checkout-v2-carrier-options {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .checkout-layout {
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
        gap: clamp(16px, 2.5vw, 24px);
    }

    .contact-page--story .contact-story-grid,
    .contact-page--story .contact-form-grid {
        grid-template-columns: 1fr;
        gap: clamp(20px, 3vw, 28px);
    }

    .about-story__grid,
    .oz-section__inner {
        padding-inline: clamp(20px, 3vw, 32px);
    }

    .popular-products-section .zilenzo-product-card {
        flex: 0 0 calc((100% - 20px) / 2);
    }
}

/* ── Forside & hero-bannere — tablet desktop-ratio ── */
@media (min-width: 901px) and (max-width: 1024px) {
    body[data-page="home"] .zilenzo-front-hero--homepage,
    .shop-catalog-hero__banner,
    .about-story-hero,
    .club-lp-hero {
        aspect-ratio: 3811 / 1171;
        width: 100%;
        height: auto;
        min-height: 0;
        max-height: none;
        overflow: hidden;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-hero-picture,
    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-image {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    body[data-page="home"] .zilenzo-front-content.zilenzo-front-content--homepage {
        position: absolute;
        inset: 0;
        justify-content: center;
        padding-inline: clamp(20px, 3vw, 32px);
    }

    body[data-page="home"] .zilenzo-front-homepage-stack {
        max-width: min(560px, 58vw);
    }

    body[data-page="home"] .zilenzo-front-homepage-title {
        font-size: clamp(1.65rem, 2.8vw, 2.35rem);
        white-space: normal;
    }

    body[data-page="home"] .zilenzo-front-homepage-lead {
        font-size: clamp(0.95rem, 1.6vw, 1.1rem);
        white-space: normal;
    }

    body[data-page="home"] .zilenzo-front-homepage-lead-line1,
    body[data-page="home"] .zilenzo-front-homepage-lead-line2 {
        display: block;
        white-space: normal;
    }

    body[data-page="home"] .zilenzo-front-homepage-actions {
        flex-wrap: wrap;
        gap: 10px;
    }
}

/* ── Landscape mobil (≤900px bred) — tekst/knapper; hero = aspect-ratio (se blokke ovenfor) ── */
@media (max-width: 900px) and (orientation: landscape) {
    body[data-page="home"] .zilenzo-front-hero--homepage,
    .shop-catalog-hero__banner,
    .about-story-hero,
    .club-lp-hero {
        aspect-ratio: 3811 / 1171 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        --zilenzo-homepage-hero-h: auto !important;
    }

    body[data-page="home"] .zilenzo-front-content.zilenzo-front-content--homepage,
    .shop-catalog-hero__inner,
    .about-story-hero__content,
    .club-lp-hero__content {
        justify-content: center;
        padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px));
    }

    body[data-page="home"] .zilenzo-front-homepage-stack {
        max-width: min(100%, 52vw);
    }

    body[data-page="home"] .zilenzo-front-homepage-title {
        font-size: clamp(1.1rem, 3.8vw, 1.65rem);
        line-height: 1.12;
        white-space: normal;
    }

    body[data-page="home"] .zilenzo-front-homepage-lead {
        font-size: clamp(0.82rem, 2.2vw, 0.98rem);
        white-space: normal;
        margin-bottom: 10px;
    }

    body[data-page="home"] .zilenzo-front-homepage-lead-line1,
    body[data-page="home"] .zilenzo-front-homepage-lead-line2 {
        display: inline;
        white-space: normal;
    }

    body[data-page="home"] .zilenzo-front-homepage-actions {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 8px;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-hero-btn {
        min-height: 42px;
        padding: 0 16px;
        font-size: 0.88rem;
    }

    body[data-page="home"] .zilenzo-front-homepage-trust {
        font-size: 0.72rem;
        margin-top: 8px;
    }

    body[data-page="home"] .zilenzo-front-hero--homepage .zilenzo-front-image {
        object-position: center 22%;
    }

    .shop-catalog-page .shop-catalog-hero__banner img {
        object-position: center center;
    }

    .about-story-hero__media img,
    .club-lp-hero__img {
        object-position: center 22%;
    }

    body {
        padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
    }

    .mobile-bottom-nav {
        padding-block: 6px;
    }

    .mobile-nav-item {
        font-size: 0.62rem;
    }
}

/* ── Produkt-detalje: én kolonne op til 1024px ── */
@media (max-width: 1024px) {
    .product-detail-shell .product-detail-layout {
        grid-template-columns: 1fr !important;
        min-height: auto !important;
    }

    .product-detail-shell .product-detail-media {
        min-height: auto !important;
        height: auto !important;
        border-right: none !important;
    }

    body.product-page .product-detail-layout--gallery,
    body.product-page .product-detail-layout:has([data-product-gallery]) {
        grid-template-columns: 1fr !important;
        min-height: auto !important;
    }

    body.product-page .product-detail-layout--gallery .product-detail-copy,
    body.product-page .product-detail-layout:has([data-product-gallery]) .product-detail-copy {
        position: static !important;
        top: auto !important;
        max-height: none !important;
        overflow: visible !important;
        grid-column: auto !important;
        grid-row: auto !important;
    }

    body.product-page .product-detail-layout:has([data-product-gallery]) .product-detail-media {
        position: static !important;
        min-height: auto !important;
        max-height: none !important;
    }

    body.product-page .product-detail-studio {
        border-right: none !important;
    }
}

@media (min-width: 1025px) {
    .product-detail-shell .product-detail-layout {
        display: grid;
        grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
        gap: 0;
        align-items: start;
        min-height: calc(100vh - 180px);
    }
}

/* ── Katalog: 2 kolonner på mellem-tablet ── */
@media (min-width: 769px) and (max-width: 900px) {
    .shop-catalog-page .catalog-product-grid,
    .shop-catalog-page .zilenzo-product-catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }
}

/* ── Favoritter, konto, checkout ── */
@media (max-width: 1024px) {
    .wishlist-page .wishlist-grid,
    .favorites-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .account-page-layout,
    .account-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .checkout-v2-layout {
        grid-template-columns: 1fr;
    }

    .checkout-v2-summary {
        position: static;
        top: auto;
    }
}

@media (max-width: 900px) and (min-width: 769px) {
    .wishlist-page .wishlist-grid,
    .favorites-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ── Theme CMS sektioner ── */
@media (min-width: 769px) and (max-width: 1024px) {
    .theme-category-blocks__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .theme-content-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .theme-hero__inner {
        padding-inline: clamp(20px, 3vw, 32px);
    }
}

/* ── Kontakt & om-sider ── */
@media (max-width: 1024px) {
    .contact-page--story .contact-hero,
    .about-story-hero {
        min-height: 0;
    }

    .oz-timeline__grid {
        grid-template-columns: 1fr;
    }

    .oz-values__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) and (orientation: landscape) {
    .about-story-hero__content h1,
    .club-lp-hero__title,
    .shop-catalog-hero__copy h1 {
        font-size: clamp(1.1rem, 3.5vw, 1.55rem);
    }

    .club-lp-hero__list {
        display: none;
    }
}

/* ── Footer tablet ── */
@media (min-width: 521px) and (max-width: 1024px) {
    .footer-fusion-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: clamp(18px, 2.5vw, 28px);
    }

    .footer-fusion-club h2 {
        font-size: clamp(1.35rem, 2.5vw, 1.75rem);
    }
}

@media (min-width: 901px) and (max-width: 1024px) and (orientation: landscape) {
    .footer-fusion-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* ── Om Zilenzo (oz-) tablet ── */
@media (min-width: 769px) and (max-width: 1024px) {
    .oz-hero {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        height: auto;
        max-height: none;
        min-height: 0;
        gap: clamp(20px, 3vw, 32px);
        padding-inline: clamp(20px, 3vw, 32px);
    }

    .oz-hero__copy {
        padding: clamp(24px, 3vw, 40px) clamp(16px, 2vw, 24px);
        justify-content: center;
    }

    .oz-hero__title {
        font-size: clamp(1.55rem, 3.2vw, 2.15rem);
        line-height: 1.1;
    }

    .oz-hero__lead {
        font-size: clamp(0.95rem, 1.6vw, 1.08rem);
        margin-bottom: clamp(16px, 2.5vw, 24px);
    }

    .oz-hero__media {
        min-height: min(52vh, 480px);
        height: auto;
        max-height: min(52vh, 480px);
        order: 0;
    }

    .oz-hero__title-line {
        white-space: normal;
    }

    .oz-split {
        grid-template-columns: 1fr 1fr;
        gap: clamp(20px, 3vw, 28px);
        padding-inline: clamp(20px, 3vw, 32px);
    }

    .oz-develop__grid,
    .oz-values__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .oz-feature,
    .oz-founder {
        min-height: 0;
    }
}

@media (min-width: 769px) and (max-width: 1024px) and (orientation: portrait) {
    .oz-hero {
        grid-template-columns: 1fr;
    }

    .oz-hero__media {
        order: -1;
        min-height: min(46vh, 440px);
        max-height: min(46vh, 440px);
    }

    .oz-hero__copy {
        padding: clamp(24px, 4vw, 36px) clamp(20px, 3vw, 32px);
    }
}

@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
    .oz-hero__title {
        font-size: clamp(1.35rem, 2.8vw, 1.85rem);
    }

    .oz-hero__media {
        min-height: min(62vh, 380px);
        max-height: min(62vh, 380px);
    }

    .oz-hero .oz-btn {
        min-height: 44px;
        font-size: 0.84rem;
    }
}

@media (max-width: 900px) and (orientation: landscape) {
    .oz-hero__media {
        min-height: min(58vh, 360px);
        max-height: min(58vh, 360px);
    }

    .oz-hero__copy {
        padding: clamp(16px, 3vh, 24px) var(--site-edge-padding);
    }

    .oz-hero__title {
        font-size: clamp(1.1rem, 3.2vw, 1.5rem);
        line-height: 1.12;
        margin-bottom: 10px;
    }

    .oz-hero__lead {
        font-size: clamp(0.82rem, 2vw, 0.95rem);
        margin-bottom: 12px;
    }

    .oz-hero__actions {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 8px;
    }

    .oz-hero .oz-btn {
        min-height: 40px;
        padding: 0 14px;
        font-size: 0.78rem;
    }

    .oz-split,
    .oz-feature,
    .oz-founder {
        padding-block: clamp(32px, 5vh, 48px);
    }

    .oz-timeline,
    .oz-develop,
    .oz-values {
        padding-block: clamp(40px, 6vh, 56px);
    }
}

/* ── Kontakt (ks-) tablet ── */
@media (min-width: 769px) and (max-width: 1024px) {
    .ks-wrap {
        padding-inline: clamp(20px, 3vw, 32px);
    }

    .ks-topics__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ks-guides__grid,
    .ks-contact__channels {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ks-form__row--3 {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 900px) and (orientation: landscape) {
    .ks-hero {
        padding-block: clamp(20px, 4vh, 32px);
    }

    .ks-hero__title {
        font-size: clamp(1.2rem, 3.5vw, 1.65rem);
    }
}

/* ── Favoritter carousel tablet ── */
@media (min-width: 769px) and (max-width: 1024px) {
    .wishlist-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wishlist-carousel-shell {
        padding-inline: clamp(12px, 2vw, 20px);
    }
}

@media (max-width: 900px) and (orientation: landscape) {
    .wishlist-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
