/* ============================================
   TPLESHOP Theme: Ariane Sport
   Športové potreby — modrá (základ) + žltá a čierna (akcenty Ariane)
   Paleta z WP/Astra arianesport.sk (2025): #111111 modrá · #ffcc00 žltá · #222 text · #f3f5f5 pás
   Kostra = cofex.css (boatdiesel dizajnový jazyk), rozmery dlaždíc kategórií 168 / 124 px.
   ============================================ */

/* Paleta „čierna + jeden akcent" (Robert 15.9.: premodrené; ako adidas – všetko čierne, dôležité veci farbou).
   Modrá ostáva len v logu. Akcent sa mení JEDNOU premennou --ar-akcent (žltá Ariane #ffcc00 / oranžová #ff7a00). */
:root {
    /* JEDNA akcentná farba na režim (Robert): svetlá = signálna oranžová, tmavá = žltá (prepísané v [data-theme=dark]).
       --ar-signal je alias tej istej farby (historicky 2. akcent) → nič sa nekombinuje. */
    --ar-akcent: #ffa31f;              /* Robert: teplá oranžová namiesto signálnej; čierne písmo na nej = 9:1 */
    --ar-akcent-hover: #f09200;
    --ar-akcent-tmava: #b85e00;        /* prepálená (tmavšia) akcentová – začiatok prechodu rámu pri hoveri, končí čistou akcentovou */
    --ar-signal: var(--ar-akcent);
    --ar-signal-hover: var(--ar-akcent-hover);
    --ar-dark: #111111;

    /* Primary = čierna (CTA, tlačidlá, navigácia, ceny) */
    --color-primary: #111111;
    --color-primary-hover: #333333;
    --color-accent: var(--ar-akcent);  /* odznaky ZĽAVA, akcentné tlačidlá (písmo tmavé!) */
    --color-accent-hover: var(--ar-akcent-hover);

    /* Backgrounds - biela + svetlosivý pás */
    --color-body-bg: #ffffff;
    --color-surface: #ffffff;
    --color-surface-alt: #f4f4f4;
    --color-text: #1a1a1a;
    --color-text-muted: #6b6b6b;
    --color-heading: #111111;
    --color-border: #e3e3e3;
    --color-link: #1a1a1a;             /* odkazy čierne, o odtieň svetlejšie; hover = podčiarknutie (Robert) */
    --color-link-hover: #000000;

    --color-success: #1e8a4c;
    --color-danger: #d1242f;

    --font-heading: 'Inter', sans-serif;
    --font-body: 'Inter', sans-serif;

    --color-primary-light: #f2f2f2;    /* tint - parametre, FAQ hover */
    --ar-accent: var(--ar-akcent);     /* sekundárne tlačidlá (písmo tmavé), odkazy v päte pri hoveri */
    --ar-accent-hover: var(--ar-akcent-hover);
    --ar-accent-2: var(--ar-akcent);   /* linka pod nadpismi sekcií = žltá (Robert: pri nápisoch nechaj žltú) */

    --es-media-plate: #ffffff;
    --card-radius: 0.5rem;
    --card-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    --card-shadow-hover: 0 8px 24px -6px rgba(0, 0, 0, 0.22);
    --card-image-ratio: 1 / 1;
    --radius-sm: 0.25rem; --radius-md: 0.375rem; --radius-lg: 0.5rem; --radius-xl: 0.75rem;
    --es-cat-card-min: 150px;
    --es-cat-card-max: 168px;
}

/* Dark mode - grafitová plocha, biele tlačidlá (adidas dark), akcent = žltá */
[data-theme="dark"] {
    --ar-akcent: #ffb14a;              /* tmavá: tá istá oranžová o stupeň svetlejšia (na grafite kontrast 10:1, tmavé písmo 12:1) */
    --ar-akcent-hover: #ffa31f;
    --ar-akcent-tmava: #c9781a;
    --color-primary: #f5f5f5;
    --color-primary-hover: #ffffff;
    --color-primary-light: #262626;
    /* 16. 9. (Robert + Gemini návrh): nočná modro-antracitová namiesto fádnej grafitovej – pôsobí prémiovejšie */
    --color-body-bg: #0f131c;         /* hlavné pozadie (medzi #0D111A a #12161F) */
    --color-surface: #161f30;         /* karty, hlavička */
    --color-surface-alt: #1a2230;     /* pásy sekcií, pätička */
    --color-text: #e5e9f0;
    --color-text-muted: #94a3b8;
    --color-heading: #f8fafc;
    --color-border: #24324d;
    --color-link: #f5f5f5;
    --color-link-hover: var(--ar-akcent);
    --color-success: #5fd08a;
    --color-danger: #ff6b6b;
    --es-media-plate: #ffffff;
    --card-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
    --card-shadow-hover: 0 12px 28px rgba(0, 0, 0, 0.5);
}

/* =========================================
   Topbar / header / footer
   ========================================= */

/* Topbar - espresso s krémovým textom */
.theme-ariane .es-topbar {
    background: var(--color-primary);
    color: #f2f2f2;
}

.theme-ariane .es-topbar a {
    color: #f2f2f2;
    opacity: 0.92;
}

.theme-ariane .es-topbar a:hover {
    opacity: 1;
    color: #ffffff;
}

/* Header - biely, sticky, jemný espresso tieň (ako WP) */
.theme-ariane .es-header {
    background: var(--color-surface);
    border-bottom: 1px solid var(--color-border);
    box-shadow: 0 0 10px rgba(74, 24, 0, 0.18);
}

.theme-ariane .es-header__site-name {
    font-family: var(--font-heading);
    color: var(--color-primary);
    font-weight: 700;
    letter-spacing: -0.01em;
}

/* Bottom + footer - tmavé espresso */
.theme-ariane .es-bottom,
.theme-ariane .es-footer {
    background: #2a1208;
    color: #d9c7bb;
}

.theme-ariane .es-footer {
    border-top-color: #4a2a1c;
}

.theme-ariane .es-footer a,
.theme-ariane .es-bottom a {
    color: #ecdfd5;
}

.theme-ariane .es-footer a:hover,
.theme-ariane .es-bottom a:hover {
    color: var(--ar-accent);
}

[data-theme="dark"] .theme-ariane .es-topbar {
    background: #120c09;
    color: #d9c7bb;
}

[data-theme="dark"] .theme-ariane .es-header {
    background: var(--color-surface);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .theme-ariane .es-bottom,
[data-theme="dark"] .theme-ariane .es-footer {
    background: #120c09;
}

/* Showcase sections - krémový pás */
.theme-ariane .es-showcase--1,
.theme-ariane .es-showcase--3 {
    background: var(--color-surface-alt);
}

/* =========================================
   Buttons - espresso primary, latte secondary
   ========================================= */

.theme-ariane .es-btn--primary {
    background: var(--color-primary);
    color: #ffffff;
    border-color: var(--color-primary);
    border-radius: var(--radius-md);
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(74, 24, 0, 0.2);
}

.theme-ariane .es-btn--primary:hover {
    background: var(--color-primary-hover);
    border-color: var(--color-primary-hover);
    color: #ffffff;
}

/* Sekundárne tlačidlo = latte s espresso textom (WP tlačidlo košíka) */
.theme-ariane .es-btn--outline {
    background: var(--ar-accent);
    color: #222222;
    border-color: var(--ar-accent);
    border-radius: var(--radius-md);
    font-weight: 600;
}

.theme-ariane .es-btn--outline:hover {
    background: var(--ar-accent-hover);
    border-color: var(--ar-accent-hover);
    color: #222222;
}

.theme-ariane .es-btn--accent {
    background: var(--color-accent);
    color: #ffffff;
    border-color: var(--color-accent);
    border-radius: var(--radius-md);
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(143, 99, 82, 0.2);
}

.theme-ariane .es-btn--accent:hover {
    background: var(--color-accent-hover);
    border-color: var(--color-accent-hover);
    color: #ffffff;
}

/* Phoca Cart add-to-cart - espresso CTA, jemný "zdvih" pri hoveri (WP) */
.theme-ariane .ph-btn,
.theme-ariane .ph-btn-add-to-cart,
.theme-ariane .phCartButton,
.theme-ariane .btn.ph-btn,
.theme-ariane button.ph-btn {
    background: var(--color-primary);
    color: #ffffff;
    border-color: var(--color-primary);
    border-radius: var(--radius-md);
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(74, 24, 0, 0.18);
    transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}

.theme-ariane .ph-btn:hover,
.theme-ariane .ph-btn-add-to-cart:hover,
.theme-ariane .phCartButton:hover,
.theme-ariane .btn.ph-btn:hover,
.theme-ariane button.ph-btn:hover {
    background: var(--color-primary-hover);
    border-color: var(--color-primary-hover);
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(74, 24, 0, 0.28);
}

[data-theme="dark"] .theme-ariane .es-btn--primary,
[data-theme="dark"] .theme-ariane .ph-btn,
[data-theme="dark"] .theme-ariane .ph-btn-add-to-cart,
[data-theme="dark"] .theme-ariane .phCartButton,
[data-theme="dark"] .theme-ariane .btn.ph-btn,
[data-theme="dark"] .theme-ariane button.ph-btn {
    color: #0f1117;
}

[data-theme="dark"] .theme-ariane .es-btn--primary:hover,
[data-theme="dark"] .theme-ariane .ph-btn:hover,
[data-theme="dark"] .theme-ariane .ph-btn-add-to-cart:hover,
[data-theme="dark"] .theme-ariane .phCartButton:hover,
[data-theme="dark"] .theme-ariane .btn.ph-btn:hover,
[data-theme="dark"] .theme-ariane button.ph-btn:hover {
    color: #0f1117;
}

/* =========================================
   Product cards
   ========================================= */

.theme-ariane .es-product-card,
.theme-ariane .ph-product-module-box .ph-item-box {
    border-radius: var(--card-radius);
    border-color: var(--color-border);
    background: var(--color-surface);
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.theme-ariane .es-product-card:hover,
.theme-ariane .ph-product-module-box .ph-item-box:hover {
    border-color: var(--ar-accent-2);
    box-shadow: var(--card-shadow-hover);
    transform: translateY(-2px);
}

/* Fotka v karte: biely podklad, vnútorný okraj ako WP (5 %), contain */
.theme-ariane .es-product-card__image,
.theme-ariane .ph-item-image-box {
    background: var(--es-media-plate);
    padding: 5%;
}

.theme-ariane .es-product-card__image img,
.theme-ariane .ph-item-image-box img {
    object-fit: contain;
}

/* Názov: normálne písmo, semibold, celý (3 riadky) — boatdiesel pasca:
   clamp je na .ph-product-header, nie na .es-product-card__header */
.theme-ariane .es-product-card__header h3,
.theme-ariane .ph-item-header h3,
.theme-ariane .ph-product-module-box h3 {
    font-family: var(--font-heading);
    font-weight: 600;
    color: var(--color-heading);
}

.theme-ariane .ph-product-header {
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

/* Cena - espresso bold */
.theme-ariane .ph-price {
    color: var(--color-primary);
    font-weight: 700;
}

/* =========================================
   Phoca Cart labels - odznaky
   ========================================= */

.theme-ariane .ph-label {
    border-radius: var(--radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.625rem;
    font-weight: 700;
    padding: 0.35em 0.7em;
}

.theme-ariane .ph-label-feat,
.theme-ariane .ph-label-new,
.theme-ariane .ph-label-hot {
    background: var(--color-primary);
    color: #ffffff;
}

.theme-ariane .ph-label-discount,
.theme-ariane .ph-label-sale {
    background: var(--color-accent);
    color: #ffffff;
}

[data-theme="dark"] .theme-ariane .ph-label-feat,
[data-theme="dark"] .theme-ariane .ph-label-new,
[data-theme="dark"] .theme-ariane .ph-label-hot {
    color: #0f1117;
}

/* =========================================
   Breadcrumbs + category header
   ========================================= */

.theme-ariane .es-breadcrumbs {
    background: var(--color-surface-alt);
    border-bottom: 1px solid var(--color-border);
}

.theme-ariane .es-breadcrumbs a:hover {
    color: var(--color-primary);
}

[data-theme="dark"] .theme-ariane .es-breadcrumbs {
    background: var(--color-surface);
}

.theme-ariane .es-category-header__title {
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--color-heading);
}

/* =========================================
   Kategórie - malé dlaždice vedľa seba (boatdiesel vzor)
   ========================================= */

.theme-ariane .es-cat-grid__title {
    font-family: var(--font-heading);
    font-weight: 600;
    color: var(--color-heading);
    font-size: 0.875rem;
}

.theme-ariane .es-cat-grid__image {
    background: var(--es-media-plate);
    border: 1px solid var(--color-border);
}

.theme-ariane .es-cat-grid__link:hover .es-cat-grid__image {
    border-color: var(--ar-accent-2);
    box-shadow: 0 8px 20px rgba(74, 24, 0, 0.12);
}

/* Kategória bez fotky: jemná latte dlaždica, nie "chýba obrázok" */
.theme-ariane .es-cat-grid__image--empty {
    background: linear-gradient(135deg, var(--color-primary-light), var(--color-surface-alt));
}

.theme-ariane .es-cat-grid__image--empty::after {
    color: var(--ar-accent-2);
}

/* Vodorovná dráha: 168 px desktop, 124 px mobil = 3 na obrazovku */
.theme-ariane .es-cat-grid--scroll .es-cat-grid__item {
    flex: 0 0 168px !important;
}

@media (max-width: 767px) {
    .theme-ariane .es-cat-grid--scroll .es-cat-grid__item,
    .theme-ariane .es-cat-grid__item {
        flex: 0 0 124px !important;
        width: 124px !important;
    }

    .theme-ariane .es-cat-grid__title {
        font-size: 0.75rem;
    }
}


/* =========================================
   Phoca Cart product detail
   ========================================= */

.theme-ariane #ph-pc-item-box h1,
.theme-ariane .ph-item-price-panel h1 {
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--color-heading);
    font-size: 1.875rem;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

@media (min-width: 768px) {
    .theme-ariane #ph-pc-item-box h1,
    .theme-ariane .ph-item-price-panel h1 {
        font-size: 2.25rem;
    }
}

.theme-ariane .ph-item-image-full-box {
    border-radius: var(--card-radius);
    border: 1px solid var(--color-border);
    background: var(--es-media-plate);
    padding: 1.5rem;
    box-shadow: 0 1px 3px rgba(74, 24, 0, 0.04);
}

.theme-ariane .ph-item-image-full-box img {
    max-height: 500px;
    width: auto;
    margin: 0 auto;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.theme-ariane .ph-item-image-full-box:hover img {
    transform: scale(1.04);
}

/* Thumbnail gallery */
.theme-ariane .ph-item-image-add-box > div,
.theme-ariane .ph-item-image-box {
    border-radius: var(--radius-sm);
    border: 2px solid var(--color-border);
    padding: 0.5rem;
    background: var(--es-media-plate);
    transition: border-color 0.2s;
}

.theme-ariane .ph-item-image-box:hover {
    border-color: var(--ar-accent-2);
}

/* Item price - big bold espresso */
.theme-ariane .ph-item-price-box .ph-price {
    font-size: 2.25rem;
    font-weight: 700;
    color: var(--color-primary);
    font-family: var(--font-body);
}

/* Stock status */
.theme-ariane .ph-stock-in-stock,
.theme-ariane .ph-stock-status-in-stock {
    background: rgba(46, 107, 58, 0.1);
    color: var(--color-success);
    border-radius: var(--radius-sm);
    font-weight: 600;
}

/* Quantity input */
.theme-ariane .ph-quantity-input,
.theme-ariane input[name="quantity"] {
    border-radius: var(--radius-sm);
    background: var(--color-surface);
    border-color: var(--color-border);
    padding: 0.75rem 1rem;
    height: 3rem;
    font-weight: 500;
}

/* Item view add-to-cart - large */
.theme-ariane .ph-item-price-panel .ph-btn,
.theme-ariane .ph-item-price-panel .phCartButton {
    border-radius: var(--radius-md);
    padding: 0.875rem 1.75rem;
    font-size: 0.9375rem;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(74, 24, 0, 0.22);
}

/* Mobile - smaller buttons */
@media (max-width: 767px) {
    .theme-ariane .ph-btn,
    .theme-ariane .ph-btn-add-to-cart,
    .theme-ariane .phCartButton,
    .theme-ariane .btn.ph-btn,
    .theme-ariane button.ph-btn,
    .theme-ariane .es-btn,
    .theme-ariane .wp-btn {
        padding: 0.5rem 1rem;
        font-size: 0.8125rem;
    }

    .theme-ariane .es-btn--lg,
    .theme-ariane .wp-btn--lg {
        padding: 0.625rem 1.25rem;
        font-size: 0.875rem;
    }

    .theme-ariane .ph-quantity-input,
    .theme-ariane input[name="quantity"] {
        height: 2.5rem;
        padding: 0.5rem 0.75rem;
    }

    .theme-ariane .ph-item-price-panel .ph-btn,
    .theme-ariane .ph-item-price-panel .phCartButton {
        padding: 0.625rem 1.25rem;
        font-size: 0.875rem;
    }

    .theme-ariane .ph-item-price-box .ph-price {
        font-size: 1.75rem;
    }

    .theme-ariane .wp-hero__buttons .wp-btn--lg {
        padding: 0.75rem 1.5rem;
        font-size: 0.875rem;
    }
}

/* =========================================
   Phoca Cart tabs / accordion
   ========================================= */

.theme-ariane .ph-item-bottom-box .tab-pane::before {
    content: attr(data-title);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 0;
    font-family: var(--font-heading);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-heading);
    cursor: pointer;
}

.theme-ariane .ph-item-bottom-box .ph-desc,
.theme-ariane .ph-item-bottom-box .tab-pane > div {
    color: var(--color-text);
    line-height: 1.7;
    padding-bottom: 1.5rem;
}

/* =========================================
   Specifications grid
   ========================================= */

.theme-ariane .ph-spec-group-title {
    font-family: var(--font-heading);
    color: var(--color-heading);
    font-weight: 700;
    border-top: 1px solid var(--color-border);
    padding-top: 1.5rem;
    margin-top: 1.5rem;
}

.theme-ariane .ph-item-view-data-box table,
.theme-ariane .ph-spec-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.theme-ariane .ph-item-view-data-box table tr,
.theme-ariane .ph-spec-table tr {
    display: flex;
    flex-direction: column;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--color-border);
}

.theme-ariane .ph-item-view-data-box table tr:last-child,
.theme-ariane .ph-spec-table tr:last-child {
    border-bottom: none;
}

.theme-ariane .ph-spec-title {
    color: var(--color-text-muted);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    padding: 0 0 0.25rem 0;
}

.theme-ariane .ph-spec-value {
    color: var(--color-heading);
    font-weight: 500;
    padding: 0;
}

/* =========================================
   Parameters - latte badges
   ========================================= */

.theme-ariane .ph-item-parameters-box {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0 1.5rem;
    padding: 0;
    border: none;
}

.theme-ariane .ph-parameter-box {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.4em 0.85em;
    background: var(--color-primary-light);
    color: var(--color-primary);
    border-radius: var(--radius-sm);
    font-size: 0.75rem;
    font-weight: 600;
}

[data-theme="dark"] .theme-ariane .ph-parameter-box {
    background: var(--color-primary-light);
    color: var(--color-primary);
}

/* =========================================
   Filter
   ========================================= */

.theme-ariane .es-filter input[type="checkbox"],
.theme-ariane .es-filter input[type="radio"] {
    accent-color: var(--color-primary);
}

/* =========================================
   Hero / CTA / showcase headings
   ========================================= */

.theme-ariane .wp-showcase--hero .wp-hero__title,
.theme-ariane .wp-showcase--cta .wp-showcase__cta-title {
    font-family: var(--font-heading);
    font-weight: 700;
    color: #ffffff;   /* hero aj CTA sedia na tmavej fotke s overlayom */
    letter-spacing: -0.015em;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}

.theme-ariane .wp-showcase__cta-label,
.theme-ariane .wp-showcase__plan-badge {
    background: var(--color-primary);
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: var(--font-size-xs);
    font-weight: 600;
}

/* Mokka linka pod nadpismi sekcií */
.theme-ariane .wp-showcase__heading,
.theme-ariane .es-module__title--xl,
.theme-ariane .es-module__title--xxl,
.theme-ariane .tpl-story__title {
    position: relative;
    padding-bottom: var(--space-md);
    margin-bottom: var(--space-md);
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--color-heading);
}

.theme-ariane .wp-showcase__heading::after,
.theme-ariane .es-module__title--xl::after,
.theme-ariane .es-module__title--xxl::after,
.theme-ariane .tpl-story__title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3rem;
    height: 3px;
    background: var(--ar-accent-2);
    border-radius: 2px;
}

.theme-ariane .wp-showcase__heading.center::after,
.theme-ariane .es-module__title--center::after,
.theme-ariane .wp-showcase__heading[style*="text-align:center"]::after,
.theme-ariane .wp-showcase__heading[style*="text-align: center"]::after {
    left: 50%;
    transform: translateX(-50%);
}

.theme-ariane .wp-hero__overline {
    color: var(--ar-accent);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 600;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.theme-ariane .wp-showcase__plan--highlighted {
    border-color: var(--color-primary);
    border-width: 2px;
    box-shadow: 0 4px 20px rgba(74, 24, 0, 0.15);
}

.theme-ariane .wp-showcase__stat-number {
    font-family: var(--font-heading);
    color: var(--color-primary);
    font-weight: 700;
}

/* =========================================
   Sensory profile / quick facts (kávy: chuť, praženie, pôvod)
   ========================================= */

.theme-ariane .es-sensory-card {
    background: var(--color-surface-alt);
    border-color: transparent;
    border-radius: var(--card-radius);
    box-shadow: 0 1px 3px rgba(74, 24, 0, 0.05);
}

.theme-ariane .es-sensory-card:hover {
    box-shadow: 0 8px 20px rgba(74, 24, 0, 0.1);
    transform: translateY(-2px);
}

.theme-ariane .es-sensory-card__icon {
    background: var(--color-primary-light);
    color: var(--color-primary);
}

.theme-ariane .es-sensory-card:hover .es-sensory-card__icon {
    background: var(--color-primary);
    color: #ffffff;
    transition: background 0.2s ease, color 0.2s ease;
}

.theme-ariane .es-quick-facts__title,
.theme-ariane .es-quick-facts__item dt {
    color: var(--color-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.75rem;
    font-weight: 600;
}

[data-theme="dark"] .theme-ariane .es-sensory-card {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .theme-ariane .es-sensory-card__icon {
    background: var(--color-primary-light);
    color: var(--color-primary);
}

[data-theme="dark"] .theme-ariane .es-sensory-card:hover .es-sensory-card__icon {
    color: #0f1117;
}

/* =========================================
   Module headings / articles / FAQ
   ========================================= */

.theme-ariane .wp-showcase__feature-title,
.theme-ariane .wp-showcase__plan-name,
.theme-ariane .wp-showcase__member-name,
.theme-ariane .wp-articles__title,
.theme-ariane .wp-articles__hero-title,
.theme-ariane .wp-articles__mag-title,
.theme-ariane .wp-faq__question {
    font-family: var(--font-heading);
    font-weight: 600;
    color: var(--color-heading);
}

.theme-ariane .wp-badge,
.theme-ariane .wp-articles__category {
    background: var(--color-primary-light);
    color: var(--color-primary);
    font-weight: 600;
    border-radius: var(--radius-sm);
}

[data-theme="dark"] .theme-ariane .wp-badge,
[data-theme="dark"] .theme-ariane .wp-articles__category {
    background: var(--color-primary-light);
    color: var(--color-primary);
}

.theme-ariane .wp-faq__question:hover {
    background: var(--color-primary-light);
}

[data-theme="dark"] .theme-ariane .wp-faq__question:hover {
    background: var(--color-surface-alt);
}

.theme-ariane .wp-articles__card:hover {
    box-shadow: 0 8px 20px rgba(74, 24, 0, 0.1);
}

[data-theme="dark"] .theme-ariane .wp-articles__card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

/* Back to top */
.theme-ariane .es-back-to-top:hover {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #ffffff;
}

/* Dark mode — ghost buttons need visible borders */
[data-theme="dark"] .theme-ariane .es-product-card .ph-btn,
[data-theme="dark"] .theme-ariane .ph-item-thumbnail-related .ph-btn,
[data-theme="dark"] .theme-ariane .ph-item-thumbnail-related .btn {
    border-color: var(--color-border);
}

/* B2B alert - latte tint (gastro zákazníci nakupujú na firmu) */
.theme-ariane .tpl-b2b-alert {
    background: var(--color-primary-light);
    border-color: #e0c9b3;
}

.theme-ariane .tpl-b2b-alert__icon {
    background: var(--color-primary);
    color: #ffffff;
}

[data-theme="dark"] .theme-ariane .tpl-b2b-alert {
    background: var(--color-primary-light);
    border-color: var(--color-border);
}

[data-theme="dark"] .theme-ariane .tpl-b2b-alert__icon {
    background: var(--color-primary);
    color: #0f1117;
}

/* =========================================
   Pokladňa v tmavej - Phoca prepína cez [data-bs-theme], my cez [data-theme]
   (boatdiesel: formulár adresy bol biela karta s bielym písmom)
   ========================================= */

[data-theme="dark"] .theme-ariane {
    --ph-grey-bg: var(--color-surface-alt);
    --ph-white-bg: var(--color-surface);
    --ph-grey-border: var(--color-border);
}

/* Statické stránky (Kontakt, OP…) majú info blok vypnutý, ale šablóna aj tak
   vypíše „1 min čítania" (default.php: `$showMeta || $readingTime > 0`).
   Samotný čas čítania bez dátumu/autora nedáva zmysel → skryť, ak je v bloku sám. */
.theme-ariane .wp-article__meta:has(> .wp-article__reading-time:only-child) {
    display: none;
}

/* Úvodka bez obsahu komponentu (hideComponentHome): prázdny <main> držal ~300 px
   bielej medzery medzi hero a výkladnými sekciami. Skryť, keď je naozaj prázdny
   (nič okrem prázdneho kontajnera systémových správ). */
.theme-ariane.is-home .es-main:not(:has(.es-container > :not(#system-message-container), #system-message-container > *)) {
    display: none;
}

/* Mobilná hlavička: logo + 4 ikony + hamburger sa na 390 px nezmestili
   (scrollWidth 424 → stránka sa dala posúvať do boku, vpravo vykúkal okraj
   košíkovej zásuvky). Na úzkych displejoch skryť obľúbené (sú v pätičke aj v účte)
   a stiahnuť rozostupy. */
@media (max-width: 480px) {
    .theme-ariane .es-header__actions {
        gap: 0.125rem;
    }
    /* obľúbené (ikona bez .es-cart-btn-wrap) a prepínač témy — na mobile
       tmavý režim aj tak ide podľa systému, obľúbené sú v pätičke a v účte */
    .theme-ariane .es-header__actions .es-header-icon-wrap:not(.es-cart-btn-wrap) {
        display: none;
    }
    /* prepínač témy ostáva aj na mobile (Robert 14.9.) — miesto spraví menšie logo */
    .theme-ariane .es-header__logo img { --es-logo-height-mobile: 1.9em; }
    .theme-ariane .es-topbar .cf-len-pc {
        display: none;
    }
}

/* Dlaždice kategórií v katalógu a v kategórii — malé ako na boatdiesel (Robert 11.9.:
   „veľkostne ako boatdiesel, vedľa seba, malé fotky"). Base variant --catalog ich
   nafukuje na 240–340 px; tu 150–168 px, hustejšia mriežka, menší popisok. */
.theme-ariane .es-cat-grid,
.theme-ariane .es-cat-grid--catalog {
    --es-cat-card-min: 150px;
    --es-cat-card-max: 168px;
    --es-cat-card-gap: var(--space-md);
}

.theme-ariane .es-cat-grid--catalog .es-cat-grid__title {
    font-size: 0.8125rem;
    font-weight: 600;
}

@media (max-width: 767px) {
    .theme-ariane .es-cat-grid--catalog .es-cat-grid__item {
        width: 124px !important;
        flex: 0 0 124px !important;
    }
}

/* Hlavička s 8 kategóriami + Blog + Kontakt sa do 1365 px nezmestí (na 1440 pri
   základných rozostupoch liezli položky na logo a Kontakt na lupu — rovnaká pasca
   ako boatdiesel). Do 1365 px hamburger, od 1366 px stiahnuté rozostupy a písmo.
   template.min.css sa načítava AŽ ZA témou → !important. */
/* 17. 9.: navbar má už len E-shop · Novinky a rady · O nás · Kontakt (strom je pod E-shopom) → hamburger stačí do 1023 px (hranica šablóny, ako cofex). */
@media (max-width: 1023px) {
    .theme-ariane .es-header__nav {
        display: none !important;
    }
    .theme-ariane .es-header__toggle {
        display: inline-flex !important;
    }
}

@media (min-width: 1024px) {
    .theme-ariane .es-header__nav ul {
        gap: 0;
    }
    .theme-ariane .es-header__nav a,
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__list--root > .es-phoca-nav__item > .es-phoca-nav__link {
        padding: var(--space-sm) 0.55rem !important;
        font-size: 0.8125rem !important;
        letter-spacing: -0.01em;
    }
    .theme-ariane .es-header__logo img {
        height: 2.6em;
    }
}

@media (min-width: 1600px) {
    .theme-ariane .es-header__nav a,
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__list--root > .es-phoca-nav__item > .es-phoca-nav__link {
        padding: var(--space-sm) 0.8rem !important;
        font-size: 0.875rem !important;
    }
}


/* Fotky rôznych rozmerov: Phoca ich už neoreže (crop_thumbnail=0, štvorcové boxy
   1000/500/240), šablóna ich vpasuje (object-fit: contain) — tu doplnené aj miesta,
   kde base používa cover (košík, pokladňa, karty podkategórií). */
.theme-ariane .ph-cart-cart-row-item img,
.theme-ariane .ph-mod-cart-image img,
.theme-ariane .ph-img-cart-cart,
.theme-ariane .ph-checkout-cart-image img,
.theme-ariane .ph-img-cart-checkout,
.theme-ariane .ph-checkout-cart-row-item .ph-checkout-cart-image img,
.theme-ariane .es-subcategory-card__image img {
    object-fit: contain;
    background: var(--es-media-plate);
}

/* ============================================
   Zobrazenie ceny ako na boatdiesel / web6 (Robert 12.9.: „ak DPH, mrkni web6").
   Karty: jedna cena s DPH bez rozpisu. Detail: veľká cena s DPH, pod ňou malým
   „bez DPH". Phoca po zapnutí dane vypisuje 3 riadky s popiskami — v kategórii
   nečitateľné, v detaile zbytočné.
   ============================================ */
.theme-ariane .ph-category-price-box .ph-price-netto,
.theme-ariane .ph-category-price-box .ph-price-netto-txt,
.theme-ariane .ph-category-price-box .ph-tax,
.theme-ariane .ph-category-price-box .ph-tax-txt,
.theme-ariane .ph-category-price-box .ph-price-brutto-txt,
.theme-ariane .ph-category-price-box .ph-price-original-txt {
    display: none !important;
}

.theme-ariane .ph-category-price-box .ph-price-brutto {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--color-primary);
}

.theme-ariane .ph-item-price-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
}

.theme-ariane .ph-item-price-box .ph-price-netto-txt,
.theme-ariane .ph-item-price-box .ph-tax,
.theme-ariane .ph-item-price-box .ph-tax-txt,
.theme-ariane .ph-item-price-box .ph-price-brutto-txt,
.theme-ariane .ph-item-price-box .ph-price-original-txt {
    display: none !important;
}

.theme-ariane .ph-item-price-box .ph-price-original,
.theme-ariane .ph-item-price-box .ph-price-old { order: 0; }
.theme-ariane .ph-item-price-box .ph-price-brutto { order: 1; }
.theme-ariane .ph-item-price-box .ph-price-netto {
    order: 2;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--color-text-muted);
}

.theme-ariane .ph-item-price-box .ph-price-netto::after {
    content: " bez DPH";
    font-size: 0.85em;
}

/* ============================================
   Podkategórie v kategórii ako kompaktné boxy (boatdiesel, bod 9.2 klientky;
   Robert 12.9.: „kategórie z boatdiesel na mobile aj na PC").
   PC: malý štvorcový náhľad vľavo + názov, 3 v rade (4 od 1200 px — gastro má
   až 16 podkategórií). Mobil: zoznam pod sebou, nič sa neskrýva za okrajom.
   Úvodky (.ph-categories-box / modul) sa to netýka.
   ============================================ */
.theme-ariane.view-category .ph-category-module-box,
.theme-ariane.view-category .ph-category-module-box .es-cat-grid__track {
    width: 100%;
    max-width: none;
    overflow: visible;
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__track > ul {
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: visible !important;
}

@media (min-width: 768px) {
    .theme-ariane.view-category .ph-category-module-box .es-cat-grid__track > ul {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.75rem;
    }
}

@media (min-width: 1200px) {
    .theme-ariane.view-category .ph-category-module-box .es-cat-grid__track > ul {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__item {
    width: auto !important;
    flex: none !important;
    min-width: 0;
    margin: 0;
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__link {
    display: flex !important;
    flex-direction: row !important;   /* base má stĺpec (obrázok nad názvom) */
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    gap: 0.75rem;
    padding: 0.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface);
    transition: border-color 0.15s, box-shadow 0.15s;
    transform: none !important;
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__link:hover {
    border-color: var(--ar-accent-2);
    box-shadow: 0 2px 8px rgba(74, 24, 0, 0.08);
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__image {
    flex: 0 0 auto !important;
    max-width: none;
    width: 3.5rem;
    height: 3.5rem;
    aspect-ratio: 1 / 1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: var(--es-media-plate);
    border: 0;
    border-radius: var(--radius-sm);
    box-shadow: none !important;
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.theme-ariane.view-category .ph-category-module-box .es-cat-grid__title {
    flex: 1 1 auto;
    text-align: left;
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.25;
}

/* nadpis „Kategórie" nad boxami — menší, zarovnaný vľavo ako na boatdiesel */
.theme-ariane.view-category .ph-category-module-box .es-cat-grid__heading {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
}

/* ============================================================
   Swipe dráha produktov na úvodke — port z boatdiesel (Robert 12.9.:
   „spravme swipe aj na produkty ako na boat"). Override
   html/mod_phocacart_product/swipe.php + js/bd-swipe.js (názvy bd-* ponechané
   1:1, aby sa dali obe verzie porovnávať). Kandidát do jadra tpleshopu.
   ============================================================ */

/* ============================================================
   Swipe produktové kartičky (úvodka) — layout "swipe" modulu
   mod_phocacart_product. Posúvanie prstom rieši prehliadač
   (overflow-x + scroll-snap), šípky pridáva bd-swipe.js.
   ============================================================ */
.theme-ariane .bd-swipe {
    position: relative;
    display: block;
}

.theme-ariane .bd-swipe__track {
    display: flex;
    gap: 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline-start: 0.125rem;
    padding: 0.25rem 0.125rem 0.5rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
    overscroll-behavior-x: contain;
}

.theme-ariane .bd-swipe__track::-webkit-scrollbar {
    display: none;
}

.theme-ariane .bd-swipe__track:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 3px;
    border-radius: var(--radius-md, 8px);
}

.theme-ariane .bd-swipe__item {
    flex: 0 0 auto;
    width: 232px;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
}

/* Karta v dráhe: obrázok s pevným pomerom, telo dorovná výšku */
.theme-ariane .bd-swipe__item .es-product-card__image {
    aspect-ratio: 4 / 3;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #fff;
}

.theme-ariane .bd-swipe__item .es-product-card__image img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
}

.theme-ariane .bd-swipe__item .es-product-card__body {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 auto;
    padding: 0.75rem;
}

.theme-ariane .bd-swipe__item .ph-product-header {
    font-size: 0.9rem;
    line-height: 1.3;
    margin: 0;
}

.theme-ariane .bd-swipe__item .es-product-card__sku,
.theme-ariane .bd-swipe__item .es-product-card__stock {
    font-size: 0.75rem;
}

.theme-ariane .bd-swipe__item .es-product-card__actions {
    margin-top: auto;
    padding-top: 0.5rem;
}

/* Odznak zľavy */
.theme-ariane .bd-swipe__item .es-product-card__labels {
    position: absolute;
    z-index: 2;
    top: 0.5rem;
    left: 0.5rem;
}

.theme-ariane .bd-badge--sale {
    display: inline-block;
    padding: 0.2rem 0.5rem;
    border-radius: 0.25rem;
    background: var(--ar-akcent);   /* ZĽAVA = akcent s tmavým písmom (ako WP) */
    color: #111;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.01em;
}

.theme-ariane .bd-swipe__item {
    position: relative;
}

/* Šípky — len pre myš; na dotyku sa posúva prstom */
.theme-ariane .bd-swipe__nav {
    display: none;
}

@media (hover: hover) and (pointer: fine) {
    .theme-ariane .bd-swipe__nav {
        display: grid;
        place-items: center;
        position: absolute;
        top: 38%;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        border: 1px solid var(--border-color, rgba(0, 0, 0, 0.12));
        border-radius: 50%;
        background: var(--color-body-bg, #fff);
        color: var(--text-primary, #111);
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.14);
        cursor: pointer;
        z-index: 3;
        transition: background-color 0.15s ease, color 0.15s ease;
    }

    .theme-ariane .bd-swipe__nav[hidden] {
        display: none;
    }

    .theme-ariane .bd-swipe__nav:hover {
        background: var(--color-primary);
        border-color: var(--color-primary);
        color: #fff;
    }

    .theme-ariane .bd-swipe__nav--prev {
        left: -14px;
    }

    .theme-ariane .bd-swipe__nav--next {
        right: -14px;
    }
}

@media (max-width: 767.98px) {
    .theme-ariane .bd-swipe__item {
        width: clamp(152px, 45vw, 200px);
    }

    .theme-ariane .bd-swipe__track {
        gap: 0.625rem;
    }
}

/* Cena v swipe karte: veľká aktuálna + preškrtnutá pôvodná vedľa,
   bez popiskov "Pôvodná cena / Cena" (v úzkej karte zaberali 4 riadky). */
.theme-ariane .bd-swipe__item .ph-category-price-box {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.45rem;
}

.theme-ariane .bd-swipe__item .ph-price-txt,
.theme-ariane .bd-swipe__item .ph-cb {
    display: none;
}

.theme-ariane .bd-swipe__item .ph-price-brutto {
    order: 1;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--color-primary);
    line-height: 1.2;
}

.theme-ariane .bd-swipe__item .ph-price-original {
    order: 2;
    font-size: 0.82rem;
    font-weight: 500;
    text-decoration: line-through;
    color: var(--color-text-muted);
    line-height: 1.2;
}

/* Karta v dráhe zarovnáva všetko doľava (SKU a stav skladu dedia
   zo základnej karty text-align:center, tu by skákali oproti cene). */
.theme-ariane .bd-swipe__item .es-product-card__sku,
.theme-ariane .bd-swipe__item .es-product-card__stock,
.theme-ariane .bd-swipe__item .es-product-card__header {
    text-align: left;
}

/* Swipe karty rovnako vysoké (názvy majú 1–2 riadky) a cena dole. */
.theme-ariane .bd-swipe__track {
    align-items: stretch !important;
}
.theme-ariane .bd-swipe__item {
    display: flex;
    flex-direction: column;
    height: auto !important;
    align-self: stretch;
}
.theme-ariane .bd-swipe__item .es-product-card__body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}
.theme-ariane .bd-swipe__item .es-product-card__actions {
    margin-top: auto;
}

/* Stav skladu v kartách (swipe + kategória): farba podľa aliasu stavu (pc-stock-<alias>). */
.theme-ariane .ph-stock { font-size: 0.8125rem; font-weight: 600; }
.theme-ariane .ph-stock.pc-stock-skladom { color: var(--color-success); }
.theme-ariane .ph-stock.pc-stock-do-2-3-dni { color: #a06a00; }
.theme-ariane .ph-stock.pc-stock-na-objednavku { color: var(--color-text-muted); }
.theme-ariane .ph-stock.pc-stock-nie-je-skladom { color: var(--color-danger); }
.theme-ariane .ph-stock.pc-stock-vypredane { color: var(--color-text-muted); text-decoration: line-through; }   /* vypadnutý tovar z feedu v karanténe (ariane_feed) */

/* ============================================================
   Swipe: šípky na PC vždy (nie len pri hover:hover — na notebooku s dotykom
   by zmizli), na mobile tenký posuvník + závoj na pravom okraji ako náznak
   pokračovania (Robert 12.9.). Triedy is-at-end / bd-swipe--nescroll dáva bd-swipe.js.
   ============================================================ */
@media (min-width: 768px) {
    .theme-ariane .bd-swipe__nav {
        display: grid;
        place-items: center;
        position: absolute;
        top: 38%;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        border: 1px solid var(--color-border);
        border-radius: 50%;
        background: var(--color-surface);
        color: var(--color-heading);
        box-shadow: 0 2px 10px rgba(74, 24, 0, 0.14);
        cursor: pointer;
        z-index: 3;
    }
    .theme-ariane .bd-swipe__nav--prev { left: -12px; }
    .theme-ariane .bd-swipe__nav--next { right: -12px; }
    .theme-ariane .bd-swipe__nav[hidden] { display: none; }
    .theme-ariane .bd-swipe__nav:hover { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }
}

@media (max-width: 767.98px) {
    .theme-ariane .bd-swipe__track {
        scrollbar-width: thin;
        scrollbar-color: var(--ar-accent) transparent;
        padding-bottom: 0.5rem;
    }
    .theme-ariane .bd-swipe__track::-webkit-scrollbar { display: block; height: 4px; }
    .theme-ariane .bd-swipe__track::-webkit-scrollbar-thumb { background: var(--ar-accent); border-radius: 2px; }
    .theme-ariane .bd-swipe__track::-webkit-scrollbar-track { background: transparent; }
}

.theme-ariane .bd-swipe { position: relative; }
/* závoj vpravo cez masku dráhy (nie farebný prekryv) — funguje na krémovom aj béžovom páse aj v tme (Robert 14.9.) */
.theme-ariane .bd-swipe::after { content: none; }
.theme-ariane .bd-swipe .bd-swipe__track {
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
    mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
    transition: -webkit-mask-image 0.2s ease, mask-image 0.2s ease;
}
.theme-ariane .bd-swipe.is-at-end .bd-swipe__track,
.theme-ariane .bd-swipe.bd-swipe--nescroll .bd-swipe__track { -webkit-mask-image: none; mask-image: none; }

/* ---- Pätička na mobile na odklik (cf-ui.js) ---- */
.theme-ariane .bd-foot-toggle { display: none; }
@media (max-width: 767.98px) {
    .theme-ariane .bd-foot-collapsible .es-module__header { display: none; }
    .theme-ariane .bd-foot-toggle {
        display: flex; align-items: center; justify-content: space-between; width: 100%;
        gap: 0.5rem; padding: 0.7rem 0; border: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.12);
        background: none; color: inherit; font: inherit; font-weight: 600; text-align: left; cursor: pointer;
    }
    .theme-ariane .bd-foot-toggle__ico { flex: 0 0 auto; transition: transform 0.2s ease; }
    .theme-ariane .bd-foot-collapsible.is-open .bd-foot-toggle__ico { transform: rotate(180deg); }
    .theme-ariane .bd-foot-collapsible .es-module__body { display: none; }
    .theme-ariane .bd-foot-collapsible.is-open .es-module__body { display: block; padding-top: 0.5rem; }
    .theme-ariane .bd-foot-collapsible { margin-bottom: 0 !important; }
}

/* ---- Popis kategórie na mobile: 4 riadky + „Čítať viac" ---- */
@media (max-width: 767.98px) {
    .theme-ariane .es-category-header__desc {
        display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
    }
    .theme-ariane .es-category-header__desc.is-open { display: block; -webkit-line-clamp: unset; overflow: visible; }
    .theme-ariane .bd-desc-toggle {
        display: inline-block; margin: 0.25rem 0 0.75rem; padding: 0; border: 0; background: none;
        color: var(--color-primary); font: inherit; font-weight: 600; cursor: pointer;
    }
}

/* ---- Filter: PC v ľavom stĺpci, mobil vysúvací panel + plávajúce tlačidlo (cf-ui.js) ---- */
.theme-ariane .bd-filter-fab, .theme-ariane .bd-filter-close, .bd-filter-backdrop { display: none; }
@media (max-width: 767.98px) {
    /* Phoca stránky: panel je mimo obrazovky hneď z CSS (nie až keď cf-ui.js pridá .bd-filter-panel) —
       inak na mobile pri načítaní prebleskne v obsahu (Robert 14.9.). Animácia až po inicializácii. */
    .theme-ariane.com-phocacart .es-sidebar--left,
    .theme-ariane .bd-filter-panel {
        position: fixed; top: 0; left: 0; bottom: 0; width: min(86vw, 360px); z-index: 1200;
        background: var(--color-surface); overflow-y: auto; padding: 3rem 1rem 1.5rem;
        transform: translateX(-100%); transition: none; box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
    }
    .theme-ariane .bd-filter-panel { transition: transform 0.25s ease; }
    body.bd-filter-open .es-sidebar--left.bd-filter-panel, body.bd-filter-open .bd-filter-panel { transform: translateX(0); }
    .theme-ariane .bd-filter-close {
        display: grid; place-items: center; position: absolute; top: 0.6rem; right: 0.6rem; width: 36px; height: 36px;
        border: 1px solid var(--color-border); border-radius: 50%; background: var(--color-surface); color: var(--color-heading); cursor: pointer;
    }
    .bd-filter-backdrop { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.45); z-index: 1150; opacity: 0; pointer-events: none; transition: opacity 0.2s; }
    body.bd-filter-open .bd-filter-backdrop { display: block; opacity: 1; pointer-events: auto; }
    .theme-ariane .bd-filter-fab {
        position: fixed; left: 50%; bottom: 1rem; transform: translateX(-50%); z-index: 1100;
        display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.7rem 1.25rem; border: 0; border-radius: 999px;
        background: var(--color-primary); color: #fff; font: inherit; font-weight: 600; box-shadow: 0 6px 20px rgba(74, 24, 0, 0.35); cursor: pointer;
    }
    body.bd-filter-open .bd-filter-fab { display: none; }
    body.view-checkout .bd-filter-fab { display: none; }
}

/* ============================================================
   Naposledy prezerané — pás sa dokresľuje v prehliadači z localStorage
   (bd-recent.js), preto tu ide len o vzhľad. Kartička je zámerne menšia
   než produktová: je to pomôcka na návrat, nie ďalší výpis tovaru.
   ============================================================ */
.theme-ariane .bd-recent__item {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    width: 150px;
    padding: 0.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--card-radius, 8px);
    background: var(--color-surface);
    color: inherit;
    text-decoration: none;
    transition: border-color 0.15s ease, transform 0.15s ease;
}

.theme-ariane .bd-recent__item:hover {
    border-color: var(--color-primary);
    transform: translateY(-2px);
}

.theme-ariane .bd-recent__img {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / 1;
    background: #fff;
    border-radius: 4px;
    overflow: hidden;
}

.theme-ariane .bd-recent__img img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    object-fit: contain;
}

.theme-ariane .bd-recent__nazov {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 0.78rem;
    line-height: 1.25;
}

.theme-ariane .bd-recent__cena {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-primary);
}

@media (max-width: 767.98px) {
    .theme-ariane .bd-recent__item {
        width: 122px;
    }
}

/* mazanie: krížik na kartičke a odkaz na vymazanie celého pásu */
.theme-ariane .bd-recent__item {
    position: relative;
}

.theme-ariane .bd-recent__odkaz {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    color: inherit;
    text-decoration: none;
}

.theme-ariane .bd-recent__zmaz {
    position: absolute;
    top: 4px;
    right: 4px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    padding: 0;
    border: 1px solid var(--color-border);
    border-radius: 50%;
    background: var(--color-surface);
    color: var(--text-secondary, #6b7280);
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.15s ease, color 0.15s ease;
}

.theme-ariane .bd-recent__item:hover .bd-recent__zmaz,
.theme-ariane .bd-recent__zmaz:focus-visible {
    opacity: 1;
}

/* na dotyku nie je hover — tam nech je krížik vidno vždy */
@media (hover: none) {
    .theme-ariane .bd-recent__zmaz {
        opacity: 1;
    }
}

.theme-ariane .bd-recent__zmaz:hover {
    color: var(--color-primary);
    border-color: var(--color-primary);
}

.theme-ariane .bd-recent__akcie {
    margin: 0.25rem 0 0;
    text-align: center;
}

.theme-ariane .bd-recent__zmaz-vsetko {
    padding: 0;
    border: 0;
    background: none;
    color: var(--text-secondary, #6b7280);
    font: inherit;
    font-size: 0.8rem;
    text-decoration: underline;
    cursor: pointer;
}

.theme-ariane .bd-recent__zmaz-vsetko:hover {
    color: var(--color-primary);
}

/* ============================================================
   Pravý stĺpec (blog, značky): zoznam článkov je v 300 px stĺpci
   nepoužiteľný — obrázok si bral 210 px a na názov ostalo 90,
   takže sa lámal po slovách. Malý štvorcový náhľad vľavo, názov
   dostane zvyšok.
   ============================================================ */


@media (max-width: 767.98px) {
    .theme-ariane .es-bottom__grid { gap: 0; }
    .theme-ariane .es-bottom__col:not(.bd-foot-collapsible) { margin-top: 1.25rem; }
}

/* Naposledy prezerané — menšie (Robert 12.9.): kartička 120 px (mobil 96 px),
   drobný názov, malá cena, menší nadpis pásu. Pravidlá swipe kariet majú
   rovnakú špecificitu a boli neskôr → tu vyššia špecificita. */
.theme-ariane .bd-recent .bd-swipe__item.bd-recent__item {
    width: 120px !important;
    flex: 0 0 120px !important;
    padding: 0.4rem;
    gap: 0.25rem;
}
.theme-ariane .bd-recent .bd-recent__nazov {
    font-size: 0.72rem;
    line-height: 1.25;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.theme-ariane .bd-recent .bd-recent__cena {
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--color-primary);
}
.theme-ariane .bd-recent .bd-recent__img img {
    max-height: 100%;
    object-fit: contain;
}
.theme-ariane .bd-recent .bd-swipe__track {
    gap: 0.5rem;
    padding: 0.25rem 0 0.5rem;
}
.theme-ariane .es-showcase .es-module:has(> .es-module__body [data-bd-recent]) .es-module__title--xl,
.theme-ariane [data-bd-recent] .es-module__title {
    font-size: 1.125rem !important;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
}
.theme-ariane [data-bd-recent] .es-module__title::after { width: 2rem; height: 2px; }
.theme-ariane .bd-recent__akcie { margin: 0.25rem 0 0; font-size: 0.75rem; }
@media (max-width: 767.98px) {
    .theme-ariane .bd-recent .bd-swipe__item.bd-recent__item {
        width: 96px !important;
        flex: 0 0 96px !important;
    }
}

/* Hero „contained" zarovno s kontajnerom (Robert 12.9.): base dáva len zvislý
   padding, hero teda šiel od okraja k okraju so zaoblením — tu rovnaká šírka
   a odsadenie ako .es-container, aby lícoval s obsahom pod ním. */
.theme-ariane .es-hero--contained {
    max-width: var(--container-max);
    margin-inline: auto;
    padding: var(--space-md) 0 0;   /* vodorovné odsadenie dáva vnútorný .es-container */
}
.theme-ariane .es-hero--contained .wp-showcase--hero {
    margin-inline: 0 !important;   /* base hero „bleeduje" cez max(-10%, 50%-50vw) → zarovno s obsahom */
    border-radius: var(--radius-lg);
    overflow: hidden;
}

/* ---- Filter: Dostupnosť hneď za kategóriou a cenou (boatdiesel bod 9.3).
   Phoca kreslí parametre až za výrobcami; poradie prehadzujeme flexom. ---- */
.theme-ariane #phFilterBox { display: flex; flex-direction: column; }
.theme-ariane #phFilterBox > .panel              { order: 5; }
.theme-ariane #phFilterBox > .panel-id           { order: 1; }
.theme-ariane #phFilterBox > .panel-price_from   { order: 2; }
.theme-ariane #phFilterBox > .panel-dostupnost   { order: 3; }
.theme-ariane #phFilterBox > .panel-manufacturer { order: 4; }
.theme-ariane #phFilterBox .panel-body { max-height: 17rem; overflow-y: auto; scrollbar-width: thin; }

/* ============================================================
   POKLADŇA A KOŠÍK — port z boatdiesel (web6, 12.–13. 9. 2026; Robert: „hlavne pokladňa sa riešila").
   Bloky 1:1 s .theme-boatdiesel → .theme-ariane, farby na tokeny témy.
   ============================================================ */

/* ---- [boatdiesel 4653–4799] pokladňa na mobile + hosť (5.9.) ---- */
/* ============================================================
   POKLADŇA NA MOBILE (5. 9.)
   Šablóna tam drží dole lištu „Zobraziť súhrn" (.pc-mobile-cta, telo si
   rezervuje 80 px). Na nej ležala bublina poradcu aj ikonka cookies.
   V pokladni ide o dokončenie nákupu — plávajúce prvky preč, aby nič
   neprekrývalo súhrn a tlačidlo. Šípku „hore" dvíhame nad lištu.
   ============================================================ */
@media (max-width: 1023.98px) {
    body.view-checkout .wpp-bublina,
    body.pc-has-mobile-cta .wpp-bublina,
    body.view-checkout .cc-trigger,
    body.view-checkout .cc-trigger-icon,
    body.pc-has-mobile-cta .cc-trigger,
    body.pc-has-mobile-cta .cc-trigger-icon {
        display: none !important;
    }

    body.view-checkout .theme-ariane .es-back-to-top,
    body.view-checkout .es-back-to-top,
    body.pc-has-mobile-cta .es-back-to-top {
        bottom: calc(80px + 1rem) !important;
    }

    /* rozbalený súhrn siaha do polovice obrazovky — nech je nad ním
       ešte vidno hlavičku kroku, nie plávajúce ozdoby */
    body.view-checkout .bd-filter-fab {
        display: none !important;
    }
}

/* ============================================================
   POKLADŇA: nákup ako hosť ako hlavná voľba (5. 9.)
   Phoca dáva prihlásenie prvé a hosťa do rohu; pri sezónnom nákupe
   je to naopak — účet chce málokto. Override šablóny dvíha hosťa hore,
   tu mu dávame váhu a prihlásenie stlmíme.
   ============================================================ */
.theme-ariane .bd-hostuje {
    margin-bottom: 1.5rem;
}

.theme-ariane .bd-hostuje__form {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 1rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-primary);
    border-radius: var(--card-radius, 0.5rem);
    background: var(--color-surface);
}

.theme-ariane .bd-hostuje__btn {
    padding: 0.65rem 1.4rem;
    font-weight: 600;
    font-size: 1rem;
}

.theme-ariane .bd-hostuje__popis {
    color: var(--color-text-muted);
    font-size: 0.92rem;
}

/* Prihlásenie a registrácia sú sekundárne. Základná template.css sa načítava
   po téme, preto tu potrebujeme !important — inak ostanú plné červené. */
.theme-ariane .ph-checkout-box-login button.ph-checkout-btn-login,
.theme-ariane .ph-checkout-box-login .ph-login-form button[type="submit"],
.theme-ariane .ph-checkout-box-login form:not(.bd-hostuje__form) button.btn-primary,
.theme-ariane .ph-checkout-box-login a.btn-primary {
    background: transparent !important;
    color: var(--color-primary) !important;
    border: 1px solid var(--color-primary) !important;
    font-weight: 500;
}

.theme-ariane .ph-checkout-box-login button.ph-checkout-btn-login:hover,
.theme-ariane .ph-checkout-box-login .ph-login-form button[type="submit"]:hover,
.theme-ariane .ph-checkout-box-login form:not(.bd-hostuje__form) button.btn-primary:hover,
.theme-ariane .ph-checkout-box-login a.btn-primary:hover {
    background: var(--color-primary) !important;
    color: #fff !important;
}

/* registračná krabica nech nekričí červeným pozadím */
.theme-ariane .ph-checkout-box-login .ph-box-header,
.theme-ariane .ph-checkout-box-login .ph-left-border {
    background: transparent !important;
}

/* hlavné tlačidlo hosťa musí ostať plné */
.theme-ariane .bd-hostuje__form button.bd-hostuje__btn {
    background: var(--color-primary) !important;
    color: #fff !important;
    border: 1px solid var(--color-primary) !important;
}

@media (max-width: 575.98px) {
    .theme-ariane .bd-hostuje__form { flex-direction: column; align-items: stretch; text-align: center; }
    .theme-ariane .bd-hostuje__btn { width: 100%; }
}

/* Nastavenia cookies v pätičke (5. 9.) — rovnaký prístup ako v tpl_magazin:
   tlačidlo vykresľuje šablóna, nie obsah modulu. */
.theme-ariane .es-footer__cookies {
    display: flex;
    justify-content: center;
    padding: .35rem 0 1rem;
    grid-column: 1 / -1;   /* pätička je mriežka, inak by tlačidlo sedelo v prvom stĺpci */
}

.theme-ariane .es-footer__cookie-btn {
    background: none;
    border: 0;
    padding: .25rem .5rem;
    font: inherit;
    font-size: .85rem;
    color: var(--color-text-muted);
    text-decoration: underline;
    cursor: pointer;
}

.theme-ariane .es-footer__cookie-btn:hover,
.theme-ariane .es-footer__cookie-btn:focus-visible {
    color: var(--color-primary);
}

/* Autorizované značky sú teraz preklik na tovar danej značky (5. 9.) */
.theme-ariane .bd-auth__link {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.theme-ariane .bd-auth__card:hover {
    border-color: var(--color-primary);
    box-shadow: var(--card-shadow-hover);
}

.theme-ariane .bd-auth__link:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 3px;
}


/* ---- [boatdiesel 6830–6875] telefón: formuláre ---- */
/* ---- telefón: formuláre nech nezužujú priestor (Robert 12. 9.) ----
   Pokladňa: Phoca dáva riadku aj stĺpcu 16 px zboku (spolu 64 px z 390),
   formuláre v článkoch: obal 20 px + fieldset 21,6 px. Necháme 12 px. */
@media (max-width: 575.98px) {
    .theme-ariane .pc-checkout-view .ph-checkout-box-action {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .theme-ariane .pc-checkout-view .ph-checkout-box-action > [class*="col-"],
    .theme-ariane .pc-checkout-view .ph-checkout-billing-row,
    .theme-ariane .pc-checkout-view .ph-checkout-shipping-row {
        padding-left: 0;
        padding-right: 0;
    }

    .theme-ariane .pc-checkout-view .row.form-group {
        margin-left: 0;
        margin-right: 0;
    }

    .theme-ariane .pc-checkout-view .row.form-group > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .theme-ariane .pc-checkout-view .ph-checkout-box-login .ph-checkout-box-action > div > div {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .theme-ariane .wp-formular {
        padding: .75rem;
    }

    .theme-ariane .wp-formular fieldset,
    .theme-ariane .wp-formular .m-0 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .theme-ariane .wp-formular legend {
        padding-left: 0;
    }
}


/* ---- [boatdiesel 6876–6954] pokladňa na telefóne: kroky, hosť, na firmu ---- */
/* ---- pokladňa na telefóne (Robert 12. 9.): kroky, hosť, „Nakupujem na firmu" ---- */
@media (max-width: 575.98px) {
    /* kroky: len čísla s jednou spojitou linkou, názov len pri aktívnom kroku
       (pôvodne sa nezalomené názvy prekrývali a spojnice vyzerali ako pomlčky) */
    .theme-ariane .pc-progress__list {
        position: relative;
        justify-content: space-between;
        align-items: center;
    }

    .theme-ariane .pc-progress__list::before {
        content: "";
        position: absolute;
        left: 14px;
        right: 14px;
        top: 50%;
        height: 2px;
        background: var(--color-border, #e5e7eb);
        transform: translateY(-50%);
    }

    .theme-ariane .pc-progress__step {
        flex: 0 1 auto;
        padding: .4rem 0;
        gap: .4rem;
        z-index: 1;
    }

    .theme-ariane .pc-progress__step + .pc-progress__step::before {
        display: none;
    }

    .theme-ariane .pc-progress__step:not(.pc-progress__step--active) .pc-progress__label {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
    }

    .theme-ariane .pc-progress__step--active {
        padding-right: .5rem;
        background: var(--color-body-bg, #fff);
    }

    /* čakajúce kroky prekryjú linku bielym kruhom; hotové/aktívne ostávajú červené */
    .theme-ariane .pc-progress__step:not(.pc-progress__step--done):not(.pc-progress__step--active) .pc-progress__num {
        background: var(--color-body-bg, #fff);
    }
}

/* hosť: text „Nákup ako hosť" nad tlačidlom Zrušiť je duplicita hlavičky sekcie → nech je to jeden riadok s odstupom */
.theme-ariane .ph-checkout-add-guest > div:first-child {
    margin-bottom: .6rem;
    color: var(--color-text-muted, #6b7280);
    font-size: .9rem;
}

.theme-ariane .ph-checkout-add-guest .ph-checkout-btn-login-box {
    float: none;
    margin-top: .25rem;
}

/* „Nakupujem na firmu": políčko s odstupom od poľa nad ním a pod ním */
.theme-ariane .bd-na-firmu {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: .6rem 0 .9rem;
    cursor: pointer;
}

.theme-ariane .bd-na-firmu input[type="checkbox"] {
    width: 1.1rem;
    height: 1.1rem;
    margin: 0;
    accent-color: var(--accent-red, var(--color-primary));
}


/* ---- [boatdiesel 6955–6995] systémové hlášky v tmavej ---- */
/* ---- systémové hlášky (napr. „Produkt bol pridaný do košíka") v tmavej téme ----
   Joomla dáva svetlé pastelové pozadie, na tmavom je to rušivé → tmavé tónované varianty. */
[data-theme="dark"] .theme-ariane joomla-alert,
[data-theme="dark"] .theme-ariane .alert {
    --bd-al-bg: var(--color-surface-alt);
    --bd-al-fg: var(--color-text, #e2e8f0);
    --bd-al-bd: #2e3a5c;
    background: var(--bd-al-bg) !important;
    color: var(--bd-al-fg) !important;
    border: 1px solid var(--bd-al-bd) !important;
    box-shadow: none;
}

[data-theme="dark"] .theme-ariane joomla-alert[type="success"],
[data-theme="dark"] .theme-ariane .alert-success {
    --bd-al-bg: #14301f;
    --bd-al-fg: #bfe8c9;
    --bd-al-bd: #1f5a30;
}

[data-theme="dark"] .theme-ariane joomla-alert[type="warning"],
[data-theme="dark"] .theme-ariane .alert-warning {
    --bd-al-bg: #3a2c0f;
    --bd-al-fg: #f3d58a;
    --bd-al-bd: #6b5215;
}

[data-theme="dark"] .theme-ariane joomla-alert[type="danger"],
[data-theme="dark"] .theme-ariane .alert-danger,
[data-theme="dark"] .theme-ariane .alert-error {
    --bd-al-bg: #3b1218;
    --bd-al-fg: #f4b8c0;
    --bd-al-bd: #7a1f2b;
}

[data-theme="dark"] .theme-ariane joomla-alert .joomla-alert--close,
[data-theme="dark"] .theme-ariane joomla-alert button.joomla-alert--close,
[data-theme="dark"] .theme-ariane joomla-alert .alert-message {
    color: inherit !important;
}


/* ---- [boatdiesel 6996–7095] súhrn košíka v pokladni ---- */
/* ---- súhrn košíka v pokladni (Robert 12. 9.: „neprehľadný") ----
   Phoca skladá 6 stĺpcov do 300 px. Namiesto tabuľky: obrázok · názov · množstvo · cena s DPH;
   stĺpce „bez dane" a „daň" preč (DPH je v rekapitulácii), hlavička preč. */
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-header,
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-netto,
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-tax,
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-hr {
    display: none !important;
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-item {
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr);
    grid-template-areas: "obr nazov" "akcie akcie";
    column-gap: .75rem;
    row-gap: .35rem;
    align-items: center;
    margin: 0 0 .5rem;
    padding: .6rem 0;
    border-bottom: 1px solid var(--color-border, #e5e7eb);
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-item > div {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-item > .ph-checkout-cart-image { grid-area: obr; }
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-item > .ph-checkout-cart-title { grid-area: nazov; font-size: .9rem; line-height: 1.3; }
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-item > .ph-checkout-cart-quantity { grid-area: akcie; justify-self: start; }
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-item > .ph-checkout-cart-brutto { grid-area: akcie; justify-self: end; text-align: right; }

.theme-ariane .ph-checkout-cart-box .ph-img-cart-checkout {
    width: 56px;
    height: 56px;
    object-fit: contain;
    border-radius: .35rem;
    background: #fff;
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-quantity .input-group {
    flex-wrap: nowrap;
    width: auto;
}

.theme-ariane .ph-checkout-cart-box .ph-input-quantity {
    width: 3.2rem !important;
    text-align: center;
    padding: .25rem .3rem;
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-quantity .ph-btn {
    padding: .25rem .45rem;
}

.theme-ariane .bd-cart-suma {
    display: block;
    font-weight: 700;
    color: var(--accent-red, var(--color-primary));
    white-space: nowrap;
}

.theme-ariane .bd-cart-kus {
    display: block;
    font-size: .78rem;
    color: var(--color-text-muted, #6b7280);
    white-space: nowrap;
}

/* rekapitulácia: text vľavo, suma vpravo, bez prázdneho stĺpca */
.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-subtotal {
    display: flex !important;
    justify-content: space-between;
    align-items: baseline;
    gap: .5rem;
    padding: .2rem 0;
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-subtotal > .col-0 {
    display: none;
}

.theme-ariane .ph-checkout-cart-box .ph-checkout-cart-row-subtotal > div {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
}

.theme-ariane .ph-checkout-cart-box .ph-cart-total-box {
    margin-top: .35rem;
    padding-top: .5rem;
    border-top: 1px solid var(--color-border, #e5e7eb);
    font-size: 1.05rem;
    font-weight: 700;
}


/* ---- [boatdiesel 7096–7155] mini košík v hlavičke ---- */
/* ---- mini košík v hlavičke: „2× · názov · cena s DPH" (šablóna vnucuje #phItemCartBox .row flex
   a stĺpcom flex:1 → treba id v selektore; názov sa zalamuje, nie orezáva) ---- */
.theme-ariane #phItemCartBox .ph-cart-cart-row-item {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto;
    column-gap: .6rem;
    align-items: start;
    padding: .55rem 0;
}

.theme-ariane #phItemCartBox .ph-cart-cart-row-item > [class*="col-"] {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    min-width: 0;
}

.theme-ariane #phItemCartBox .ph-cart-small-quantity {
    white-space: nowrap;
    color: var(--color-text-muted, #6b7280);
}

.theme-ariane #phItemCartBox .ph-cart-small-title,
.theme-ariane #phItemCartBox .ph-cart-small-title a {
    font-size: .9rem;
    line-height: 1.3;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    display: block;
}

.theme-ariane #phItemCartBox .ph-cart-small-price {
    font-weight: 600;
    white-space: nowrap;
    text-align: right;
}

.theme-ariane #phItemCartBox .ph-cart-cart-row-header {
    display: none !important;
}

/* mini košík: bez linky pod hlavičkou „Nákupný košík" (Robert 12. 9.) */
.theme-ariane .es-cart-offcanvas__header {
    border-bottom: 0;
}

.theme-ariane #phItemCartBox .ph-cart-cart-row-item:first-of-type {
    padding-top: 0;
}

/* mini košík: prvá položka mala nad sebou linku z prázdneho oddeľovacieho riadku (ph-hr) — oddeľovače riešia položky samy */
.theme-ariane #phItemCartBox .ph-cart-cart-row-hr,
.theme-ariane #phItemCartBox .ph-cart-cart-row-hr .ph-hr {
    display: none !important;
    height: 0;
    border: 0;
}


/* ---- [boatdiesel 7379–7487] boxy dopravy/platby klikateľné ---- */
/* ---- Pokladňa: spôsoby dopravy a platby – celý box je klikateľný (JS v bd-pas.js), kompaktnejší, vybraný zvýraznený ---- */
.theme-ariane .ph-checkout-shipping-item,
.theme-ariane .ph-checkout-payment-item {
    cursor: pointer;
    padding: .65rem .9rem;
    min-height: 0;
    transition: border-color .15s, background-color .15s;
}

.theme-ariane .ph-checkout-shipping-item:hover,
.theme-ariane .ph-checkout-payment-item:hover {
    border-color: var(--color-primary, var(--color-primary));
}

.theme-ariane .ph-checkout-shipping-item:has(input:checked),
.theme-ariane .ph-checkout-payment-item:has(input:checked) {
    border-color: var(--color-primary, var(--color-primary));
    box-shadow: inset 0 0 0 1px var(--color-primary, var(--color-primary));
    background: color-mix(in srgb, var(--color-primary, var(--color-primary)) 5%, transparent);
}

.theme-ariane .ph-checkout-shipping-item .controls,
.theme-ariane .ph-checkout-payment-item .controls,
.theme-ariane .ph-checkout-shipping-item .radio,
.theme-ariane .ph-checkout-payment-item .radio {
    margin: 0;
    padding: 0;
    min-height: 0;
}

.theme-ariane .ph-checkout-shipping-item label,
.theme-ariane .ph-checkout-payment-item label {
    cursor: pointer;
    margin: 0;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.theme-ariane .ph-checkout-shipping-item label input,
.theme-ariane .ph-checkout-payment-item label input {
    margin: 0;
    flex: 0 0 auto;
}

.theme-ariane .ph-checkout-shipping-item .ph-shipping-title,
.theme-ariane .ph-checkout-payment-item .ph-payment-title {
    padding: 0;
    line-height: 1.35;
}

/* súhrn vpravo: názov dopravy/platby vľavo, nie pri cene */
.theme-ariane .ph-cart-shipping-txt,
.theme-ariane .ph-cart-payment-txt,
.theme-ariane .ph-cart-shipping-netto-txt,
.theme-ariane .ph-cart-payment-netto-txt {
    text-align: left;
}

/* cena: bez rozpisu DPH (tax_hide 9/11) ostane jeden riadok – popisok je prázdny, cena vpravo */
.theme-ariane .ph-shipping-price-box .row,
.theme-ariane .ph-payment-price-box .row {
    display: flex;
    justify-content: flex-end;
}

.theme-ariane .ph-shipping-price-box [class*="-txt"]:empty,
.theme-ariane .ph-payment-price-box [class*="-txt"]:empty {
    display: none;
}

.theme-ariane .ph-checkout-shipping-brutto,
.theme-ariane .ph-checkout-payment-brutto,
.theme-ariane .ph-checkout-shipping-free,
.theme-ariane .ph-checkout-payment-free {
    width: auto;
    flex: 0 0 auto;
    text-align: right;
    font-weight: 700;
    white-space: nowrap;
}

/* súhlas s podmienkami + poznámka o osobných údajoch (bez ďalšieho políčka) */
.theme-ariane .ph-checkout-checkbox-confirm {
    display: block;
}

.theme-ariane .ph-checkout-checkbox-confirm label {
    display: block;
    cursor: pointer;
    line-height: 1.5;
}

.theme-ariane .ph-checkout-checkbox-confirm label input {
    margin: 0 .5rem 0 0;
    vertical-align: -.1em;
}

.theme-ariane .bd-pokladna-gdpr {
    margin: .35rem 0 .75rem 1.55rem;
    font-size: .875rem;
    color: var(--color-text-muted, #6b7280);
}

.theme-ariane .bd-pokladna-gdpr a {
    color: inherit;
    text-decoration: underline;
}


/* ---- [boatdiesel 7525–7640] box doprava/platba v jednom riadku ---- */
/* ---- Pokladňa: box dopravy/platby vždy v jednom riadku (názov | cena), aj na telefóne; „Zadarmo" netučné ---- */
.theme-ariane .ph-checkout-shipping-item,
.theme-ariane .ph-checkout-payment-item {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: .75rem;
    margin-left: 0;
    margin-right: 0;
}

.theme-ariane .ph-checkout-shipping-item > [class*="col-"],
.theme-ariane .ph-checkout-payment-item > [class*="col-"] {
    width: auto;
    max-width: none;
    padding: 0;
    flex: 0 0 auto;
}

.theme-ariane .ph-checkout-shipping-item > .ph-shipping-title-box,
.theme-ariane .ph-checkout-payment-item > .ph-payment-title-box {
    flex: 1 1 auto;
    min-width: 0;
}

.theme-ariane .ph-shipping-price-box .row,
.theme-ariane .ph-payment-price-box .row {
    margin: 0;
}

.theme-ariane .ph-shipping-price-box .row > [class*="col-"],
.theme-ariane .ph-payment-price-box .row > [class*="col-"] {
    padding: 0;
    width: auto;
    max-width: none;
    flex: 0 0 auto;
}

.theme-ariane .ph-checkout-shipping-free,
.theme-ariane .ph-checkout-payment-free {
    font-weight: 400;
    color: var(--color-text-muted, #6b7280);
}

/* doplnkové info dopravy (výdajné miesto SPS/GLS/PostaPont) pod názvom, cez celú šírku */
.theme-ariane .ph-checkout-shipping-item > .ph-checkout-shipping-additional-info,
.theme-ariane .ph-checkout-shipping-item .ph-checkout-sps-box,
.theme-ariane .ph-checkout-shipping-item .ph-checkout-gls-box,
.theme-ariane .ph-checkout-shipping-item .ph-checkout-postapont-box,
.theme-ariane .ph-checkout-shipping-item .ph-checkout-zasilkovna-box {
    flex-basis: 100%;
    margin-left: 0;
}

.theme-ariane .ph-checkout-shipping-item:has(.ph-checkout-shipping-additional-info) {
    align-items: flex-start;
}

.theme-ariane .ph-checkout-shipping-item:has(.ph-checkout-shipping-additional-info) > .ph-shipping-price-box {
    margin-top: .15rem;
}

.theme-ariane .ph-checkout-shipping-additional-info {
    color: inherit;
}

.theme-ariane .ph-btn-sps-select-pickup-point,
.theme-ariane .ph-btn-gls-select-pickup-point,
.theme-ariane .ph-btn-postapont-select-pickup-point,
.theme-ariane .ph-btn-zasilkovna-select-pickup-point {
    margin: .35rem 0 .25rem;
    padding: .35rem .8rem;
    border: 1px solid var(--color-primary, var(--color-primary));
    border-radius: .375rem;
    background: transparent;
    color: var(--color-primary, var(--color-primary));
    font-weight: 600;
    cursor: pointer;
}

.theme-ariane .ph-btn-sps-select-pickup-point:hover,
.theme-ariane .ph-btn-gls-select-pickup-point:hover,
.theme-ariane .ph-btn-postapont-select-pickup-point:hover,
.theme-ariane .ph-btn-zasilkovna-select-pickup-point:hover {
    background: var(--color-primary, var(--color-primary));
    color: #fff;
}

[data-theme="dark"] .theme-ariane .ph-btn-sps-select-pickup-point,
[data-theme="dark"] .theme-ariane .ph-btn-gls-select-pickup-point,
[data-theme="dark"] .theme-ariane .ph-btn-postapont-select-pickup-point,
[data-theme="dark"] .theme-ariane .ph-btn-zasilkovna-select-pickup-point {
    border-color: #f06a7c;
    color: #f06a7c;
}

/* vybrané výdajné miesto: farby z témy, nie natvrdo tmavomodrá (na tmavej téme nebolo vidieť) */
.theme-ariane .ph-checkout-sps-info-name,
.theme-ariane .ph-checkout-gls-info-name,
.theme-ariane .ph-checkout-postapont-info-name,
.theme-ariane .ph-checkout-zasilkovna-info-name {
    color: inherit;
}

.theme-ariane .ph-order-sps-branch,
.theme-ariane .ph-order-gls-branch,
.theme-ariane .ph-order-postapont-branch {
    color: var(--color-text-muted, #444);
}

.theme-ariane .ph-sps-map-close,
.theme-ariane .ph-gls-map-close,
.theme-ariane .ph-postapont-map-close {
    background: var(--color-primary, var(--color-primary));
}


/* ---- [boatdiesel 7641–7886] tlačidlá krokov pokladne ---- */
/* ---- Pokladňa: tlačidlá krokov – „Pokračovať" plné (hlavná akcia), „Upraviť …" obrysové vedľajšie; vždy vpravo, na telefóne cez šírku ---- */
.theme-ariane .ph-checkout-address-save,
.theme-ariane .ph-checkout-shipping-save,
.theme-ariane .ph-checkout-payment-save,
.theme-ariane .ph-checkout-address-edit,
.theme-ariane .ph-checkout-shipping-edit,
.theme-ariane .ph-checkout-payment-edit,
.theme-ariane .ph-checkout-btn-login-box {
    float: none;
    display: flex;
    justify-content: flex-end;
    width: 100%;
    padding: 0;
    margin-top: .75rem;
}

.theme-ariane .ph-checkout-address-save .btn,
.theme-ariane .ph-checkout-shipping-save .btn,
.theme-ariane .ph-checkout-payment-save .btn {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .7rem 1.6rem;
    font-size: 1rem;
    font-weight: 600;
    background: var(--color-primary, var(--color-primary));
    border: 1px solid var(--color-primary, var(--color-primary));
    color: #fff;
    border-radius: .5rem;
}

.theme-ariane .ph-checkout-address-save .btn:hover,
.theme-ariane .ph-checkout-shipping-save .btn:hover,
.theme-ariane .ph-checkout-payment-save .btn:hover {
    background: var(--color-primary-hover, #a10820);
    border-color: var(--color-primary-hover, #a10820);
    color: #fff;
}

.theme-ariane .ph-checkout-address-edit .btn,
.theme-ariane .ph-checkout-shipping-edit .btn,
.theme-ariane .ph-checkout-payment-edit .btn,
.theme-ariane .ph-checkout-btn-login-box .btn {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .55rem 1.1rem;
    font-size: .9375rem;
    font-weight: 600;
    background: transparent;
    border: 1px solid var(--color-border-strong, #9ca3af);
    color: var(--color-text, #111);
    border-radius: .5rem;
}

.theme-ariane .ph-checkout-address-edit .btn:hover,
.theme-ariane .ph-checkout-shipping-edit .btn:hover,
.theme-ariane .ph-checkout-payment-edit .btn:hover,
.theme-ariane .ph-checkout-btn-login-box .btn:hover {
    border-color: var(--color-primary, var(--color-primary));
    color: var(--color-primary, var(--color-primary));
    background: transparent;
}

[data-theme="dark"] .theme-ariane .ph-checkout-address-edit .btn,
[data-theme="dark"] .theme-ariane .ph-checkout-shipping-edit .btn,
[data-theme="dark"] .theme-ariane .ph-checkout-payment-edit .btn,
[data-theme="dark"] .theme-ariane .ph-checkout-btn-login-box .btn {
    border-color: rgba(255, 255, 255, .35);
    color: #fff;
}

[data-theme="dark"] .theme-ariane .ph-checkout-address-edit .btn:hover,
[data-theme="dark"] .theme-ariane .ph-checkout-shipping-edit .btn:hover,
[data-theme="dark"] .theme-ariane .ph-checkout-payment-edit .btn:hover,
[data-theme="dark"] .theme-ariane .ph-checkout-btn-login-box .btn:hover {
    border-color: #f06a7c;
    color: #f06a7c;
}

@media (max-width: 575.98px) {
    .theme-ariane .ph-checkout-address-save .btn,
    .theme-ariane .ph-checkout-shipping-save .btn,
    .theme-ariane .ph-checkout-payment-save .btn {
        width: 100%;
        justify-content: center;
    }
}

/* šablóna má na telefóne stĺpec + centrovanie – chceme jeden riadok: názov vľavo, cena vpravo */
.theme-ariane .ph-checkout-shipping-item,
.theme-ariane .ph-checkout-payment-item {
    flex-direction: row;
}

.theme-ariane .ph-shipping-title-box,
.theme-ariane .ph-payment-title-box {
    display: block;
    justify-content: flex-start;
    text-align: left;
}

.theme-ariane .ph-shipping-price-box,
.theme-ariane .ph-payment-price-box {
    display: flex;
    justify-content: flex-end;
    text-align: right;
}

.theme-ariane .ph-shipping-price-box .radio,
.theme-ariane .ph-payment-price-box .radio {
    width: auto;
}

.theme-ariane .ph-checkout-shipping-item > [class*="col-"],
.theme-ariane .ph-checkout-payment-item > [class*="col-"] {
    margin: 0;
}

/* šablóna dáva „#ph-pc-checkout-box .btn-sm { background: transparent !important }" – hlavné tlačidlo kroku musí byť plné */
.theme-ariane #ph-pc-checkout-box .ph-checkout-address-save .btn,
.theme-ariane #ph-pc-checkout-box .ph-checkout-shipping-save .btn,
.theme-ariane #ph-pc-checkout-box .ph-checkout-payment-save .btn {
    background: var(--color-primary, var(--color-primary)) !important;
    color: #fff !important;
    border-color: var(--color-primary, var(--color-primary)) !important;
    max-width: 100%;
}

.theme-ariane #ph-pc-checkout-box .ph-checkout-address-save .btn:hover,
.theme-ariane #ph-pc-checkout-box .ph-checkout-shipping-save .btn:hover,
.theme-ariane #ph-pc-checkout-box .ph-checkout-payment-save .btn:hover {
    background: var(--color-primary-hover, #a30820) !important;
    border-color: var(--color-primary-hover, #a30820) !important;
}

.theme-ariane .ph-checkout-address-save,
.theme-ariane .ph-checkout-shipping-save,
.theme-ariane .ph-checkout-payment-save {
    max-width: 100%;
    box-sizing: border-box;
}

/* poznámka k objednávke: nadpis ako ostatné kroky, odsadený text, na telefóne menší */
.theme-ariane #phConfirm .ph-box-header {
    padding: .85rem 1rem .5rem;
    font-size: 1.05rem;
    font-weight: 600;
}

.theme-ariane #phConfirm textarea.form-control {
    display: block;
    width: calc(100% - 2rem);
    margin: 0 1rem 1rem;
    padding: .65rem .8rem;
    min-height: 5.5rem;
    border: 1px solid var(--color-border, #d1d5db);
    border-radius: .5rem;
    background: var(--color-surface, #fff);
    color: var(--color-text, #111);
}

.theme-ariane #phConfirm textarea.form-control::placeholder {
    color: var(--color-text-muted, #6b7280);
}

@media (max-width: 575.98px) {
    .theme-ariane #phConfirm .ph-box-header {
        font-size: .95rem;
        padding: .7rem .85rem .4rem;
    }

    .theme-ariane #phConfirm textarea.form-control {
        width: calc(100% - 1.7rem);
        margin: 0 .85rem .85rem;
    }
}

/* obaly tlačidiel mali bočné okraje 16 px + šírku 100 % → tlačidlá liezli za rám boxu */
.theme-ariane .ph-checkout-address-save,
.theme-ariane .ph-checkout-shipping-save,
.theme-ariane .ph-checkout-payment-save,
.theme-ariane .ph-checkout-address-edit,
.theme-ariane .ph-checkout-shipping-edit,
.theme-ariane .ph-checkout-payment-edit,
.theme-ariane .ph-checkout-btn-login-box,
.theme-ariane .ph-checkout-confirm {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.theme-ariane .ph-checkout-confirm {
    float: none;
    display: flex;
    justify-content: flex-end;
}

.theme-ariane .ph-checkout-confirm .btn {
    max-width: 100%;
    white-space: normal;
    text-align: center;
}

@media (max-width: 575.98px) {
    .theme-ariane .ph-checkout-confirm .btn {
        width: 100%;
        font-size: .9rem;
        padding: .7rem .9rem;
        justify-content: center;
    }

    .theme-ariane .ph-checkout-address-edit .btn,
    .theme-ariane .ph-checkout-shipping-edit .btn,
    .theme-ariane .ph-checkout-payment-edit .btn {
        padding: .5rem .9rem;
        font-size: .875rem;
    }
}

/* poznámka + potvrdenie: rovnaká šírka ako ostatné kroky (Phoca tam mala okraj 25 px) */
.theme-ariane .ph-checkout-box-action-raw {
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
}

/* nadpisy v boxoch (ADRESA PRE FAKTURÁCIU, SPÔSOBY DORUČENIA…) na telefóne menšie */
@media (max-width: 575.98px) {
    .theme-ariane #ph-pc-checkout-box .ph-box-header {
        font-size: .95rem;
        letter-spacing: .02em;
    }

    .theme-ariane #ph-pc-checkout-box .ph-checkout-box-header h3,
    .theme-ariane #ph-pc-checkout-box [class*="ph-checkout-box-header"] h3 {
        font-size: .95rem;
    }

    .theme-ariane .wp-products__title {
        font-size: 1.6rem;
    }
}


/* ---- [boatdiesel 7894–7898] zvýraznenie po zmene dopravy/platby ---- */
/* ---- pokladňa: krátke zvýraznenie po zmene dopravy/platby (nahrádza 4 s „pc-loading" v template.js) ---- */
.theme-ariane .pc-changed {
    transition: box-shadow .3s;
}


/* ---- [boatdiesel 7899–7952] Lighthouse: kontrast, dotyk, tlačidlá ---- */
/* ---- Lighthouse (Robert 12. 9. večer): kontrast, miesta dotyku, tlačidlá namiesto JS odkazov ---- */
/* „Na sklade" zelená 4,08:1 na svetlom podklade → tmavšia (≥ 4,5:1); tmavá téma má vlastné farby */
html:not([data-theme="dark"]) .theme-ariane .ph-stock.pc-status-na-sklade,
html:not([data-theme="dark"]) .theme-ariane .pc-stock-bd-na-sklade {
    color: var(--color-success);
}

/* „Nastavenia cookies" v päte mala farbu muted zo svetlej témy na tmavom podklade päty (2,4:1) */
.theme-ariane .es-footer__cookie-btn {
    color: var(--footer-text, #9fb1bf);
}

/* obľúbené / porovnať: <button> namiesto <a href="javascript:"> – vzhľad ostáva pilulka */
.theme-ariane button.bd-ikona-tlacidlo {
    font-family: inherit;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}

/* bodky galérie na telefóne: 24×24 miesto dotyku, bodka vnútri ostáva malá */
@media (max-width: 767.98px) {
    .theme-ariane .bd-galeria-m__bodky {
        gap: .25rem;
    }

    .theme-ariane .bd-galeria-m__bodka {
        position: relative;
        width: 24px;
        height: 24px;
        background: transparent;
        border-radius: 50%;
    }

    .theme-ariane .bd-galeria-m__bodka::before {
        content: "";
        position: absolute;
        inset: 50% auto auto 50%;
        width: .6rem;
        height: .6rem;
        transform: translate(-50%, -50%);
        border-radius: 50%;
        background: var(--color-border, #cfd8e3);
    }

    .theme-ariane .bd-galeria-m__bodka.is-active {
        background: transparent;
    }

    .theme-ariane .bd-galeria-m__bodka.is-active::before {
        background: var(--accent-red, var(--color-primary));
    }
}

/* ============================================================
   DETAIL PRODUKTU — port z boatdiesel (galéria swipe, želania vedľa zdieľania, cena vedľa seba, logo výrobcu, sledovať cenu).
   ============================================================ */

/* ---- [boatdiesel 6243–6282] želania v riadku so zdieľaním ---- */
/* ---- „Pridať do zoznamu želaní" v riadku so zdieľaním (12. 9.) ----
   Presúva ho bd-zelania.js; tu len vzhľad: pilulka s červeným srdiečkom,
   rovnako vysoká ako kruhové tlačidlá zdieľania, zarovnaná vpravo. */
.theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row {
    margin: 0 0 0 auto;
    gap: .5rem;
}

.theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row :is(a, button.bd-ikona-tlacidlo) {
    height: 36px;
    padding: 0 .9rem 0 .7rem;
    border-radius: 999px;
    gap: .45rem;
    font-size: .8125rem;
}

.theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row :is(a, button.bd-ikona-tlacidlo) svg.pc-si {
    width: 1.1rem;
    height: 1.1rem;
    color: var(--accent-red, var(--color-primary));
}

.theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row :is(a, button.bd-ikona-tlacidlo):hover svg.pc-si {
    color: #fff;
}

.theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row :is(a, button.bd-ikona-tlacidlo):hover {
    background: var(--accent-red, var(--color-primary));
    border-color: var(--accent-red, var(--color-primary));
    color: #fff;
}

@media (max-width: 575.98px) {
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row {
        flex-basis: 100%;
        margin-left: 0;
        margin-top: .25rem;
    }
}


/* ---- [boatdiesel 6283–6336] galéria v jednom posuvnom rade ---- */
/* ---- galéria v detaile: náhľady v jednom posuvnom rade (pripomienka 11.6) ---- */
.theme-ariane .bd-galeria {
    position: relative;
    margin: .75rem 0 0;
}

.theme-ariane .bd-galeria .ph-item-image-add-box.bd-swipe__track {
    flex-wrap: nowrap;
    gap: .6rem;
    margin: 0;
    padding: .25rem .125rem .5rem;
    scroll-snap-type: x proximity;
}

.theme-ariane .bd-galeria .ph-item-image-box {
    scroll-snap-align: start;
    flex: 0 0 88px;
}

.theme-ariane .bd-galeria .bd-swipe__nav {
    width: 2rem;
    height: 2rem;
    top: 50%;
    transform: translateY(-50%);
}

.theme-ariane .bd-galeria .bd-swipe__nav--prev { left: -.5rem; }
.theme-ariane .bd-galeria .bd-swipe__nav--next { right: -.5rem; }

.theme-ariane .bd-galeria .bd-swipe__nav svg {
    width: 16px;
    height: 16px;
}

/* nowrap dráha náhľadov nesmie roztiahnuť stĺpec s fotkou */
.theme-ariane .pc-item-view #phImageBox {
    min-width: 0;
}

.theme-ariane .bd-galeria {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.theme-ariane .bd-galeria .ph-item-image-add-box.bd-swipe__track {
    width: 100%;
    max-width: 100%;
}

/* šípky galérie vnútri dráhy (obal má overflow hidden) */
.theme-ariane .bd-galeria .bd-swipe__nav--prev { left: .15rem; }
.theme-ariane .bd-galeria .bd-swipe__nav--next { right: .15rem; }


/* ---- [boatdiesel 6337–6373] akciová a pôvodná cena vedľa seba ---- */
/* ---- detail: akciová a pôvodná cena vedľa seba (pripomienka 11.7) ----
   Doteraz bola pôvodná cena nad novou; teraz veľká nová a vedľa nej preškrtnutá
   pôvodná, cena bez DPH pod nimi na novom riadku. Rovnako ako v kartičkách. */
.theme-ariane .ph-item-price-box {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: .75rem;
    row-gap: .15rem;
}

.theme-ariane .ph-item-price-box .ph-price-brutto {
    order: 1;
}

.theme-ariane .ph-item-price-box .ph-price-original,
.theme-ariane .ph-item-price-box .ph-price-old {
    order: 2;
    margin: 0;
    font-size: 1.15rem;
    text-decoration: line-through;
    color: var(--color-text-muted, #6b7785);
}

.theme-ariane .ph-item-price-box .ph-price-netto {
    order: 3;
    flex-basis: 100%;
}

/* filter Výkon (HP) pred výrobcami — pri motoroch je dôležitejší */
.theme-ariane #phFilterBox > .panel-vykon        { order: 4; }
.theme-ariane #phFilterBox > .panel-manufacturer { order: 5; }
.theme-ariane #phFilterBox > .panel              { order: 6; }
.theme-ariane #phFilterBox > .panel-id           { order: 1; }
.theme-ariane #phFilterBox > .panel-price_from   { order: 2; }
.theme-ariane #phFilterBox > .panel-dostupnost   { order: 3; }


/* ---- [boatdiesel 6374–6432] galéria na mobile ---- */
/* ---- galéria na mobile: fotka sa posúva prstom, bodky pod ňou ---- */
@media (max-width: 767.98px) {
    .theme-ariane .bd-galeria-m--skryta {
        display: none !important;
    }

    .theme-ariane .bd-galeria-m {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -ms-overflow-style: none;
        overscroll-behavior-x: contain;
        border: 1px solid var(--color-border);
        border-radius: var(--card-radius, 8px);
        background: #fff;
    }

    .theme-ariane .bd-galeria-m::-webkit-scrollbar { display: none; }

    .theme-ariane .bd-galeria-m__slide {
        flex: 0 0 100%;
        scroll-snap-align: start;
        aspect-ratio: 1 / 1;
        display: grid;
        place-items: center;
        padding: .75rem;
    }

    .theme-ariane .bd-galeria-m__slide img {
        max-width: 100%;
        max-height: 100%;
        width: auto;
        height: auto;
        object-fit: contain;
    }

    .theme-ariane .bd-galeria-m__bodky {
        display: flex;
        justify-content: center;
        gap: .5rem;
        padding: .75rem 0 .25rem;
    }

    .theme-ariane .bd-galeria-m__bodka {
        width: .6rem;
        height: .6rem;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: var(--color-border, #cfd8e3);
        cursor: pointer;
    }

    .theme-ariane .bd-galeria-m__bodka.is-active {
        background: var(--accent-red, var(--color-primary));
    }
}


/* ---- [boatdiesel 6433–6474] logo výrobcu nad názvom ---- */
/* ---- logo výrobcu nad názvom produktu (mockup klientky 12. 9.) ----
   Panel s cenou je flex stĺpec → blok výrobcu ide poradím pred H1.
   Bez loga (7 značiek) ostane len meno výrobcu, malým, tiež hore. */
.theme-ariane .pc-item-view .ph-item-price-panel .ph-item-manufacturer-box {
    order: -1;
    margin: 0 0 .5rem;
}

.theme-ariane .pc-item-view .ph-item-manufacturer-box .ph-manufacturer-txt {
    display: none;
}

.theme-ariane .pc-item-view .ph-item-manufacturer-box .ph-manufacturer {
    gap: .75rem;
    font-size: .8rem;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--color-text-muted, #6b7785);
}

.theme-ariane .pc-item-view .es-manufacturer-logo {
    height: 3rem;
    max-width: 12rem;
}

@media (max-width: 575.98px) {
    .theme-ariane .pc-item-view .es-manufacturer-logo {
        height: 2.4rem;
        max-width: 10rem;
    }
}

/* keď má výrobca logo, meno vedľa neho netreba (ostáva pre čítačky v alt) */
.theme-ariane .pc-item-view .ph-item-manufacturer-box .ph-manufacturer:has(.es-manufacturer-logo) {
    font-size: 0;
}

.theme-ariane .pc-item-view .es-manufacturer-logo {
    height: 3.5rem;
    max-width: 14rem;
}


/* ---- [boatdiesel 6779–6829] želania + sledovať cenu ako dvojica ---- */
/* ---- detail: „Pridať do zoznamu želaní" + „Sledovať cenu" (wppush) ako dvojica ----
   rovnaký tvar (oblé rohy ako všade, nie pilulka), rovnaká výška, červená ikona,
   pri hover červená výplň. Na PC vedľa seba vpravo v riadku so zdieľaním. */
.theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row :is(a, button.bd-ikona-tlacidlo),
.theme-ariane.view-item .bd-item-actions-row .wppush-btn {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    height: 36px;
    padding: 0 .9rem 0 .7rem;
    border: 1px solid var(--color-border);
    border-radius: .5rem;
    background: var(--color-surface);
    color: var(--color-heading, var(--color-surface-alt));
    font-size: .8125rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    transition: border-color .15s ease, color .15s ease, background .15s ease;
}

.theme-ariane.view-item .bd-item-actions-row .wppush-btn svg {
    width: 1.1rem;
    height: 1.1rem;
    color: var(--accent-red, var(--color-primary));
}

.theme-ariane.view-item .bd-item-actions-row .wppush-btn:hover,
.theme-ariane.view-item .bd-item-actions-row .wppush-btn:focus-visible,
.theme-ariane.view-item .bd-item-actions-row .wppush-btn--aktivne {
    background: var(--accent-red, var(--color-primary));
    border-color: var(--accent-red, var(--color-primary));
    color: #fff;
}

.theme-ariane.view-item .bd-item-actions-row .wppush-btn:hover svg,
.theme-ariane.view-item .bd-item-actions-row .wppush-btn--aktivne svg {
    color: #fff;
}

[data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row .wppush-btn {
    background: var(--color-surface-alt);
    color: var(--color-text);
}

[data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row .wppush-btn:hover,
[data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row .wppush-btn--aktivne {
    background: var(--accent-red, var(--color-primary));
    color: #fff;
}


/* ==========================================================================
   KONTAKT — mriežka ako boatdiesel: foto | karta predajne, fakturácia | mapa
   (Robert 13.9.: „skrášliť kontakt"). Mapa Google až po kliknutí (bd-mapa.js),
   dovtedy statický náhľad images/ariane/mapa.webp.
   ========================================================================== */
.theme-ariane .cf-kontakt__uvod {
    margin: 0 0 1.5rem;
    font-size: 1.05rem;
    max-width: 60ch;
}

.theme-ariane .cf-kontakt {
    display: grid;
    grid-template-columns: minmax(0, 26rem) minmax(0, 1fr);
    gap: 1.5rem;
    margin: 0 0 2rem;
}

.theme-ariane .cf-kontakt__foto {
    margin: 0;
    min-height: 340px;
    border-radius: var(--radius-xl);
    overflow: hidden;
    background: var(--color-surface-alt);
}

.theme-ariane .cf-kontakt__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.theme-ariane .cf-kontakt__karta {
    padding: 2rem 2.25rem;
    border-radius: var(--radius-xl);
    background: var(--color-surface-alt);
    border: 1px solid var(--color-border);
}

.theme-ariane .cf-kontakt__karta h2 {
    margin: 0 0 .9rem;
    padding-bottom: .6rem;
    border-bottom: 2px solid var(--color-primary);
    font-size: 1.3rem;
    line-height: 1.2;
}

.theme-ariane .cf-kontakt__karta h3 {
    margin: 1.4rem 0 .5rem;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--color-text-muted);
}

.theme-ariane .cf-kontakt__karta p {
    margin: 0 0 .75rem;
    line-height: 1.55;
}

.theme-ariane .cf-kontakt__pozn {
    font-size: .85rem;
    color: var(--color-text-muted);
}

/* zoznamy v karte: bez odrážok (článok má disc s vyššou špecifickosťou) */
.theme-ariane .wp-article__body .cf-kontakt__karta ul,
.theme-ariane .com-content-article__body .cf-kontakt__karta ul,
.theme-ariane .cf-kontakt__karta ul {
    list-style: none !important;
    margin: 0 0 .5rem;
    padding: 0 !important;
}

.theme-ariane .cf-kontakt__karta li { margin: 0 0 .4rem; }
.theme-ariane .cf-kontakt__karta li::marker { content: ""; }

.theme-ariane .cf-kontakt__hodiny li {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .35rem 0;
    border-bottom: 1px dashed var(--color-border);
}

.theme-ariane .cf-kontakt__hodiny li:last-child { border-bottom: 0; }

/* telefón a e-mail s ikonou */
.theme-ariane .cf-kontakt__karta a[href^="tel:"],
.theme-ariane .cf-kontakt__karta a[href^="mailto:"] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-weight: 600;
    text-decoration: none;
}

.theme-ariane .cf-kontakt__karta a[href^="tel:"]::before,
.theme-ariane .cf-kontakt__karta a[href^="mailto:"]::before {
    content: "";
    flex: 0 0 auto;
    width: 1.05rem;
    height: 1.05rem;
    background: currentColor;
    -webkit-mask: var(--cf-ik) no-repeat center / contain;
    mask: var(--cf-ik) no-repeat center / contain;
}

.theme-ariane .cf-kontakt__karta a[href^="tel:"]::before {
    --cf-ik: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6.2 6.2l1.3-1.3a2 2 0 0 1 2.1-.5c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/></svg>");
}

.theme-ariane .cf-kontakt__karta a[href^="mailto:"]::before {
    --cf-ik: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='m3 7 9 6 9-6'/></svg>");
}

.theme-ariane .cf-kontakt__akcie { margin: 1.5rem 0 0; }
.theme-ariane .cf-kontakt__akcie .es-btn { text-decoration: none; }

/* mapa — načíta sa až po kliknutí; predtým statický náhľad */
.theme-ariane .bd-mapa {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    min-height: 340px;
    padding: 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    text-align: center;
    background: var(--color-surface-alt) url("/images/ariane/mapa.webp") center / cover no-repeat;
}

.theme-ariane .bd-mapa::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 251, 244, .45);
}

.theme-ariane .bd-mapa > * { position: relative; }

.theme-ariane .bd-mapa__pozn {
    display: inline-block;
    padding: .25rem .6rem;
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, .85);
    color: #5a4a40;
    font-size: .8rem;
}

.theme-ariane .bd-mapa--nacitana {
    display: block;
    padding: 0;
    background-image: none;
}

.theme-ariane .bd-mapa--nacitana::before { display: none; }

.theme-ariane .bd-mapa iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 767.98px) {
    .theme-ariane .cf-kontakt {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .theme-ariane .cf-kontakt__foto {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }

    .theme-ariane .cf-kontakt__foto img { object-position: center 18%; } /* logo COFEX je v hornej časti fotky */

    .theme-ariane .cf-kontakt__karta { padding: 1.25rem 1.1rem; }
    .theme-ariane .bd-mapa { min-height: 0; aspect-ratio: 4 / 3; }
}

/* ==========================================================================
   KARTA PREDAJNE na úvodke — nahrádza showcase CTA s rozmazaným pozadím:
   fotka výkladu vľavo (380 px, bez roztiahnutia), obsah + údaje + tlačidlá vpravo
   ========================================================================== */
.theme-ariane .cf-predajna {
    display: grid;
    grid-template-columns: minmax(0, 24rem) minmax(0, 1fr);
    border-radius: var(--radius-xl);
    overflow: hidden;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    box-shadow: var(--card-shadow);
}

.theme-ariane .cf-predajna__foto {
    margin: 0;
    min-height: 100%;
    background: var(--color-surface-alt);
}

.theme-ariane .cf-predajna__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.theme-ariane .cf-predajna__obsah {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .9rem;
    padding: 2.5rem 2.75rem;
}

.theme-ariane .cf-predajna__stitok {
    align-self: flex-start;
    padding: .25rem .7rem;
    border-radius: 999px;
    background: var(--color-primary-light);
    color: var(--color-primary);
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.theme-ariane .cf-predajna__nadpis {
    margin: 0;
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    line-height: 1.15;
}

.theme-ariane .cf-predajna__obsah > p {
    margin: 0;
    max-width: 52ch;
    color: var(--color-text-muted);
    line-height: 1.6;
}

.theme-ariane .cf-predajna__info {
    display: grid;
    gap: .55rem;
    margin: .25rem 0 0;
    padding: 0;
    list-style: none;
}

.theme-ariane .cf-predajna__info li {
    display: flex;
    align-items: center;
    gap: .6rem;
    font-weight: 500;
}

.theme-ariane .cf-predajna__info svg { flex: 0 0 auto; color: var(--color-accent); }
.theme-ariane .cf-predajna__info a { font-weight: 600; text-decoration: none; }

.theme-ariane .cf-predajna__akcie {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: .5rem;
}

.theme-ariane .cf-predajna__akcie .es-btn { text-decoration: none; }

/* dvojica na úvodke: karta predajne | novinky z blogu (Robert 13.9. v noci: „miesto mapy novinky, na polovicu") */
.theme-ariane .cf-uvod-dvojica {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: stretch;
}

@media (min-width: 992px) {
    .theme-ariane .cf-uvod-dvojica { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .theme-ariane .cf-uvod-dvojica .cf-predajna { grid-template-columns: minmax(0, 13rem) minmax(0, 1fr); }
    .theme-ariane .cf-uvod-dvojica .cf-predajna__obsah { padding: 1.75rem 1.75rem; gap: .7rem; }
    .theme-ariane .cf-uvod-dvojica .cf-predajna__nadpis { font-size: 1.45rem; }
    .theme-ariane .cf-uvod-dvojica .cf-predajna__obsah > p { font-size: .95rem; }
}

@media (min-width: 1200px) {
    .theme-ariane .cf-uvod-dvojica .cf-predajna { grid-template-columns: minmax(0, 16rem) minmax(0, 1fr); }
}

.theme-ariane .cf-novinky {
    display: flex;
    flex-direction: column;
    padding: 1.5rem 1.75rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    background: var(--color-surface);
    box-shadow: var(--card-shadow);
}

.theme-ariane .cf-novinky__hlava {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin: 0 0 1rem;
    padding-bottom: .75rem;
    border-bottom: 2px solid var(--color-primary);
}

.theme-ariane .cf-novinky__nadpis { margin: 0; font-size: 1.35rem; }
.theme-ariane .cf-novinky__vsetky { font-size: .9rem; font-weight: 600; white-space: nowrap; text-decoration: none; }

.theme-ariane .cf-novinky .mod-articles-items {
    display: grid;
    gap: .9rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.theme-ariane .cf-novinky .mod-articles-item {
    display: grid;
    grid-template-columns: 6.5rem minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.theme-ariane .cf-novinky .mod-articles-item:not(:last-child) { padding-bottom: .9rem; border-bottom: 1px dashed var(--color-border); }

/* obrázok (joomla.content.intro_image) ide v markupe za nadpisom → do prvého stĺpca cez order */
.theme-ariane .cf-novinky .mod-articles-item-content { display: contents; }
.theme-ariane .cf-novinky .mod-articles-item figure,
.theme-ariane .cf-novinky .mod-articles-item .item-image,
.theme-ariane .cf-novinky .mod-articles-item .mod-articles-image {
    order: -1;
    grid-row: 1 / span 3;
    margin: 0;
    aspect-ratio: 1;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--color-surface-alt);
}

.theme-ariane .cf-novinky .mod-articles-item figure img,
.theme-ariane .cf-novinky .mod-articles-item .item-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.theme-ariane .cf-novinky .mod-articles-item figcaption { display: none; }

.theme-ariane .cf-novinky .mod-articles-title { margin: 0; font-size: 1rem; line-height: 1.3; }
.theme-ariane .cf-novinky .mod-articles-title a { text-decoration: none; color: var(--color-heading); }
.theme-ariane .cf-novinky .mod-articles-title a:hover { color: var(--color-primary); }
.theme-ariane .cf-novinky .mod-articles-item dl { margin: 0; font-size: .8rem; color: var(--color-text-muted); }
.theme-ariane .cf-novinky .mod-articles-item dl dt { display: none; }
.theme-ariane .cf-novinky .mod-articles-item dl dd { margin: 0; display: inline; }
.theme-ariane .cf-novinky .mod-articles-item-content > p { margin: 0; font-size: .9rem; color: var(--color-text-muted); line-height: 1.5; }
.theme-ariane .cf-novinky .mod-articles-item dl .icon-calendar { display: none; }

@media (max-width: 575.98px) {
    .theme-ariane .cf-novinky { padding: 1.2rem 1.1rem; }
    .theme-ariane .cf-novinky .mod-articles-item { grid-template-columns: 5rem minmax(0, 1fr); gap: .75rem; }
}

@media (max-width: 991.98px) {
    .theme-ariane .cf-predajna { grid-template-columns: minmax(0, 18rem) minmax(0, 1fr); }
    .theme-ariane .cf-predajna__obsah { padding: 1.75rem; }
}

@media (max-width: 767.98px) {
    .theme-ariane .cf-predajna { grid-template-columns: 1fr; }
    .theme-ariane .cf-predajna__foto { aspect-ratio: 16 / 10; min-height: 0; }
    .theme-ariane .cf-predajna__foto img { object-position: center 18%; }
    .theme-ariane .cf-predajna__obsah { padding: 1.4rem 1.2rem 1.6rem; }
}

[data-theme="dark"] .theme-ariane .cf-kontakt__karta,
[data-theme="dark"] .theme-ariane .cf-kontakt__foto,
[data-theme="dark"] .theme-ariane .cf-predajna__foto { background: var(--color-surface-alt); }
[data-theme="dark"] .theme-ariane .cf-predajna { background: var(--color-surface); }
[data-theme="dark"] .theme-ariane .bd-mapa::before { background: rgba(27, 19, 16, .35); }
[data-theme="dark"] .theme-ariane .bd-mapa__pozn { background: rgba(38, 28, 23, .9); color: var(--color-text-muted); }

/* ==========================================================================
   PÄTIČKA ako boatdiesel (13.9.): ikony platieb nad copyright, sociálne siete
   ========================================================================== */
.theme-ariane .bd-platby {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem;
    margin: 0 0 1rem;
}

.theme-ariane .bd-platby img {
    width: 54px;
    height: 36px;
    border-radius: 4px;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .12);
    opacity: .92;
}

.theme-ariane .bd-social { margin-top: 1rem; }
.theme-ariane .bd-social__nadpis { font-weight: 700; margin-bottom: .5rem; }
.theme-ariane .bd-social__ikony { display: flex; gap: .5rem; }

.theme-ariane .bd-social__ikony a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .35);
    color: inherit;
    transition: background .15s ease, border-color .15s ease;
}

.theme-ariane .bd-social__ikony a:hover,
.theme-ariane .bd-social__ikony a:focus-visible {
    background: var(--ar-accent);
    border-color: var(--ar-accent);
    color: #111;   /* na žltej vždy čierna ikona (v tme je --color-primary biela → nevidno) */
}

/* tlačidlo cookies je v module (šablóna 1.28.2 ho nevykresľuje) — v tmavej päte svetlé písmo */
.theme-ariane .es-footer .es-footer__cookie-btn { color: var(--es-band-text, #d1d5db); opacity: .8; }
.theme-ariane .es-footer .es-footer__cookie-btn:hover,
.theme-ariane .es-footer .es-footer__cookie-btn:focus-visible { color: #fff; opacity: 1; }

/* ==========================================================================
   ČLÁNKY BEZ BOČNÉHO PANELU — užší, centrovaný obsah + typografia (port z boatdiesel,
   Robert 13.9.: „kde nie je ľavý/pravý panel, zúžime rozvrhnutie ako na boate")
   + KONTAKTNÝ FORMULÁR (com_contact cez {formular id=N}, plg_content_wpformular)
   ========================================================================== */
/* ════════════════════════════════════════════════════════════════════
   Typografia dlhých textov (obchodné podmienky, reklamačný poriadok, blog).
   Prenesené stránky sú holé odstavce a zoznamy — čitateľnosť robí rytmus:
   šírka riadku, medzery, výrazné medzinadpisy a zvýraznené úvodné vety.
   ════════════════════════════════════════════════════════════════════ */
/* Zúžiť len text bolo zle — nadpis ostal cez celú šírku a stránka pôsobila
   useknuto doľava. Zužujeme preto CELÝ článok (nadpis + text) a centrujeme ho. */
.theme-ariane .wp-article,
.theme-ariane .com-content-article {
    max-width: 60rem;
    margin-inline: auto;
}

.theme-ariane .com-content-article__body,
.theme-ariane .wp-article__body {
    max-width: none;
    font-size: 1rem;
    line-height: 1.75;
}

.theme-ariane .com-content-article__body p,
.theme-ariane .wp-article__body p {
    margin: 0 0 1rem;
}

/* prvý odstavec ako perex */
.theme-ariane .com-content-article__body > p:first-of-type,
.theme-ariane .wp-article__body > p:first-of-type {
    font-size: 1.08rem;
    color: var(--color-text);
}

/* tučné riadky, ktoré v pôvodnom texte plnia úlohu medzinadpisov */
.theme-ariane .com-content-article__body p > strong:only-child,
.theme-ariane .wp-article__body p > strong:only-child {
    display: inline-block;
    margin-top: 0.6rem;
    font-size: 1.06rem;
    color: var(--color-heading);
}

.theme-ariane .com-content-article__body h2,
.theme-ariane .wp-article__body h2 {
    margin: 2rem 0 0.75rem;
    padding-bottom: 0.35rem;
    border-bottom: 2px solid var(--color-primary);
    font-size: 1.35rem;
}

.theme-ariane .com-content-article__body h3,
.theme-ariane .wp-article__body h3 {
    margin: 1.5rem 0 0.5rem;
    font-size: 1.12rem;
}

.theme-ariane .com-content-article__body li,
.theme-ariane .wp-article__body li {
    margin-bottom: 0.35rem;
}

.theme-ariane .com-content-article__body a,
.theme-ariane .wp-article__body a {
    /* v tmavej téme svetlá červená (--color-link), inak akcentová */
    color: var(--color-link, var(--color-primary));
    text-decoration: underline;
    text-underline-offset: 2px;
}

.theme-ariane .com-content-article__body table,
.theme-ariane .wp-article__body table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
}

.theme-ariane .com-content-article__body td,
.theme-ariane .com-content-article__body th,
.theme-ariane .wp-article__body td,
.theme-ariane .wp-article__body th {
    padding: 0.5rem 0.65rem;
    border: 1px solid var(--color-border);
    text-align: left;
}

@media (max-width: 767.98px) {
    .theme-ariane .com-content-article__body,
    .theme-ariane .wp-article__body {
        line-height: 1.7;
    }
}

/* Výzva na servisný formulár (článok Servis a služby) */
.theme-ariane .bd-cta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem 1rem;
    margin: 0 0 1.5rem;
    padding: 1rem 1.15rem;
    background: var(--color-surface-alt);
    border-left: 4px solid var(--color-primary);
    border-radius: 4px;
}

.theme-ariane .bd-cta__btn {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0.6rem 1.15rem;
    background: var(--color-primary);
    color: #fff !important;
    font-weight: 600;
    text-decoration: none !important;
    border-radius: 4px;
}

.theme-ariane .bd-cta__btn:hover {
    filter: brightness(1.08);
}

.theme-ariane .bd-cta__note {
    color: var(--color-text-muted);
    font-size: 0.92rem;
}

/* Kontaktný (servisný) formulár — čitateľné polia, nie natlačené */
.theme-ariane .contact-form .control-group,
.theme-ariane .com-contact__form .control-group {
    margin-bottom: 0.9rem;
}

.theme-ariane .contact-form input[type="text"],
.theme-ariane .contact-form input[type="email"],
.theme-ariane .contact-form select,
.theme-ariane .contact-form textarea,
.theme-ariane .com-contact__form input[type="text"],
.theme-ariane .com-contact__form input[type="email"],
.theme-ariane .com-contact__form select,
.theme-ariane .com-contact__form textarea {
    width: 100%;
    padding: 0.55rem 0.7rem;
    border: 1px solid var(--color-border);
    border-radius: 4px;
    background: var(--color-surface);
    color: var(--color-text);
}

.theme-ariane .contact-form textarea,
.theme-ariane .com-contact__form textarea {
    min-height: 8rem;
}

/* === FILTER: obmedzená výška + rolovanie (17.8.) === */
/* Zoznam výrobcov vo filtri narástol na 1187 px (38 položiek) a tlačil obsah
   dolu. Prevzaté z novšieho tpleshopu: panel má strop a roluje sa vo vnútri,
   `overscroll-behavior: contain` zabráni tomu, aby sa po dorolovaní pohla
   celá stránka. */
.theme-ariane .es-filter .panel-body,
.theme-ariane .es-filter .accordion-body,
.theme-ariane #phFilterBox .panel-body {
    max-height: var(--es-filter-max-height, 17rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
    scrollbar-width: thin;
}

/* jemný náznak, že zoznam pokračuje */
.theme-ariane .es-filter .panel-body::-webkit-scrollbar,
.theme-ariane #phFilterBox .panel-body::-webkit-scrollbar {
    width: 8px;
}

.theme-ariane .es-filter .panel-body::-webkit-scrollbar-thumb,
.theme-ariane #phFilterBox .panel-body::-webkit-scrollbar-thumb {
    background: var(--color-border);
    border-radius: 4px;
}

/* === SERVISNÝ FORMULÁR: úprava vzhľadu (17.8.) === */
/* Joomla vypisuje kontaktný formulár ako holé polia pod sebou v dvoch
   fieldsetoch. Skladáme to do dvoch stĺpcov s čitateľnými skupinami. */
.theme-ariane .com-contact__form,
.theme-ariane .contact-form {
    max-width: 60rem;
    margin-inline: auto;
}

.theme-ariane .contact-form fieldset {
    margin: 0 0 1.5rem;
    padding: 1.25rem 1.35rem;
    border: 1px solid var(--color-border);
    border-radius: 6px;
    background: var(--color-surface);
}

.theme-ariane .contact-form legend {
    width: auto;
    padding: 0 0.5rem;
    margin-left: -0.5rem;
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--color-primary);
}

/* prázdna legenda (vypnutá cez jazykový prepis) nech nerobí medzeru */
.theme-ariane .contact-form legend:empty {
    display: none;
}

/* dva stĺpce na desktope; správa a súhlas cez celú šírku */
@media (min-width: 768px) {
    /* flex namiesto inline-block — medzery v HTML inak stĺpce pretlačia do ďalšieho riadku */
    .theme-ariane .contact-form fieldset {
        display: flex !important;
        flex-wrap: wrap;
        column-gap: 1rem;
        align-items: flex-start;
    }
    .theme-ariane .contact-form fieldset > legend {
        flex: 0 0 100%;
    }
    .theme-ariane .contact-form fieldset > .control-group {
        flex: 0 0 calc(50% - 0.5rem) !important;
        width: auto !important;
        margin-right: 0;
    }
    .theme-ariane .contact-form fieldset > .control-group:has(textarea),
    .theme-ariane .contact-form fieldset > .control-group:has(input[type="checkbox"]),
    .theme-ariane .contact-form fieldset > .control-group.field-spacer {
        flex: 0 0 100% !important;
    }
}

.theme-ariane .contact-form .control-group {
    margin-bottom: 0.95rem;
}

.theme-ariane .contact-form .control-label label {
    display: inline-block;
    margin-bottom: 0.3rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-text);
}

.theme-ariane .contact-form .star {
    color: var(--color-primary);
}

.theme-ariane .contact-form input[type="text"],
.theme-ariane .contact-form input[type="email"],
.theme-ariane .contact-form select,
.theme-ariane .contact-form textarea {
    width: 100% !important;
    max-width: none !important;
    padding: 0.6rem 0.75rem;
    border: 1px solid var(--color-border);
    border-radius: 4px;
    background: var(--color-surface);
    color: var(--color-text);
    font: inherit;
}

.theme-ariane .contact-form input:focus,
.theme-ariane .contact-form select:focus,
.theme-ariane .contact-form textarea:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 1px;
}

.theme-ariane .contact-form .btn-primary {
    min-height: 46px;
    padding: 0.65rem 1.6rem;
    background: var(--color-primary);
    border: 0;
    border-radius: 4px;
    color: #fff;
    font-weight: 600;
}

.theme-ariane .contact-form .btn-primary:hover {
    filter: brightness(1.08);
}

/* povinné pole – poznámka nad formulárom */
.theme-ariane .contact-form .field-spacer {
    font-size: 0.85rem;
    color: var(--color-text-muted);
}

/* kontakt: karta s formulárom cez celú šírku mriežky */
.theme-ariane .cf-kontakt__karta--formular { grid-column: 1 / -1; }
.theme-ariane .cf-kontakt__karta--formular .contact-form { max-width: none; }
.theme-ariane .cf-kontakt__karta--formular .contact-form fieldset { background: var(--color-surface); }
.theme-ariane .cf-kontakt__karta--formular .contact-form .btn-primary { background: var(--color-primary); color: #fff; }
.theme-ariane .cf-kontakt__karta--formular .contact-form .btn-primary:hover { background: var(--color-primary-hover); }

/* ==========================================================================
   VÝPIS KATEGÓRIE — karta len s „Do košíka" (Robert 13.9.): tlačidlo „Zobraziť produkt"
   vypína Phoca (display_view_product_button=0), počet kusov skryjeme (formulár pošle 1)
   ========================================================================== */
.theme-ariane .ph-category-action-box-buttons .ph-form-quantity,
.theme-ariane .ph-items-action-box-buttons .ph-form-quantity { display: none !important; }

.theme-ariane .ph-category-action-box-buttons .ph-form-button,
.theme-ariane .ph-category-action-box-buttons .ph-form-button .ph-btn { width: 100%; }

/* ==========================================================================
   ÚVODKA — dlaždice kategórií vyplnia šírku kontajnera na PC (Robert 13.9.: „väčšie, nech vyplnia šírku")
   ========================================================================== */
@media (min-width: 992px) {
    .theme-ariane:not(.view-category) .ph-category-module-box.es-cat-grid {
        --es-cat-card-min: 150px;
        --es-cat-track-max: 1fr;      /* auto-fit + 1fr = 7 dlaždíc sa natiahne cez celú šírku */
        --es-cat-card-gap: var(--space-lg, 1.5rem);
    }

    .theme-ariane:not(.view-category) .ph-category-module-box.es-cat-grid .es-cat-grid__title { font-size: 1rem; text-align: center; }
}

/* ==========================================================================
   MOBIL (< 768 px): „Čo u nás nájdete" a recenzie na úvodke ako posuvný pás (Robert 14.9.),
   rovnaké správanie ako produktové kartičky; súhrn hodnotenia ostáva stabilný nad pásom.
   Len na úvodke (.is-home) – na stránke Recenzie a O nás idú karty pod seba (Robert 16. 9.)
   ========================================================================== */
@media (max-width: 767.98px) {
    .theme-ariane .wp-showcase--features .wp-showcase__grid,
    .theme-ariane.is-home .es-reviews-wall .es-reviews-grid {
        display: flex !important;
        gap: 0.75rem;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-padding-inline-start: 0.125rem;
        padding: 0.25rem 0.125rem 0.75rem;
        scrollbar-width: none;
        -ms-overflow-style: none;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        /* závoj vpravo = „pokračuje to" */
        -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
        mask-image: linear-gradient(to right, #000 calc(100% - 2.5rem), transparent);
    }

    .theme-ariane .wp-showcase--features .wp-showcase__grid::-webkit-scrollbar,
    .theme-ariane.is-home .es-reviews-wall .es-reviews-grid::-webkit-scrollbar { display: none; }

    .theme-ariane .wp-showcase--features .wp-showcase__feature {
        flex: 0 0 min(72vw, 260px);
        scroll-snap-align: start;
    }

    .theme-ariane.is-home .es-reviews-wall .es-review-card {
        flex: 0 0 min(82vw, 320px);
        scroll-snap-align: start;
    }
}

/* ==========================================================================
   Drobnosti 14.9. (Robert): zvonček push „zacengá" ako na boate; biele písmo na tmavých
   tlačidlách v článku (článok farbí odkazy na primary); formulár na mobile bez plytvania šírkou
   ========================================================================== */
@keyframes bd-zvonec {
    0%, 60%, 100% { transform: rotate(0); }
    64% { transform: rotate(14deg); }
    68% { transform: rotate(-12deg); }
    72% { transform: rotate(9deg); }
    76% { transform: rotate(-6deg); }
    80% { transform: rotate(3deg); }
    84% { transform: rotate(0); }
}

@keyframes bd-zvonec-pulz {
    0%, 60%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--color-primary) 35%, transparent); }
    64% { box-shadow: 0 0 0 10px color-mix(in srgb, var(--color-primary) 0%, transparent); }
}

.theme-ariane .wppush-temy__ikona { animation: bd-zvonec-pulz 5s ease-out infinite; }
.theme-ariane .wppush-temy__ikona svg { transform-origin: 50% 12%; animation: bd-zvonec 5s ease-in-out infinite; }
.theme-ariane .wppush-temy--aktivne .wppush-temy__ikona,
.theme-ariane .wppush-temy--aktivne .wppush-temy__ikona svg { animation: none; }

@media (prefers-reduced-motion: reduce) {
    .theme-ariane .wppush-temy__ikona, .theme-ariane .wppush-temy__ikona svg { animation: none; }
}

/* tlačidlá v článku: odkazy v tele článku majú farbu primary → na tmavom tlačidle nevidno text */
.theme-ariane .wp-article__body a.es-btn--primary,
.theme-ariane .com-content-article__body a.es-btn--primary,
.theme-ariane .cf-kontakt__akcie a.es-btn--primary,
.theme-ariane .cf-predajna__akcie a.es-btn--primary,
.theme-ariane .bd-mapa .bd-mapa__spust { color: #fff !important; }

.theme-ariane .wp-article__body a.es-btn--outline,
.theme-ariane .cf-predajna__akcie a.es-btn--outline { color: var(--color-primary); }

/* formulár na mobile: karta aj fieldset s minimálnym odsadením, polia na celú šírku */
@media (max-width: 767.98px) {
    .theme-ariane .cf-kontakt__karta--formular { padding: 1rem .85rem 1.1rem; }
    .theme-ariane .contact-form { padding: 0; margin: 0; }
    .theme-ariane .contact-form fieldset { width: 100%; box-sizing: border-box; margin: 0 0 1rem; padding: .85rem .75rem; }
    .theme-ariane .contact-form legend { margin-left: 0; }
    .theme-ariane .contact-form .control-group { margin-bottom: .75rem; }
    .theme-ariane .contact-form .control-group, .theme-ariane .contact-form .controls { width: 100% !important; margin: 0 0 .75rem; }
    .theme-ariane .contact-form textarea { min-height: 9rem; }
}

/* ---- Plávajúce prvky v rohu (Robert 14.9.: „šípka hore sa bije s pomocníkom") — port z boatdiesel:
   zdola poradca, nad ním šípka; pri otvorenom chate šípka a filter zmiznú; cookie ikonka pod chat ---- */
.theme-ariane .es-back-to-top { bottom: 4.75rem !important; z-index: 1150; }
body.wpp-otvorene .es-back-to-top { opacity: 0; pointer-events: none; }

@media (max-width: 767.98px) {
    .theme-ariane .bd-filter-fab { bottom: 1rem; }
    body.wpp-otvorene .bd-filter-fab { opacity: 0; pointer-events: none; }
}

.cc-trigger, .cc-trigger-icon { z-index: 1100 !important; }
body.wpp-otvorene .cc-trigger, body.wpp-otvorene .cc-trigger-icon { opacity: 0; pointer-events: none; }

/* fieldset kontaktného formulára: vnútorné odsadenie aj na mobile (šablóna ho nuluje) */
.theme-ariane .contact-form fieldset { padding-inline: .75rem !important; }
@media (min-width: 768px) { .theme-ariane .contact-form fieldset { padding-inline: 1.35rem !important; } }

/* ---- detail: riadok „Doručenie" pod stavom skladu — ikona vedľa textu (chýbalo z portu web6; Robert 14.9.) ---- */
.theme-ariane .bd-dorucenie {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: .35rem 0 .5rem;
    font-size: .92rem;
    color: var(--color-text-muted);
}

.theme-ariane .bd-dorucenie svg { flex: 0 0 auto; color: var(--color-accent); }
.theme-ariane .bd-dorucenie strong { color: var(--color-text); font-weight: 600; }

/* ==========================================================================
   ÚVODKA PRE DVA SVETY (Robert 14.9.): káva → predajňa|novinky → gastro
   ========================================================================== */
/* značky káv: menšie dlaždice (logo/balenie), do riadku sa ich zmestí viac */
@media (min-width: 992px) {
    .theme-ariane:not(.view-category) .ph-category-module-box.es-cat-grid.cf-znacky {
        --es-cat-card-min: 96px;      /* 12 značiek v jednom rade na 1376 px */
        --es-cat-track-max: 1fr;
        --es-cat-card-gap: var(--space-md, 1rem);
    }
    .theme-ariane .cf-znacky .es-cat-grid__title { font-size: .85rem; }
}

@media (max-width: 767px) {
    .theme-ariane .cf-znacky .es-cat-grid__item { flex: 0 0 96px !important; width: 96px !important; }
}

/* gastro podkategórie: 16 dlaždíc → na PC dva rady, nech sa nenaťahujú do plagátov */
@media (min-width: 992px) {
    .theme-ariane:not(.view-category) .ph-category-module-box.es-cat-grid.cf-gastro-kat {
        --es-cat-card-min: 150px;     /* 16 podkategórií = 2 rady po 8 */
        --es-cat-track-max: 1fr;
        --es-cat-card-gap: var(--space-md, 1rem);
    }
    .theme-ariane .cf-gastro-kat .es-cat-grid__title { font-size: .9rem; }
}

/* pás „Poradíme s výberom" */
.theme-ariane .cf-radca-pas {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 1.5rem;
    padding: 1.1rem 1.5rem;
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-accent);
    border-radius: var(--radius-xl);
    background: var(--color-surface);
}

.theme-ariane .cf-radca-pas__text { flex: 1 1 24rem; line-height: 1.5; }
.theme-ariane .cf-radca-pas__text strong { color: var(--color-heading); }
.theme-ariane .cf-radca-pas__akcie { display: flex; flex-wrap: wrap; gap: .6rem; }
.theme-ariane .cf-radca-pas__akcie .es-btn { text-decoration: none; white-space: nowrap; }

@media (max-width: 575.98px) {
    .theme-ariane .cf-radca-pas { padding: 1rem 1.1rem; }
    .theme-ariane .cf-radca-pas__akcie, .theme-ariane .cf-radca-pas__akcie .es-btn { width: 100%; }
    .theme-ariane .cf-radca-pas__akcie .es-btn { justify-content: center; }
}

/* CHYBA šablóny na mobile: dráha dlaždíc má justify-content:center + overflow → prvé dlaždice sú v zápornom x
   a nedajú sa doscrollovať (Káva, Kávovary boli neviditeľné). Zarovnať na začiatok. (14.9.) */
@media (max-width: 767.98px) {
    .theme-ariane .es-cat-grid__track > ul { justify-content: flex-start !important; }
}

/* dlaždice kategórií (úvodka, značky, gastro): fotky sú produktové bez okraja → vzduch okolo, nech
   nevyzerajú osekané (Robert 14.9.); v kategórii (kompaktné boxy 56 px) nechať */
.theme-ariane:not(.view-category) .es-cat-grid__image img { box-sizing: border-box; padding: 9%; }

/* ==========================================================================
   „Prečo nakupovať u nás": ikony sú krémové čiarové (z WP) → kruh musí byť tmavý (espresso) v oboch
   režimoch; väčší kruh, ikona so vzduchom (Robert 14.9.: „kruh je natesno, farby doriešiť")
   ========================================================================== */
.theme-ariane .wp-showcase__feature > .wp-showcase__icon {
    width: 5rem;
    height: 5rem;
    margin-bottom: 1rem;
    background: #111111;
    border: 3px solid #ffcc00;
    box-shadow: 0 6px 16px rgba(74, 24, 0, .18);
}

.theme-ariane .wp-showcase__feature > .wp-showcase__icon img {
    width: 2.5rem;
    height: 2.5rem;
}

.theme-ariane .wp-showcase__feature:hover > .wp-showcase__icon {
    background: #6e2e0e;
    transform: scale(1.06);
}

[data-theme="dark"] .theme-ariane .wp-showcase__feature > .wp-showcase__icon { border-color: #f5f5f5; box-shadow: 0 6px 16px rgba(0, 0, 0, .4); }

/* ==========================================================================
   TMAVÝ REŽIM: primary je latte (#f5f5f5) → biele písmo na ňom nevidno. Na svetlej výplni tmavé písmo
   (Robert 14.9.: „ak zachováme svetlú, tak dať tmavé písmo").
   ========================================================================== */
[data-theme="dark"] .theme-ariane { --color-on-primary: #222222; }

[data-theme="dark"] .theme-ariane .es-btn--primary,
[data-theme="dark"] .theme-ariane .es-btn--primary:hover,
[data-theme="dark"] .theme-ariane .btn-primary.ph-btn:not(.es-product-card .ph-btn),   /* detail/košík: latte výplň; karty vo výpise sú ghost (priehľadné) → nechať svetlé */
[data-theme="dark"] .theme-ariane .phCartButton,
[data-theme="dark"] .theme-ariane .wppush-plav__tlacidlo,
[data-theme="dark"] .theme-ariane .wppush-ulozit,
[data-theme="dark"] .theme-ariane .wppush-btn--aktivne,
[data-theme="dark"] .theme-ariane .wpp-bublina,
[data-theme="dark"] .theme-ariane .wpp-poslat,
[data-theme="dark"] .theme-ariane .wpp-hlava,
[data-theme="dark"] .theme-ariane .bd-filter-fab,
[data-theme="dark"] .theme-ariane .bd-mapa__spust,
[data-theme="dark"] .theme-ariane .bd-hostuje__btn,
[data-theme="dark"] .theme-ariane .wp-btn--primary,
[data-theme="dark"] .theme-ariane .es-footer__cookie-btn ~ .x { color: #222222 !important; }

[data-theme="dark"] .theme-ariane .es-btn--primary svg,
[data-theme="dark"] .theme-ariane .phCartButton svg,
[data-theme="dark"] .theme-ariane .wppush-plav__tlacidlo svg,
[data-theme="dark"] .theme-ariane .wpp-bublina svg { color: #222222; }

/* biele písmo na tmavom ostáva tam, kde je pozadie naozaj tmavé (hero, pätička) — tie primary nepoužívajú */
[data-theme="dark"] .theme-ariane .es-product-card .ph-btn { color: var(--color-text) !important; }
@media (max-width: 340px) { .theme-ariane .es-header__logo img { --es-logo-height-mobile: 1.5em; } .theme-ariane .es-header__actions { gap: 0; } }

/* ---- detail: ikony zdieľania v rovnakom štýle ako Strážiť cenu / želania (Robert 14.9.: „share má inú farbu") ---- */
.theme-ariane.view-item .pcshare .pcshare__btn {
    width: 36px; height: 36px;
    border: 1px solid var(--color-border);
    border-radius: 50%;
    background: var(--color-surface);
    color: var(--color-heading);
    transition: border-color .15s ease, color .15s ease, background .15s ease;
}

.theme-ariane.view-item .pcshare .pcshare__btn:hover,
.theme-ariane.view-item .pcshare .pcshare__btn:focus-visible {
    border-color: var(--color-primary);
    background: var(--color-primary);
    color: var(--color-on-primary, #fff);
}

/* ---- mobil: dráhy dlaždíc kategórií (úvodka: hlavné, značky, gastro) so závojom vpravo = „dá sa posúvať" (Robert 14.9.) ---- */
@media (max-width: 767.98px) {
    .theme-ariane.is-home .ph-category-module-box .es-cat-grid__track > ul {
        padding-right: 2.5rem;
        scroll-padding-inline-start: 16px;   /* snap „start" inak odscrolluje ľavý padding a prvá dlaždica sedí na okraji */
        -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 3rem), transparent);
        mask-image: linear-gradient(to right, #000 calc(100% - 3rem), transparent);
    }
}

/* tmavý režim – tlačidlá v článkoch a kartách (mali !important biele písmo zo svetlého režimu) → tmavé písmo na latte;
   outline tlačidlo v tme = latte výplň → tiež tmavé písmo; odkaz „Všetky články" latte (Robert 14.9.) */
[data-theme="dark"] .theme-ariane .cf-predajna__akcie a.es-btn,
[data-theme="dark"] .theme-ariane .cf-kontakt__akcie a.es-btn,
[data-theme="dark"] .theme-ariane .cf-radca-pas__akcie .es-btn,
[data-theme="dark"] .theme-ariane .wp-article__body a.es-btn,
[data-theme="dark"] .theme-ariane .com-content-article__body a.es-btn,
[data-theme="dark"] .theme-ariane .es-btn--outline,
[data-theme="dark"] .theme-ariane .contact-form .btn-primary,
[data-theme="dark"] .theme-ariane .bd-mapa .bd-mapa__spust { color: #222222 !important; }

[data-theme="dark"] .theme-ariane .cf-novinky__vsetky { color: var(--color-primary) !important; }

/* ==========================================================================
   O NÁS — prvky dôvery (Robert 14.9.: „vylepšiť O nás, dať tam prvky dôvery")
   Obsah generuje stranky/ariane_o_nas.php (čísla živé z DB, recenzie {loadmoduleid}).
   ========================================================================== */
.theme-ariane .wp-article:has(.cf-onas),
.theme-ariane .com-content-article:has(.cf-onas) { max-width: 72rem; }
.theme-ariane .cf-onas h2 { margin-top: 3rem; }
.theme-ariane .cf-onas__pod { color: var(--color-text-muted); margin-top: -.5rem; }

/* úvod + fotka */
.theme-ariane .cf-onas__uvod { display: flex; gap: 2rem; align-items: center; }
.theme-ariane .cf-onas__uvod-text { flex: 1 1 24rem; }
.theme-ariane .cf-onas__perex { font-size: 1.15rem; line-height: 1.6; }
.theme-ariane .cf-onas__foto { flex: 0 0 auto; margin: 0; width: min(18rem, 40%); }
.theme-ariane .cf-onas__foto img { width: 100%; height: auto; border-radius: var(--radius-xl); box-shadow: var(--shadow-md, 0 8px 24px rgba(0,0,0,.12)); }

/* čísla */
.theme-ariane .cf-onas__cisla {
    list-style: none; margin: 2.5rem 0 0; padding: 0;
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem;
}
.theme-ariane .cf-onas__cisla li {
    margin: 0; padding: 1.25rem 1rem; text-align: center;
    background: var(--color-surface-alt); border-radius: var(--radius-xl);
    border-top: 0;   /* Robert: farebné rámy pri prednostiach sa nehodia */
}
.theme-ariane .cf-onas__cisla strong { display: block; font-size: 2.2rem; line-height: 1.1; color: var(--color-primary); font-weight: 800; }
.theme-ariane .cf-onas__cisla span { display: block; margin-top: .35rem; font-size: .9rem; color: var(--color-text-muted); }

/* čomu sa venujeme */
.theme-ariane .cf-onas__karty { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1rem; }
.theme-ariane .cf-onas__karty article {
    padding: 1.25rem; border: 1px solid var(--color-border); border-radius: var(--radius-xl); background: var(--color-surface);
}
.theme-ariane .cf-onas__karty h3 { font-size: 1.05rem; margin: .75rem 0 .4rem; }
.theme-ariane .cf-onas__karty p { margin: 0; font-size: .92rem; line-height: 1.5; color: var(--color-text-muted); }
.theme-ariane .cf-onas__ik {
    display: inline-flex; width: 3rem; height: 3rem; align-items: center; justify-content: center;
    border-radius: 50%; background: var(--color-primary); color: #fff;
}
.theme-ariane .cf-onas__ik svg { width: 1.5rem; height: 1.5rem; }

/* dôverujú nám */
.theme-ariane .cf-onas__partneri { display: flex; flex-wrap: wrap; gap: 1.5rem 3rem; align-items: center; justify-content: center; margin: 1.5rem 0; }
.theme-ariane .cf-onas__partner { margin: 0; }
.theme-ariane .cf-onas__partner img { height: 5.5rem; width: auto; filter: grayscale(1); opacity: .75; transition: filter .2s, opacity .2s; }
.theme-ariane .cf-onas__partner:hover img { filter: none; opacity: 1; }
.theme-ariane .cf-onas__prevadzky { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.theme-ariane .cf-onas__prevadzky li {
    margin: 0; padding: .35rem .8rem; font-size: .85rem; border-radius: 999px;
    background: var(--color-surface-alt); border: 1px solid var(--color-border); color: var(--color-text);
}

/* značky: dlaždice ako na úvodke, bez posuvnej dráhy */
.theme-ariane .cf-onas__znacky .es-cat-grid__track { overflow: visible; mask-image: none; -webkit-mask-image: none; }
.theme-ariane .cf-onas__znacky .es-cat-grid__track > ul { flex-wrap: wrap; justify-content: center; }
.theme-ariane .cf-onas__znacky + .cf-onas__pod { margin-top: 1rem; }
.theme-ariane .cf-onas__znacky a, .theme-ariane .cf-onas__znacky .es-cat-grid__title { text-decoration: none; }

/* prečo Ariane */
.theme-ariane .cf-onas__preco { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem 2rem; }
.theme-ariane .cf-onas__preco li { display: flex; gap: .75rem; align-items: flex-start; margin: 0; line-height: 1.5; }
.theme-ariane .cf-onas__preco svg { flex: 0 0 auto; width: 1.5rem; height: 1.5rem; padding: .2rem; border-radius: 50%; background: var(--color-accent); color: #fff; margin-top: .1rem; }

/* citát + CTA */
.theme-ariane .cf-onas__citat {
    margin: 3rem auto 2rem; padding: 1.5rem 2rem; max-width: 46rem; text-align: center;
    font-size: 1.2rem; font-style: italic; line-height: 1.6; color: var(--color-heading);
    border: 0; border-top: 2px solid var(--color-accent); border-bottom: 2px solid var(--color-accent); background: none;
}
.theme-ariane .cf-onas__cta { margin-top: 1rem; }
.theme-ariane .cf-onas .es-reviews-wall__title, .theme-ariane .cf-onas .es-reviews-wall h2 { display: none; }

@media (max-width: 991.98px) {
    .theme-ariane .cf-onas__cisla { grid-template-columns: repeat(2, 1fr); }
    .theme-ariane .cf-onas__preco { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
    .theme-ariane .cf-onas__uvod { flex-direction: column-reverse; align-items: stretch; }
    .theme-ariane .cf-onas__foto { width: 100%; max-width: 20rem; margin-inline: auto; }
    .theme-ariane .cf-onas__cisla strong { font-size: 1.7rem; }
    .theme-ariane .cf-onas__partner img { height: 4rem; }
    .theme-ariane .cf-onas h2 { margin-top: 2.25rem; }
}
/* tmavá: logá partnerov sú tmavé na priehľadnom → svetlá podložka */
[data-theme="dark"] .theme-ariane .cf-onas__partner img {
    background: #f3ece4; padding: .5rem .8rem; border-radius: var(--radius-lg); filter: none; opacity: .92;
}

/* Kontakt: virtuálna prehliadka predajne (Street View zo starého webu) – rovnaký box ako mapa, cez celú šírku, náhľad = hero fotka */
.theme-ariane .cf-kontakt__prehliadka {
    grid-column: 1 / -1;
    min-height: 300px;
    background-image: url("/images/ariane/hero-ariane.webp");
}
.theme-ariane .cf-kontakt__prehliadka.bd-mapa--nacitana { min-height: 450px; }
.theme-ariane .bd-mapa__titul { font-size: 1.2rem; color: var(--color-heading); }

/* ==========================================================================
   LOGÁ ZNAČIEK (14.9.) – pás výrobcov gastro na úvodke (mod_custom „Značky gastro zariadení“, ariane_uvodka3.php)
   Logá sú 2:1 s okrajom (tema/img/znacky), rovnaká výška, šedé → farebné pri prejdení; v tme svetlá podložka.
   ========================================================================== */
.theme-ariane .cf-loga {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center;
}
.theme-ariane .cf-loga li { margin: 0; flex: 0 0 auto; }
.theme-ariane .cf-loga a {
    display: flex; align-items: center; justify-content: center;
    width: 9.5rem; height: 5rem; padding: .6rem .9rem; box-sizing: border-box;
    border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: #fff;
    transition: transform .15s, box-shadow .15s;
}
.theme-ariane .cf-loga img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; filter: grayscale(1); opacity: .8; transition: filter .2s, opacity .2s; }
.theme-ariane .cf-loga a:hover { transform: translateY(-2px); box-shadow: var(--shadow-md, 0 6px 18px rgba(0,0,0,.1)); }
.theme-ariane .cf-loga a:hover img { filter: none; opacity: 1; }
[data-theme="dark"] .theme-ariane .cf-loga a { background: #fff; border-color: transparent; }   /* biela, nie latte – logá z JPG majú biely podklad, na latte by svietil obdĺžnik */
@media (max-width: 767.98px) {
    .theme-ariane .cf-loga { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: .5rem; margin-inline: -16px; padding-inline: 16px; scroll-padding-inline-start: 16px; -webkit-mask-image: linear-gradient(to right, #000 88%, transparent); mask-image: linear-gradient(to right, #000 88%, transparent); }
    .theme-ariane .cf-loga li { scroll-snap-align: start; }
    .theme-ariane .cf-loga a { width: 7.5rem; height: 4rem; }
    .theme-ariane .cf-loga img { filter: none; opacity: 1; }
}
/* info stránka po objednávke/platbe (view=info) – bočný filter tam nemá čo robiť (modul je na Itemid e-shopu) */
.theme-ariane.view-info .es-sidebar--left, .theme-ariane.view-info .bd-filter-fab { display: none !important; }
.theme-ariane.view-info .es-content--has-sidebar-left { display: block; }   /* mriežka so stĺpcom pre panel → obsah na celú šírku */
.theme-ariane.view-info .es-content__main { max-width: 60rem; }


/* =========================================
   ARIANE — úpravy nad kostrou cofexu
   ========================================= */
/* žltá je svetlá → všetko so žltým pozadím má tmavé písmo (odznaky ZĽAVA, akcentné tlačidlá, ikonky) */
.theme-ariane .es-btn--accent, .theme-ariane .es-btn--accent:hover,
.theme-ariane .ph-label-discount, .theme-ariane .ph-label-sale,
.theme-ariane .cf-onas__preco svg { color: #111111; }
/* čierna Ariane: topbar a päta */
.theme-ariane .es-topbar, .theme-ariane .es-bottom, .theme-ariane .es-footer { background: var(--ar-dark); color: #e6e8ef; }
.theme-ariane .es-topbar a, .theme-ariane .es-footer a, .theme-ariane .es-bottom a { color: #ffffff; }
.theme-ariane .es-topbar a:hover, .theme-ariane .es-footer a:hover, .theme-ariane .es-bottom a:hover { color: var(--ar-accent); }
[data-theme="dark"] .theme-ariane .es-topbar, [data-theme="dark"] .theme-ariane .es-bottom, [data-theme="dark"] .theme-ariane .es-footer { background: #15171b; }
/* čierne tlačidlo (WP „Chcem viac info") */
.theme-ariane .es-btn--dark { background: var(--ar-dark); color: #fff; border-color: var(--ar-dark); border-radius: var(--radius-md); font-weight: 600; }
.theme-ariane .es-btn--dark:hover { background: #333; border-color: #333; color: var(--ar-accent); }


/* ---- karty produktov: bežne nevýrazný klasický rám; prechod z rohu do rohu (odtiene akcentu) LEN pri hoveri (Robert) ---- */
.theme-ariane .es-product-card, .theme-ariane .bd-swipe__item.es-product-card {
    border: 1px solid var(--color-border) !important;
    background: var(--color-surface) !important;
    transition: box-shadow .2s, border-color .2s;
}
.theme-ariane .es-product-card:hover {
    border-color: transparent !important;
    background: linear-gradient(var(--color-surface), var(--color-surface)) padding-box,
                linear-gradient(135deg, var(--ar-akcent-tmava) 0%, var(--ar-akcent) 100%) border-box !important;   /* pravidlo (Robert): začať prepálenou tmavšou, skončiť čistou akcentovou – nie do stratena */
}
/* dark: tlačidlá sú biele → tmavé písmo */
[data-theme="dark"] .theme-ariane .es-btn--primary, [data-theme="dark"] .theme-ariane .btn-primary.ph-btn { color: #111 !important; }
[data-theme="dark"] .theme-ariane .es-btn--primary:hover, [data-theme="dark"] .theme-ariane .btn-primary.ph-btn:hover { color: #111 !important; background: var(--ar-akcent) !important; border-color: var(--ar-akcent) !important; }
/* hover tlačidiel v svetlom: čierna → akcent s tmavým písmom (dôležitá akcia svieti) */
.theme-ariane .btn-primary.ph-btn:hover, .theme-ariane .es-btn--primary:hover { background: var(--ar-akcent) !important; border-color: var(--ar-akcent) !important; color: #111 !important; }
/* čísla na úvodke a hviezdy recenzií = akcent (dôležité veci farbou) */
.theme-ariane .wp-showcase__stat-number { color: var(--color-heading); }
.theme-ariane .wp-showcase__stat { border-top: 0; }

/* náhľady kategórií a produktov sa neorezávajú (Robert): celý obrázok na bielom podklade */
.theme-ariane .es-cat-grid__image img, .theme-ariane .ph-category-box-image img,
.theme-ariane .es-product-card__image img, .theme-ariane .es-product-card .phIBox img { object-fit: contain !important; }
.theme-ariane .es-cat-grid__image { aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.theme-ariane .es-cat-grid__image img { width: 100%; height: 100%; }
/* O nás: 6 boxov po 3 v rade (Robert) */
@media (min-width: 768px) { .theme-ariane .cf-onas__karty { grid-template-columns: repeat(3, 1fr) !important; } }

/* ---- výber variantu v detaile ako chipy (ar-varianty.js); natívny select skrytý ---- */
.theme-ariane .ph-item-attributes-box .ph-available-options-title { font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--color-text-muted); margin: 1.25rem 0 .5rem; }
.theme-ariane .ph-item-attributes-box .ph-attribute-title { font-weight: 600; margin: .75rem 0 .4rem; }
.theme-ariane .ph-item-attributes-box .ph-attribute-title .ph-req { color: var(--color-danger); }
.theme-ariane select.ar-chips__select { position: absolute !important; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.theme-ariane .ar-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: .75rem; }
.theme-ariane .ar-chip { display: inline-flex; flex-direction: column; align-items: center; min-width: 3.25rem; padding: .5rem .9rem; border: 1.5px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); color: var(--color-text); font: inherit; font-weight: 600; line-height: 1.2; cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.theme-ariane .ar-chip:hover { border-color: var(--ar-akcent); }
.theme-ariane .ar-chip.is-active { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }
[data-theme="dark"] .theme-ariane .ar-chip.is-active { color: #111; }
.theme-ariane .ar-chip__cena { font-size: .72rem; font-weight: 400; opacity: .8; margin-top: .15rem; }
/* select, ktorý ostane natívny (iné formuláre) – aspoň rozmer a rám */
.theme-ariane .ph-item-attributes-box .form-select:not(.ar-chips__select) { min-height: 2.75rem; border: 1.5px solid var(--color-border); border-radius: var(--radius-md); padding: .5rem .75rem; font: inherit; }

/* ---- odkazy v obsahu: čierne, podčiarknutie pri hoveri (Robert: „odkazy nevidno, kľudne čierne") ---- */
.theme-ariane .wp-showcase__feature-link, .theme-ariane .cf-onas a:not(.es-btn), .theme-ariane .cf-kontakt a:not(.es-btn):not(.bd-mapa__spust),
.theme-ariane .wp-article__body a:not(.es-btn), .theme-ariane .item-page a:not(.es-btn), .theme-ariane .wp-showcase__feature-desc a,
.theme-ariane .es-reviews-wall__all, .theme-ariane .wp-articles__readmore, .theme-ariane .cf-novinky__vsetky {
    color: #2a2a2a; text-decoration: underline; text-decoration-color: rgba(0,0,0,.25); text-underline-offset: .18em; text-decoration-thickness: 1px; transition: text-decoration-color .15s, color .15s;
}
.theme-ariane .wp-showcase__feature-link:hover, .theme-ariane .cf-onas a:not(.es-btn):hover, .theme-ariane .cf-kontakt a:not(.es-btn):not(.bd-mapa__spust):hover,
.theme-ariane .wp-article__body a:not(.es-btn):hover, .theme-ariane .item-page a:not(.es-btn):hover, .theme-ariane .wp-showcase__feature-desc a:hover,
.theme-ariane .es-reviews-wall__all:hover, .theme-ariane .wp-articles__readmore:hover, .theme-ariane .cf-novinky__vsetky:hover {
    color: #000; text-decoration-color: var(--ar-signal); text-decoration-thickness: 2px;
}
[data-theme="dark"] .theme-ariane .wp-showcase__feature-link, [data-theme="dark"] .theme-ariane .cf-onas a:not(.es-btn), [data-theme="dark"] .theme-ariane .cf-kontakt a:not(.es-btn):not(.bd-mapa__spust), [data-theme="dark"] .theme-ariane .wp-article__body a:not(.es-btn), [data-theme="dark"] .theme-ariane .item-page a:not(.es-btn), [data-theme="dark"] .theme-ariane .wp-showcase__feature-desc a, [data-theme="dark"] .theme-ariane .es-reviews-wall__all, [data-theme="dark"] .theme-ariane .wp-articles__readmore, [data-theme="dark"] .theme-ariane .cf-novinky__vsetky { color: #f0f0f0; text-decoration-color: rgba(255,255,255,.35); }
[data-theme="dark"] .theme-ariane .wp-showcase__feature-link:hover, [data-theme="dark"] .theme-ariane .cf-onas a:not(.es-btn):hover, [data-theme="dark"] .theme-ariane .cf-kontakt a:not(.es-btn):not(.bd-mapa__spust):hover, [data-theme="dark"] .theme-ariane .wp-article__body a:not(.es-btn):hover, [data-theme="dark"] .theme-ariane .item-page a:not(.es-btn):hover, [data-theme="dark"] .theme-ariane .es-reviews-wall__all:hover, [data-theme="dark"] .theme-ariane .wp-articles__readmore:hover, [data-theme="dark"] .theme-ariane .cf-novinky__vsetky:hover { color: #fff; text-decoration-color: var(--ar-akcent); }   /* 16. 9.: „Čítať ďalej" a ďalšie odkazy boli v tme čierne */
/* ---- push modul: červená boatdiesel (--accent-red) → žltá; vo svetlej žltý rám boxu; zvonček žltý ---- */
.theme-ariane { --accent-red: var(--ar-akcent); }
.theme-ariane .wppush-temy { border: 2px solid var(--ar-akcent) !important; border-left-width: 2px !important; border-radius: var(--radius-xl); }
.theme-ariane .wppush-temy__ikona { color: #111; background: var(--ar-akcent) !important; }
.theme-ariane .wppush-plav__ikona { color: var(--ar-akcent); background: var(--ar-dark) !important; }
.theme-ariane .wppush-plav__tlacidlo { background: var(--ar-dark) !important; color: var(--ar-akcent) !important; border-color: var(--ar-dark) !important; box-shadow: 0 6px 18px rgba(0,0,0,.25); }
.theme-ariane .wppush-plav__tlacidlo svg { color: var(--ar-akcent); }
/* radca (wpporadca) – vo svetlej žltá bublina s čiernym písmom (Robert) */
.theme-ariane .wpp-bublina { background: var(--ar-dark) !important; color: var(--ar-akcent) !important; border-color: var(--ar-dark) !important; box-shadow: 0 6px 18px rgba(0,0,0,.25); }
.theme-ariane .wpp-bublina svg { color: var(--ar-akcent); stroke: var(--ar-akcent); }
.theme-ariane .wpp-panel .wpp-hlavicka { background: var(--ar-dark) !important; color: var(--ar-akcent) !important; }
.theme-ariane .wpp-panel .wpp-hlavicka * { color: var(--ar-akcent) !important; }
.theme-ariane .wpp-panel .wpp-sprava--radca { border-left: 3px solid var(--ar-akcent); }
.theme-ariane .wpp-panel .wpp-vstup button, .theme-ariane .wpp-panel .wpp-odosli { background: var(--ar-dark) !important; color: var(--ar-akcent) !important; border-color: var(--ar-dark) !important; }
.theme-ariane .wpp-panel .wpp-ukazka { border-color: var(--ar-akcent) !important; }
.theme-ariane .wpp-panel .wpp-ukazka:hover { background: var(--ar-akcent) !important; color: #111 !important; }
.theme-ariane .bd-social__ikony a:hover svg, .theme-ariane .bd-social__ikony a:focus-visible svg { color: #111; fill: currentColor; }
.theme-ariane .es-module__title { overflow-wrap: anywhere; }

/* ---- karty článkov rovnako: klasický rám, prechod len pri hoveri ---- */
.theme-ariane .wp-articles__card, .theme-ariane .bd-swipe__item--article { border: 1px solid var(--color-border) !important; background: var(--color-surface) !important; transition: box-shadow .2s, border-color .2s; }
.theme-ariane .wp-articles__card:hover { border-color: transparent !important; background: linear-gradient(var(--color-surface), var(--color-surface)) padding-box, linear-gradient(135deg, var(--ar-akcent-tmava) 0%, var(--ar-akcent) 100%) border-box !important;   /* pravidlo (Robert): začať prepálenou tmavšou, skončiť čistou akcentovou – nie do stratena */ }
/* ---- hviezdy recenzií: namiesto znaku ★ SVG hviezda (zaoblená, moderná); aktívna žltá, neaktívna sivá ---- */
.theme-ariane .es-review-star { display: inline-block; width: 1.05rem; height: 1.05rem; font-size: 0; vertical-align: middle; margin-right: .1rem;
    background: #d5d8de; -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.6c.4 0 .8.2 1 .6l2.4 4.9 5.4.8c.9.1 1.2 1.2.6 1.8l-3.9 3.8.9 5.4c.2.9-.8 1.5-1.6 1.1L12 18.4l-4.8 2.5c-.8.4-1.7-.2-1.6-1.1l.9-5.4-3.9-3.8c-.6-.6-.3-1.7.6-1.8l5.4-.8L11 3.2c.2-.4.6-.6 1-.6z'/></svg>") center / contain no-repeat;
    mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.6c.4 0 .8.2 1 .6l2.4 4.9 5.4.8c.9.1 1.2 1.2.6 1.8l-3.9 3.8.9 5.4c.2.9-.8 1.5-1.6 1.1L12 18.4l-4.8 2.5c-.8.4-1.7-.2-1.6-1.1l.9-5.4-3.9-3.8c-.6-.6-.3-1.7.6-1.8l5.4-.8L11 3.2c.2-.4.6-.6 1-.6z'/></svg>") center / contain no-repeat; }
.theme-ariane .es-review-star--active { background: var(--ar-akcent); }
.theme-ariane .es-review-stars { font-size: 1rem; line-height: 1; display: inline-flex; align-items: center; }
[data-theme="dark"] .theme-ariane .es-review-star { background: #4a5058; }
[data-theme="dark"] .theme-ariane .es-review-star--active { background: var(--ar-akcent); }

/* ---- úvodka PC: kategórie väčšie, v jednej dráhe so šípkami (ar-kategorie.js) ---- */
@media (min-width: 768px) {
    .theme-ariane.is-home .es-showcase--1 .ph-category-module-box { position: relative; }
    .theme-ariane.is-home .es-showcase--1 .es-cat-grid__track { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-mask-image: none; mask-image: none; }
    .theme-ariane.is-home .es-showcase--1 .es-cat-grid__track::-webkit-scrollbar { display: none; }
    .theme-ariane.is-home .es-showcase--1 .es-cat-grid__track > ul { display: flex !important; flex-wrap: nowrap !important; gap: 1.25rem !important; width: max-content; padding: .25rem 0 .75rem; justify-content: flex-start !important; }
    .theme-ariane.is-home .es-showcase--1 .es-cat-grid__item { flex: 0 0 auto !important; width: 228px !important; max-width: none !important; scroll-snap-align: start; }
    .theme-ariane.is-home .es-showcase--1 .es-cat-grid__image { width: 100% !important; max-width: none !important; height: 228px !important; }
    .theme-ariane.is-home .es-showcase--1 .es-cat-grid__title { font-size: 1rem; }
    .theme-ariane .ar-kat-btn { position: absolute; top: 96px; transform: translateY(-50%); z-index: 3; width: 2.75rem; height: 2.75rem; border-radius: 50%; border: 1px solid var(--color-border); background: var(--color-surface); color: var(--color-heading); box-shadow: 0 4px 14px rgba(0,0,0,.14); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background .15s, color .15s; }
    .theme-ariane .ar-kat-btn:hover { background: var(--color-primary); color: #fff; }
    [data-theme="dark"] .theme-ariane .ar-kat-btn:hover { color: #111; }
    .theme-ariane .ar-kat-btn--prev { left: -1.25rem; } .theme-ariane .ar-kat-btn--next { right: -1.25rem; }
    .theme-ariane .ar-kat-btn[hidden] { display: none; }
    .theme-ariane .ar-kat--nescroll .ar-kat-btn { display: none; }
}

/* ---- košík: počet položiek nad ikonou žltý s čiernym číslom (bol červený) ---- */
.theme-ariane .es-header-icon-count, .theme-ariane .es-cart-count { background: var(--ar-akcent) !important; color: #111 !important; }
/* ---- mobil: šípky kategórií len na PC; články v dráhe po jednom; čísla prednosti menšie ---- */
@media (max-width: 767.98px) {
    .theme-ariane .ar-kat-btn { display: none !important; }
    .theme-ariane .bd-swipe--articles .bd-swipe__item, .theme-ariane .bd-swipe__item--article { flex: 0 0 calc(100% - 1.5rem) !important; width: calc(100% - 1.5rem) !important; max-width: none !important; }
    .theme-ariane .wp-showcase__stat-number { font-size: 1.6rem !important; }
    .theme-ariane .wp-showcase__stat-label { font-size: .8rem; }
    .theme-ariane .wp-showcase__stats-row { gap: .75rem !important; }
}
/* mobil: celé logo, ale malé – nesmie roztiahnuť hlavičku (Robert) */
@media (max-width: 767.98px) {
    .theme-ariane .es-header__logo img, .theme-ariane .es-header__brand img { height: 20px !important; width: auto !important; max-width: 150px !important; }
    .theme-ariane .es-header__brand { min-width: 0; flex: 1 1 auto; overflow: hidden; }
}
@media (max-width: 400px) { .theme-ariane .es-header__logo img, .theme-ariane .es-header__brand img { height: 18px !important; max-width: 132px !important; } }
/* mobil: ikony v hlavičke ďalej od seba a väčšie cieľové plochy (Robert: klikám omylom na tému namiesto košíka; logo je už malé, miesto je) */
@media (max-width: 767.98px) {
    .theme-ariane .es-header__actions { gap: .55rem !important; }
    .theme-ariane .es-header__actions .es-header-icon-btn { width: 2.6rem; height: 2.6rem; display: inline-flex; align-items: center; justify-content: center; }
    .theme-ariane .es-header__actions .es-theme-toggle { margin-left: .35rem; }
}
@media (max-width: 360px) { .theme-ariane .es-header__actions { gap: .35rem !important; } }

/* ---- TMAVÝ REŽIM: primárna je biela → všetko, čo má primárne pozadie, musí mať tmavé písmo (šablóna používa --color-white) ---- */
[data-theme="dark"] .theme-ariane :is(.btn-primary, .es-btn--primary, .ph-btn:not(.btn-outline-primary):not(.btn-light):not(.btn-secondary), .ph-btn-add-to-cart, .phCartButton,
    .pc-progress__step--active .pc-progress__num, .pc-progress__step--done .pc-progress__num, .bd-hostuje__btn, .ph-checkout-btn-login,
    .wp-showcase__cta-label, .wp-showcase__plan-badge, .cf-onas__ik, .tpl-b2b-alert__icon, .es-back-to-top:hover, .pcshare__btn:hover, .contact-form .btn-primary, .ar-chip.is-active) { color: #111 !important; }
[data-theme="dark"] .theme-ariane :is(.btn-primary, .es-btn--primary, .ph-btn, .bd-hostuje__btn, .cf-onas__ik, .pcshare__btn:hover) svg { color: #111; stroke: currentColor; }
[data-theme="dark"] .theme-ariane .pc-progress__step--active .pc-progress__num::before, [data-theme="dark"] .theme-ariane .pc-progress__step--done .pc-progress__num::before { color: #111; border-color: #111; }
/* tmavé: sekundárne/obrysové tlačidlá musia byť vidno (Prihlásiť, Upraviť…) */
[data-theme="dark"] .theme-ariane :is(.btn-outline-primary, .btn-outline-secondary, .es-btn--outline, .btn-light) { border-color: #9aa0a8 !important; color: #f0f0f0 !important; background: transparent; }
[data-theme="dark"] .theme-ariane :is(.btn-outline-primary, .btn-outline-secondary, .es-btn--outline, .btn-light):hover { background: var(--ar-akcent) !important; border-color: var(--ar-akcent) !important; color: #111 !important; }
/* tmavé: plávajúce tlačidlá (radca, zvonček) žlté s tmavou ikonou, inak zaniknú na tmavom */
[data-theme="dark"] .theme-ariane .wpp-bublina, [data-theme="dark"] .theme-ariane .wppush-plav__ikona, [data-theme="dark"] .theme-ariane .wppush-plav__tlacidlo { background: var(--ar-akcent) !important; color: #111 !important; border-color: var(--ar-akcent) !important; }
[data-theme="dark"] .theme-ariane .wpp-bublina svg, [data-theme="dark"] .theme-ariane .wppush-plav__tlacidlo svg, [data-theme="dark"] .theme-ariane .wppush-plav__ikona svg { color: #111; stroke: #111; }
[data-theme="dark"] .theme-ariane .wpp-panel .wpp-hlavicka { background: #0e0e0e !important; }
/* košíková zásuvka: odkaz „Zobraziť košík – prejsť k platbe" (bez triedy) ako primárne tlačidlo; v tme tmavé písmo */
.theme-ariane .es-cart-offcanvas a[href*="pokladna"], .theme-ariane .es-cart-offcanvas .ph-cart-checkout-link a { display: block; text-align: center; padding: .75rem 1rem; border-radius: var(--radius-md); background: var(--color-primary); color: var(--color-on-primary, #fff) !important; font-weight: 600; text-decoration: none; }
.theme-ariane .es-cart-offcanvas a[href*="pokladna"]:hover { background: var(--ar-akcent); color: #111 !important; }
[data-theme="dark"] .theme-ariane .es-cart-offcanvas a[href*="pokladna"] { color: #111 !important; }
[data-theme="dark"] .theme-ariane .es-cart-offcanvas a[href*="pokladna"]:hover { background: var(--ar-akcent); color: #111 !important; }
[data-theme="dark"] .theme-ariane .ph-checkout-box-action .ph-box-header, [data-theme="dark"] .theme-ariane .ph-box-header { color: var(--color-heading) !important; background: transparent !important; border-color: var(--color-border) !important; }

/* ---- pás značiek (override mod_phocacart_brands = bd-swipe, port z boatu) ---- */
.theme-ariane .bd-znacky__pas .bd-swipe__item { width: 200px; min-height: 96px; display: flex; align-items: center; justify-content: center; padding: .6rem 1rem; background: #fff; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.theme-ariane .bd-znacky__pas .ph-brand-name { text-align: center; font-size: .85rem; }
.theme-ariane .bd-znacky__pas .ph-brand-name img { max-height: 70px; max-width: 100%; width: auto; height: auto; object-fit: contain; filter: none; opacity: 1; transition: transform .15s; }
.theme-ariane .bd-znacky__pas .bd-swipe__item:hover img { transform: scale(1.04); }
[data-theme="dark"] .theme-ariane .bd-znacky__pas .bd-swipe__item { background: #fff; border-color: #fff; }
.theme-ariane .bd-znacky { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: 1rem; margin: 1.25rem 0 1.75rem; }
.theme-ariane .bd-znacky a { display: block; border: 1px solid var(--color-border); border-radius: .5rem; overflow: hidden; background: #fff; }
.theme-ariane .bd-znacky img { display: block; width: 100%; height: auto; }
@media (max-width: 575.98px) { .theme-ariane .bd-znacky__pas .bd-swipe__item { width: 150px; min-height: 76px; } .theme-ariane .bd-znacky__pas .ph-brand-name img { max-height: 52px; } }
.theme-ariane .bd-znacky__pas button[data-bd-znacky] { margin-top: .75rem; background: none; border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: .45rem .9rem; font: inherit; font-weight: 600; color: var(--color-heading); cursor: pointer; }
.theme-ariane .bd-znacky__pas button[data-bd-znacky]:hover { border-color: var(--ar-akcent); }
/* rozbalené „všetky značky" = mriežka dlaždíc (ako boat), nie pod sebou (Robert 16. 9.) */
.theme-ariane .bd-znacky__vsetky { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: .75rem; margin: .5rem 0 0; }
.theme-ariane .bd-znacky__vsetky[hidden] { display: none; }
.theme-ariane .bd-znacky__polozka { display: flex; align-items: center; justify-content: center; min-height: 64px; padding: .5rem; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-xl, 8px); }
.theme-ariane .bd-znacky__polozka img { max-height: 44px; width: auto; max-width: 100%; }
.theme-ariane .bd-znacky__polozka .ph-brand-name { text-align: center; font-size: .85rem; }
.theme-ariane .bd-znacky__akcia { text-align: center; margin: 1rem 0 0; }
[data-theme="dark"] .theme-ariane .bd-znacky__polozka { background: #fff; }
.theme-ariane .bd-znacky__btn { display: inline-block; padding: .55rem 1.25rem; border: 1.5px solid var(--color-primary); border-radius: 999px; background: transparent; color: var(--color-primary); font-weight: 600; font-size: .9rem; cursor: pointer; }
.theme-ariane .bd-znacky__btn:hover, .theme-ariane .bd-znacky__btn:focus-visible { background: var(--ar-akcent); border-color: var(--ar-akcent); color: #111; }
/* plávajúci panel push (zvonček): vnútorný box bez druhého rámu, obsah s odsadením (Robert: „štvorec a nalepený obsah") */
.theme-ariane .wppush-plav__panel .wppush-temy { border: 0 !important; border-radius: 0; padding: .25rem .25rem .5rem !important; background: transparent !important; }
.theme-ariane .wppush-plav__panel { border: 1px solid var(--color-border); border-radius: var(--radius-xl); padding: 1.1rem 1.25rem 1.25rem; box-shadow: 0 12px 32px rgba(0,0,0,.28); }
.theme-ariane .wppush-plav__panel .wppush-temy__nadpis { padding-right: 2rem; }
.theme-ariane .wppush-plav__panel .wppush-volba { margin: .3rem 0; }
/* ---- detail: ikony Doručenie / Strážiť cenu / Do obľúbených — na svetlej čierne (oranžová slabo vidno), v tme akcent; obľúbené s textom ako boat ---- */
.theme-ariane .bd-ikona-text { display: none; }
.theme-ariane.view-item .bd-item-actions-row .bd-ikona-text { display: inline; margin-left: .45rem; font-size: .8125rem; font-weight: 600; }
.theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo { display: inline-flex; align-items: center; height: 36px; padding: 0 .9rem 0 .7rem; border: 1px solid var(--color-border); border-radius: .5rem; background: var(--color-surface); color: var(--color-heading); white-space: nowrap; }
.theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo svg, .theme-ariane.view-item .bd-item-actions-row .wppush-btn svg, .theme-ariane .bd-dorucenie svg { color: #111; }
.theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo:hover { border-color: var(--ar-akcent); background: var(--ar-akcent); color: #111; }
[data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo { background: var(--color-surface-alt); color: var(--color-text); }
[data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo svg, [data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row .wppush-btn svg, [data-theme="dark"] .theme-ariane .bd-dorucenie svg { color: var(--ar-akcent); }
.theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo svg, .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo .pc-si { color: #111 !important; fill: none; }
[data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo svg, [data-theme="dark"] .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo .pc-si { color: var(--ar-akcent) !important; }

/* ---- ARIANE: vypredaný produkt (16. 9.) ----
   Phoca skrýva množstvo + „Do košíka" cez visibility:hidden → ostávalo 48 px prázdneho miesta pod SKU.
   Trieda sa pri prepočte variantu odoberie, takže display:none je bezpečné. */
.theme-ariane .phItemCartBoxForm .ph-visibility-hidden { display: none !important; }
.theme-ariane .phItemCartBoxForm:has(> div > div.ph-form-quantity.ph-visibility-hidden, > div > .ph-form-button > .ph-visibility-hidden) { display: none; } /* aj medzery rodiča (flex gap) */

/* mobil: „Strážiť cenu/dostupnosť" + „Pridať do obľúbených" vedľa seba na pol šírky, na užších telefónoch
   sa druhé zalomí pod prvé na celú šírku (predtým pretekalo vpravo mimo riadok) */
@media (max-width: 575.98px) {
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row { display: flex; flex-wrap: wrap; gap: .5rem; width: 100%; }
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .ph-category-item-wishlist-box,
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .ph-category-item-wishlist,
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .phItemWishListBoxForm { display: block; width: 100%; float: none; margin: 0; }
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .ph-category-item-wishlist-box { flex: 1 1 150px; }
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .wppush-btn { flex: 1 1 130px; }
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .wppush-btn,
    .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo { width: 100%; justify-content: center; padding: 0 .5rem; }
    .theme-ariane.view-item .bd-item-actions-row .bd-ikona-text { font-size: .74rem; margin-left: .35rem; }
    .theme-ariane.view-item .bd-item-actions-row .wppush-btn { font-size: .74rem; gap: .35rem; }
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row > * { min-width: 0; }
    .theme-ariane.view-item .bd-item-actions-row button.bd-ikona-tlacidlo svg.pc-si { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; }
    .theme-ariane.view-item .pcshare--so-zelaniami .bd-item-actions-row .ph-category-item-wishlist-box { order: 2; }
}

/* ---- hero na mobile: šípky dole vedľa bodiek, nie cez text (z cofexu, Robert 16. 9.) ---- */
@media (max-width: 767.98px) {
    .theme-ariane .wp-hero__nav {
        inset: auto 0 0 0;                 /* len spodný pruh */
        height: 3.5rem;
        align-items: center;
        justify-content: center;
        gap: 7.5rem;                       /* medzi šípkami ostane miesto na bodky */
        padding: 0;
    }
    .theme-ariane .wp-hero__arrow { width: 2.25rem; height: 2.25rem; }
    .theme-ariane .wp-hero__dots { bottom: 1.4rem; }
    .theme-ariane .wp-hero__slide { padding-bottom: 4rem; }   /* text/tlačidlá nad ovládaním */
}

/* ---- mobilné menu: kategórie dáva Phoca nav (offcanvas), položka „Produkty" s rozbaľovačkou by ich zdvojila ---- */
.theme-ariane .es-offcanvas .mod-menu > li.dropdown.parent { display: none; }

/* ---- pokladňa: prepínač „Nakupujem na firmu" (setup_firma_polia.php, skript v module Firma prepínač) ---- */
.theme-ariane .ar-na-firmu-riadok { margin-bottom: 1rem; }
.theme-ariane .ar-na-firmu { display: inline-flex; align-items: center; gap: .5rem; font-weight: 600; cursor: pointer; }
.theme-ariane .ar-na-firmu input { width: 1.1rem; height: 1.1rem; accent-color: var(--ar-akcent); margin: 0; }

/* ---- topbar: na mobile kratší text a menšie písmo (Robert 16. 9.); .ar-len-mobil = len mobil, .cf-len-pc = len PC ---- */
.theme-ariane .es-topbar .ar-len-mobil { display: none; }
@media (max-width: 767.98px) {
    .theme-ariane .es-topbar .ar-len-mobil { display: inline; }
    .theme-ariane .es-topbar p { font-size: .72rem; line-height: 1.3; padding-block: .15rem; }
}
/* ---- účet v hlavičke (modul „Účet (hlavička)") + položka „Môj účet" v menu len pre mobilnú zásuvku ---- */
.theme-ariane .ar-ucet-wrap .es-header-icon-btn { display: inline-flex; align-items: center; justify-content: center; }
@media (min-width: 768px) { .theme-ariane .es-header .navbar-nav > li.item-243, .theme-ariane .es-header .navbar-nav > li.item-244 { display: none; } }   /* polozky Moj ucet (sablona nepouziva anchor css) */
@media (max-width: 767.98px) { .theme-ariane .es-header__actions .ar-ucet-wrap { display: none; } }

/* ---- úvodka: rovnomerné medzery medzi sekciami (Robert 16. 9.: medzera hero → čísla a čísla → kategórie → Obľúbené na mobile);
   sekcie showcase mali padding 64+64 px a modul ešte margin 24 → medzi kategóriami a Obľúbenými 152 px. Ako cofex: sekcie bez
   paddingu, rozostup dáva len margin modulu. ---- */
.theme-ariane.is-home .es-showcase { padding-block: 0; }
.theme-ariane.is-home .es-showcase--1 { padding-top: 2.5rem; }
.theme-ariane.is-home .es-showcase .es-module { margin-bottom: 3rem; }
.theme-ariane.is-home .es-showcase--3 { padding-top: 3rem; padding-bottom: 1rem; }   /* farebný pás potrebuje odsadenie zhora */
@media (max-width: 767.98px) {
    .theme-ariane.is-home .es-showcase--1 { padding-top: 1.5rem; }
    .theme-ariane.is-home .es-showcase .es-module { margin-bottom: 2rem; }
    .theme-ariane.is-home .es-showcase--3 { padding-top: 2rem; }
}

/* ---- H1 s názvom webu nad hero sliderom (modul „H1 úvodka") ---- */
.theme-ariane .ar-h1 { font-size: 1.05rem; font-weight: 600; letter-spacing: .01em; color: var(--color-text-muted, #6b7785); margin: .25rem 0 .75rem; text-align: center; }
@media (max-width: 767.98px) { .theme-ariane .ar-h1 { font-size: .9rem; margin: 0 0 .5rem; } }


/* ---- tmavý režim: jemný prechod v hlavičke/pätičke (hĺbka), Gemini/Robert 16. 9. ---- */
[data-theme="dark"] .theme-ariane .es-header { background: linear-gradient(180deg, #161f30 0%, #12192a 100%); box-shadow: 0 2px 12px rgba(0,0,0,.35); }
[data-theme="dark"] .theme-ariane .es-footer, [data-theme="dark"] .theme-ariane .es-bottom { background: linear-gradient(180deg, #12161f 0%, #0d111a 100%); }

/* ---- tmavý režim, výpis kategórie (Robert 16. 9.): „Do košíka" na kartách bolo priehľadné s tmavým písmom → plná svetlá výplň ako v detaile;
   prepínač mriežka/riadok (phItemSwitchLayoutType) mal tmavé ikony na tmavom ---- */
[data-theme="dark"] .theme-ariane .es-product-card .btn-primary.ph-btn { background: var(--color-primary) !important; border-color: var(--color-primary) !important; color: #111 !important; }
[data-theme="dark"] .theme-ariane .es-product-card .btn-primary.ph-btn svg { color: #111 !important; }
[data-theme="dark"] .theme-ariane .es-product-card .btn-primary.ph-btn:hover { background: var(--ar-akcent) !important; border-color: var(--ar-akcent) !important; }
[data-theme="dark"] .theme-ariane .phItemSwitchLayoutType { background: var(--color-surface) !important; border: 1px solid var(--color-border) !important; color: var(--color-text) !important; }
[data-theme="dark"] .theme-ariane .phItemSwitchLayoutType svg { color: var(--color-text) !important; fill: currentColor; }
[data-theme="dark"] .theme-ariane .phItemSwitchLayoutType.active { background: var(--color-primary) !important; border-color: var(--color-primary) !important; }
[data-theme="dark"] .theme-ariane .phItemSwitchLayoutType.active svg { color: #111 !important; }

/* ---- H1 s názvom webu v prvom slide hero (override hero.php; Robert 16. 9.: „H1 do prvého slidu, názvy slidov len štýlovaný odsek") ---- */
/* overline 1. slidu, H1 a zalomenie rieši modul mod_webportaly_showcase 1.2.5 (hero_h1, .wp-hero__overline--first) */
.theme-ariane p.wp-hero__title, .theme-ariane h1.wp-hero__title { margin-top: 0; margin-bottom: 0; }


/* ---- hero: ľavo zarovnaný obsah nesmie ísť pod šípku; na mobile sa slide prispôsobí obsahu (1. slide má viac textu) ---- */
@media (min-width: 768px) { .theme-ariane .wp-hero__slide--left .wp-hero__content { padding-left: 4.5rem; padding-right: 4.5rem; } }
@media (max-width: 767.98px) {
    .theme-ariane .wp-hero__track { height: auto; min-height: 440px; }          /* dráha rastie podľa aktívneho slidu */
    .theme-ariane .wp-hero__slide { min-height: 440px; height: auto; padding-bottom: 4.5rem; }
    .theme-ariane .wp-hero__slide.is-active { position: relative; }
    .theme-ariane .wp-hero__slide .wp-hero__title { font-size: 1.6rem; }
    .theme-ariane .wp-hero__slide .wp-hero__desc { font-size: .9rem; }
}

/* ---- hero na celú šírku (Robert 16. 9.): obsah slidu drží kontajner stránky (max 1640 px + 2rem okraj) – ľavo zarovnaný text
   začína na ľavej hrane obsahu ako zvyšok stránky; šípky sú v okraji (min. 5rem, aby text nešiel pod ne). Platí pre všetky
   slidy modulu (bude predvolený hero pre všetky weby → kandidát do CSS modulu). ---- */
@media (min-width: 768px) {
    .theme-ariane .es-hero--fullwidth .wp-hero__slide { padding-inline: max(2rem, calc((100% - var(--container-max, 1640px)) / 2 + 2rem)); }
    .theme-ariane .es-hero--fullwidth .wp-hero__slide--left .wp-hero__content { padding-left: 0; padding-right: 0; }
    /* šípky dole vedľa bodiek (ako na mobile), aby text mohol začínať presne na hrane kontajnera */
    .theme-ariane .es-hero--fullwidth .wp-hero__nav { inset: auto 0 0 0; height: 3.5rem; align-items: center; justify-content: center; gap: 9rem; padding: 0; }
    .theme-ariane .es-hero--fullwidth .wp-hero__arrow { width: 2.5rem; height: 2.5rem; }
    .theme-ariane .es-hero--fullwidth .wp-hero__dots { bottom: 1.35rem; }
    .theme-ariane .es-hero--fullwidth .wp-hero__slide { padding-bottom: 4.5rem; }
}

/* ---- prečiarknutá pôvodná cena vo výpise: Phoca ju farbí červenou (--ph-error) – tlmená sivá, nech nekričí (Robert 16. 9.) ---- */
.theme-ariane .ph-category-price-box .ph-price-original,
.theme-ariane .ph-item-price-box .ph-price-original,
.theme-ariane .es-product-card .ph-price-original { color: var(--color-text-muted, #6b7785) !important; font-weight: 500; }
/* overline 1. slidu: téma farbí .wp-hero__overline akcentom, prvý slide má byť biely tenký (modul 1.2.5) */
.theme-ariane .wp-hero__overline--first { color: rgba(255, 255, 255, .82); font-weight: 500; }

/* ---- výpis kategórie: náhľad sa nesmie orezať (Robert 16. 9.) – Phoca náhľad m je 360 px na výšku (crop_thumbnail=0), box karty je štvorec,
   obrázok mal height:auto → pretŕčal a orezal sa. Obrázok vpasovať do štvorca (contain), ako na boat/cofex. ---- */
.theme-ariane .es-product-card .phIBox, .theme-ariane .es-product-card .phIBoxOH { aspect-ratio: 1 / 1; overflow: hidden; }
.theme-ariane .es-product-card .phIBox picture, .theme-ariane .es-product-card .phIBox img { display: block; width: 100%; height: 100%; max-height: 100%; object-fit: contain !important; }
.theme-ariane .bd-znacky__pas .bd-swipe[hidden] { display: none; }   /* po rozbalení mriežky sa pás skryje (skript dáva hidden, .bd-swipe má display:flex) */

/* ---- odznak „Obľúbené" (Phoca hot = predaje ≥ 7; text cez override COM_PHOCACART_HOT): rovnaká veľkosť a tvar ako ZĽAVA,
   čierny s bielym písmom, aby sa líšil od akcentovej zľavy (Robert 16. 9.) ---- */
.theme-ariane .ph-corner-icon-wrapper { display: inline-block; margin: 0 .25rem 0 0; }
.theme-ariane .ph-corner-icon, .theme-ariane .ph-corner-icon1, .theme-ariane .ph-corner-icon2 { display: inline-block; padding: .2rem .5rem; border-radius: .25rem; background: var(--ar-dark, #111); color: #fff; font-size: .72rem; font-weight: 700; line-height: 1.2; letter-spacing: .01em; text-transform: uppercase; width: auto; height: auto; position: static; }
[data-theme="dark"] .theme-ariane .ph-corner-icon { background: #f5f5f5; color: #111; }
.theme-ariane .es-product-card__labels { display: flex; flex-wrap: wrap; gap: .25rem; align-items: flex-start; }

/* ============================================
   MEGA MENU „E-shop" (17. 9., Robert: rovnaké ako cofex – blok z klienti/cofex/tema/mega-menu-blok-pre-arianesport.css).
   Šablóna: phocaNav=both, phocaNavRootTitle=E-shop, phocaNavDepth=3, hideEmpty=0 (ariane_megamenu.php). Čisto CSS:
   koreňový panel na šírku hlavičky, 1. úroveň ako stĺpce s nadpisom, 2. úroveň natrvalo pod ním, 3. úroveň len v mobilnej
   zásuvke, mostík pod odkazom E-shop (medzera rušila :hover), dlhý stĺpec (≥ 10) cez 2 stĺpce mriežky.
   Položka menu „Produkty" (179 SK / 180 CZ) sa v navbare skryje – strom je pod E-shopom.
   ============================================ */
.theme-ariane .es-header__nav .mod-menu > li.item-179, .theme-ariane .es-header__nav .mod-menu > li.item-180 { display: none; }
@media (min-width: 1024px) {
    .theme-ariane .es-header__inner {
        position: relative;
    }
    .theme-ariane .es-header__nav,
    .theme-ariane .es-phoca-nav--rooted,
    .theme-ariane .es-phoca-nav--rooted .es-phoca-nav__list--root,
    .theme-ariane .es-phoca-nav--rooted .es-phoca-nav__item--root {
        position: static;
    }
    /* medzera medzi odkazom E-shop a panelom (panel sedí na spodku hlavičky, odkaz končí ~17 px vyššie) rušila :hover →
       neviditeľný mostík pod odkazom (Robert 16.9.: „neviem si kliknúť na podmenu“) */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__link {
        position: relative;
    }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__link::after {
        content: "";
        position: absolute;
        left: -1rem;
        right: -3rem;
        top: 100%;
        height: 1.5rem;
    }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__toggle {
        position: relative;
        z-index: 1;
    }
    /* koreňový panel = celá šírka hlavičky */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel {
        left: 0;
        right: 0;
        top: 100%;
        width: auto;
        min-width: 0;
        max-height: calc(100vh - 8rem);
        overflow: auto;
        padding: var(--space-lg) var(--space-lg) var(--space-md);
        border-radius: 0 0 var(--card-radius) var(--card-radius);
    }
    /* 1. úroveň ako stĺpce (pretlačí .es-header__nav ul { display:flex } aj zvislý submenu šablóny) */
    .theme-ariane .es-header__nav .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
        gap: var(--space-md) var(--space-lg);
        align-items: start;
    }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item {
        display: block;
        min-width: 0;
    }
    /* nadpis stĺpca */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link {
        display: block;
        padding: 0 0 var(--space-xs) !important;
        margin-bottom: var(--space-xs);
        border-bottom: 1px solid var(--color-border);
        font-weight: 700;
        font-size: 0.9375rem !important;
        color: var(--color-primary);
        background: none;
    }
    /* 2. úroveň natrvalo pod nadpisom, nie ako plávajúci panel */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__panel {
        display: block;
        position: static;
        min-width: 0;
        padding: 0;
        border: 0;
        box-shadow: none;
        background: none;
    }
    .theme-ariane .es-header__nav .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel .es-phoca-nav__submenu .es-phoca-nav__submenu {
        display: block;
    }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel .es-phoca-nav__submenu .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link {
        padding: 0.2rem 0 !important;
        font-size: 0.8125rem !important;
        line-height: 1.3;
        white-space: normal;
    }
    /* šípky pri položkách a 3. úroveň v mega paneli preč */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel .es-phoca-nav__toggle,
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel .es-phoca-nav__submenu .es-phoca-nav__submenu .es-phoca-nav__panel {
        display: none !important;
    }
    /* dlhý stĺpec (Gastro zariadenia – 16 podkategórií) cez 2 stĺpce mriežky, zoznam v 2 stĺpcoch */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item:has(> .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item:nth-child(10)) {
        grid-column: span 2;
    }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item:has(> .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item:nth-child(10)) .es-phoca-nav__submenu {
        columns: 2;
        column-gap: var(--space-md);
    }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel .es-phoca-nav__submenu .es-phoca-nav__submenu > .es-phoca-nav__item {
        break-inside: avoid;
    }

    /* malé fotky pri nadpisoch stĺpcov – náhľad S koreňovej kategórie (images/phocacartcategories/2024/12); phocaNav nemá obrázky v HTML,
       preto podľa href – odkazy idú cez položky menu Produkty (/sk/eshop/kat-<alias>, CZ …-cz) → href*="/kat-<alias>" */
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link { display: flex; align-items: center; gap: 0.6rem; }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link::before { content: ""; flex: 0 0 auto; width: 2.5rem; height: 2.5rem; border-radius: 0.5rem; background: #fff center / 84% no-repeat; border: 1px solid var(--color-border); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-box-a-bojove-sporty"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_box.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-fitness-a-posilnovanie"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_fitness.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-fitness-doplnky-a-pomocky"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_fitness-naradie-2.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-kardio-zariadenia"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_kardio.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-oblecenie-a-doplnky"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_adidas.-tricko.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-outdoor-a-volny-cas"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_outdoor-trampoliny.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-stolne-hry-a-zabava"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_stolne-hry-zabava.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-vodne-sporty-a-bazeny"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_vodne-virivky.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-zimne-sporty"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_zimne-sporty.jpg"); }
    .theme-ariane .es-phoca-nav--navbar .es-phoca-nav__item--root > .es-phoca-nav__panel > .es-phoca-nav__submenu > .es-phoca-nav__item > .es-phoca-nav__link[href*="/kat-teamove-sporty"]::before { background-image: url("/images/phocacartcategories/2024/12/thumbs/phoca_thumb_s_temovesporty.jpg"); }
}

/* mobilná zásuvka: strom kategórií rovno otvorený (predtým boli kategórie v zásuvke priamo; koreň „E-shop" ostáva ako nadpis bez šípky) */
@media (max-width: 1023.98px) {
    .theme-ariane .es-offcanvas .es-phoca-nav--rooted .es-phoca-nav__item--root > .es-phoca-nav__panel { display: block !important; }
    .theme-ariane .es-offcanvas .es-phoca-nav--rooted .es-phoca-nav__item--root > .es-phoca-nav__toggle { display: none !important; }
    .theme-ariane .es-offcanvas .es-phoca-nav--rooted .es-phoca-nav__item--root > .es-phoca-nav__link { font-weight: 700; }
}

/* ---- filter (Robert 17. 9.): parametre Veľkosť/Farba namiesto atribútov (parametre_filter.php), Značka až za Farbou – poradie blokov
   Phoca je pevné (kategória, cena, značka, …, parametre) → flex order ---- */
.theme-ariane #phFilterBox { display: flex; flex-direction: column; }
.theme-ariane #phFilterBox > .panel { order: 6; }
.theme-ariane #phFilterBox > .panel-id { order: 1; }
.theme-ariane #phFilterBox > .panel-price_from { order: 2; }
.theme-ariane #phFilterBox > .panel-dostupnost { order: 3; }   /* parameter z údržby e-shopu (wpudrzba) */
.theme-ariane #phFilterBox > .panel-velkost { order: 4; }
.theme-ariane #phFilterBox > .panel-farba { order: 5; }
.theme-ariane #phFilterBox > .panel-manufacturer { order: 7; }
/* dlhý zoznam hodnôt (čísla obuvi, oz, cm) – dva stĺpce, aby filter nebol na 3 obrazovky */
.theme-ariane #phFilterBox > .panel-velkost .panel-body { columns: 2; column-gap: .75rem; max-height: none !important; height: auto !important; overflow: visible !important; }
.theme-ariane #phFilterBox > .panel-velkost .panel-body .controls { break-inside: avoid; }

/* ---- vlajky jazykov v pätičke na stred (Robert 17. 9.) ---- */
.theme-ariane .es-footer .mod-languages { text-align: center; }
.theme-ariane .es-footer .mod-languages .lang-inline { display: inline-flex; justify-content: center; gap: .75rem; margin: .5rem auto; padding: 0; }
.theme-ariane .es-footer .mod-languages .lang-inline li { margin: 0; }

/* ---- ceny v kartách (kategória, výpisy, súvisiace) na stred (Robert 17. 9.) ---- */
.theme-ariane .ph-category-price-box { text-align: center; }
.theme-ariane .ph-category-price-box .ph-price-original,
.theme-ariane .ph-category-price-box .ph-price-brutto { display: block; text-align: center; float: none; }
.theme-ariane .es-product-card__actions [id^="phItemPriceBoxCategory"] { width: 100%; }
.theme-ariane .bd-swipe__item .ph-category-price-box { justify-content: center; }
.theme-ariane .es-product-card__actions [id^="phItemPriceBoxModule"] { width: 100%; }
