/*  Generated: 2026-08-07 15:06:54 */
/* ==========================================================================
   STYLESHEET.CSS — Main Shared Styles
   ==========================================================================
   All 42 tenants share this file. Tenant-specific overrides are in
   projects/{tenant}/css/custom-stylesheet.css (loaded after this file).

   TABLE OF CONTENTS
   1. RESET & BASE .............. Box model, root variables, body, typography
   2. UTILITIES .................. Width, display, alignment, text helpers
   3. FORMS ...................... Inputs, selects, textareas, form layout
   4. BREADCRUMB ................. Breadcrumb navigation trail
   5. MENU & NAVIGATION ......... Top menu, category navigation, head_menu
   6. TOP CATEGORY ............... Homepage category blocks
   7. HEADER ..................... Logo, search bar, cart icon, user menu
   8. INDEX / HOMEPAGE ........... Homepage-specific blocks, brand carousel
   9. SIDEBAR / LEFT ............. Category tree, left column, actualities
  10. SERVICES ................... Service blocks, delivery info, icons
  11. FOOTER ..................... Footer sections, copyright, newsletter
  12. MANUFACTURERS .............. Brand listing, alphabet filter
  13. BEST SELLERS ............... Bestseller tabs
  14. LISTING .................... Product grid/list, sorting, pagination
  15. PRODUCT DETAIL ............. Images, info box, tabs, variants, reviews
  16. PRICING .................... Prices, discounts, coupons, badges
  17. CART & ACCESSORIES ......... Mini-cart, product accessories
  18. USER ACCOUNT ............... Login, registration, order history
  19. MESSAGES ................... Flash messages, alerts, notifications
  20. LIGHTBOX / MAGNIFIC POPUP .. Image lightbox, popup overlays
  21. GALLERY .................... Image gallery, thumbnails
  22. TABLES ..................... Data tables, comparison tables
  23. VENDOR OVERRIDES ........... Tooltips (qtip), datepicker, owl-carousel
  24. LOADING & ANIMATIONS ....... Loading screen, pulse, skeleton
  25. COOKIES .................... Cookie consent bar
   ========================================================================== */

*, ::after, ::before {
    box-sizing: border-box;
}
:root {
    --light-grey: #f9f9f9;
    --grey: #a7a7a7;
    --dark-grey: #333;
    --border-grey: #e9e9e9;
    --secondary-color: #f291c2;
    --primary-color: #00c4ed;
    --radius: 10px;
}
html,
button,
input,
select,
textarea {
    font-family: 'Poppins', sans-serif;
}
html {
    font-size: 10px;
}
body {
    font-size: 1.4rem;
    margin: 0;
    padding: 0;
    color: #1a1a1a;
    background-color: #fff;
}
.container {
    position: relative;
    max-width: 1710px;
    width: 100%;
    margin-left:auto;
    margin-right:auto;
    text-align:left;
    padding: 0 15px;
}

/* ***** Links **** */

a {
    color: #1a1a1a;
    text-decoration: underline;
    transition: all 0.35s ease 0s;
}
a:hover {
    text-decoration: none;
    color: var(--primary-color, #00c4ed);
}

a[href^="error:"] {
    background: red;
    color: white;
}

/* ***** Headdings **** */

h1, h2, h3, h4, h5, p, ul, ol, li, form {
    margin: 0;
    padding: 0;
}
h1 {
    margin: 12px 0;
    padding: 0;
    font-size: 3.2rem;
    color: #000000;
    font-weight: normal;
}
h2 {
    font-size: 1.8rem;
    color: #262626;
    margin: 5px 0;
    padding: 0;
}
h3 {
    font-size: 1.6rem;
    color: #000000;
    margin: 5px 0;
    padding: 0;
}
h4 {
    font-size: 1.4rem;
    color: #000000;
    margin: 5px 0;
    padding: 0;
}
h2.centerBoxHeading {
    font-weight: 500;
    color: #333;
    padding: 20px 0;
    margin: 0;
}
.index h2.centerBoxHeading {
    text-align: center;
    border-bottom: 1px solid #e3e3e3;
}
.index #snippet-tabProductListSecond-tabList h2.centerBoxHeading {
    margin-bottom: 10px;
}
.index .top_category_h2 h2.centerBoxHeading,
.index .top_znacky_h2 h2.centerBoxHeading,
.index .services--h2 h2.centerBoxHeading,
.index .proc-block__h2 h2.centerBoxHeading,
.index h2.centerBoxHeading.blog_heading,
.index #snippet-tabProductListFirst-tabList h2.centerBoxHeading,
h2.centerBoxHeading.sluzby {
    border-bottom: 0 solid #e3e3e3;
}
h2.centerBoxHeading.sluzby span {
    position: relative;
    top: -50px;
}
.index .top_znacky_h2 h2.centerBoxHeading {
    padding-bottom: 10px;
}

/* ***** Images **** */

img {
    border: 0;
}
.img-responsive {
    max-width: 100%;
    height: auto;
    position: relative;
    display: block;
}

/* ***** button **** */

.btn {
    position: relative;
    display: inline-block;
    padding: 5px 8px;
    background-color: #494949;
    color: #fff!important;
    font-size: 1.6rem;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    text-align: center;
}
#prevOrders .btn,
#orders .btn {
    font-size: 1.2rem;
    text-transform: none;
}
.btn.big {
    padding: 15px 30px;
}
.btn.green {
    background-color: #36840a;
}
.btn .fas.fa_left {
    padding-right: 8px;
}
.btn .fas.fa_right {
    padding-left: 8px;
}
.btn:hover {
    background-color: #000;
}
.btn.green:hover {
    background-color: #2d6c09;
}

/* ***** width % **** */

.width-20,
.width-25,
.width-33,
.width-50 {
    position: relative;
    display: block;
}
.width-20 {
    width: 20%;
}
.width-25 {
    width: 25%;
}
.width-33 {
    width: 33.333%;
}
.width-50 {
    width: 50%;
}
.width-66 {
    width: 66.666%;
}
.width-100 {
    position: relative;
    display: block;
    width: 100%;
}
.max-width {
    max-width: 100%;
    height: auto;
}

/* ***************** */

.left {
    float: left;
}
.right {
    float: right;
}
.align-left {
    text-align: left!important;
}
.align-right {
    text-align: right!important;
}
.align-center {
    text-align: center!important;
}
.align-justify {
    text-align: justify!important;
}
.clearBoth {
    clear: both;
    height:0;
    font-size:0;
    line-height:0;
    display: block;
}
.clearBoth1 {
    margin: 0;
    padding: 0;
    height: 13px;
    border-top: 0 #E8E8E8 solid;
    clear: both;
}
.bold {
    font-weight: bold;
}
.nowrap {
    white-space: nowrap;
}
.disp-none {
    display: none;
}

/* --- 3. FORMS --- */

form, select, input {
    display: inline;
    font-size: 1.4rem;
    margin: 0;
    padding: 0;
}
textarea {
    float: left;
    margin: auto;
    display: block;
    width: 99.4%;
}
select {
    padding: 2px;
    border: 1px solid #ddd;
}
.input-text {
    border: 1px #c4c4c4 solid;
    padding: 3px;
    margin: 0;
}
#frm-watchForm .input-text {
    width: 200px;
}
.input-area {
    border: 1px #959595 solid;
}
.formbox  {
    background-color: #F4F4F4;
    border: 1px solid #DADADA;
    clear: both;
    margin: 0 0 15px;
    padding: 15px;
}
.formbox .error-message {
    margin-top: 10px;
    color: red;
    display: block;
}

/* ********  ********* */

#stranka.container {
    padding-top: 0;
    padding-bottom: 30px;
    background-color: #fff;
}
.index #stranka.container {
    padding-bottom: 0;
}
#indexDefault {
}
#text {
    padding: 0;
    margin: 0;
}
.columnCenter {
    position: relative;
    float: right;
    width: 80.4%;
    margin: 0;
    padding: 0 0 0 15px;
    background-color: #ffffff;
    border: 0;
}
.columnCenter.width-100 {
    width: 100%;
    padding: 0;
}
.index .columnCenter,
.columnCenter.productdetail {
    width: 100%;
    padding: 0;
}
.columnCenter p {
    padding: 5px 0;
    text-align: justify;
}
.columnCenter ul,
.columnCenter ol {
    padding-left: 25px;
}
.columnCenter li {
    padding: 2px 0;
}
.ban_top_middle {
    margin: 15px 0;
}
.ban_top_middle_mobile {
    margin-bottom: 10px;
}
.ban_product_middle {
    margin-bottom: 38px;
}
.ban_product_bottom {
    margin-top: 24px;
}
.ban_left {
    display: block;
    margin-bottom: 9px;
}
.ban_lepsi_cena {
    margin: 0 0 20px 0;
}
.ban_under_basket {
    margin: 0 0 20px 0;
    display: block;
}
/* Phase 64-2b: under-basket L+R — 2× 16:9 vedle sebe pod košíkem */
.ban_product_under_basket_2026 {
    display: flex;
    gap: 10px;
    margin: 0 0 20px 0;
    width: 100%;
    align-self: stretch; /* #productDetailRight je flex parent — nedovolit shrink na obsah */
}
.ban_product_under_basket_2026 .pub2026-item {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    border-radius: 8px;
    aspect-ratio: 16 / 9;
    background: #f3f3f3; /* podklad pro případný letterbox u ne-16:9 banneru */
    border: 1px solid #e2e2e2; /* konzistentní rámeček dlaždice při všech velikostech okna (placeholder má vlastní tenkou linku, která se při zmenšení ztratí pod 1px) */
}
.ban_product_under_basket_2026 .pub2026-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain; /* contain místo cover — celý banner vždy viditelný, žádný ořez okrajového rámečku při resize */
}
@media (max-width: 600px) {
    .ban_product_under_basket_2026 {
        flex-direction: column;
    }
    .ban_product_under_basket_2026 .pub2026-item {
        flex: none; /* v column směru by flex:1 1 0 srazil výšku na 0 → aspect-ratio prohraje */
        width: 100%;
    }
}
.productDetailLeft img.ban_product_bottom {
    margin-top: 6px;
}
.productDetailLeft img.ban_product_middle {
    margin-bottom: 25px;
}
.ban_hp_middle {
    margin-bottom: 30px;
}
.ban_hp_top {
    margin-top: 37px;
    border-radius: 10px;
}
.ban_over_footer {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    padding-top: 32px;
}
.ban_over_footer img {
    display: inline-block;
}
#dodani_zbozi,
.alert-box {
    background-color: #0caeec;
    color: #FFFFFF;
    font-size: 1.6rem;
    font-weight: normal;
    margin-bottom: 20px;
    padding: 10px 15px;
    position: relative;
    text-align: center;
    border-radius: 5px;
    box-shadow: 1px 1px #888888;
    width: 100%;
}
#dodani_zbozi {
    background-color: #cda971;
    margin-top: 15px;
    margin-bottom: 15px;
    border-radius: 0;
    box-shadow: none;
}
.alert-box.alert-success {
    background-color: #21ab1c;
}
.alert-info {
    background-color: #2B8A27;
}

#zbozi {
    position: fixed;
    right: -106px;
    top: 453px;
    z-index: 9999;
    transition: right 0.3s ease 0s;
}
#zbozi:hover {
    right: 0;
}

/* --- 4. BREADCRUMB --- */

#navBreadCrumb {
    padding: 4px 0;
    margin: 0 0 0;
    color: #8E8E8E;
    border-bottom: 0 #e3e3e3 solid;
    text-align: left;
}
#navBreadCrumb a.first {
    text-decoration: none;
}
/* Phase 85 B1 — category mód breadcrumbu (breadcrumbs/category.latte):
   jeden nízký šedý řádek s plnou cestou, dlouhá cesta jede do strany, nezalamuje se */
#navBreadCrumb.breadcrumb-category {
    padding: 4px 0;
    font-size: 1.2rem; /* html 10px baseline -> 12px */
    line-height: 2rem;
    color: #8E8E8E;
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
#navBreadCrumb.breadcrumb-category a {
    color: #8E8E8E;
    text-decoration: none;
}
#navBreadCrumb.breadcrumb-category a:hover span {
    text-decoration: underline;
}
#navBreadCrumb.breadcrumb-category .crumb-sep {
    padding: 0 4px;
}
#navBreadCrumb.breadcrumb-category .text {
    color: #555555;
}
.modal-content #navBreadCrumb {
    padding-top: 15px;
}
.columnCenter.productdetail #navBreadCrumb {
    margin-bottom: 15px;
}

/* --- 5. MENU & NAVIGATION --- */

.menu-site-back {
    text-transform: uppercase;
    font-size: 1.6rem;
    margin-top: 10px;
}

ul.menu-site {
    margin: 20px 0 8px 0;
    padding-left: 0;
}
ul.menu-site li {
    list-style-type: none;
}
ul.menu-site li a {
    background-color: #e3e3e3;
    padding: 5px 10px;
    margin: 0 0 1px 0;
    display: block;
    text-decoration: none;
}
ul.menu-site li a.flag-eur,
ul.menu-site li a.flag-czk {
    padding-left: 30px;
    background-image: url('/data-central/img/front/bg-top-flags.png');
    background-position: 8px -43px;
    background-repeat: no-repeat;
}
ul.menu-site li a.flag-czk {
    background-position: 8px -5px;
}
ul.menu-site li a:hover {
    background-color: #000;
    color: #fff;
}
ul.menu-site li a .fas {
    display: inline-block;
    width: 20px;
}


/* --- 8. INDEX / HOMEPAGE --- */

.index #indexDefaultMainContent h1 {
    color: var(--primary-color, #00c4ed);
    margin-top: 20px;
}

/* --- 6. TOP CATEGORY --- */

.top_category {
    position: relative;
    clear: both;
    padding: 0;
    margin: 0 0 46px 0;
    display: flex;
    gap: 0;
    flex-wrap: wrap;
}
.top_category a {
    position: relative;
    text-decoration: none;
    padding: 7px 0;
    display: flex;
    gap: 10px;
    width: calc(100% / 8);
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    border-left: 1px solid #d9d9d9;
}
.top_category a:first-child {
    border-left: 0 solid #d9d9d9;
}
.top_category a img {
    display: block;
}
.top_category a h3 {
    color: #333333;
    font-size: 1.4rem;
    text-transform: uppercase;
    font-weight: normal;
    line-height: 1.2;
}
.top_category a:hover h3 {
    color: var(--primary-color, #00c4ed);
}

/***********************/

.block-banner--bottom {
    display: flex;
    gap: 8px;
    margin: 0 0 24px 0;
}
.block-banner--bottom.video-bottom {
    margin-bottom: 22px;
    flex-wrap: wrap;
    max-width: 1710px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 15px;
}
.block-banner--bottom.top {
    margin-top: 24px;
}
.block-banner--bottom img {
    border-radius: 10px;
    display: block;
}
.block-banner--in {
    position: relative;
    display: block;
    width: 100%;
}
.block-banner--in.full {
    width: 100%;
}
.block-banner--in .iframe_out.one {
    border-radius: 10px;
}

/************ Romer, Britax ***********/

.block-banner {
    display: grid;
    gap: 6px;
    grid-template:
            "main main"
            "banner1 banner2"
            "banner3 banner4" /
            1fr 1fr;
    margin-bottom: 20px;
}
.block-banner img {
    display: block;
}

.block-banner--main {
    grid-area: main;
}
.block-banner--one {
    grid-area: banner1;
}
.block-banner--two {
    grid-area: banner2;
}
.block-banner--three {
    grid-area: banner3;
}
.block-banner--four {
    grid-area: banner4;
}

/* ===== Phase 64-A/B: HP hero block-banner (2026 redesign) =====
   SCOPE: homepage only (.index body class). Base .block-banner grid above
   (Romer/Britax manufacturer pages) ZŮSTÁVÁ beze změny — tady override jen pro HP.
   Layout: slideShow (--main, vlevo) + pravý sloupec (--second) se 2 stacked 16:9 bannery. */
.index .block-banner {
    display: flex;
    gap: 10px;
    align-items: stretch;     /* slider + hero-right STEJNÁ výška → lícují dole */
    max-width: 1710px;
    margin: 15px auto 25px;   /* margin-top = odskok od horní lišty (woodseeds) */
    padding: 0 15px;
}
.index .block-banner--main {
    flex: 0 0 72%;            /* slider 21:9 řídí výšku (aspect-ratio) */
    min-width: 0;
}
.index .block-banner--second {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
/* hero-right bannery vyplní stretchnutou výšku (= slider) → lícují; poměr ~16:9 */
.index .block-banner--second .block-banner--two,
.index .block-banner--second .block-banner--three {
    flex: 1 1 0;
    min-height: 0;
    overflow: hidden;
    border-radius: 10px;
    grid-area: auto;   /* zruš base grid-area:banner2/banner3 (ř.616) — v grid reflow
                          by jinak oba šly do nedefinované named area → překryv + doprava */
}
.index .block-banner--second img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* ≤ 980 px — hero-right se přesune POD slider jako 2 bannery (16:9), NEMIZÍ.
   GRID (ne flex) — aspect-ratio drží výšku spolehlivě i bez stretch driveru
   (flex:1 by v column collapsnul na 0). 2 vedle sebe. */
@media (max-width: 980px) {
    .index .block-banner {
        flex-direction: column;
        align-items: stretch;
    }
    .index .block-banner--main {
        flex: 0 0 auto;
        width: 100%;
    }
    .index .block-banner--second {
        flex: 0 0 auto;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    .index .block-banner--second .block-banner--two,
    .index .block-banner--second .block-banner--three {
        flex: none;
        aspect-ratio: 16 / 9;   /* výška z šířky buňky → nekolabuje */
    }
}
/* ≤ 767 px (mobil) — boční odskok hero (rotátor + 2 bannery) z 15px na 8px =
   parita s 3:4 bannerem (.ban_hp_top je v .container s 8px). 15px bylo na mobilu moc. */
@media (max-width: 767px) {
    .index .block-banner {
        padding: 0 8px;
    }
}
/* Hero-right zůstává 2 vedle sebe i na mobilu (jako ceske-matrace) — grid 1fr 1fr
   z ≤980 platí celou cestu dolů, žádný stack override. */
/* Middle row 3× 21:9 — GRID 3 sloupce (aspect-ratio drží výšku, ne flex collapse);
   ≤600 stack do 1 sloupce (mobil). */
.index .block-banner--bottom.top {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}
.index .block-banner--bottom.top .block-banner--in {
    width: auto;
    aspect-ratio: 21 / 9;
    overflow: hidden;
}
.index .block-banner--bottom.top .block-banner--in img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 600px) {
    .index .block-banner--bottom.top {
        grid-template-columns: 1fr;
    }
}
/* Mobilní single banner (slideShow:mobile) — 21:9 full width, čistý.
   Override globálního hacku .slideshow-single-banner img {width:141%;left:-41%;clip}
   (ten byl crop pro staré wide bannery; náš 21:9 by zdeformoval). */
.index .block-banner--main .slideshow-single-banner {
    aspect-ratio: 21 / 9;
    overflow: hidden;
    border-radius: 10px;
    margin-bottom: 0;
    width: 100%;
}
.index .block-banner--main .slideshow-single-banner img {
    position: static;
    width: 100%;
    height: 100%;
    left: 0;
    clip: auto;
    object-fit: cover;
    display: block;
}


/* ****** Příběh ******* */

.pribeh_out {
    display: block;
    max-width: 800px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.pribeh_out h2,
.pribeh_out p {
    padding: 0;
    margin: 0;
}
.pribeh_out h2 {
    font-weight: 500;
}

.timeline {
    display: grid;
    border-left: 3px solid var(--primary-color, #00c4ed);
    padding-top: 16px;
    overflow: hidden;
}
.timeline__year {
    padding: 8px 24px;
    color: #fff;
    background: var(--primary-color, #00c4ed);
    display: inline-flex;
    margin-bottom: 24px;
}
.timeline__card {
    position: relative;
    margin: 0 0 24px 16px;
    padding: 24px;
    border-radius: 2px;
    border-left: 3px solid var(--primary-color, #00c4ed);
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12);
    background-color: #f1f1f1;
}
.timeline__card::before {
    content: "";
    width: 16px;
    height: 2px;
    background-color: var(--primary-color, #00c4ed);
    position: absolute;
    top: 16px;
    left: -19px;
}
.timeline__img {
    border-radius: 2px;
    padding-top: 16px;
}

/***********************/

.container-in {
    background: #f1f1f1;
    padding: 16px 16px;
    border-radius: 10px;
}
#snippet-tabProductListFirst-tabList,
#snippet-tabProductListSecond-tabList {
    margin-bottom: 24px;
}
#snippet-tabProductListFirst-tabList .container-in {
    border-radius: 10px;
    /* Phase 72-G: HP owl slider „Dnes pro vás vybíráme" bez šedého podbarvení (user 2026-06-10).
       Base .container-in má background:#f1f1f1 — scope override JEN na první tab-list (owl slider),
       ostatní .container-in (druhý tab-list, special listy) si šedou ponechají. Pozadí pryč +
       L/R padding na 0 (slider full-width v boxu); top/bottom padding (16px) zůstává jako mezera. */
    background: transparent;
    padding-left: 0;
    padding-right: 0;
}

.special-productlist-box,
#snippet-tabProductListSecond-tabList .container-in .specialList {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 5px;
}

.container .container-in .specialListExtra4 {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 5px;
}
.centerBoxContentsProducts {
    height: inherit;
    max-height: inherit;
    padding: 0 2px;
    margin: 2px 0;
    width: 25%;
}
.container-in .specialList .specialListExtra .centerBoxContentsProducts {
    height: 100%;
}
.index .centerBoxContentsProducts-in {
    border-radius: 10px;
}

.nav-tabs-out {
    display: block;
    list-style: none;
    border-bottom: 1px solid #ddd;
    text-align: center;
    margin-bottom: 16px;
    padding: 0 0 15px 0;
}
#indexDefault .nav-tabs-out {
    padding: 0;
}
.nav-tabs-out h3 {
    font-weight: normal;
    margin: 0;
    display: block;
    position: relative;
    line-height: 32px;
    padding-bottom: 11px;
    position: relative;
    float: left;
    font-size: 2.2rem;
    color: #3b3b3b;
}
.nav-tabs-out h3:before {
    content: '';
    width: 100%;
    height: 2px;
    background: var(--primary-color, #00c4ed);
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: -1px;
}
#indexDefault .nav-tabs-out ul.nav-tabs {
    float: right;
    padding-top: 5px;
}
ul.nav-tabs {
    display: block;
    list-style: none;
    padding: 0;
}
ul.nav-tabs li {
    display: inline-block;
    position: relative;
    border: none;
    margin: 0 0 -1px 0;
    padding: 0;
}
.width-66 ul.nav-tabs li {
    padding: 0 13px;
}
.width-66 ul.nav-tabs li:first-child {
    padding-left: 0;
}
.width-66 ul.nav-tabs li:last-child {
    padding-right: 0;
}
ul.nav-tabs li a {
    line-height: 21px;
    padding: 1px 19px 2px;
    margin: 0;
    display: block;
    position: relative;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    font-size: 1.5rem;
    color: #3b3b3b;
    border: 2px solid transparent;
    border-radius: 13px 13px 13px 13px;
}
ul.nav-tabs li a:hover,
ul.nav-tabs li.active a {
    color: #3b3b3b;
    border-color: var(--primary-color, #00c4ed);
}

.specialList .specialListExtra .listingDescription,
.specialList .specialListExtra .ikony {
    display: block;
}
.specialList .specialListExtra .listingDescription {
    height: auto;
    font-size: 1.4rem;
}
.specialList .centeredContent .ceny {
}
.specialList .centerBoxContentsProducts .starsRate {
    display: none;
}
.specialList .specialListExtra .centeredContent .itemTitle a {
    font-size: 1.8rem;
}
.width-66.specialListExtra8 {
    position: relative;
    float: left;
    padding-left: 15px;
    margin-bottom: 25px;
}

/*** small ***/

#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .product_znacka,
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in h3.itemTitle,
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .product-info,
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .dostupnost_text {
    width: 57%;
    float: right;
    padding-left: 15px;
}
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in h3.itemTitle,
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .dostupnost_text {
    text-align: left;
}
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .product-button {
    padding-left: 43%;
    padding-right: 20px;
}
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .listing_foto {
    width: 43%;
    float: left;
    padding-right: 15px;
    margin-top: -14px;
}
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .product-info .ceny,
#snippet-tabProductListThird-tabList .centerBoxContentsProducts .centerBoxContentsProducts-in .product-info .listing-coupon-box {
    text-align: left;
}

.rot_left,
.rot_right {
    color: #7f7f7f;
    font-size: 5.2rem;
    padding: 0 15px;
    display: inline-block;
    position: absolute;
    top: 45%;
    left: -16px;
    z-index: 10000;
}
.rot_right {
    right: -16px;
    left: auto;
}
.rot_left:hover,
.rot_right:hover {
    color: #000;
}
.HomepagePagesLinks {
    position: relative;
    border: 0 solid green;
    float: right;
    margin: 0;
    padding: 0 11px 0 0;
}
.HomepagePagesLinks a,
.HomepagePagesLinks span {
    border: 0 solid #e3e3e3;
    color: #666666;
    display: block;
    float: left;
    font-size: 1.6rem;
    margin: 0 0 3px 3px;
    padding: 5px 10px;
    text-decoration: none;
    height: 37px;
    line-height: 25px;
    position: relative;
}
.HomepagePagesLinks a:before,
.HomepagePagesLinks span:before {
    display: block;
    content: "";
    width: 1px;
    height: 14px;
    background-color: #666666;
    position: absolute;
    right: 0;
    top: calc(50% - 7px);
}
.HomepagePagesLinks a:hover,
.HomepagePagesLinks span.active {
    color: #bad401;
}
.HomepagePagesLinks span.active {
    font-size: 2.2rem;
}

/* ********* top_znacky ************ */

#top_znacky {
    position: relative;
    clear: both;
    margin: 0 0 50px 0;
    padding: 30px 0 30px 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    gap: 28px;
    align-items: center;
    background-color: #fff;
    border-bottom: 1px solid #e3e3e3;
}
#top_znacky a {
    position: relative;
    display: flex;
    align-items: center;
}
.index #top_znacky a:before {
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all 0.35s ease-in-out 0s;
    background-color: rgba(255,255,255,0.6);
    content: '';
    width: 100%;
    height: 0;
    z-index: 1;
}
.index #top_znacky a.arrow:before {
    content: none;
}
.index #top_znacky a:hover::before {
    width: 100%;
    height: 100%;
}
.index #top_znacky a img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}

.index #top_znacky a.arrow {
    display: block;
    height: 50px;
    line-height: 50px;
    width: 50px;
    text-align: center;
    font-size: 3rem;
    color: #333;
    background: #f1f1f1;
    border-radius: 5px 5px 5px 5px;
}
.index #top_znacky a.arrow:hover {
    color: var(--primary-color, #00c4ed);
}

/* ****** ROTATOR - fullscreen ******** */

#slider1_container {
    position: relative;
    margin: 0 auto 0 auto;
    padding: 0;
    top: 0;
    left: 0;
    /* Phase 64: 21:9 responzivní slider (mirror woodseeds #slider1_container).
       width:100% = fit sloupce (NE fixní 1920px → to přetékalo hero-right + bylo
       moc vysoké). max-width 1224 + height 525 = 21:9 (Knobloch BAN_2026_HP_ROT_01).
       JSSOR $ScaleWidth (rotator.js) scaluje obsah na parent width = responzivní. */
    width: 100%;
    max-width: 1224px;
    aspect-ratio: 21 / 9;   /* Phase 64: výškově responzivní 21:9 (ne fixní 525px → hero-right matchuje na všech šířkách) */
    text-align: center;
    overflow: hidden;       /* clip slides_container → žádný horizontal scroll na úzkém viewportu */
    border-radius: 10px;    /* Phase 64: zaoblené rohy = shoda s hero-right (l.687) + single-banner (l.759); overflow:hidden ořeže slidy */
    /* Phase 64: WebKit (Safari) neořízne border-radius u transform-animovaných JSSOR slidů
       jen přes overflow:hidden → radial-gradient mask vynutí clip na compositor úrovni. */
    -webkit-mask-image: -webkit-radial-gradient(white, black);
}
#slider1_container > div > div {
    height: 100%;
}

.loading_screen {
    position: absolute;
    top: 0;
    left: 0;
}

.loading_screen_filtr {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.7;
    display: block;
}

.loading_screen_bcgrnd {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
}
.loading_screen_bcgrnd::after {
    content: '';
    width: 32px;
    height: 32px;
    border: 3px solid #e0e0e0;
    border-top-color: #999;
    border-radius: 50%;
    animation: css-spinner 0.7s linear infinite;
}

.slides_container {
    cursor: move;
    position: absolute;
    left: 0;
    top: 0;
    /* Phase 64: fill #slider1_container (responzivní 21:9) — bylo fixní 1920×420
       (4.57:1) = konfliktní ratio → JSSOR škáloval container ale ne obsah. */
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.slides_container > div,
.slides_container div a {
    display: block;
    width: 100%;
    height: 100%;
}
.slides_container div a img{
    display: block;
    /* Phase 64: vyplň slide (object-fit:cover) — placeholdery 2100×900 jinak
       přetékaly v native velikosti přes naškálovaný container. */
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.jssorb21 {
    position: absolute;
    top: 390px;
    right: 0;
    width: 100% !important;
    text-align: center;
}
.jssorb21 div {
    position: relative !important;
    left: initial !important;
    display: inline-block;
    /* size of bullet elment */
    width: 10px;
    height: 10px;
    line-height: 10px;
    margin: 0 5px;
    text-align: center;
    color: white;
    font-size: 1rem;
    background-color: #cccccc;
    border-radius: 100px;
    overflow: hidden;
    cursor: pointer;
}
.jssorb21 div { background-position: center top; }
.jssorb21 div:hover, .jssorb21 .av { background-color: #000; }
.jssorb21 .av {
    background-position: center bottom;
}
.jssorb21 .dn, .jssorb21 .dn:hover { background-position: -95px -5px; }

.jssora21l, .jssora21r {
    display: block;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    /* size of arrow element */
    cursor: pointer;
    color: #000;
    font-size: 3.8rem !important;
}
.jssora21l {
    left: 45px;
}
.jssora21r {
    right: 45px;
}
.jssora21l:hover,
.jssora21r:hover {
    color: var(--primary-color, #00c4ed);
}
.jssora21l.jssora21ldn { background-position: -243px -33px; }
.jssora21r.jssora21rdn { background-position: -303px -33px; }


/* --- 7. HEADER --- */

#header {
    position: relative;
    width: 100%;
    background-color: #000;
    z-index: 2;
}

#top-block {
    position: relative;
    width: 100%;
    background-color: #f1f1f1;
    font-size: 1.2rem;
    font-weight: 300;
    border-bottom: 0 solid #ddd;
}
#top-block .container,
#top .container,
.header-left {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
#top .header-left {
    gap: 15px;
    justify-content: flex-start;
}
#top .container {
    padding-top: 35px;
    padding-bottom: 35px;
}

#top {
    background-color: #fff;
}

#top-block a,
#top-block span,
.top-block a,
.top-block span {
    display: inline-block;
    position: relative;
    padding: 0 16px;
    color: #333;
    line-height: 38px;
    text-decoration: none;
    font-weight: 300;
}
#top-block a.flag span,
#infozakaznik a.flag span {
    padding: 1px 6px 0 0;
    float: left;
}
#infozakaznik a.flag span {
    padding-top: 0;
}
#top-block a.flag span::after {
    content: none;
}
#top-search-menu .top-block {
    padding-left: 30px;
    position: absolute;
    left: 0;
    bottom: -36px;
    overflow: hidden;
    height: 36px;
    width: 100%;
}
#top-search-menu .top-block span,
#top-search-menu .top-block a {
    line-height: 36px;
    font-weight: 300;
    color: #333;
    font-size: 1.2rem;
    padding-left: 6px;
    padding-right: 6px;
}
#top-search-menu .top-block a:hover {
    color: var(--primary-color, #00c4ed);
}
#top-search-menu .top-block span {
    padding: 0;
}
#top_bottom .top-block a {
    line-height: 55px;
    font-size: 1.4rem;
    font-weight: normal;
    color: #fff;
    padding-left: 12px;
    padding-right: 12px;
}
#top_bottom .top-block a.first {
    padding-left: 0;
}
#top_bottom .top-block a.top-block--upper {
    text-transform: uppercase;
}
#top_bottom .top-block a:hover {
    color: var(--primary-color, #00c4ed);
}
#top_bottom .top-block.right {
    top: 13px;
    right: 40px;
}
#top_bottom .top-block.right a {
    height: 42px;
    line-height: 42px;
    border-radius: 10px 0 0 0;
    padding: 3px 50px 0 20px;
    font-weight: normal;
    font-size: 1.6rem;
    text-transform: uppercase;
    background: #f291c2;
}
#top_bottom .top-block.right a:hover {
    background: var(--primary-color, #00c4ed);
    color: #fff;
}
#top_bottom .top-block.right a img {
    position: absolute;
    display: block;
    right: -40px;
    bottom: 0;
}
#top-block a i  {
    padding-right: 5px;
}
#top-block a.first {
    padding-left: 0;
}
#top-block a:hover,
#top-block a.active {
    color: var(--primary-color, #00c4ed);
}
#top-block .top-menu-right {
    display: inline-block;
    float: right;
}
#top-block .top-menu-right .last {
    padding-right: 0;
}
#top-block .top-menu-right a,
#top-block a i {
    transition: all 0.35s ease 0s;
}
#top-block a i {
    font-size: 1.5rem;
}


/* ****** */

.top-block {
    position: relative;
    font-size: 1.4rem;
    display: block;
    float: left;
}
.top-block.right {
    float: right;
}
.top-block.right a {
    padding: 0;
}
.top-block.left a {
    font-weight: bold;
}
.top-block a.first {
    padding-left: 0;
}
.top-block a:hover,
.top-block a.active {
    color: #383b39;
}

#top-block a:after,
#top-block span:after,
.top-block a:after,
.top-block span:after {
    content: '';
    height: 9px;
    width: 1px;
    background: #a7a7a7;
    position: absolute;
    display: block;
    top: calc(50% - 4px);
    right: 0;
}
#top-block a.last:after,
.top-block a.last:after,
#top-block span.last:after,
.top-block span.last:after,
#top-search-menu .top-block a:after,
#top-search-menu .top-block span:after,
#top_bottom .top-block a:after {
    display: none;
}
.flag-txt {
    margin: 2px 0 0 17px;
}
#top-flags {
    position: relative;
    display: inline-block;
    z-index: 2;
    padding: 0 0;
    margin-left: 13px;
    text-align: left;
}
#top-flags a {
    display: block;
    line-height: 38px;
    height: 38px;
    font-size: 1.3rem;
    color: #1a1a1a;
    text-decoration: none;
    background-image: url('/data-central/img/front/bg-top-flags.png');
    background-position: left -38px;
    background-repeat: no-repeat;
}
#top-flags a.flags-czk {
    background-position: left top;
}
#top-flags a.flags-eur {
}
#top-flags a:hover {
    text-decoration: underline;
}
.top-flags a {
    padding: 1px 0 0 15px;
    background-image: url('/data-central/img/front/bg-top-flags.png');
    background-position: left -48px;
    background-repeat: no-repeat;
}
.top-flags a.flag-czk {
    background-position: left -10px;
}

.header-left-button {
    position: relative;
    float: left;
    width: auto;
    border: 0;
    padding: 0;
    z-index: 2;
}
/* Phase 63-B: hamburger přesunut z .header-left do .header-right (vpravo).
   První dítě + float:right → nejvíc vpravo nad existující float siblings
   (#top-kosik-ucet/#top-search-menu). Renderuje se jen na mobilu ({if $isMobile}).
   .header-left-button ponecháno (nepoužité) kvůli tenant override kompatibilitě. */
.header-right-button {
    position: relative;
    float: right;
    width: auto;
    border: 0;
    padding: 0;
    margin-left: 12px;
    z-index: 2;
}
/* Phase 63-E: inline SVG hlavičkové ikony (matrace tvary z reference sprite,
   #ic-account/#ic-cart/#ic-contact). fill:currentColor → dědí color → tenant
   brand barva (existující color: overridy fungují). Velikost nahrazuje FA
   font-size. */
.header-icon {
    display: inline-block;
    width: 30px;
    height: 30px;
    fill: currentColor;
    vertical-align: middle;
}
.header-icon--contact {
    width: 14px;
    height: 14px;
    position: relative;
    top: -1px;
}
/* Phase 63 desktop (.top--subblock restrukt): VŠECHNY header subblock SVG ikony
   (kontakt + účet + košík) = konzistentní 30px flex-item uvnitř .top--subblock
   (user 2026-06-04). #top-kosik-ucet scope pokrývá i kontaktní ikonu. */
#top-kosik-ucet .header-icon {
    width: 30px;
    height: 30px;
}
/* Phase 63 (user 2026-06-04): skrýt nadhlavičkový #top-block (šedá lišta Akce/
   Značky/.../EUR/telefon) — parita s matrace (nemá ho); zatím display:none
   (reverzibilní). Renderuje se jen na desktopu ({if !$isMobile}). */
#top-block {
    display: none;
}
.navigation-button {
    position: relative;
    padding: 0;
    /* Phase 63 (2026-06-04 user): hamburger 2.6rem (= parita s ceske-matrace,
       větší než ikony 26px) + tenčí stroke 2→1px (čistší/lehčí vzhled). */
    font-size: 2.6rem;
    text-decoration: none;
    display: inline-block;
    color: #000;
    -webkit-text-stroke: 1px #fff;
}
.header-left {
    position: relative;
    float: left;
    width: 24.3%;
    border: 0;
    padding: 0 15px 0 0;
    z-index: 2;
}
#top_bottom .header-left {
    width: 19.6%;
}
.index #top_bottom .header-left {
    /* Phase 64: container 1440→1710 (commit 4905df46) rozšířil menu kategorií i modré
       podbarvení (.head_menu + .columnLeft jsou 100% z .header-left). 24.3%→20.5% vrací
       menu na původní absolutní šířku (~350px @1710 = 24.3% @1440). header-right +3.8%. */
    width: 20.5%;
}
.linkHomePage {
    position: relative;
}
.linkHomePage.category_button {
    padding-right: 58px;
}
.linkHomePage a img {
    display: block;
    height: auto;
    max-width: 100%;
}

.header-right {
    position: relative;
    float: right;
    padding: 0 0 0 15px;
    width: 75.7%;
}
#top_bottom .header-right {
    width: 80.4%;
}
.index #top_bottom .header-right {
    /* Phase 64: +3.8% za zúžené .header-left (20.5%) → součet floatů zůstává 100%, žádná mezera. */
    width: 79.5%;
}
#top-search-menu {
    position: relative;
    float: right;
    max-width: 61%;
    width: 100%;
    z-index: 9000;
}
#navigation-search {
    display: none;
    position: relative;
    cursor: pointer;
    color: #000;
    font-size: 2.5rem;
    padding-top: 4px;
    -webkit-text-stroke: 2px #fff;
}
#top-search {
    position: relative;
}
.top-search-input {
    width: 100%;
    height: 52px;
    line-height: 52px;
    padding: 0 50px 0 30px;
    margin: 0;
    font-size: 1.3rem;
    color: #a7a7a7;
    border: 2px solid var(--search-border-color, #e3e3e3);
    -webkit-appearance: none!important;
    appearance: none!important;
    border-radius: 25px;
}
.top-search-button {
    position: absolute;
    bottom: 0;
    right: -1px;
    height: 52px;
    line-height: 52px;
    width: 52px;
    padding: 0;
    padding: 0;
    margin: 0;
    border: 0;
    background-color: var(--nav-bg, #000);
    border: 1px solid var(--search-border-color, #e3e3e3);
    border-left: 0 solid var(--search-border-color, #e3e3e3);
    cursor: pointer;
    color: #fff;
    border-radius: 0 25px 25px 0;
}
.top-search-button span {
    display: block;
    font-size: 2.4rem;
    -webkit-text-stroke: 1px #000;
    color: #fff;
}
.top-search-button:hover {
    background: var(--hover-accent-bg, var(--primary-color, #00c4ed));
}
.top-search-button:hover span {
    -webkit-text-stroke: 1px var(--hover-accent-stroke, var(--primary-color, #00c4ed));
    color: #fff;
}
#top_categoriesContent {
    position: absolute;
    right: 0;
    top: 8px;
    width: 48px;
    height: 38px;
    z-index: 1;
    display: block;
}
#categoriesContent_button {
    position: absolute;
    left: 0;
    top: -6px;
    line-height: 38px;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    font-size: 2.8rem;
    background-color: #000;
    border-radius: 6px 6px 6px 6px;
}
#categoriesContent_button span {
    position: relative;
    width: 100%;
    top: -1px;
}
#categoriesContent_button:hover {
    cursor: pointer;
}
#categoriesContent_button span:after {
    content: "";
    display: block;
    position: absolute;
    top: 18px;
    width: 100%;
    height: 10px;
    background-color: #000;
}
#categoriesContent_button:after {
    content: 'Menu';
    color: #fff;
    display: block;
    line-height: 10px;
    width: 100%;
    position: absolute;
    bottom: 6px;
    left: 0;
    text-transform: uppercase;
    font-size: 0.8rem;
    font-weight: bold;
    text-align: center;
}
#header .navigation-button {
    -webkit-text-stroke: inherit;
}
#categoriesContent_button.open {
    background-color: #e0e0e0;
    background-position: center -41px;
}
#top_categoriesContent .categories {
    position: absolute;
    right: 0;
    top: 38px;
    width: 244px;
    display: none;
    padding: 11px 0 0 0;
    background-color: transparent;
}
#top_categoriesContent:hover .categories {
    display: block;
}
#top_categoriesContent .categories.open {
    display: block;
}
#top_categoriesContent .categories .categoriesContent {
    padding: 5px 15px 2px 15px;
    border: 0 solid #ddd;
    border-radius: 6px 6px 6px 6px;
    box-shadow: 0 3px 5px 0 rgba(51,51,51,.3);
    background-color: var(--primary-color, #00c4ed);
}
#top_categoriesContent .categories .categoriesContent::after {
    transform: rotate(45deg);
    position: absolute;
    right: 14px;
    top: 5px;
    background: var(--primary-color, #00c4ed);
    border: 1px solid var(--primary-color, #00c4ed);
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-width: 1px 0 0 1px;
    content: '';
    display: block;
    height: 20px;
    margin: 0 0 -10px -12px;
    width: 20px;
}

#top-kosik-ucet {
    position: relative;
    float: right;
    padding: 0;
    width: 39%;
    z-index: 9000;
}
#top-kosik,
#top-mujucet,
.compare_heart,
#top-mujucet {
    position: relative;
    float: right;
    height: 34px;
    padding: 0;
}
.compare_heart,
#top-kosik {
    margin-left: 22px;
}
#top-kosik {
    padding-left: 28px;
    font-size: 1.6rem;
    text-align: right;
    /* --header-contact-text-color: čitelnost na tmavém headeru (Issue 1 2026-06-17).
       Default #1a1a1a = beze změny pro světlé headery; dark-header tenanti override na bílou. */
    color: var(--header-contact-text-color, #1a1a1a);
    z-index: 200;
}
#top-kosik span.fas {
    font-size: 2.5rem;
}
.compare_heart,
#top-mujucet {
    text-decoration: none;
    padding-left: 45px;
}
#top-kosik span.kosik-price,
#top-kosik span.kosik-price a,
#top-mujucet a {
    font-size: 1.2rem;
    font-weight: 300;
    /* Account links (Přihlášení/Registrace = vnoučata .subblock-content, mimo `> a`)
       + cena. Stejná proměnná jako #top-kosik-ucet, ale default #333 (zachová 40 světlých
       tenantů byte-identicky). Dark-header tenanti → bílá. Phase 7B BLOCKER fix 2026-06-17:
       bez tohoto by nemecke-kocarky-cz account links zůstaly #333 na hnědé (FAIL). */
    color: var(--header-contact-text-color, #333);
    text-align: left;
    padding: 0;
    line-height: 1.2;
    display: block;
}
/* Cart icon (.header-icon SVG, fill:currentColor) — generic `a{color:#1a1a1a}` (l.76)
   re-establishuje tmavou na <a> obalujícím ikonu → ikona zůstane #1a1a1a → neviditelná
   na tmavém headeru (Issue 1, desktop i mobil, user 2026-06-17). SCOPE záměrně
   `#top-kosik .header-icon` (NE `#top-kosik a` — to by zbarvilo i produktové linky
   v mini-cart dropdownu #obsah-kosiku bg:#FFF l.2028 → bílá na bílé na 8 dark tenantech).
   NE `.header-icon` globálně (přebilo by brand-tinted ikony světlých tenantů, např.
   fillikid mint #top-mujucet). Default #1a1a1a = 40 světlých tenantů byte-identicky
   (cart ikona je všude #1a1a1a); 8 dark tenantů :root override → bílá. */
#top-kosik .header-icon {
    color: var(--header-contact-text-color, #1a1a1a);
}
#top-kosik a:hover .header-icon {
    color: var(--primary-color, #00c4ed);
}
#top-kosik span.kosik-price a:hover,
#top-mujucet a:hover {
    color: var(--primary-color, #00c4ed);
}
#top-kosik span.kosik-price span,
#top-mujucet a.first {
    display: block;
    font-size: 2.2rem;
}
#top-kosik span.kosik-price a {
    text-decoration: none;
}
#top-mujucet {
    padding-left: 22px;
}
.compare_heart a {
    text-decoration: none;
}
.compare_heart span.fas,
.compare_heart span.far,
#top-mujucet span.far,
#top-kosik span.fas {
    position: absolute;
    left: 0;
    top: 4px;
    font-size: 2.4rem;
    padding: 0;
    text-decoration: none;
    color: #000;
}
.compare_heart.like span.fas,
.compare_heart.like span.far,
#top-mujucet span.far {
    font-size: 2.6rem;
}
#top-mujucet span.far {
    top: 4px;
    font-size: 2.4rem;
}
#top-kosik span.fas {
    -webkit-text-stroke: 2px #fff;
}
.compare_heart span.fas {
    -webkit-text-stroke: 1px #fff;
}

#top-kosik span.total-item,
.compare_heart span.total-item {
    display: block;
    position: absolute;
    left: 20px;
    bottom: 4px;
    width: 22px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    background-color: var(--primary-color, #00c4ed);
    border-radius: 100px;
    z-index: 10000;
}
#top-kosik:hover span.total-item,
.compare_heart:hover span.total-item {
    animation-name: total-item-icon-float, total-item-icon;
    animation-duration: .3s, 0.75s;
    animation-delay: 0s, .3s;
    animation-timing-function: ease-out, ease-in-out;
    animation-iteration-count: 1, infinite;
    animation-fill-mode: forwards;
    animation-direction: normal, alternate;
}
@keyframes total-item-icon {
    0% {
        transform:translateY(-8px)
    }
    100% {
        transform:translateY(0)
    }
}
@keyframes total-item-icon-float {
    100% {
        transform:translateY(-8px)
    }
}

/* === Phase 63 desktop (2026-06-04 user): matrace .top--subblock header pattern ===
   #top-kosik-ucet flex (kontakt + účet + košík), každý .top--subblock = ikona +
   .subblock-content sloupec (title + sub + otevírací-doba). id-scoped selektory
   override starý float/padding/kosik-price desktop layout. color:inherit →
   tenant brand barva hlavičky kaskáduje (multi-tenant). */
#top-kosik-ucet {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    float: none;
    width: auto;
    /* Hlavní barva textů kontakt/účet/košík. Proměnná --header-contact-text-color
       (default #1a1a1a pro světlé headery) dědí .subblock-content přes color:inherit.
       Dark-header tenanti (beneo-cz, besafe-cz, easywalker, maxitoys, moon, avova,
       nemecke) override na bílou — jinak #1a1a1a na tmavém = WCAG FAIL (~1.2). Issue 1 2026-06-17. */
    color: var(--header-contact-text-color, #1a1a1a);
}
#top-kosik-ucet .top--subblock,
#top-kosik-ucet #top-kosik,
#top-kosik-ucet #top-mujucet,
#top-kosik-ucet #top-kosik > div:not(#obsah-kosiku-obal) {
    display: flex;
    gap: 16px;
    align-items: center;
    float: none;
    height: auto;
    margin: 0;
    padding: 0;
    text-decoration: none;
    font-size: 1.2rem;
}
#top-kosik-ucet .top--subblock:not(:first-of-type) {
    padding-left: 14px;
}
#top-kosik-ucet .subblock-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.35;
    text-align: left;
    color: inherit;
}
#top-kosik-ucet .subblock-content > a {
    /* title = label (normální, parita s matrace — hodnota níže je bold) */
    font-size: 1.2rem;
    font-weight: 400;
    color: inherit;
    text-decoration: none;
    line-height: 1.25;
    display: block;
    padding: 0;
}
#top-kosik-ucet .subblock-content > a:hover {
    color: var(--primary-color, #00c4ed);
    text-decoration: underline;
}
#top-kosik-ucet .subblock-content > span {
    /* hodnota = telefon / cena (bold, prominentní — matrace) */
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    color: inherit;
    line-height: 1.2;
}
#top-kosik-ucet .subblock-content > span a {
    display: inline;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    text-decoration: none;
}
#top-kosik-ucet .subblock-content > span a:hover {
    color: var(--primary-color, #00c4ed);
}
#top-kosik-ucet .subblock-content span.store-opening-time {
    font-size: 1.1rem;
    font-weight: 400;
    /* Otevírací doba — sekundární šedá. Proměnná (default #7f7f7f) ať ji dark-header
       tenanti zesvětlí (na pure-black #7f7f7f vyhoví ~5.2, na mid-tone headeru ne). */
    color: var(--header-contact-subtext-color, #7f7f7f);
    line-height: 1.3;
    white-space: nowrap;
}
/* account: Přihlášení + Registrace pod sebe (2 řádky, lehčí než bold hodnota) */
#top-kosik-ucet .subblock-content span.account-actions {
    font-size: 1.2rem;
    font-weight: 500;
}
#top-kosik-ucet .subblock-content span.account-actions a {
    display: block;
    line-height: 1.45;
}

#obsah-kosiku-obal {
    padding-top: 7px;
    right: -1px;
    position: absolute;
    top: 40px;
}
#obsah-kosiku {
    background-color: #FFF;
    border: 2px solid var(--primary-color, #00c4ed);
    padding: 5px;
    width: 285px;
    z-index: 30;
    display: none;
    font-family: Arial, Verdana, Helvetica, sans-serif;
    box-shadow: 0 5px 6px #949494;
}
#obsah_header {
    height: 46px;
    line-height: 46px;
    padding: 0 15px;
    font-size: 1.6rem;
}
#obsah_header .left {
    color: #333;
}
#obsah_header .right a {
}

#obsah_header .right a:hover {
    text-decoration: none;
}
#kosik_content {
    position: relative;
    clear: both;
}
.kosik_produkt {
    border-top: 1px solid #d1d1d1;
    line-height: 130%;
    margin: 0;
    overflow: hidden;
    padding: 10px 10px;
    position: relative;
    background-color: #FFF;
}
.kosik_produkt .listing_foto {
    float: left;
    padding: 0;
    height: auto;
    width: auto;
}
.kosik_produkt .ikony {
    display: none;
}
.kosik_produkt .ceny {
    position: relative;
    float: right;
    width: 150px;
    height: 16px;
    margin: 0;
    border: 0;
    font-family: Arial, Verdana, Helvetica, sans-serif;
}
.kosik_produkt .ceny .doporucena-cena,
.kosik_produkt .ceny .doporucena-cena-hodnota,
.kosik_produkt .ceny .nase-cena,
.kosik_produkt .ceny .nase-cena-hodnota {
    position: relative;
    display: block;
    font-size: 1.4rem;
    color: #999999;
}
.kosik_produkt .ceny .nase-cena-hodnota {
    color: #000000;
    font-weight: bold;
}
.kosik_produkt .sleva-hodnota {
    position: absolute;
    top: -35px;
    left: -101px;
    padding: 3px 0;
    background-color: #d5021b;
    font-size: 1.6rem;
    font-weight: bold;
    color: #FFF;
    width: 45px;
    text-align: center;
}
.kosik_produkt h3.itemTitle {
    position: relative;
    float: right;
    width: 150px;
    height: 47px;
    padding: 0;
    margin: 7px 0 5px 0;
}
.kosik_produkt h3.itemTitle a {
    text-align: right;
}
#obsah_bottom {
    background-color: #e5e9ea;
    padding: 20px 10px;
    clear: both;
}
#obsah_bottom a {
    display: inline;
    float: none;
    color: #FFF;
}
#obsah_bottom span {
    background-color: var(--primary-color, #00c4ed);
    color: #FFFFFF;
    display: block;
    font-size: 1.8rem;
    height: 40px;
    width: 100%;
    line-height: 40px;
    text-align: center;
    font-weight: bold;
}
#obsah_bottom strong {
    font-weight: bold;
    padding-left: 15px;
}
#obsah-kosiku .obsah_info {
    color: #333;
    padding: 10px 15px;
    text-align: center;
    font-size: 1.6rem;
}
#obsah-kosiku .obsah_info strong {
    color: #f9373f;
    text-transform: uppercase;
}

#top_bottom {
    position: relative;
}
#top_bottom .header-left,
#top_bottom .header-right {
    padding-top: 0;
    padding-bottom: 0;
}

.head_menu {
    width: 100%;
}
.head_menu a {
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    padding: 10px 0;
    justify-content: center;
    letter-spacing: 1px;
    font-size: 1.6rem;
    font-weight: normal;
    text-transform: uppercase;
    line-height: 35px;
    background: var(--primary-color, #00c4ed);
    color: #fff;
    transition: all 0.35s ease 0s;
}
.head_menu span.fas {
    font-size: 2.2rem;
    padding-right: 17px;
}
.head_menu a,
.head_menu a:hover {
    text-decoration: none;
    color: white;
}

/* --- 5. MENU (top-menu-1) --- */

#top-menu-1 {
    height: 53px;
    z-index: 8929;
    padding: 0;
    background-color: #eb008c;

}

.topsubmenu,
#top-menu-1 .categoriesContent {
    position: relative;
    list-style: none outside none;
    margin: 0;
    padding: 0;
    width: 100%;
    display: table;
}

#top-menu-1 a.top-menu-1,
#top-menu-1 .categoriesContent .category-top {
    position: relative;
    margin: 0;
    padding: 0 15px;
    font-size: 1.6rem;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    display: block;
    text-align: center;
    z-index: 2001;
    line-height: 53px;
    background-color: transparent;
}

#top-menu-1 a.top-menu-1:hover,
#top-menu-1 a.top-menu-1.active,
#top-menu-1 .categoriesContent .category-top:hover,
#top-menu-1 .categoriesContent .category-top.selected {
    color: #000;
    text-decoration: none;
    border-bottom: 2px solid #000;
}
#top-menu-1 .categoriesContent .category-top:hover,
#top-menu-1 .categoriesContent .category-top.selected {
    border-bottom: 0 solid #000;
}

.topsubmenu li,
#top-menu-1 .categoriesContent .category-top {
    display: table-cell;
}

.topsubmenu div.subDiv{
    display: none;
    position: absolute;
    top: 53px;
    left: 0;
    width: 100%;
    background-color: #fff;
    border: 2px solid #eb008c;
    border-top: 0 solid #eb008c;
    color: #000;
    padding: 0 4.28%;
}

.topsubmenu div.menuSloupec {
    position: relative;
    float: left;
    border-left: 1px solid #d8d8d8;
    width: 20%;
    min-height: 280px;
    margin: 55px 0;
    padding: 0 34px;
}
.topsubmenu div.menuSloupec.produkt {
    margin: 0;
    padding-top: 30px;
    min-height: calc(280px + 110px);
}
.topsubmenu div.menuSloupec.produkt.two {
    border-left: 0 solid #d8d8d8;
}

.topsubmenu div.menuSloupec.frst {
    border-left: 0 solid #d8d8d8;
    padding-left: 15px;
}

.topsubmenu div.menuSloupec h2,
.topsubmenu div.menuSloupec h2 a {
    font-weight: bold;
    font-size: 1.8rem;
    float: none;
    color: #000;
    text-transform: uppercase;
    padding: 0;
    margin: 5px 0 15px 0;
    text-decoration: none;
}

.topsubmenu div.menuSloupec h2 a:hover {
    color: #eb008c;
}

.topsubmenu div.menuSloupec a.subCtg {
    display: block;
    padding: 5px 0;
    margin: 2px 0 2px 0;
    color: #666666;
    text-decoration: none;
    float: none;
    line-height: 100%;
    font-size: 1.5rem;
    font-weight: normal;
}
.topsubmenu div.menuSloupec.link a.subCtg {
    font-size: 1.8rem;
    color: #000;
    text-transform: uppercase;
}
.topsubmenu div.menuSloupec a.subCtg:hover {
    color: #eb008c;
}
.topsubmenu div.menuSloupec a.all_category {
    position: absolute;
    left: 34px;
    bottom: 20px;
    display: block;
    padding: 0;
    margin: 0;
    color: #000;
    text-decoration: none;
    float: none;
    line-height: 100%;
    font-size: 1.5rem;
    font-weight: normal;
}
.topsubmenu div.menuSloupec.frst a.all_category {
    left: 15px;
}
.topsubmenu div.menuSloupec a.all_category:hover {
    color: #eb008c;
}

.topsubmenu div.menuSloupec.produkt .centerBoxContentsProducts {
    width: 100%;
    margin: 0;
    padding: 0;
}
.topsubmenu div.menuSloupec.produkt .centerBoxContentsProducts .listing_foto {
    padding: 0;
}
.topsubmenu div.menuSloupec.produkt .centeredContent .sleva {
    font-size: 2rem;
}
.topsubmenu div.menuSloupec.produkt .detail span {
    color: #000;
    text-decoration: none;
    font-size: 3rem;
    margin-top: 3px;
}
.topsubmenu div.menuSloupec.produkt .detail:hover span {
    color: #fecc00;
}
div.bannerListing {
    position: relative;
    display: block;
    grid-column: span 2;
    float: left;
    padding: 0 0;
    margin: 0 0;
}
div.bannerListing img {
    width: 100%;
    display: block;
    height: auto;
}
div.bannerListing_none {
    display: none;
}

/* --- 9. SIDEBAR / LEFT --- */

.columnLeft {
    float: left;
    width: 19.6%;
    padding: 0 15px 0 0;
}
.index .columnLeft {
    position: absolute;
    top: 55px;
    left: 0;
    width: 100%;
    display: none;
}
.index #top_bottom .header-left:hover .columnLeft {
    display: block;
}

.leftBoxContainer {
    padding: 0;
    margin: 0;
}

#newsscroller {
    clear: both;
    border: 1px solid #e3e3e3;
    margin: 55px 0 10px 0;
    padding: 25px 22px;
}

.newsscrollerHeading {
    margin: 70px 0 10px 0;
    padding: 0 0 5px 0;
    font-size: 2.4rem;
    text-transform: uppercase;
}

.newsscrollerHeading a {
    color: #ae2130;
    text-decoration: none;
}

.newsscrollerContent {
    margin: 5px 0;
}

a.newsscrollerName {
    display: block;
    font-size: 1.4rem;
    padding: 15px 0;
    font-weight: bold;
    color: #353535;
}

a.vice-zde {
    font-size: 1.1rem;
    padding: 5px 0 15px 0;
    display: block;
    text-align: right;
    clear: both;
    text-transform: uppercase;
}
/******** Aktuality ********/

.newsHeadlineText,
.articleByLine {
    float: left;
    padding: 5px 0;
    color: #7f7f7f;
}

.articleByLine {
    padding-left: 20px;
}

/********** LEFT Menu **********/

.nav_arrow {
    display: none;
}
.index .nav_arrow {
    display: none;
}

#left_categoriesContent {
    position: relative;
    width: 100%;
}
#left_categoriesContent .categories {
    position: absolute;
    left: 0;
    top: 55px;
    width: 100%;
    display: none;
}
#left_categoriesContent:hover .categories {
    display: block;
}

.categories {
    position: relative;
    padding: 0;
    margin: 0;
    clear: both;
    text-align: left;
    background-color: #fff;
}
.header-left .categories {
    border: 1px solid #e3e3e3;
    border-top: 0 solid #e3e3e3;
}
.header-left .categories {
    padding: 14px;
    border-radius: 0 0 10px 10px;
}
#stranka .categories .categoriesContent {
    padding: 5px 20px 2px 20px;
    border: 0 solid #ddd;
    background-color: var(--primary-color, #00c4ed);
    border-radius: 6px 6px 6px 6px;

}
#stranka .header-left .categories .categoriesContent {
    padding: 5px 10px 2px 10px;

}
.categories ul li {
    list-style-type: none;
    display: block;
}
#stranka .categoriesContent {
    margin-bottom: 24px;
    text-align: left;
}

.leftBoxContainer a.category-top,
.leftBoxContainer .category-top.nav-show-more {
    position: relative;
    font-weight: 500;
    letter-spacing: 1px;
    font-size: 1.6rem;
    margin: 0;
    padding: 11px 0 11px 11px;
    color: #333;
    text-decoration: none;
    display: block;
    text-align: left;
    text-transform: uppercase;
    transition: all 0.35s ease 0s;
}
.leftBoxContainer .category-top.nav-show-more {
    text-transform: inherit;
}
.leftBoxContainer .category-top.nav-show-more:hover {
    cursor: pointer;
}
.leftBoxContainer .category-top.nav-show-more {
    color: #333;
}
.leftBoxContainer .category-top.nav-show-more span {
    padding-left: 4px;
}
.index .header-left .leftBoxContainer a.category-top {
}
.leftBoxContainer a.category-top.last,
.leftBoxContainer .category-top.nav-show-more {
    border-bottom: 0 solid #e0e0e0;
}
.header-left .leftBoxContainer a.category-top:hover,
.header-left .leftBoxContainer a.category-top.selected,
.leftBoxContainer .category-top.nav-show-more:hover {
    color: var(--primary-color, #00c4ed);
}

.category-1-space {
    height: 8px;
}

a.category-1 {
    margin: 0;
    padding: 6px 10px 6px 18px;
    font-size: 1.4rem;
    color: #454545;
    text-decoration: none;
    display: block;
}

a:hover.category-1,
a.category-1.selected {
    color: #000;
}

a.category-2 {
    margin: 0;
    padding: 5px 10px 5px 45px;
    font-weight: normal;
    font-size: 1.4rem;
    color: #000;
    text-decoration: none;
    border-bottom: 1px solid #e3e3e3;
    display: block;
}

a:hover.category-2,
a.category-2.selected {
    color: #bad401;
}

a.category-3 {
    margin: 0;
    padding: 5px 10px 5px 45px;
    font-weight: normal;
    font-size: 1.1rem;
    color: #6A6A6A;
    text-decoration: none;
    border-bottom: 1px #D8D8D8 solid;
    display: block;
}

a:hover.category-3 {
    color: #FE0000;
    display: block;
}

.category-subs-parent, .category-subs-selected {
    color: #FE0000;
}

.category-1-space_t {
    height: 9px;
}
.category-1-space_d {
    height: 20px;
}

#leftmenu-znacky {
    position: relative;
    clear: both;
    margin-top: 35px;
    float: left;
    padding: 0 10px;
}
#leftmenu-znacky h4 {
    font-size: 1.6rem;
    margin-bottom: 25px;
    color: #7f7f7f;
}
#leftmenu-znacky li {
    display: block;
    float: left;
    width: 50%;
}
#leftmenu-znacky a {
    display: block;
    width: 100%;
    font-size: 1.2rem;
    text-decoration: none;
    padding: 3px 0;
    color: #7f7f7f;
}
#leftmenu-znacky a:hover {
    text-decoration: underline;
}
#leftmenu-znacky a.znacky-ostatni {
    font-style: italic;
    color: #e80462;
}

/* --- 10. SERVICES --- */

.services,
.services .services--in {
    display: flex;
    gap: 34px;
    margin: 0;
    text-align: left;
}
.services .services--in {
    gap: 24px;
    width: 25%;
    align-items: center;
}
.services .services--in img {
    border-radius: 10px;
    max-width: 100px;
}
.services .services--in h3 {
    font-weight: normal;
    font-size: 2.2rem;
    color: var(--primary-color, #00c4ed);
    margin: 0 0 6px 0;
    line-height: 1.2;
    min-height: 53px;
}
.services .services--in p {
    font-size: 1.2rem;
    color: #a7a7a7;
}
.services .services--in div {
    height: 100%;
    display: grid;
    grid-template: 1fr / auto;
    grid-template-rows: 1fr;
    grid-template-rows: max-content;
    justify-items: left;
}
.services .services--in div a {
    align-self: end;
    margin-top: 8px;
}

/* --- 10. SERVICES (Proc Bibik) --- */

.proc-block {
    display: grid;
    grid-template: auto / repeat(4,1fr);
    gap: 20px;
}
.proc-block__in {
    background: rgb(205,169,113,0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 54px 26px 46px 26px;
    color: #666;
    border-radius: 10px;
}
.proc-block__in h3 {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 18px 0 8px 0;
    line-height: 1.4;
}
.proc-block__in i {
    font-size: 3.6rem;
    color: var(--proc-block-icon-color, currentColor);
}
.proc-block__in p {
    font-size: 1.2rem;
}

/* --- 10. SERVICES (Doprava) --- */

.block-doprava {
    display: flex;
    gap: 34px;
    margin: 24px 0;
    text-align: left;
}
.block-doprava.prodejny {
    color: #fff;
}
.block-doprava.orion,
.block-doprava.siko {
    color: inherit;
}
.block-doprava--in {
    width: calc(100% / 3);
    border-radius: 0 0 10px 10px;
    background: #f1f1f1;
}
.prodejny .block-doprava--in {
    width: 50%;
    background: #ffde33;
}
.orion .block-doprava--in {
    width: 100%;
    background: #86d3e1;
}
.siko .block-doprava--in {
    background: #ffef29;
}
.sluzby .block-doprava--in {
    width: 50%;
    background: transparent;
}
.sluzby.tonovani .block-doprava--in {
    width: calc(100% / 3);
}
.sluzby.tonovani {
    align-items: center;
    justify-content: center;
}
.sluzby.tonovani img {
    max-height: 400px;
}
.block-doprava--in > div {
    display: block;
    padding: 14px;
}
.prodejny .block-doprava--in > div {
    padding: 20px;
}
.block-doprava--in > div h3 {
    color: var(--primary-color, #00c4ed);
    font-size: 1.8rem;
    margin-bottom: 14px;
}
.orion .block-doprava--in > div h3 {
    color: #211f51;
}
.siko .block-doprava--in > div h3 {
    color: red;
}
.prodejny .block-doprava--in > div h3 {
    border-bottom: 1px dotted #fff;
    padding-bottom: 14px;
}
.siko .block-doprava--in > div h3 {
    border-color: #000;
}
.prodejny .block-doprava--in > div a {
    color: var(--primary-color, #00c4ed);
}
.siko .block-doprava--in > div a,
.orion .block-doprava--in > div a {
    color: inherit;
}
.prodejny ul {
    padding: 0;
    margin: 0;
    width: 50%;
}
.prodejny ul li {
    list-style-type: none;
    line-height: 1.2;
    font-size: 1.4rem;
    padding: 3px 0;
}
.prodejny .block-doprava--in > div div {
    display: flex;
    gap: 20px;
}
.prodejny .block-doprava--in ul li span.open-time {
    display: inline-block;
    width: 105px;
}


/* --- 11. FOOTER --- */

#bottom .container_in,
#bottom-2 .container_in {
    background-color: #f1f1f1;
}

#bottom-0 .banner_bottom_out {
    display: flex;
    background-color: #000;
    border-radius: 10px 10px 0 0;
}
#bottom-0 .banner_bottom_out > div {
    width: calc(100% / 5);
    text-align: center;
}
#bottom-0 .banner_bottom_out > div a {
    height: 100%;
}
#bottom-0 .banner_bottom_out .banner_bottom_a {
    display: flex;
    flex-direction: column;
    color: #fff;
    font-size: 1.6rem;
    font-weight: normal;
    text-decoration: none;
    padding: 38px 0;
}
#bottom-0 .banner_bottom_out a.banner_bottom_a:hover {
    color: var(--primary-color, #00c4ed);
}
#bottom-0 .banner_bottom_out .banner_bottom_a img {
    margin-bottom: 12px;
}

#bottom .container_in {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 20px;
    padding: 1.6% 4.7%;
}
.footerbox {
    position: relative;
    float: left;
    width: calc(100% / 3);
    padding: 28px 0;
}
.footerbox-full {
    width: 100%;
    border-top: 1px solid #d9d9d9;
    display: flex;
    gap: 15px;
}
.footerbox-full .footerbox {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
}
span.bottom_title {
    padding: 0 0 25px 0;
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    font-weight: bold;
    color: #000;
}
.footerbox-full span.bottom_title {
    padding-bottom: 5px;
}
#bottom .container ul {
    padding: 0;
    margin: 0;
}
#bottom .container .footerbox-full ul {
    padding-bottom: 15px;
}
#bottom .container ul li {
    list-style-type: none;
    line-height: 1.2;
    font-size: 1.3rem;
    color: #000;
    padding: 3px 0;
}
#bottom .container li a {
    padding: 0 0;
    color: #000;
    text-decoration: none;
}
#bottom .container li a:hover {
    color: var(--primary-color, #00c4ed);
}
.open-time {
    display: inline-block;
    width: 60px;
}
.bottom_right {
    display: flex;
    justify-content: right;
    gap: 15px;
}
.bottom_right .footerbox {
    width: auto;
}
#bottom .container .bottom_right .footerbox {
    height: 100%;
    display: grid;
    grid-template: auto / 1fr;
    grid-template-rows: max-content;
    padding-bottom: 26px;
}
.kontakt-map {
    align-self: end;
}
.kontakt-map a {
    position: relative;
    display: inline-block;
    padding: 6px 0 0 0;
}
.kontakt-map a img {
    display: block;
    border-radius: 10px 10px 0 0;
}
.kontakt-map a::after {
    content: "Najít na mapě";
    display: block;
    line-height: 26px;
    color: #fff;
    font-weight: 300;
    font-size: 1.2rem;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -26px;
    background-color: #000;
    border-radius: 0 0 10px 10px;
    transition: all 0.35s ease 0s;
}
.kontakt-map a:hover::after {
    background-color: var(--primary-color, #00c4ed);
}
#bottom-2 .container_in {
    padding: 1.2% 4.7% 0 4.7%;
}
#novinky-akce {
    display: flex;
    gap: 24px;
    align-items: center;
    padding: 18px 25px;
    background: #f291c2;
    border-radius: 10px;
}
#novinky-akce .novinky_in {
    display: flex;
    gap: 16px;
    align-items: center;
    color: #fff;
}
#novinky-akce .novinky_in strong {
    font-size: 2.6rem;
    font-weight: bold;
    display: block;
    padding-bottom: 2px;
}
#novinky-akce .novinky_in span {
    font-size: 1.2rem;
    font-weight: 300;
    display: block;
}
#novinky-akce #frm-subscribe-subscribersForm {
    flex: 1;
    min-width: 200px;
}
.odber-novinek-bottom {
    position: relative;
    width: 100%;
}
.odber-novinek-bottom .input-odber {
    color: #797979;
    height: 40px;
    line-height: 40px;
    border: 0 solid #333e48;
    padding: 0 46px 0 20px;
    font-size: 1.4rem;
    border-radius: 10px;
    width: 100%;
}
.odber-novinek-bottom .button-odber {
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    padding: 0;
    text-align: center;
    color: #f291c2;
    border: 0;
    background-color: transparent;
    font-size: 2rem;
}
.odber-novinek-bottom .button-odber:hover {
    cursor: pointer;
    color: var(--primary-color, #00c4ed);
}
.odber-novinek-bottom .butt-text{
    display: none;
}
.bottom_copyright {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.6% 0;
    color: #333;
}
.bottom_copyright .copyright.left {
    display: flex;
    align-items: center;
    gap: 18px;
}
.bottom_copyright .copyright.left img {
    display: block;
    max-width: 107px;
    height: auto;
}
.copyright a {
    text-decoration: none;
    padding: 0;
    color: #333;
}
.copyright a:hover {
    color: var(--primary-color, #00c4ed);
}
.copyright.left a:last-child {
    padding-left: 0;
}
.copyright.right {
    text-align: right;
    display: flex;
    align-items: center;
    gap: 10px;
}
.copyright.right div {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 2rem;
}
.copyright.right div .fa-tiktok {
    font-size: 1.8rem;
}
#bottom-img {
    position: relative;
    display: block;
    width: 100%;
    height: 5px;
    background: rgb(55,81,156);
    background: linear-gradient(90deg, rgba(55,81,156,1) 0%, rgba(55,81,156,1) 15%, rgba(200,48,60,1) 32%, rgba(241,200,74,1) 50%, rgba(189,224,80,1) 68%, rgba(5,105,105,1) 85%, rgba(5,105,105,1) 100%);
}

/***********************/

.conversion {
    position: fixed;
}

/* ********* subscribe ******** */
#odber1 {
    background-color: #e3e3e3;
    border: 1px solid #c4c4c4;
    clear: both;
    margin: 20px 0 0;
    min-height: 55px;
    padding: 15px;
    position: relative;
    width: 100%;
}
#odber-novinek-center p {
    color: #000;
    float: left;
    font-weight: bold;
    margin: 0;
    padding: 0 10px 0 0;
    position: relative;
}
#odber1 .input-text {
    position: relative;
    height: 24px;
    margin: 0 5px 0 0;
    padding: 19px 25px;
    width: 250px;
}
#odber1 .button-odber {
    position: relative;
    float: right;
    border: 0 none;
    cursor: pointer;
    height: 40px;
    background-color: #c4c4c4;
    color: #fff;
    padding: 0 10px;
}
#odber1 .button-odber:hover {
    background-color: #000;
}

/* --- 12. MANUFACTURERS --- */

.oblast_abecedy a.pismena {
    float: left;
    font-weight: bold;
    font-size: 1.8rem;
    margin-right: 10px;
    display: block;
    color: var(--primary-color, #00c4ed);
}

.oblast_vyrobcu {
    padding-top: 10px;
}

.oblast_vyrobcu h2 {
    float: left;
    color: var(--primary-color, #00c4ed);
    font-size: 2.8rem;
    margin: 10px 0 0 0;
    padding: 5px 10px;
    text-align: center;
    background-color: #f0f0f0;
    clear: both;
}

.vyrobci_pismeno_oblast {
    background-color: #f0f0f0;
    padding: 6px 10px;
    clear: both;
}

a.vyrobce_nazev {
    float: left;
    margin-right: 12px;
    margin-top: 4px;
    margin-bottom: 4px;
    font-size: 1.4rem;
    font-weight: normal;
    display: block;
    color: #34353A;
}

/* --- 13. BEST SELLERS --- */

#vice-nejprodavanějsi-box.zkraceny {
    display: none;
}

.best_out {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 15px 0 20px 0;
}

#best {
    position: relative;
    clear: both;
    width: 57%;
    float: left;
    margin: 0;
}
#best h2 {
    font-weight: normal;
    text-transform: uppercase;
    font-size: 1.4rem;
    font-weight: bold;
    color: #333;
}
#best .index-0 {
    position: relative;
    clear: both;
    width: 100%;
    padding: 14px 0;
    border-bottom: 1px solid #e3e3e3;
    min-height: 71px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
#best .index-0 .index_left {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 16px;
}
#best .index-0 .index_left_1,
#best .index-0 .index_left_2 {
    position: relative;
}
#best .index-0 .index_left_2 img {
    display: block;
    max-width: 60px;
    height: auto;
}
#best .index-0 .index_left_1 {
    padding: 0;
    color: #333;
    font-size: 1.4rem;
    font-weight: bold;
}
#best .index-0 .index_center {
    position: relative;
}
#best .index-0 .index_center .center_top a,
#best .index-0 .index_center .center_top span,
#best .index-0 .index_center .center_top .dostupnost_text {
    position: relative;
    float: left;
}
#best .index-0 .index_center .center_top a {
    padding: 0 6px 0 0;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: normal;
}
#best .index-0 .index_center .center_top a:hover {
    text-decoration: underline;
}
#best .index-0 .index_center .center_top .dostupnost_text {
    padding: 0;
    color: #45b955;
}
#best .index-0 .index_center .center_top span {
    padding: 0 10px;
}
#best .index-0 .index_center .center_bottom {
    position: relative;
    clear: both;
    display: block;
    padding-top: 2px;
    text-align: left;
    color: #333;
    font-size: 1.2rem;
    font-weight: 300;
}
#best .index-0 .index_right {
    text-align: right;
    min-width: 138px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
#best .index-0 .index_right .doporucena-cena-nazev,
#best .index-0 .index_right .doporucena-cena-hodnota {
    color: #7f7f7f;
    font-size: 1.4rem;
}
#best .index-0 .index_right .doporucena-cena-nazev,
#best .index-0 .index_right .doporucena-cena-hodnota,
#best .index-0 .index_right .nase-cena-nazev,
#best .index-0 .index_right .nase-cena-hodnota {
    position: relative;
    display: inline-block;
}
#best .index-0 .index_right .nase-cena-hodnota {
    color: #000;
    font-size: 1.6rem;
    font-weight: bold;
}
#best .index-0 .index_right .nase-cena {
    position: relative;
    font-size: 1.6rem;
    width: 100%;
}
#best .index-0 .index_right .sleva {
    display: none;
    font-size: 1.6rem;
    font-weight: bold;
    background-color: #ff0000;
    color: #fff;
    padding: 0;
    text-align: center;
    line-height: 120%;
    width: 45px;
    min-width: 45px;
    height: 45px;
    line-height: 45px;
    padding: 0;
    border-radius: 50% 50% 50% 50%;
}

#nejprodavanejsi-button {
    margin-bottom: 15px;
    text-align: center;
    padding: 0 0;
}
#nejprodavanejsi-button a {
    text-decoration: none;
    display: inline-block;
    line-height: 28px;
    padding: 0 20px;
    background: #f1f1f1;
    font-size: 1.4rem;
    font-weight: 500;
    color: #333;
    border-radius: 0 0 10px 10px;
}
#nejprodavanejsi-button a:hover {
    color: var(--primary-color, #00c4ed);
}
#nejprodavanejsi-button a span {

}
#nejprodavanejsi-button a span.fas {
    padding-right: 5px;
    font-size: 2.4rem;
    padding-top: 0;
}
#nejprodavanejsi-button a:hover {
    text-decoration: underline;
}

/* --- 14. LISTING --- */


.productListing,
.special-productlist-box,
.vsechny-barevne-varianty {
    position: relative;
    width: 100%;
    clear: both;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
.special-productlist-box {
    grid-template-columns: repeat(5, 1fr);
}

.centerBoxContentsProducts {
    position: relative;
    float: left;
    font-size: 1.4rem;
    margin: 0 0;
    padding: 0 0;
    width: 100%;
    border: 1px solid #e3e3e3;
    border-right: 0 solid #e3e3e3;
    border-bottom: 0 solid #e3e3e3;
    transition: box-shadow 0.3s ease 0s;
}
.centerBoxContentsProducts-in {
    position: relative;
    width: 100%;
    height: 100%;
    display: grid;
    grid-template: 1fr / auto;
    grid-template-rows: max-content;
    margin: 0;
    padding: 14px 14px;
    background: #fff;
    transition: all 0.35s ease 0s;
}
.productListing .centerBoxContentsProducts-in {
    padding-top: 24px;
    padding-bottom: 24px;
}
.container-in .centerBoxContentsProducts {
    border: 0 solid #e3e3e3;
}
/* HP „Dnes pro Vás vybíráme" karty jsou v .container-in (kvůli slideru) → pravidlo výše
   jim ruší orámování. Vrátit slabé orámování (top+left 1px) shodné s ostatními listingy
   i sesterským HP blokem „Navštívené produkty" (ten v .container-in není). id-scope přebije
   .container-in override. Měřeno: navstivene = top:1px left:1px right:0 bottom:0 #e3e3e3. */
#snippet-tabProductListFirst-tabList .centerBoxContentsProducts {
    border: 1px solid #e3e3e3;
    border-right: 0 solid #e3e3e3;
    border-bottom: 0 solid #e3e3e3;
}
.centerBoxContentsProducts-in:after {
    content: '';
    width: 100%;
    display: block;
    z-index: -1;
    border: 1px solid #ddd;
    background: #fff;
    border-radius: 5px 5px 5px 5px;
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    box-shadow: 0 0 5px 0 #c6c6c6;
    transition: all 0.35s ease 0s;
    transform: rotateX(45deg);
    transform-origin: bottom;
    opacity: 0;
}
.centerBoxContentsProducts .starsRate {
    position: relative;
    text-align: center;
    margin: -20px 0 0 0;
}
.starsRate .starsBackground {
    background-image: url('/data-central/img/front/stars_product.png');
    background-position: left top;
    background-repeat: no-repeat;
    height: 16px;
    width: 105px;
    display: inline-block;
    margin: 2px 0;
}
.starsRate .starsForeground {
    background-image: url('/data-central/img/front/stars_product.png');
    background-position: left -16px;
    background-repeat: no-repeat;
    height: 16px;
}
.centerBoxContentsProducts .loading {
    display: none;
    height: 24px;
    left: 50%;
    margin: -12px 0 0 -12px;
    position: absolute;
    top: 50%;
    width: 24px;
    border: 3px solid #e0e0e0;
    border-top-color: #999;
    border-radius: 50%;
    animation: css-spinner 0.7s linear infinite;
    box-sizing: border-box;
}
.loadingbox {
    background: rgba(255, 255, 255, 0.85);
    display: none;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    z-index: 1000;
    text-align: center;
}
.loadingbox::after {
    content: '';
    display: inline-block;
    width: 32px;
    height: 32px;
    margin-top: 50px;
    border: 3px solid #e0e0e0;
    border-top-color: #999;
    border-radius: 50%;
    animation: css-spinner 0.7s linear infinite;
}
.centerBoxContentsProducts .color-image-brand {
    display: none;
}
.listing_foto .hide-image-brand {
    display: none;
}
.listing_foto {
    position: relative;
    text-align: center;
}
.centerBoxContentsProducts .listing_foto {
    width: 100%;
    padding: 0 0 10px 0;
    background-color: #fff;
}
.listing_foto a img {
    margin: 0;
    padding: 0;
    border: 0;
    max-width: 100%;
    height: auto;
}

.centerBoxContentsProducts-in .product-button .button-shoping-in,
.services div a {
    position: relative;
    display: block;
    background: #000;
    line-height: 26px;
    padding: 0 25px;
    font-size: 1.1rem;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    color: #fff;
    border-radius: 5px;
}
.services div a {
    text-transform: none;
}
.centerBoxContentsProducts-in .product-button .button-shoping-in:hover,
.services div a:hover {
    background: var(--primary-color, #00c4ed);
}

/* Phase 72-G: variant quick-add na kartě — velikostní selektor + ICON-ONLY add tlačítko vedle něj.
   SCOPE: core (flag listing.variantQuickAdd — goldex + beneo ON, kamnax OFF). Look&feel: brandový select
   (vlastní šipka, focus = primary-color) + kompaktní black-pill add s ikonou košíku (bez textu →
   úspora místa v úzké kartě). Layout = flex row, select flex:1, tlačítko auto. Bez !important. */
/* DVA layouty quick-addu na kartě (product-info = flex space-between, cena vlevo):
   • VARIANTNÍ produkt (.card-variant-quickadd BEZ .card-quickadd-single): select velikosti +
     icon tlačítko na VLASTNÍM PLNÉM řádku POD cenou (select potřebuje šířku na „velikost XX").
     Jen pro tento případ zalomíme product-info (flex-wrap) přes :has().
   • NEVARIANTNÍ produkt (.card-quickadd-single): jen kompaktní icon „koupit" tlačítko INLINE
     VEDLE ceny — product-info zůstává space-between, ŽÁDNÉ zalomení (pravidlo .card-quickadd-single
     níže). Proto :not(.card-quickadd-single) v obou selektorech zde.
   :has() podpora 2024+; fallback (starý prohlížeč, variantní karta) = vedle ceny (funkční). */
.product-info:has(.card-variant-quickadd:not(.card-quickadd-single)) {
    flex-wrap: wrap;
}
.centerBoxContentsProducts-in .product-button.card-variant-quickadd:not(.card-quickadd-single) {
    flex: 1 0 100%;
    width: 100%;
    margin-top: 6px;
    /* responsive-stylesheet.css skrývá .product-button na mobilu (display:none) — quick-add
       chceme i na mobilu (variant produkt = volba velikosti). Vyšší specificita přebije
       mobilní .product-button (0,1,0) bez ohledu na pozdější load responsive souboru. */
    display: block;
}
.card-variant-quickadd form {
    display: flex;
    gap: 6px;
    align-items: stretch;
}
.card-variant-quickadd .card-variant-select-wrap {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
}
.card-variant-quickadd .card-variant-select-wrap::after {
    content: '';
    position: absolute;
    right: 10px;
    top: 50%;
    width: 7px;
    height: 7px;
    margin-top: -6px;
    border-right: 2px solid #878787;
    border-bottom: 2px solid #878787;
    transform: rotate(45deg);
    pointer-events: none;
}
.card-variant-quickadd .card-variant-select {
    width: 100%;
    height: 100%;
    line-height: 1.2;
    /* menší horizontální padding ať se „velikost XX" vejde i v úzkém mobilním selectu */
    padding: 7px 24px 7px 9px;
    font-size: 1.2rem;
    color: #333;
    background: var(--white-color, #fff);
    border: 1px solid var(--category-border-color, #d8d8d8);
    border-radius: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    text-overflow: ellipsis;
}
.card-variant-quickadd .card-variant-select:hover {
    border-color: #b0b0b0;
}
.card-variant-quickadd .card-variant-select:focus {
    outline: none;
    border-color: var(--primary-color, #00c4ed);
}
/* ICON-ONLY add tlačítko vedle selectu. font-size:0 skryje textovou node z Multiplier
   prototypu (button > span.button-shoping-in > i + „Přidat do košíku"), ikona se vrátí přes
   explicitní font-size. Vyšší specificita (.product-button.card-variant-quickadd) přebije
   base .button-shoping-in (display:block, padding 0 25px). */
.centerBoxContentsProducts-in .product-button.card-variant-quickadd .button-shoping-in {
    flex: 0 0 auto;
    width: auto;
    padding: 0 14px;
    font-size: 0;
    line-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Vnitřní <span class="button-shoping-in"> je JEN obal ikony (Multiplier prototyp dává
   class i buttonu i spanu). Pill (černé pozadí + hover modrá) patří POUZE vnějšímu
   <button>. Bez tohoto resetu má i vnitřní span background:#000 + :hover modrá → při
   najetí svítí modrý vnější rám a uvnitř černý menší pill = „dvojité podbarvení". */
.centerBoxContentsProducts-in .product-button.card-variant-quickadd .button-shoping-in .button-shoping-in {
    display: flex;
    align-items: center;
    width: auto;
    padding: 0;
    background: transparent;
    border-radius: 0;
}
.centerBoxContentsProducts-in .product-button.card-variant-quickadd .button-shoping-in .fas {
    font-size: 1.5rem;
    line-height: 1;
    margin: 0;
}
/* single-SKU karta (produkt bez velikostí): žádný select → kompaktní icon „koupit" tlačítko
   INLINE VEDLE ceny (NE plný řádek). product-info (space-between) drží cenu vlevo, tlačítko
   vpravo. display:flex přebíjí mobilní .product-button{display:none} → viditelné i na mobilu
   (parita s variantní kartou — „koupit" funguje stejně pro variantní i nevariantní produkty). */
.centerBoxContentsProducts-in .product-button.card-quickadd-single {
    flex: 0 0 auto;
    width: auto;
    margin-top: 0;
    display: flex;
    align-items: center;
}
.centerBoxContentsProducts-in .product-button.card-quickadd-single .button-shoping-in {
    flex: 0 0 auto;
    width: auto;
    /* vertikální padding = výška pilulky (single nemá select, ke kterému by se button stretchnul) */
    padding: 7px 16px;
}

.centerBoxContentsProducts-in .product-button .link-product-details-modal,
.centerBoxContentsProducts-in .product-button .like-item {
    display: inline-block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    padding: 0;
    cursor: pointer;
    color: #878787;
    font-size: 1.3rem;
    line-height: 28px;
}
.centerBoxContentsProducts-in .product-button .like-item {
    position: relative;
    padding-left: 8px;
    top: 10px;
}
.centerBoxContentsProducts-in .product-button .link-product-details-modal a,
.centerBoxContentsProducts-in .product-button .like-item a {
    cursor: pointer;
    color: #878787;
    text-decoration: none;
}
.centerBoxContentsProducts-in .product-button .link-product-details-modal a:hover,
.centerBoxContentsProducts-in .product-button .like-item a:hover {
    color: #cc0000;
}
.centeredContent .link-product-details-modal a span,
.centeredContent .like-item a span {
    margin: 0 2px 0 0;
    font-size: 1.6rem;
}
.centerBoxContentsProducts .hiden-box  {
    display: none;
    border: 0 solid #bbbbbb;
    margin: 0;
    padding: 0;
}

.centerBoxContentsProducts .barvy-velikosti-list  {
    border-top: 0 solid #bbbbbb;
    padding: 15px 0 10px 0;
}

.centerBoxContentsProducts-in .hideBrand {
    position: absolute;
    right: 0;
    top: -18px;
    height: 30px;
    width: 30px;
    font-size: 2.5rem;
    text-align: center;
    display: none;
    opacity: 0.4;
}
.centerBoxContentsProducts-in:hover .hideBrand {
    display: block;
}
.centerBoxContentsProducts-in:hover .hideBrand:hover {
    opacity: 1;
}

.tab-velikosti {
    padding: 15px 0 0 0;
}

.velikost-tab-panel {
    display: none;
}

.velikost-tab-panel.active {
    display: block;
}

.tab-velikosti ul {
    padding-left: 0;
}

.tab-velikosti li {
    display: inline-block;
    text-decoration: none;
}
.tab-velikosti li a,
.tab-velikosti li span {
    display: inline-block;
    min-width: 62px;
    padding: 4px 5px;
    background-color: #f7f7f7;
    color: #000000;
    margin-bottom: 5px;
    border: 1px solid #f7f7f7;
    text-decoration: none;
}

.tab-velikosti li a:hover,
.tab-velikosti li span:hover {
    background-color: #000;
    color: #fff;
}

.product-info--out {
    align-self: end;
    margin-top: 10px;
}

.product-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 4px;
}

.centerBoxContentsProducts-in .product_znacka {
    margin: 0 0 7px;
    line-height: 20px;
    font-size: 1.2rem;
    text-align: left;
}
.centerBoxContentsProducts-in .product_znacka a {
    color: #878787;
    text-decoration: none;
}
.centerBoxContentsProducts-in .product_znacka a:hover {
    color: var(--primary-color, #00c4ed);
}

h3.itemTitle {
    text-align: left;
    margin: 0 0 5px 0;
    padding: 0;
    overflow: hidden;
    width: 100%;
    height: 59px;
}

.itemTitle a {
    padding: 0 0;
    font-size: 1.4rem;
    line-height: 130%;
    display: block;
    color: #333;
    margin: 0 0 7px;
    line-height: 1.4;
    position: relative;
    font-weight: normal;
    text-decoration: none;
}
.itemTitle a i {
    font-size: 1.8rem;
}
.itemTitle a i.fa-mars {
    color: #009EF0;
}
.itemTitle a i.fa-venus {
    color: var(--primary-color, #00c4ed);
}
.itemTitle a i.fa-venus-mars {
    color: #F0C900;
}

.itemTitle a:hover {
    color: var(--primary-color, #00c4ed);
}
.itemTitle a span {
    font-size: 1.5rem;
    font-weight: 400;
}

.param_vune {
    position: relative;
    margin: 10px 0 20px 0;
    min-height: 27px;
}
.index .param_vune {
    display: none;
}
.param_vune span {
    position: relative;
    display: inline-block;
    padding: 4px 6px;
    text-transform: uppercase;
    background-color: #f5f7fa;
    font-size: 1.2rem;
    font-weight: 600;
}

.skladem {
    position: absolute;
    top: 153px;
    left: 10px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #003399;
    margin: 0;
}

.listing_cart {
    position: absolute;
    top: 125px;
    right: 10px;
    width: 130px;
    padding: 0;
    margin: 0;
    display: none;
}

.listing_cart p {
    padding: 0;
    margin: 0;
}

.mnozstvi_seznam {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 14px;
    padding: 1px 2px 1px 0;
    text-align: right;
    margin: 0;
    background-color: #e3e3e3;
    border: 1px #C4C4C4 solid;
    display: none;
}

.kosik-listing,
.listingBuyNowButton {
    position: absolute;
    top: 0;
    right: 0;
}

.porovnej {
    position: absolute;
    top: 125px;
    right: 90px;
    display: none;
}

.centeredContent .vyrobce a {
    display: none;
}

.centeredContent .dostupnost_text {
    display: block;
    position: relative;
    bottom: initial;
    left: initial;
    height: 28px;
    line-height: 28px;
    color: #45b955;
    border: 1px solid #45b955;
    text-transform: none;
    font-weight: bold;
    font-size: 1rem;
    border-radius: 10px;
    margin-top: 8px;
}

.centerBoxContentsProducts_bottom {
    position: relative;
    width: 100%;
    padding: 10px;
    border: 1px solid #e6e6e6;
    background-color: #e3e3e3;
    line-height: 130%;
    text-align: left;
}

.listingDescription {
    position: relative;
    color: #a7a7a7;
    height: 49px;
    line-height: 1.2;
    margin: 0;
    overflow: hidden;
    display: block;
    font-size: 1rem;
    font-weight: 300;
    text-align: left;
    margin: 0;
}
.index .listingDescription {
    display: none;
}

.centerBoxContentsProducts-in .sklad-hover {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 26px;
    line-height: 26px;
    color: #fff;
    text-transform: uppercase;
}

/* --- 16. PRICING (listing) --- */

.centeredContent .ceny {
    position: relative;
    width: 100%;
    border-top: 0 solid #e3e3e3;
    margin: 0;
    padding: 0;
    text-align: left;
}

span.span-dph {

}

.doporucena-cena-hodnota {
    text-decoration: line-through;
}

.centeredContent {
    text-align: center;
}

.centeredContent .doporucena-cena {
    border: 0 solid red;
    position: relative;
    padding-right: 10px;
    text-decoration: line-through;
    color: #848484;
    white-space: nowrap;
    font-size: 1.4rem;
    font-weight: 600;
    display: inline-block;
}
.index .centeredContent .doporucena-cena {
    display: none;
}

.centeredContent .doporucena-cena-nazev {
    display: none;
}

.centeredContent .doporucena-cena-hodnota {

}

.centeredContent .nase-cena-bezdph {
    display: none;
}

.centeredContent .nase-cena,
.centeredContent .nase-cena-bez {
    border: 0 solid red;
    position: relative;
    text-align: center;
    color: #000;
    font-size: 2.3rem;
    font-weight: bold;
    display: inline-block;
    white-space: nowrap;
}
.centeredContent .nase-cena.coupon,
.centeredContent .specials_price .nase-cena,
.centeredContent .specials_price .nase-cena-bez {
    color: #000;
}

.centeredContent .nase-cena-nazev {
    display: none;
}

.centeredContent .nase-cena-hodnota {

}

.centeredContent .nase-cena-nazev_1 {
    display: none;
}

.centeredContent .sleva {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    font-size: 1.6rem;
    background-color: #ff0000;
    color: #fff;
    padding: 0;
    text-align: center;
    line-height: 120%;
    width: 45px;
    height: 45px;
    line-height: 45px;
    padding: 0;
    border-radius: 50% 50% 50% 50%;
}
.centeredContent .sleva span {
    display: block;
    font-size: 1.7rem;
    font-weight: 600;
}
.centeredContent .cena_sleva {
    display: inline-block;
    position: relative;
    font-size: 1.4rem;
    color: #cc0000;
    font-weight: 600;
    padding-left: 10px;
}

.centeredContent .sleva-nazev {
    display: none;
}

.centeredContent .listing-coupon-box {
    font-size: 1.1rem;
    position: relative;
    width: 100%;
    text-align: left;
    color: #f40000;
    padding: 0;
    margin: -5px 0 0 0;
    font-weight: 600;
}

.centeredContent .listing-cenaod {
    font-size: 1.4rem;
    position: relative;
    width: 100%;
    text-align: center;
    padding: 0;
}

.centeredContent .size-select {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0 0 15px 0;
}
.centeredContent .size-select .product-add-to-cart {
    border: 1px solid #e3e3e3;
    padding: 2px 8px;
}
.centeredContent .size-select .product-add-to-cart span {
    padding-left: 0;
}

/****************/

#indexProductListCatDescription {
    margin: 0;
    padding: 0 0 5px 0;
    color: #7f7f7f;
    line-height: 140%;
    text-align: justify;
}

.fotka_kategorie_hlavni {
    position: relative;
    float: left;
    padding-right: 25px;
}

#indexProductListCatDescription.zkraceny{
    height: 60px;
    overflow: hidden;
    margin: 10px 0 5px 0;
    padding: 0;
}

.dontshow {
    float: right;
    clear: both;
    margin-bottom: 20px;
    display: none;
}

.showit {
    display: inline-block;
    float: right;
    clear: both;
    margin: 5px 0 10px 0;
    padding: 6px 16px;
    font-size: 1.2rem;
    font-weight: 500;
    color: var(--primary-color);
    border: 1px solid var(--primary-color);
    border-radius: var(--radius);
    text-decoration: none;
    transition: all 0.2s ease;
}

.showit:hover {
    background: var(--primary-color);
    color: #fff;
    text-decoration: none;
}

/* FAQ in category description */
#indexProductListCatDescription section {
    margin-top: 25px;
}

#indexProductListCatDescription section h2 {
    font-size: 1.8rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border-grey);
}

#indexProductListCatDescription h3 {
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border-grey);
}

#indexProductListCatDescription hr {
    border: none;
    border-top: 1px solid var(--border-grey);
    margin: 10px 0;
}

#indexProductListCatDescription dl {
    margin: 0;
    padding: 0;
}

#indexProductListCatDescription dt {
    font-size: 1.4rem;
    font-weight: 600;
    color: #333;
    padding: 12px 15px;
    margin: 0;
    background: var(--light-grey);
    border-left: 3px solid var(--primary-color);
    border-radius: var(--radius) var(--radius) 0 0;
    cursor: default;
}

#indexProductListCatDescription dt:not(:first-of-type) {
    margin-top: 10px;
}

#indexProductListCatDescription dd {
    font-size: 1.3rem;
    line-height: 1.6;
    color: #666;
    padding: 12px 15px 12px 18px;
    margin: 0;
    border: 1px solid var(--border-grey);
    border-top: none;
    border-radius: 0 0 var(--radius) var(--radius);
}

.centerBoxWrapper {
    clear: both;
}

/* ************** categorie-list ************** */

.categorie-list {
    background-color: #fff;
    margin-top: 20px;
    padding: 0;
}

.categorie-list h4 {
    color: #B62130;
    margin-bottom: 5px;
    margin-left: 5px;
    margin-top: 5px;
}

.categorie-list ul {
    position: relative;
    width: 100%;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
}
.categorie-list ul:after {
    content: '';
    flex: auto;
}
.categorie-list ul li {
    width: calc((100% - 30px) / 4);
    list-style-type: none;
    padding: 0;
}
.categorie-list ul li a {
    display: flex;
    align-items: center;
    position: relative;
    margin: 0;
    line-height: 130%;
    padding: 8px 38px 8px 8px;
    height: 100%;
    font-weight: normal;
    font-size: 1.6rem;
    color: #1a1a1a;
    text-decoration: none;
    text-align: left;
    background: #fff;
    border: 1px solid #e3e3e3;
}

.categorie-list ul li a:hover {
    color: var(--primary-color, #00c4ed);
    border: 1px solid var(--primary-color, #00c4ed);
    box-shadow: 0 0 5px 0 #c6c6c6;
}
.categorie-list ul li a img {
    margin-right: 14px;
    max-width: 38px;
    height: auto;
}
.categorie-list ul li a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    display: block;
    position: absolute;
    right: 15px;
    top: calc(50% - 10px);
    color: #1a1a1a;
    opacity: 0;
    transition: all 0.35s ease 0s;
}
.categorie-list ul li a:hover:before {
    color: var(--primary-color, #00c4ed);
    opacity: 1;
}

.categorie-list ul li span {
}
.categorie-list ul li span.fa {
    font-size: 2rem;
    color: #000;
    padding: 0 7px 0 0;
}

/* **************** */

.category-carousel-list ul {
    margin-left: 0;
    padding-left: 0;
}

.category-carousel-list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin: 0;
    padding: 17px 26px;
    position: relative;
    list-style: none;
}

#productsListingTop,
#productsListingBottom {
    margin: 0 0 2px 0;
    padding: 0;
    clear: both;
}

#productsListingBottom {
    position: relative;
    border-bottom: 1px solid #e3e3e3;
    padding: 5px 0;
    margin: 20px 0 82px 0;
}

#go-top a {
    position: absolute;
    left: 0;
    bottom: 0;
    line-height: 36px;
    padding: 0 18px;
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    color: #333;
    text-decoration: none;
    border: 0 solid #c5c4c4;
    display: flex;
    align-items: center;
}
#go-top a i {
    font-size: 1.2rem;
    padding-right: 10px;
}

#go-top a:hover {
    color: var(--primary-color, #00c4ed);
}

#next-listing {
    position: absolute;
    left: 39%;
    left: calc(50% - 82px);
    bottom: -72px;
    height: 50px;
    padding: 0 0;
    width: 164px;
    text-align: center;
}

#next-listing a {
    height: 50px;
    line-height: 50px;
    padding: 0;
    font-size: 2rem;
    font-weight: 500;
    color: #FFF;
    text-decoration: none;
    display: block;
    background-color: #000;
    border-radius: 5px;
}
#next-listing a:hover {
    background-color: var(--primary-color, #00c4ed);
    text-decoration: none;
}

#next-listing a span {
}
#next-listing a i {
    padding-left: 7px;
}

#productsListingTop {
    position: relative;
    float: left;
    border-bottom: 0 #E6E6E6 solid;
    padding-bottom: 11px;
    margin: 20px 0;
    width: 100%;
}

.navSplitPagesResult {
    float: left;
    height: 18px;
    padding: 5px 0 0 0;
    margin: 0 0;
    font-size: 1.5rem;
    color: #B8B8B8;
}

#productsListingBottom .navSplitPagesResult {
    float: right;
    padding-right: 25px;
}

.navSplitPagesLinks {
    float: right;
    margin: 0 0;
    padding: 0 0;
}

#productsListingTopNumber,
#productsListingBottomNumber,
.navSplitPagesResult {
    float: left;
    height: 26px;
    line-height: 26px;
    padding: 0;
    margin: 0 0;
    color: #333;
}

#productsListingListingTopLinks,
#productsListingListingBottomLinks {
    float: right;
    margin: 0 0;
    padding: 0 0;
}

#productsListingListingTopLinks a,
#productsListingListingBottomLinks a,
#productsListingListingTopLinks strong,
#productsListingListingBottomLinks strong,
#productsListingListingTopLinks .current,
#productsListingListingBottomLinks .current,
.navSplitPagesLinks a {
    border: 0 solid #e3e3e3;
    color: #333;
    display: block;
    float: left;
    font-weight: bold;
    font-size: 1.4rem;
    font-weight: normal;
    margin: 0 0 0 6px;
    padding: 5px 7px;
    text-decoration: none;
    position: relative;
}
#productsListingListingTopLinks a:before,
#productsListingListingBottomLinks a:before,
#productsListingListingTopLinks strong:before,
#productsListingListingBottomLinks strong:before,
#productsListingListingTopLinks .current:before,
#productsListingListingBottomLinks .current:before,
.navSplitPagesLinks a:before {
}

#productsListingListingTopLinks .current,
#productsListingListingBottomLinks .current,
#productsListingListingTopLinks a:hover,
#productsListingListingBottomLinks a:hover,
.navSplitPagesLinks a:hover {
    background: #f1f1f1;
    border-radius: 5px;
}

#grid-view {
    display: block;
    float: right;
    padding: 6px 10px 0 0;
    position: relative;
}

#grid-view ul li {
    list-style: none;
    opacity: 0.3;
    color: #7f7f7f;
    float: left;
    margin-right: 0;
    padding: 0;
    height: 20px;
    line-height: 20px;
}
#grid-view ul li.last {
    border-left: 1px solid #919191;
}

#grid-view ul li.active {
    opacity: 1;
}

/************* qtip ***************/

.qtip {
    box-shadow: none;
    direction: ltr;
    display: none;
    max-width: 370px;
    min-width: 50px;
    padding: 0;
    position: absolute;
    background: rgba(255, 255, 255, 1) none repeat scroll 0 0;
    color: #333;
    border: 0 solid transparent;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 14px;
    border-radius: 3px;
    text-transform: uppercase;
    box-shadow: 1px 1px 10px rgba(0,0,0,0.21);
    border: 1px solid #b5b8bc;
}

.qtip-rounded, .qtip-tipsy, .qtip-bootstrap {
    border-radius: 5px;
}

.qtip:not(.ie9haxors) div.qtip-content,
.qtip:not(.ie9haxors) div.qtip-titlebar{
    filter: none;
}

.qtip .qtip-tip{
    margin: 0 auto;
    overflow: hidden;
    z-index: 10;
}

.qtip .qtip-tip,
.qtip .qtip-tip .qtip-vml,
.qtip .qtip-tip canvas{
    position: absolute;
    color: #123456;
    background: transparent;
    border: 0 dashed transparent;
}

.qtip .qtip-tip canvas{ top: 0; left: 0; }

.qtip .qtip-tip .qtip-vml{
    display: inline-block;
    visibility: visible;
}

.qtip-content {
    overflow: hidden;
    padding: 10px 14px;
    position: relative;
    text-align: center;
    word-wrap: break-word;
}
.qtip-content .expedice_text_in {
    color: #090;
}
.qtip-content p.price strong {
    font-size: 1.8rem;
}
.qtip-content p.tooltitle {
    background-color: #f6f6f6;
    padding: 14px 14px 10px 14px;
    margin: -14px 0 10px -14px;
    width: calc(100% + 28px);
}

.tooltitle-24h {
    background-color: #373737;
    color: white;
    padding: 8px 0 !important;
    margin: -10px -14px 10px -14px;
    position: relative;
    text-align: center;
}

.qtip-content .loaded {
    width: 350px;
}

/* --- 18. USER ACCOUNT --- */

fieldset {
    padding: 0.5em;
    margin: 0.5em 0em;
    border: 1px solid #cccccc;
}

legend {
    font-weight: bold;
    padding: 0.3em;
    color: #000;
    background-color: #FFFFFF;
}

.floatingBox important forward {
    color: #7f7f7f;
    font-size: 1rem;
    font-weight: normal;
}

.floatingBox, #sendSpendWrapper {
    margin: 0;
    width: 47%;
}

.back {
    float: left;
}

.forward {
    float: right;
    color: #000000;
}


.information {
    font-size: 1.1rem;
    color: #333;
    font-weight: normal;
    padding-bottom: 20px;
}

label.inputLabel {
    width: 9em;
    float: left;
    padding-bottom: 20px;
    padding-top: 4px;
}
label.inputLabel.big {
    width: auto;
}
#frm-watchForm label.inputLabel {
    width: 16em;
}
label.label_space {
    padding-right: 15px;
    padding-top: 4px;
    float: left;
}

label.inputLabelPoptavka {
    width: 180px;
    float: left;
    padding-bottom: 20px;
    padding-right: 10px;
}

label.checkboxLabel, label.radioButtonLabel {
    margin: 0.5em 0.3em;
}

.buttonRow {
    margin: 0.5em;
}

.buttonRow.back {
    margin-left: 0;
}

.buttonRow.forward {
    margin-right: 0;
}

.alert {
    color: #FF0000;
    margin-left: 0.5em;
}
.alert.label_space {
    padding-top: 8px;
    float: left;
}

.tableHeading, .tableRow {
    height: 2.2em;
    text-align: left;
}

tr.tableHeading {
    background-color: #000;
    font-size: 1.1rem;
    padding-left: 5px;
    background-color: #f6f6f6;
    color: #000000;
}

caption {
    margin-top: 20px;
    margin-bottom: 5px;
    text-align: left;
}

.accountTotalDisplay, .accountTaxDisplay {
    width: 20%;
    text-align: right;
}

.accountQuantityDisplay {
    width: 10%;
    vertical-align: top;
}

.amount {
    text-align: right;
    width: 5.5em;
}

.cartTotalsDisplay {
    font-size: 1.1rem;
    color: #7f7f7f;
    font-style: italic;
    font-weight: normal;
}

.cartAttribsList ul {
    font-size: 1.1rem;
    color: #000000;
    font-weight: normal;
    padding: 0 5px 0 15px;
}

.floatingBox important forward {
    color: #7f7f7f;
    font-size: 1rem;
    font-weight: normal;

}

.floatingBox, #sendSpendWrapper {
    margin: 0;
    width: 47%;
}

.important {
    font-weight: normal;
    font-size: 1.1rem;
    color: #999999;
    font-style: italic;
}

.lineTitle {
    width: 150px;
    padding: 3px 0;
    text-align: right;
}

.totalBox {
    width: 65px;
    text-align: right;
    padding: 3px 0;
    font-weight: bold;
}

.lineTitle.forward,
.totalBox.forward {
    padding: 3px 0;
}

.newsScrollerSideBox {
    margin: 10px;
}

.vsechna_razeni {
    height: 16px;
    padding: 2px 0;
}

.razeni {
    float: right;
    padding: 0 15px;
}

.g-recaptcha {
    padding-top: 20px;
}

.modal-header-box p.lepsi_cena_text,
p.lepsi_cena_text {
    font-family: Arial, Verdana, Helvetica, sans-serif;
    font-size: 0.8rem;
    font-weight: 400;
    padding: 20px 0 0 0;
}

/* --- 19. MESSAGES --- */

#infscr-loading {
    display: block;
    width: 100%;
    text-align: center;
    padding: 30px 0;
}
#infscr-loading img {
    padding: 0 0 30px 0;
}

.messageStackSuccess {
    border: 1px solid #a2cd9a;
    background-color: #d4ffcc;
    padding: 8px 8px;
    margin: 5px 0 1px 0;
}

.messageStackSuccess img{
    padding: 3px;
    vertical-align: middle;
}

.messageStackError {
    background-color: #ff0000;
    color: #ffffff;
    padding: 10px;
    margin: 5px 0 1px 0;
}

.messageStackError img {
    display: none;
}

.messageStackError a {
    color: #ffffff;
    text-decoration: underline;
}

/* ****** FILTR ******** */

.button-count {
    margin: 25px 0 10px 0;
    padding: 0 0;
}
.button-count span,
#select-sorter-out span {
    padding-right: 8px;
}
.modal-button-filtr,
#select-sorter-out {
    position: relative;
    width: 100%;
    float: none;
    font-size: 1.5rem;
    border: 1px solid #000;
    background: #fff;
    padding: 0 0 0 14px;
    color: #000;
    display: block;
    line-height: 36px;
    text-align: left;
    text-decoration: none;
    border-radius: 5px;
}
#select-sorter-out {
    padding: 0;
    border: 0 solid #000;
    background: #fff;
    color: #000;
}
.modal-button-filtr::after,
#select-sorter-out::after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1.4rem;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 14px;
    color: #000;
    pointer-events: none;
}
.modal-button-filtr:hover {
    background-color: var(--primary-color, #00c4ed);
    color: #fff;
}
#select-sorter-out div {
    position: absolute;
    left: 14px;
    top: 0;
    z-index: 1;
}
#select-sorter {
    position: relative;
    font-size: 1.5rem;
    line-height: 36px;
    height: 36px;
    border: 1px solid #000;
    padding: 0 0 0 100px;
    width: 100%;
    background: transparent;
    color: #000;
    z-index: 2;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 5px;
}

#select-sorter-out {
    margin-bottom: 10px;
}
#product-filtr {
    position: relative;
    padding: 0;
    margin: 0;
    background-color: #fff;
    border: 0 solid #DCDCDC;
    float: left;
    width: 100%;
}

#product-filtr .filtr-title {
    font-size: 2rem;
    font-weight: 400;
    text-transform: capitalize;
    border-bottom: 1px solid #ddd;
    margin: 0 0 35px;
    padding: 0 0 15px;
    position: relative;
}
#product-filtr .filtr-title:before {
    content: '';
    width: 70px;
    height: 2px;
    background-color: #000;
    position: absolute;
    display: block;
    left: 0;
    bottom: -1px;
}

.filtr-labels,
.filtr-hodn,
.filtr-barva-filtrace,
.filtr-format-filtrace,
.filtr-druh-produktu,
.filtr-znacky {
    position: relative;
    padding: 20px 0 20px 0;
    margin: 0;
    clear: both;
    width: 100%;
    float: left;
    border-bottom: 0 solid #ddd;
    background: #f1f1f1;
    min-height: 40px;
}
.filtr-labels:last-child {
    border-bottom: 0 solid #ddd;
}
.filter-letter-wrapper,
.filter-letter-wrapper {
    margin: 25px 0 20px 0;
}
.filter-letter,
.filter-letter{
    background-color: #fff;
    padding: 5px 0;
    font-weight: 700;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    margin-right: 5px;
    width: 23px;
    margin-bottom: 5px;
    cursor: pointer;
    font-size: 1.6rem;
}
.filter-loading {
    text-align: center;
    font-size: 2.5rem;
    margin: 20px 0;
}
.filter-letter:hover,
.filter-letter.active,
.filter-letter:hover,
.filter-letter.active {
    background-color: var(--primary-color, #00c4ed);
    color: #fff;
}
.filtr-znacky input,
input.filtr-search-field {
    border: 1px solid #c3c3c3;
    width: 100%;
    margin-bottom: 10px;
    padding: 7px 0 7px 14px;
}
input.filtr-search-field {
    margin-top: 14px;
}

.filtr-labels.stav {
    min-height: 48px;
}

.filtr-header {
    min-height: 46px;
    padding: 7px 0 8px 0;
}

.filtr-column {
    float: left;
    display: block;
    width: 100%;
}

.filtr-none{
    display: none;
}

.filtr-parname{
    float: left;
    padding: 8px 25px 0 0;
    cursor: pointer;
    color: #7f7f7f;
}
.filtr-parname i,
.filtr-nazev i {
    display: inline-block;
    padding-right: 5px;
    color: #000;
}
.filtr-velikost {
    background-position: left -250px;
    position: relative;
    float: left;
    width: 100%;
    min-height: 38px;
}

.filtr-pole-cena_rozpeti {
    background-position: left -750px;
}

.filtr-hodn {
    padding-top: 15px;
}

.filtr-velikostx .filtr-hodnoty a,
.filtr-velikostx .filtr-hodnoty span.disabled,
.filtr-hodnoty .filtr-znacky-text span {
    padding: 10px 7px;
    margin: 0 7px 7px 0;
    min-width: 27px;
    text-align: center;
    text-decoration: none;
    background-color: #FFFFFF;
    border: 1px solid #d6d6d6;
    float: left;
    color: #7f7f7f;
}

.filtr-velikostx .filtr-hodnoty span.disabled,
.filtr-hodnoty .filtr-znacky-text span {
    background-color: #d6d6d6;
    opacity: 0.5;
}

.filtr-velikostx .filtr-hodnoty a:hover,
.filtr-velikostx .filtr-hodnoty a.active {
    border: 1px solid #000;
    background-color: #000;
    color: #fff;
}

.filtr-barva .filtr-box-1,
.filtr-barva .filtr-box-1-disablde
{
    border: 1px solid #d6d6d6;
    float: left;
    text-align: center;
    padding: 0;
    margin: 0 7px 7px 0;
    cursor: pointer;
    width: 27px;
    height: 27px;
    border-radius: 100px 100px 100px 100px;
}

.filtr-barva .filtr-box-1 span,
.filtr-barva .filtr-box-1-disablde span
{
    border: 0 solid #D6D6D6;
    float: left;
    padding: 0;
    cursor: pointer;
    width: 25px;
    height: 25px;
    border-radius: 100px 100px 100px 100px;
}

.filtr-barva .filtr-box-1-disablde span {
    background-image: url('/data-central/img/krizek.png');
    border-color: #000000;
    color: #777;
    cursor: not-allowed !important;
}

.filtr-barva .filtr-nonebarva {
    background-image: url('/data-central/img/front/transparent.gif');
    background-repeat: repeat;
}

.filtr-barva .filtr-box-1-selected,
.filtr-barva .filtr-box-1:hover{
    border: 1px solid #000;
}

#frm-filter-filtr div.filtr-hodnoty {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    margin: 14px 0 0;
    max-height: 244px;
    overflow-x: hidden;
    overflow-y: auto;
}
#frm-filter-filtr #filtr-kategorie div.filtr-hodnoty {
    max-height: inherit;
}

#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input {
    width: auto;
    padding: 0 10px 10px 0;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input a {
    color: #fff;
    padding: 1px 11px 1px 11px;
    text-decoration: none;
    position: relative;
    display: block;
    height: 22px;
    line-height: 20px;
    border-bottom: 1px solid transparent;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-akcevyprodej a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-akcevyprodej a:after {
    background-color: #e60000;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-skladem a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-skladem a:after {
    background-color: #7ab51c;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-doprava_zdarma a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-doprava_zdarma a:after {
    background-color: #a3a3a3;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-novinka a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-novinka a:after {
    background-color: #83c933;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-darek a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-darek a:after {
    background-color: #0185b5;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-darek a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-darek a:after {
    background-color: #e80462;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-vystaveno_na_prodejne a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-vystaveno_na_prodejne a:after {
    background-color: #0185b5;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-vystaveno_na_prodejne a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-vystaveno_na_prodejne a:after {
    background-color: #bad0e8;
}  #frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-3_roky_zaruka a,
   #frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-3_roky_zaruka a:after {
       background-color: #23aae2;
   }

#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input:hover a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-akcevyprodej:hover a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-skladem:hover a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-novinka:hover a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-doprava_zdarma:hover a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input .active a,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-akcevyprodej .active a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-skladem .active a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-novinka .active a:after,
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input.label-doprava_zdarma .active a:after {
    background-color: #fff;
    color: #000;
    border-bottom: 1px solid #000;
}
#frm-filter-filtr .filtr-labels.stav div.filtr-hodnoty .filtr-input .filtr-text {
    overflow: visible;
    padding-left: 0;
}

#frm-filter-filtr div.filtr-hodnoty .filtr-input {
    border: 0 solid red;
    float: left;
    padding: 4px 8px 0 0;
    overflow: hidden;
    width: 100%;
    position: relative;
    overflow-wrap: normal;
}

#frm-filter-filtr .filtr-column .filtr-input .filtr-check {
    position: absolute;
    left: 0;
    top: 5px;
    padding: 0 0 0;
    width: 20px;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text span,
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a {
    display: block;
    float: left;
    width: 100%;
    padding-left: 25px;
    text-align: left;
    overflow: hidden;
    color: #1a1a1a;
    text-decoration: none;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text span:before,
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a:before {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 6px;
    width: 16px;
    height: 16px;
    border: 1px solid #ddd;
    background-color: #fff;
    border-radius: 3px 3px 3px 3px;
    transition: all 0.35s ease 0s;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text span:after,
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1rem;
    content: "\f00c";
    position: absolute;
    opacity: 0;
    color: var(--primary-color, #00c4ed);
    left: 3px;
    top: 9px;
    border: 0 solid #ddd;
    transition: all 0.35s ease 0s;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a.active:after,
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a:hover:after {
    opacity: 1;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text .disabled {
    opacity: 0.4;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a {
    color: #1a1a1a;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}
#frm-filter-filtr .filtr-column .filtr-input .filtr-text a:hover,
#frm-filter-filtr .filtr-column .filtr-input .filtr-text .ajax-listing.active,
#frm-filter-filtr .filtr-column .filtr-input .filtr-text .ajax-listing:hover {
    color: var(--primary-color, #00c4ed);
    text-decoration: none;
}
#product-filtr .removeFilter_all {
    padding-bottom: 8px;
    display: block;
}
#product-filtr .filtr_modal_bottom .removeFilter_all {
    padding-bottom: 0;
}

.filtr-znacky-input {
    float: left;
    width: 114px;
    white-space: nowrap;
    margin: 3px 8px 0 0;
    overflow: hidden;
}

.filtr-znacky-check {
    display: block;
    float: left;
    padding: 1px 0 0;
    width: 20px;
}
.filtr-pole {
    float: left;
    width: 50%;
    padding-bottom: 13px;
}

#advSearchResultsDefault .filtr-nazev {
    float: left;
    width: 20%;
    padding: 3px;
    font-size: 1.3rem;
    font-weight: bold;
}

.filtr-hodnoty select {
    padding: 3px;
    width: 70%;
    border: 1px solid #DCDCDC;
    font-size: 1.2rem;
}

.filtr-nazev {
    color: #333;
    margin: 0;
    padding: 0;
    font-size: 1.4rem;
    font-weight: bold;
    text-transform: uppercase;
}
.filtr-nazev a {
    color: #1a1a1a;
    text-decoration: none;
    float: right;
    font-weight: normal;
}
.filtr-nazev a span {
    color: #000;
}

.filtr-hodnoty select {
    width: 86px;
}

.filtr-pole {
    width: 242px;
    padding: 0 0 13px 0;
    position: relative;
}

.filtr-pole-skladem {
    padding: 13px 0 13px 0;
    border-bottom: 2px dotted #d6d6d6;
}

.filtr-pole-skladem .filtr-hodnoty {
    display: block;
    float: left;
    position: relative;
    padding-top: 5px;
    font-weight: bold;
}

.filtr-pole-zobrazit {
    position: relative;
    height: 83px;
    width: 100%;
    background-color: #F4F4F4;
}

#frm-filter-filtr {
    position: relative;
    float: left;
    width: 100%;
    padding: 0;
    background-color: #fff;
    color: #1a1a1a;
}

#product-filtr {
    position: relative;
    float: left;
    width: 100%;
    padding: 10px 36px;
    background: #f1f1f1;
    margin: 0;
    border-radius: 10px;
}

#product-filtr .clearBoth2 {
    border-top: 0 solid #DCDCDC;
    height: 4px;
    margin: 0 0 0;
}

.filtr-hodnoty .search-input {
    padding: 3px;
    width: 70%;
    border: 1px solid #DCDCDC;
    font-size: 1.2rem;
}

.filtr-hodnoty .search-input.cena {
    width: 39%;
}

.filterBar {
    position: relative;
    padding: 15px 0 28px 0;
    border-bottom: 1px solid #ddd;
}

.filterBar a.removeFilter_all {
    color: #fb0202;
    padding: 0 0 0 35px;
    position: relative;
}

.filterBar .filterBar-row {
    position: relative;
    display: block;
    float: left;
    padding: 0 0 0;
}

.filterBar .filterBar-title {
    position: relative;
    float: left;
    font-size: 1.3rem;
    font-weight: normal;
    color: #666666;
    padding-right: 5px;
    display: inline-block;
}

.filterBar .filterBar-content a,
.filterBar a {
    position: relative;
    float: left;
    padding: 0 25px 0 0;
    margin: 0;
    color: #666666;
    font-size: 1.3rem;
}
.filterBar a {
    float: left;
}
.filterBar .filterBar-content a span,
.filterBar a span {
    float: left;
}
.filterBar .filterBar-content a span.fas,
.filterBar a span.fas {
    color: #fb0202;
    float: left;
    font-size: 1.6rem;
    padding: 1px 0 0 5px;
}

.filtr-hodnoty {
    position: relative;
    float: left;
    width: 100%;
    padding: 0;
}
.filter-price {
    margin: 0;
    text-align: left;
    width: 100%;
    float: left;
}

.filter-price .filter-price-input,
.apply-filter {
    width: 37%;
    float: left;
    height: 26px;
    line-height: 20px;
    background-color: #fff;
    border: 1px solid #d6d6d6;
    color: #333;
    font-family: inherit;
    font-weight: 400;
    padding: 5px 4px;
    transition: border 0.2s linear 0s;
}
.apply-filter {
    background-color: #e8e8e8;
    color: #000;
    cursor: pointer;
    width: 20%;
    float: right;
    line-height: 0;
}

.apply-filter:hover {
    background-color: #000000;
    color: #fff;
}
.filter-price span {
    width: 5%;
    display: block;
    float: left;
    line-height: 26px;
    text-align: center;
}

.filtr-price-histogram {
    position: absolute;
    right: 0;
    top: 0;
    float: left;
    margin: 0;
    display: none;
}

.filtr-price-histogram ul {
    border-color: #d6d6d6;
    border-style: solid none solid solid;
    border-width: 1px medium 1px 1px;
    display: inline-block;
    padding: 0;
    list-style: none;
}

.filtr-price-histogram ul li {
    cursor: pointer;
    display: block;
    border-right: 1px solid #d6d6d6;
    height: 24px;
    width: 20px;
    float: left;
    list-style: outside none none;
    margin: 0;
    padding: 0;
    position: relative;
    background-color: #e8e8e8;
}

.filtr-price-histogram ul li:hover,
.filtr-price-histogram ul li.active
{
    background-color: #000000;
}

.filtr-price-histogram .filtr-price-histogram-rate {
    background-color: #FFFFFF;
}

.filtr-kategorie li {
    padding: 2px 0;
}
.filtr-kategorie a {
    color: #333;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 300;
    display: block;
    padding-left: 10px;
}
.filtr-kategorie a:hover {
    color: var(--primary-color, #00c4ed);
}
.filtr-kategorie a.active {
    font-weight: bold;
    color: var(--primary-color, #00c4ed);
}
.filtr-kategorie span {
    position: relative;
    width: 10px;
    display: block;
    float: left;
    text-align: center;
    height: 16px;
    line-height: 16px;
    color: #7D7D7D;
    color: var(--primary-color, #00c4ed);
    display: none;
}
.filtr-kategorie .nested-category {
    margin-left: 15px !important;
}
.filtr-kategorie .category-toggle-open:before,
.filtr-kategorie .category-toggle-closed:before {
}
.filtr-kategorie .category-toggle-closed:before {
}
.filtr-kategorie .category-toggle-none {
}

#zobrazit {
    clear: both;
    width: 100%;
    float: left;
    padding: 0;
    line-height: 48px;
    color: #7f7f7f;
    font-size: 1.4rem;
}
#zobrazit span {
    color: #000;
    font-size: 1.8rem;
}

.check-skladem {
    float: left;
    padding: 1px 10px 0 0;
}

.clearBoth2 {
    font-size: 0;
    margin: 0 0 13px 0;
    padding: 0;
    height: 0;
    border-top: 1px solid #DCDCDC;
    clear: both;
}

.filtr-button {
    cursor: pointer;
    float: right;
    padding-bottom: 15px;
    text-align: right;
}

.input-button {
    border: 0 none;
    height: 25px;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 15px;
    top: 13px;
    width: 94px;
}

/* --- 20. LIGHTBOX / MAGNIFIC POPUP --- */

.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: 0.8;
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: none !important;
    -webkit-backface-visibility: hidden;
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box;
}

.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
    display: none;
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto;
}

.mfp-ajax-cur {
    cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out;
}

.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
    cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -webkit-user-select: none;
    user-select: none;
}

.mfp-loading.mfp-figure {
    display: none;
}

.mfp-hide {
    display: none !important;
}

.mfp-preloader {
    color: #CCC;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044;
}

.mfp-preloader a {
    color: #CCC;
}

.mfp-preloader a:hover {
    color: #FFF;
}

.mfp-s-ready .mfp-preloader {
    display: none;
}

.mfp-s-error .mfp-content {
    display: none;
}

button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: 0.65;
    padding: 0 0 18px 10px;
    color: #FFF;
    font-style: normal;
    font-size: 2.8rem;
    font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
    opacity: 1;
}

.mfp-close:active {
    top: 1px;
}

.mfp-close-btn-in .mfp-close {
    color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    position: absolute;
    right: -56px;
    top: 30px;
    background-color: transparent;
    border: 0 none;
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 5.8rem;
    font-weight: lighter;
    line-height: 49px;
    opacity: 1;
    padding: 0;
    text-align: center;
    text-shadow: none;
    width: 50px;
    z-index: 1;
}
.mfp-image-holder .mfp-close:hover,
.mfp-iframe-holder .mfp-close:hover {
    color: #c7c7c7;
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #CCC;
    font-size: 1.2rem;
    line-height: 18px;
    white-space: nowrap;
    display: none;
}

.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
    margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent;
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px;
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}

.mfp-arrow-left {
    left: 0;
}

.mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px;
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
    right: 0;
}

.mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px;
}

.mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
    top: -40px;
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000;
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto;
}

.mfp-figure {
    line-height: 0;
}

.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444;
}

.mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 1.2rem;
    line-height: 14px;
}

.mfp-figure figure {
    margin: 0;
}

.mfp-bottom-bar {
    position: absolute;
    left: -86px;
    top: 40px;
    width: 76px;
    cursor: auto;
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #F3F3F3;
    word-wrap: break-word;
    padding-right: 36px;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0;
    }
    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }
    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0; }
    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px;
    }
    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box;
    }
    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0;
    }
    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px;
    }
    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        text-align: center;
        padding: 0;
    }
}

@media all and (max-width: 900px) {
    .mfp-arrow {
        transform: scale(0.75); }
    .mfp-arrow-left {
        transform-origin: 0; }
    .mfp-arrow-right {
        transform-origin: 100%; }
    .mfp-container {
        padding-left: 6px;
        padding-right: 6px; }
}

/* mfp-paginator */
.mfp-pager { width: 100%; position: absolute; z-index: 20; top: 0; left: 0; right: 0; margin: 0; text-align: center; overflow: hidden; }
.mfp-pager::after { clear: both; display: block; content: ''; }
.mfp-pager li { padding: 0; margin: 0; display: inline-block; }
.mfp-pager .arrow_next,
.mfp-pager .arrow_prev { display: none; }
.mfp-pager .arrow_next button,
.mfp-pager .arrow_prev button { vertical-align: middle; border: none; }
.mfp-pager li .arrow { position: relative; top: 2px; padding: 0; margin: 0; display: inline-block; width: 18px; height: 11px; text-indent: -9999px; border: none; cursor: pointer; background: none; }
.mfp-pager li .arrow::after { content: ''; display: block; width: 0; height: 0; border-style: solid; position: absolute; top: 1px; }
.mfp-pager li .prev::after { border-width: 5px 7px 5px 0; border-color: transparent #666 transparent transparent; left: 4px; }
.mfp-pager li .next::after { border-width: 5px 0 5px 7px; border-color: transparent transparent transparent #666; left: 7px; }
.mfp-pager .dots { vertical-align: top; text-align: center; display: inline-block; margin: 0 0; position: relative; }
.mfp-pager .dots li { display: inline-block; clear: both; margin: 0 0 5px 0; }
.mfp-pager .dots li img {
    max-width: 50px;
    height: auto;
}
.mfp-pager .dots li button { background-color: #fff; border: 0 solid #fff; margin: 2px;}
.mfp-pager .dots li a { display: block; width: 15px; height: 15px; background: #666; text-indent: -9999px; padding: 5px; margin: 0; cursor: pointer; border: none; }
.mfp-pager .dots li.active { border: 2px solid red; }


/* --- 22. TABLES --- */

.table-pages {
    width: 100%;
    background-color: #d2d2d2;
}

.table-pages th {
    width: 33.333%;
    padding: 6px 7px;
    background-color: #F4F4F4;
}
.table-pages th:first-child {
    text-align: left;
}
.table-pages.two th {
    width: 66.666%;
}
.table-pages.two th:first-child {
    width: 33.333%;
}

.table-pages td {
    padding: 6px 7px;
    background-color: #ffffff;
}

.parametry {
    border-top: 1px solid #ddd;
    background-color: #FFF;
    width: 100%;
    border-spacing: 0;
}

.parametry td {
    padding: 5px 5px 5px 15px;
    border-bottom: 1px solid #ddd;
}

.parametry .parametry_nazev {
    width: 155px;
    color: #000000;
    background-color: #f6f6f6;
}

.parametry .parametry_hodnota {
    vertical-align: top;
    color: #000;
    padding-left: 15px;
}

.table_showroom td a.virtualni_prohlidka {
    position: relative;
    display: block;
}

.table_showroom td a.virtualni_prohlidka img {
    position: relative;
    display: block;
    border: 3px solid #000;
    float: left;
}

.table_showroom td a.virtualni_prohlidka span.virtualni_prohlidka_img {
    float: left;
    border-left: 3px solid #000;
    border-top: 3px solid #000;
}

.table_showroom td a.virtualni_prohlidka span.virtualni_prohlidka {
    color: #FFF;
    font-weight: bold;
    font-size: 1.4rem;
    background-color: #000;
    line-height: 47px;
    width: 146px;
    text-align: center;
    display: block;
    float: left;
}

.table_showroom td a.virtualni_prohlidka:hover span.virtualni_prohlidka {
    text-decoration: underline;
}

.table_showroom td {
    padding: 8px;
}

.table_showroom td.grey {
    background-color: #E0E0E0;
}

a.category-tabulky_velikosti {
    border-bottom: 1px solid #e3e3e3;
    border-left: 5px solid #e80462;
    color: #7f7f7f;
    display: block;
    font-size: 1.5rem;
    font-weight: normal;
    margin: 0 0 3px;
    padding: 3px 10px 7px 18px;
    text-decoration: none;
}

a.category-tabulky_velikosti:hover {
    color: #e80462;
    text-decoration: none;
}

.table-velikosti-obal,
.prevOrders {
    overflow: auto;
    width: 100%;
}

.table-velikosti {
    clear: both;
    margin-top: 10px;
    width: 100%;
    min-width: 635px;
    border-spacing: 0;
}

.table-velikosti td {
    padding: 5px 5px 5px 10px;
    border-bottom: 1px solid #D0D0D0;
    text-align: center;
    width: 61px;
}
.table-velikosti td.vlevo {
    width: 155px;
}

.table-velikosti tr.table-title {
    font-size: 1.4rem;
}

.table-velikosti td.table-seda {
    background-color: #DFDFDF;
    font-weight: normal;
    text-align: left;
    color: #1a1a1a;
}
.table-velikosti
.table-velikosti td.vlevo {
    text-align: left;
}

.platba {
    width: auto;
    margin: 30px 0;
    background-color: #f5f5f5;
    padding: 20px 30px;
}
.platba td {
    padding-right: 40px;
}
.platba td:last-child {
    padding-right: 0;
}

/* **************** Compare ********************** */

.compare-table {
    border-top: 0 solid red;
    table-layout: fixed;
}
.table_compare .outer {
    overflow: hidden;
    position: relative;
}
.table_compare .inner {
    overflow: auto;
    margin-left: 250px;
}
.parametry.compare th,
.parametry.compare td {
    padding: 8px 15px;
    border-bottom: 1px solid #d0d0d0;
    position: relative;
    text-align: center;
    width: 240px;
}
.parametry.compare th.first {
    border-top: 1px solid #d0d0d0;
}
.parametry.compare .space {
    width: 100%;
    min-width: initial;
    padding: 0;
}
.parametry.compare .parametry_nazev {
    width: 250px;
    background-color: #f2f2f2;
    text-align: left;
    left: 0;
    position: absolute;
}
.parametry.compare .fa-close {
    position: absolute;
    top: 10px;
    right: 10px;
}
.parametry.compare img {
    display: inline-block;
    height: auto;
    width: 100%;
    max-width: 150px;
    height: auto;
}
.parametry.compare h3 {
    min-height: 60px;
}
.table_compare .scrollbar-top {
    overflow: auto;
    margin-left: 250px;
}
.table_compare .scrollbar-inner {
    height: 1px;
    background: transparent;
}
.parametry.compare a {
    display: block;
    font-size: 1.4rem;
    margin: 10px 0;
}
.parametry.compare button {
    margin-top: 8px;
}
.parametry.compare button span span {
    display: none;
}
.parametry.compare button i {
    padding-right: 8px;
}


/* ************************************** */

ul.detail-box-links li,
ul.sorter-box li
{
    float: left;
    list-style-type: none;
    margin: 0 5px 0 0;
    padding: 0;
    position: relative;
}

ul.detail-box-links li a,
ul.detail-box-links li span,
ul.sorter-box li a,
ul.sorter-box li span
{
    font-weight: bold;
    background-color: transparent;
    border: 0 solid transparent;
    border-bottom: 2px solid transparent;
    color: #333;
    display: block;
    float: left;
    font-size: 1.4rem;
    line-height: 36px;
    padding: 0 26px;
    position: relative;
    text-decoration: none;
}

ul.detail-box-links li.selected a,
ul.detail-box-links li.active a,
ul.detail-box-links li.selected span,
ul.detail-box-links li:hover a,
ul.sorter-box li.selected a,
ul.sorter-box li.active a,
ul.sorter-box li.selected span,
ul.sorter-box li:hover a {
    background-color: #fff;
    border: 0 solid #ddd;
    border-bottom: 2px solid var(--primary-color, #00c4ed);
}
#productListing {
    border: 0 solid red;
    position: relative;
    clear: both;
}

ul.detail-box-links,
ul.sorter-box {
    border-bottom: 0 solid #e2e1e1;
    clear: both;
    margin: 0 0 -1px;
    min-height: 10px;
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 100%;
    z-index: 1;
}

#productsListingTop {
    border-bottom: 0 solid #e6e6e6;
    float: left;
    margin: 28px 0 20px 0;
    padding-bottom: 11px;
    position: relative;
    width: 100%;
}


.filtr-posuvnik {
    display: block;
    padding: 0 247px 0 0;
    position: relative;
    width: 100%;
    height: 100%;
}

.detail-box-folder .active {
    display: block;
}

#box-doprava {
    text-align: center;
    background: #f4f4f4;
    padding: 48px;
}
#box-doprava h2 {
    margin-top: 0;
}
.doprava-text {
    font-size: 1.6rem;
    margin-bottom: 34px;
}
#box-doprava .doprava-text h2 {
    color: #45b955;
    margin: 10px 0 0 0;
    padding-bottom: 0;
}
#zalozka-doprava {
    width: 100%;
    max-width: 940px;
    display: inline-block;
}
#zalozka-doprava p {
    padding: 0;
}
#zalozka-doprava div.doprava-row {
    display: grid;
    grid-template-columns: 68px 1fr;
    gap: 20px;
    border: 1px solid #ccc;
    border-top-width: 0;
    background: #fff;
    padding: 20px;
    align-items: center;
}
#zalozka-doprava div.doprava-row:first-child {
    border-top-width: 1px;
}
#zalozka-doprava div.doprava-row {
    display: grid;
    grid-template-columns: 68px 1fr;
    gap: 20px;
    border: 1px solid #ccc;
    border-top-width: 0;
    background: #fff;
    padding: 20px;
    align-items: center;
    text-align: left;
}
#zalozka-doprava div.doprava-item-text {
    display: grid;
    grid-template-columns: 1fr 68px;
    gap: 20px;
    align-items: center;
}
#zalozka-doprava .center-item p {
    color: #858585;
}
#zalozka-doprava .price-item {
    text-align: right;
}
#zalozka-doprava .price-item.zdarma {
    color: #45b955;
}

/* ********* Naseptavac ********* */

#top-naseptavac {
    position: absolute;
    top: 52px;
    left: 0;
    width: 100%;
    z-index: 200;
    display: none;
    text-align: left;
}
#naseptavac {
    padding: 5px;
    border: 1px #dadada solid;
    background-color: #ffffff;
    float: left;
    width: 100%;
}
#top-naseptavac a:hover {
    color: #000;
    text-decoration: none;
}
#top-naseptavac .sub-heading {
    padding: 3px 8px;
    margin-top: 1px;
    font-weight: bold;
    background-color: #f1f1f1;
    float: left;
    width: 100%;
    color: black;
    text-transform: uppercase;
    font-size: 1.3rem;
    margin-bottom: 2px;
}
#top-naseptavac .sub-heading-item {
    font-size: 1.4rem;
    letter-spacing: -0.01em;
    float: left;
    width: 100%;
}
#top-naseptavac .sub-heading-item a {
    padding: 5px 5px;
    margin-top: 1px;
    color: #666;
    text-decoration: none;
    line-height: 140%;
    display: block;
}
#top-naseptavac .sub-heading-item a:hover {
    padding: 5px 5px;
    margin-top: 1px;
    color: #3B3B3B;
    background-color: #f1f1f1;
    text-decoration: none;
    line-height: 140%;
    display: block;
}
#top-naseptavac img.sub-heading-prev {
    float: left;
    max-width: 30px;
    height: auto;
}
#top-naseptavac .sub-heading-name {
    float: right;
    width: calc(100% - 35px);
}
#top-naseptavac .highlight-term {
    color: red;
}

/**************************************************/


img.kontakt-mapa {
    background-color: #ffffff;
    border: 1px solid #444444;
    margin: 15px 0 15px 15px;
    padding: 3px;
}

/* --- 21. GALLERY --- */

.galerie {
    position: relative;
    display: block;
    float: left;
    width: 100%;
    padding-bottom: 15px;
    margin-top: 25px;
    clear: both;
    border-bottom: 4px solid #ededed;
}
.galerie .galerie_image {
    position: relative;
    display: block;
    float: left;
}
.galerie .galerie_image img {
    position: relative;
    display: block;
}
.galerie .galerie_content {
    position: relative;
    display: block;
    float: right;
    padding: 0;
    width: 508px;
}
.galerie .galerie_content h3 {
    font-size: 2.4rem;
    margin-bottom: 15px;
}
.galerie .galerie_content span {
    color: #4c4c4c;
    font-size: 2.3rem;
    font-weight: bold;
    margin-top: 10px;
    display: block;
}
.galerie .galerie_content .galerie_buttons {
    position: relative;
    margin-top: 25px;
}
.galerie .galerie_content .galerie_buttons .btn {
    background-color: #f4ecdf;
    color: #1a1a1a;
    padding: 9px 12px;
    margin-right: 10px;
    font-size: 1.6rem;
}
.galerie .galerie_content .galerie_buttons .btn .fa {
    font-size: 1.8rem;
}
.galerie .galerie_content .galerie_buttons .btn.btn-cart .fa {
    font-size: 1.4rem;
}
.galerie .galerie_content .galerie_buttons .btn.btn-cart {
    background-color: #d92c4e;
    color: #fff;
}
.galerie .galerie_content .galerie_buttons .btn.virtual {
    background-color: #2c2c2c;
    color: #fff;
}
.galerie .galerie_content .galerie_buttons .btn:hover {
    background-color: #959595;
    color: #fff;
}
.galerie .galerie_image_additional {
    position: relative;
    display: block;
    float: left;
    clear: both;
    margin-top: 15px;
    width: 100%;
}
.galerie .galerie_image_additional img {
    position: relative;
    display: block;
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}
.galerie .galerie_image_additional a.last img {
    margin-right: 0;
}

/* --- 15. PRODUCT DETAIL --- */

.detail-box {
    margin-bottom: 0;
    margin-top: 25px;
}

.columnCenter.productdetail ul.detail-box-links {
    border-bottom: 0 solid #e5e6ea;
    width: 100%;
    margin-bottom: -1px;
}

.detail-box-folder .active {
    display: block;
}
.detail-box-folder #box-foto {
    text-align: center;
}
.detail-box-folder #box-foto .centeredContent {
    display: inline-block;
}
.detail-box-folder #box-foto img {
    width: 100%;
    max-width: 515px;
    height: auto;
    padding: 25px;
}

.detail-box-folder #box-hodnoceni {
    border-bottom: 2px solid #ddd;
    padding-bottom: 14px;
}

.arrow-productDetailRight {
    position: absolute;
    top: 19px;
    left: -28px;
}

.name_and_logo {
    position: relative;
    padding: 0;
    border-bottom: 0 solid #fff;
    width: 100%;
}

.productDetailSlider img {
    width: 100%;
    display: block;
    margin: auto;
}

#productName {
    position: relative;
    font-weight: normal;
    margin: 0;
    padding-right: 27px;
    width: 100%;
    padding: 0;
    font-size: 2.4rem;
    text-align: left;
}

.productDetail {
    position: relative;
}

.productDetailLeft {
    position: relative;
    float: left;
    width: 48%;
}

/* Phase 64: sticky levý sloupec (foto + galerie) na desktopu — jede s sebou při
   scrollu, protože pravý sloupec #productDetailRight mívá delší obsah → vlevo
   vzniká prázdné místo. Ohraničeno výškou .productDetail řádku (= výška pravého
   sloupce, bez overflow:hidden na ancestorech) → na konci pravého sloupce přejde
   na normální posun a foto zmizí nahoře (native position:sticky chování). Jen
   desktop ≥1200px (≤1199px je single-column width:100% → sticky se neaplikuje). */
@media (min-width: 1200px) {
    .productDetailLeft {
        position: sticky;
        top: 20px;
        align-self: flex-start;
    }
}

#productImagesBox {
    width: 100%;
    margin-bottom: 22px;
    position: relative;
}

.youtube-video {
    position: absolute;
    left: 0;
    top: 0;
}
.youtube-video img {
    width: 40px;
    height: auto;
    display: block;
}

.sleva_big {
    display: block;
    position: absolute;
    right: 67px;
    top: 22px;
    transform: translate(0, -50%);
    font-size: 2.2rem;
    font-weight: normal;
    background-color: #f00;
    color: #fff;
    padding: 0;
    text-align: center;
    line-height: 120%;
    width: 65px;
    height: 65px;
    line-height: 65px;
    padding: 0;
    border-radius: 50% 50% 50% 50%;
}

.sleva_big.no24{
    right: 15px;
}

.centeredContent .youtube-video {
    top: auto;
    bottom: 9px;
}
.centeredContent .youtube-video img {
    width: 30px;
}
.productDetailLeft .clearBoth1 {
    clear: both;
    height:0;
    font-size:0;
    line-height:0;
    border: 0;
}

#productMainImage {
    position: relative;
    float: left;
    margin: 0 0 20px 0 ;
    padding: 0 0 13px 0;
    width: 100%;
}
.modal-header-box #productMainImage {
    margin-bottom: 12px;
}

#productMainImage a img {
    height: auto;
    padding: 0;
    border: 0 #dadada solid;
    width: 100%;
    /* Phase 64: větší hlavní fotka — sloupec .productDetailLeft je 48% ≈ 820px
       (po Phase 64-S 1710px container), fotka byla capnutá na 600px. 800px
       vyplní získaný prostor (parita s matrace owl-item ~806px). Zdroj thumb
       taky 800×800 (params.neon productDetail.imgWidth/imgHeight). */
    max-width: 800px;
}

/*fotografie barevnych variant*/
#otherColorsMainImg{
    position: absolute;
    width: 100%;
    height: 441px;
    left: 0;
    top: 0;
    text-align: center;
    overflow: hidden;
    display: none;
    padding: 0 0 13px 96px;
}

#otherColorsMainImg img{
    display: none;
}

.productDetailLeft #productImagesBox .ikony {
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
    margin-bottom: 0;
    height: 106px;
}

.productDetailLeft #productImagesBox .ikony.two {
    left: inherit;
    right: 0;
    height: inherit;
}
.productDetailLeft #productImagesBox .ikony.two img {
    margin-bottom: 5px;
}

#productAdditionalImages-obal {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    clear: both;
}
#productAdditionalImages-obal ul {
    position: relative !important;
    top: 0 !important;
    list-style: outside none none;
    padding: 0;
    width: 100%;
}

#productAdditionalImages {
    position: relative;
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
}

#productAdditionalImages .productMainImage {
    padding: 0 3% 3% 0;
    margin: 0;
}

#productAdditionalImages .productMainImage a {
    float: left;
    border: 1px solid #ddd;
    padding: 5px;
    position: relative;
}

#productAdditionalImages .productMainImage a:before {
    content: '';
    height: 2px;
    background-color: var(--primary-color, #00c4ed);
    z-index: 1;
    opacity: 0;
    transition: all 0.35s ease 0s;
    position: absolute;
    display: block;
    left: -1px;
    right: -1px;
    bottom: -1px;
}
#productAdditionalImages .productMainImage a:hover:before,
#productAdditionalImages .productMainImage.current a:before {
    opacity: 1;
}

#productAdditionalImages .productMainImage img {
    display: block;
    border: 0 solid #FFF;
}

#productAdditionalImages .productMainImage a:hover img {
}

.morePhotos {
    margin-top: 40px;
    text-align: center;
}

.zaruka_big {
    padding: 15px;
    margin-bottom: 15px;
    background-color: #f4f4f4;
    font-size: 1.3rem;
    color: #666666;
    width: 100%;
    text-align: center;
    vertical-align: middle;
    display: inline-block;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}


.zaruka_big span {
    border-right: 1px solid #A8A8A8;
    font-size: 2.4rem;
    font-weight: bold;
    color: #23aae2;
    padding-right: 25px;
    margin-right: 25px;
    min-width: 92px;
}


a#backToTop {
    display: none;
}
a#backToTop span {
    position: fixed;
    bottom: 3%;
    right: 3%;
    width: 68px;
    height: 68px;
    line-height: 68px;
    font-size: 3rem;
    border-radius: 10%;
    text-align: center;
    border: 1px solid #e3e3e3;
    background-color: #f1f1f1;
    color: #333;
    z-index: 9999;
}
a#backToTop:hover span {
    color: var(--primary-color, #00c4ed);
}

.productDetailLeft .vice_informaci a {
    position: relative;
    line-height: 130%;
    float: left;
    display: block;
    width: 100%;
    font-size: 1.6rem;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0 0 0 10px;
    margin-bottom: 30px;
    color: #333;
}
.productDetailLeft .vice_informaci a:hover {
    text-decoration: underline;
}

.darekzdarma {
    position: relative;
    float: left;
    clear: both;
    margin: 20px 0 20px 0;
    padding: 8px;
    width: 100%;
    border: 2px solid #E61952;
    border-radius: 10px;
    font-size: 1.2rem;
}
.darekzdarma .titulek {
    position: relative;
    padding: 2px 0 5px 0;
    line-height: 19px;
    font-size: 1.9rem;
    color: #E61952;
}
.darekzdarma .listing_foto {
    position: relative;
    display: block;
    float: left;
    width: 25%;
}
.darekzdarma .listing_foto a img {
    display: block;
    width: 100%;
    height: auto;
}
.darekzdarma .darek_right {
    position: relative;
    float: right;
    width: 73%;
    text-align: left;
}
.darekzdarma .darek_right a {
    position: relative;
    text-align: left;
    border-bottom: 2px dotted #e90063;
    text-decoration: none;
}
.darekzdarma .darek_right a h2 {
    font-weight: normal;
}
.darekzdarma .darek_right a:hover {
    text-decoration: underline;
}
.darekzdarma .darek_right h3.itemTitle {
    position: relative;
    text-align: left;
    font-weight: normal;
}
.darekzdarma .darek_right .listingDescription {
    height: 31px;
}
.darekzdarma .darekcena {
    font-weight: normal;
    margin-top: 15px;
}
.darekzdarma .darekcena strong {
    font-weight: normal;
}
.darekzdarma .darekcena span {
    color: #E61952;
}
.darekzdarma .vyprodani {
    position: absolute;
    right: 8px;
    bottom: 8px;
    text-align: right;
    font-style: italic;
}
/* ************** Barevné varianty ************** */

.barevne_varianty {
    position: relative;
    padding: 24px 0 20px 0;
    width: 100%;
    border-bottom: 0 solid #e3e3e3;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.barevne_varianty::after {
    content: '';
    flex: auto;
}

.barevne_varianty a {
    position: relative;
    border: 1px solid #d9d9d9;
    background-color: #FFF;
    margin: 0;
    padding: 4px;
    width: 16.6%;
    width: calc((100% / 7) - (48px / 7));
    float: left;
    text-decoration: none;
}

.barevne_varianty a.active,
.barevne_varianty a:hover {
    border: 1px solid var(--primary-color, #00c4ed);
    box-shadow: 0 0 5px 0 #c6c6c6;
}

.barevne_varianty a img {
    border: 0 solid #e3e3e3;
    display: block;
    height: auto;
    width: 100%;
}

.barevne_varianty a.active img {
}

.barevne_varianty span {
    position: relative;
    color: #000;
    font-size: 1.2rem;
    line-height: 100%;
    display: block;
    padding: 8px 0;
}

#productDetailRight .expedice_text {
    position: relative;
    line-height: 130%;
    float: left;
    display: block;
    width: 100%;
    padding: 20px 0 10px 0;
    font-size: 1.6rem;
}
.ikony,
.icon {
    position: relative;
    text-align: left;
    margin-bottom: 0;
    padding: 8px 0 0 0;
}
.ikony div {
    position: relative;
    border: 0 solid red;
    padding: 0 12px;
    margin: 0 3px 3px 0;
    line-height: 23px;
    font-size: 1rem;
    font-weight: normal;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    background-color: #a3a3a3;
}
.centeredContent .ikony,
.centeredContent .icon {
    text-align: center;
    padding: 0;
    min-height: 40px;
}
.centeredContent .ikony {
    position: absolute;
    left: -14px;
    top: 0;
}
.centeredContent .ikony div {
    border-radius: 0 5px 5px 0;
    display: block;
}
.ikony div.sleva {
    background-color: #009fe4;
}
.ikony div.extra-sleva {
    background-color: #ff0000;
}
.ikony div.novinka {
    background-color: #38b60a;
}
.ikony div.darek {
    background-color: #e80462;
}
.ikony div.vystaveno {
    background-color: #bad0e8;
}
.ikony div.zaruka {
    background-color: #23aae2;
}
.index .icon {
    display: none;
}
.icon div {
    position: relative;
    border: 0 solid red;
    margin: 0 8px 8px 0;
    color: #bababa;
    text-decoration: none;
    position: relative;
    display: inline-block;
    text-align: center;
    font-size: 2.7rem;
    cursor: pointer;
}
.icon div:hover {
    color: #1b3d93;
}
.icon div span {
    font-size: 1.3rem;
}
.icon div.nosnost span {
    position: absolute;
    bottom: 4px;
    left: 0;
    width: 100%;
    text-align: center;
    color: #fff;
}
.icon div.height {
    padding-right: 20px;
}
.icon div.height span {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
    line-height: 80%;
}
.icon div.tuhost {
    font-size: 2.6rem;
    padding-right: 5px;
}
.icon div.tuhost span {
    position: absolute;
    top: 2px;
    right: 0;
    font-size: 1.4rem;
}
.icon div.zaruka span {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
    line-height: 80%;
    color: #fff;
    width: 100%;
    text-align: center;
    font-size: 1.4rem;
}
.icon a {
    display: inline-block;
    width: auto !important;
    margin: 0 .3125rem .3125rem 0;
    padding: .375rem .9375rem;
    background-color: #fff;
    border: 1px solid #c6ced5;
    color: #1a1e22;
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 20px;
    max-width: 100%;
    text-decoration: none;
    white-space: nowrap !important;
    word-wrap: normal !important;
}
.icon .obal-barvabox {
    padding: 0;
    margin: 0;
}
.icon .obal-barvabox a {
    margin: 0 .4125rem .4125rem 0;
    padding: 0;
}
.icon .obal-barvabox a span {
    display: block;
    width: 34px;
    height: 14px;
}
.icon a:hover {
    border: 1px solid var(--primary-color, #00c4ed);
}
#productDetailRight.main-title .expedice_text {
    width: 100%;
}
#productDetailRight .right-description {
    position: relative;
    text-align: left;
    display: block;
    margin-bottom: 0;
    padding: 10px 0 22px 0;
    color: #6E6E6E;
    font-size: 1.4rem;
}
#productDetailRight .expedice_text_in {
    position: relative;
    text-align: left;
    color: #45b955;
    padding: 2px 0 4px 0;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
}
#productDetailRight {
    position: relative;
    float: right;
    width: 48%;
    color: #8e8e93;
}
/* Phase 72-F — plocha C „K produktu se hodí" (cross-sell příslušenství), full-width grid pod
   product info + CSS „Zobrazit další" expand (checkbox-hack, bez JS).
   SCOPE: core (všichni klienti přes flag pdpCrossSell — beneo+goldex ON, kamnax OFF). */
.product-detail-crosssell {
    clear: both;
    width: 100%;
    margin: 30px 0 15px;
    padding-top: 20px;
    border-top: 1px solid #e5e5e5;
    text-align: center;
}
.product-detail-crosssell .centerBoxHeading {
    text-align: left;
}
/* checkbox visually-hidden ALE focusable (a11y) — toggluje přes <label for>; klávesnice
   Tab přistane na checkboxu, Space togglu, focus ring se ukáže na labelu (selektor níž). */
.product-detail-crosssell .crosssell-toggle {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
}
.product-detail-crosssell .crosssell-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
    overflow: hidden;
    /* collapsed = ~1 řada; hodnota velkorysá ať NIKDY neořízne řadu 1 (cards s dlouhými názvy/
       badges/hodnocením), případný peek řady 2 = „více níže" affordance. Expand → none. */
    max-height: 520px;
    text-align: left;
}
.product-detail-crosssell .crosssell-grid .centerBoxContentsProducts {
    width: auto;
}
.product-detail-crosssell .crosssell-toggle:checked ~ .crosssell-grid {
    max-height: none;
}
.product-detail-crosssell .crosssell-more-btn {
    display: inline-block;
    margin-top: 15px;
    cursor: pointer;
}
.product-detail-crosssell .crosssell-toggle:focus-visible ~ .crosssell-more-btn {
    outline: 2px solid #204232;
    outline-offset: 2px;
}
.product-detail-crosssell .crosssell-toggle:checked ~ .crosssell-more-btn {
    display: none;
}
@media (max-width: 768px) {
    .product-detail-crosssell .crosssell-grid {
        grid-template-columns: repeat(2, 1fr);
        max-height: none;
    }
    .product-detail-crosssell .crosssell-more-btn {
        display: none;
    }
}
#product-details-modal #productDetailRight {
    padding-bottom: 20px;
}

#detail-blok {
    padding: 0;
    clear: both;
}

.detail-blok-in {
    padding: 16px 16px 4px 16px;
    margin: 0 0 24px 0;
    position: relative;
    background-color: #f1f1f1;
    width: 100%;
    clear: both;
}

#description-short {
    margin: 0 0 15px 0;
    padding: 0 18px;
}

.popisKratky {
    margin: 0 0 10px 0;
    padding: 15px 0 5px 0;
    font-size: 1.2rem;
    font-weight: normal;
    color: #666;
    text-align: justify;
}

#productDetailRight .velikosti-listing {
    padding: 0 0 40px 0;
    position: relative;
    width: 100%;
}
#productDetailRight .velikosti-listing a {
    padding: 10px 0;
    margin: 0 8px 8px 0;
    min-width: 88px;
    float: left;
    color: #1a1a1a;
    text-decoration: none;
    text-align: center;
    background-color: #ffffff;
    border: 1px #e1e1e1 solid;
}
#productDetailRight .velikosti-listing a:hover {
    background-color: #e1e1e1;
    border: 1px solid #e1e1e1;
    color: #1a1a1a;
}
#productDetailRight .velikosti-listing a.active {
    background-color: #000;
    border: 1px solid #000;
    color: #FFF;
}

/* ********** show-all-variants ************* */

.show-all-variants-out {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 10px 0;
}
button.show-all-variants {
    display: block;
    width: 100%;
    height: 52px;
    line-height: 50px;
    font-size: 1.8rem;
    border: 1px solid #e3e3e3;
    background-color: #f1f1f1;
    color: #231f20;
    text-align: center;
    text-decoration: none;
    border-radius: 5px;
}
button.show-all-variants span {
    padding-left: 4px;
}
button.show-all-variants:hover {
     cursor: pointer;
     background-color: #999;
     color: #fff;
     border: 1px solid #999;
 }
#productDetailRight .show-all-variants-list {
    padding: 0;
    position: relative;
    width: 100%;
}
#productDetailRight .show-all-variants-list p {
    color: #1a1a1a;
    font-size: 1.6rem;
}
.modal-header-box #productDetailRight .show-all-variants-list {
    padding-top: 48px;
}

#productDetailRight .show-all-variants-list .velikosti-listing-in {
    position: relative;
    display: block;
    width: 100%;
    overflow: auto;
    margin: 0;
    padding: 10px 14px;
    background-color: #fff;
    border-bottom: 1px solid #e3e3e3;
    color: #1a1e22;
    font-size: 1.6rem;
    font-weight: 300;
    line-height: 20px;
    max-width: 100%;
    text-decoration: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
#productDetailRight .show-all-variants-list .velikosti-listing-in:hover {
    background-color: #f6f6f6;
}
#productDetailRight .show-all-variants-list a {
    display: block;
    width: 100%;
    min-width: 571px;
    margin: 0;
    padding: 0;
    color: #1a1e22;
    font-size: 1.4rem;
    font-weight: 300;
    max-width: 100%;
    text-decoration: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
#productDetailRight .show-all-variants-list a img {
    min-width: 60px;
    max-width: 60px;
    height: auto;
}
#productDetailRight .show-all-variants-list a span {
    padding: 0 6px 0 0;
    width: 100%;
}
#productDetailRight .show-all-variants-list a .variants-name {
    max-width: 200px;
    padding-left: 6px;
}
#productDetailRight .show-all-variants-list a .variants-color {
    max-width: 71px;
}
#productDetailRight .show-all-variants-list a .variants-size {
    max-width: 97px;
}
#productDetailRight .show-all-variants-list a .variants-qu {
    color: #45b955;
    max-width: 98px;
}
#productDetailRight .show-all-variants-list .variants-price {
    color: #cc0000;
    font-weight: 500;
    max-width: 86px;
}
#productDetailRight .show-all-variants-list .variants-24h {
    display: block;
    width: 41px;
    height: 41px;
    min-width: 41px;
}
#productDetailRight .show-all-variants-list .variants-24h.filled {
    background: url(/data-central/img/expedice.svg);
    background-size: 100% 100%;
    z-index: 1;
    margin: 0 5px 0 0;
}
#productDetailRight .show-all-variants-list .velikosti_button {
    position: relative;
    min-width: 78px;
}
#productDetailRight .show-all-variants-list .kosik-button button {
    position: relative;
    right: inherit;
    top: inherit;
    height: 36px;
    line-height: 36px;
    padding: 0;
    font-size: 1.4rem;
    background: #f1f1f1;
    color: #231f20;
    border: 1px solid #e3e3e3;
    border-radius: 5px;
}
#productDetailRight .show-all-variants-list .kosik-button button:hover {
    background: #999;
    color: #fff;
    border: 1px solid #999;
}

#productDetailRight .show-all-variants-list .kosik-ks {
    top: 0;
    height: 50px;
    width: 72px;
}
#productDetailRight .show-all-variants-list .kosik-input {
    left: 6px;
    top: 5px;
}
#productDetailRight .show-all-variants-list .quantity-buttons {
    left: 45px;
    top: 5px;
}

/* ****** */

#productDetailRight #prdvel_main_static {
    position: relative;
    display: block;
    padding: 0 0 0 135px;
}
#productDetailRight #prdvel_main_static label {
    position: absolute;
    left: 0;
    top: 0;
    color: #1a1a1a;
    transform: translate(0, 50%);
}
#productDetailRight #prdvel_main_static #select-size {
    padding: 0 5px;
    width: 100%;
    line-height: 40px;
    height: 40px;
}
.optionName {
    position: absolute;
    left: 18px;
    top: 19px;
    font-size: 1.4rem;
    font-weight: bold;
    float: left;
}

.optionSelect {
    position: absolute;
    right: 18px;
    top: 17px;
}

.optionSelect select {
    float: right;
    width: 169px;
    padding: 3px 2px;
    font-size: 1.1rem;
}

#cartAdd-out {
    position: relative;
    color: #000000;
    height: 62px;
    width: 100%;
    margin-bottom: 18px;
    padding: 0 0;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 16px;
}

#cartAdd {
    position: relative;
    float: right;
    color: #000000;
    height: 62px;
    width: 100%;
    margin: 0 0 25px 0;
    padding: 0 0;
}
.modal-header-box #cartAdd {
    margin-bottom: 0;
}

/**************************************************/

.kosik-ks {
    position: absolute;
    left: 0;
    top: 0;
    width: 120px;
    height: 62px;
}

.kosik-input {
    position: absolute;
    left: 20px;
    top: 12px;
    border: 0 solid #e4e4e4;
    font-size: 1.8rem;
    padding: 2px 0 0 0;
    text-align: center;
    width: 45px;
    height: 40px;
    color: #333;
}

.quantity-buttons {
    display: block;
    position: absolute;
    top: 12px;
    left: 65px;
    width: 27px;
    height: 40px;
}

.quantity-plus.fas,
.quantity-minus.fas {
    position: absolute;
    left: 0;
    top: 0;
    width: 26px;
    height: 20px;
    line-height: 20px!important;
    display: block;
    text-align: center;
    color: #fff;
    background-color: #333;
    font-size: 1.6rem;
}

.quantity-minus.fas {
    top: 20px;
}

.quantity-plus.fas:hover,
.quantity-minus.fas:hover {
    cursor: pointer;
    background-color: #545454;
}

.kosik-ks span {
    position: absolute;
    left: 98px;
    top: 28px;
    display: block;
    color: #fff;
}

.detail-poptavka-btn,
.kosik-button button,
.best_button a {
    text-decoration: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    height: 62px;
    line-height: 62px;
    background: #000;
    color: #fff;
    padding: 0 0 0 120px;
    border: 0 solid #cc0000;
    text-align: center;
    text-transform: uppercase;
    font-size: 1.8rem;
    font-weight: normal;
    cursor: pointer;
    transition: none;
    border-radius: 5px;
    transition: all 0.35s ease 0s;
}
.detail-poptavka-btn {
    padding-left: 0;
}
.product-button .kosik-button button,
.best_button a {
    display: inline-block;
    position: relative;
    right: inherit;
    top: inherit;
    width: auto;
    height: 30px;
}
.product-button .kosik-button button {
    line-height: 30px;
    padding: 0 10px;
    font-size: 1.6rem;
}
.product-button .kosik-button button {
    line-height: 30px;
    padding: 0 10px;
    font-size: 1.6rem;
}
.best_button {
    text-align: center;
}
.best-buy-hp .best_button {
    margin-bottom: 15px;
}
.best_button a {
    padding: 0 34px;
    height: 37px;
    line-height: 37px;
    font-size: 1.6rem;
}
.product-button .form_cartAddProductList {
    position: relative;
    display: inline-block;
}

.kosik-button button .button-shoping-in {
    display: block;
}
.kosik-button button:hover,
.best_button a:hover,
.product-button a.button-shoping-in:hover {
    background: var(--primary-color, #00c4ed);
    color: #fff;
}
.kosik-button button:hover {
    background: #999;
}

.kosik-button button .fas,
.product-button a.button-shoping-in .fas {
    padding-right: 10px;
    -webkit-text-stroke: 1px #000;
    transition: all 0.35s ease-in-out 0s;
}
.kosik-button button:hover .fas,
.product-button a.button-shoping-in:hover .fas {
    padding-right: 10px;
    -webkit-text-stroke: 1px #2d6c09;
}
.kosik-button button:hover .fas {
    -webkit-text-stroke: 1px #999;
}
.product-button .kosik-button button .fas {
    -webkit-text-stroke: 1px #af0000;
}

#productDetailRight #detail-blok .dostupnost_text {
    position: relative;
    color: #49a416;
    font-weight: normal;
    font-size: 1.6rem;
    padding: 0 0;
    line-height: 62px;
    width: 148px;
    text-transform: uppercase;
    border-left: 6px solid #fff;
}

.product-info-detail-row.kod {
    padding: 10px 0 55px 0;
    display: block;
    width: 100%;
    position: relative;
    text-align: left;
}

.product-info-detail-row.kod .product_kod {
    display: inline-block;
    padding-right: 25px;
}

.product-info-detail-row.kod .product-info-detail-nazev {
    color: #909090;
    font-weight: normal;
    font-size: 1.4rem;
    padding: 0 10px 0 0;
}

.product-info-detail-row.kod .product-info-detail-hodnota {
    font-size: 1.4rem;
}

.product-info-detail-row.kod .product_znacka {
    display: inline-block;
}

#productDetailRight .splatky-essox {
    display: block;
    min-width: 170px;
    line-height: 62px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    font-size: 1.8rem;
    font-weight: normal;
    cursor: pointer;
    border: 0 solid #231f20;
    color: #fff;
    background: #666;
    text-decoration: none;
}
#productDetailRight .splatky-essox:hover {
    background: #000;
}
#productDetailRight #iko-oblibene {
    display: block;
    min-width: 114px;
    height: 62px;
    font-size: 2.2rem;
    border: 1px solid #231f20;
    color: #231f20;
    text-align: center;
    text-decoration: none;
    padding-top: 9px;
    border-radius: 5px;
}
#productDetailRight #iko-oblibene span.fas,
#productDetailRight #iko-oblibene span.far {
    line-height: 100%;
    display: block;
}
#productDetailRight #iko-oblibene span.text {
    display: block;
    font-size: 1.4rem;
}
#productDetailRight #iko-oblibene:hover,
#productDetailRight #iko-oblibene.active {
    border: 1px solid #999;
    background-color: #999;
    color: #fff;
}

#hodnoceni-total {
    display: inline-block;
    padding-right: 25px;
}
#hodnoceni-total .starsRate {
    float: left;
    padding-right: 10px;
}

#hodnoceni-total .starsRate .starsBackground {
    background-image: url('/data-central/img/front/stars_product.png');
    background-position: left top;
    background-repeat: no-repeat;
    height: 16px;
    width: 105px;
}
#hodnoceni-total .starsRate .starsForeground {
    background-image: url('/data-central/img/front/stars_product.png');
    background-position: left -16px;
    background-repeat: no-repeat;
    height: 16px;
}

.popis_hodnoceni .hodnoceni-total {
    display: block;
    padding-top: 20px;
}
#box-hodnoceni .hodnoceni-total {
    padding-top: 50px;
    text-align: center;
}
.popis_hodnoceni .product-info-detail-hodnota {
    font-size: 2.2rem;
    text-transform: uppercase;
    font-weight: bold;
}
.popis_hodnoceni .product-info-detail-hodnota strong {
    color: #f5be31;
}
.popis_hodnoceni .hodnoceni-total .starsRate {
    float: none;
    display: inline-block;
    clear: both;
    padding-right: 0;
}
.popis_hodnoceni .heureka_rating_right {
    float: right;
    width: auto;
    margin: 0;
}

.popis_hodnoceni .heureka_produkt div.hodnoceniblok .ratingtime {
    margin: 37px 0 0 0;
}

.popis_hodnoceni .hodnoceniblok h2 {
    text-align: left;
    clear: both;
    font-size: 1.6rem;
    padding: 10px 0 5px 0;
    margin-top: 10px;
    float: left;
}

.popis_hodnoceni .button-obal {
    padding: 25px 0 50px 0;
}
#box-hodnoceni .button-obal {
    text-align: center;
}
.popis_hodnoceni .hodnoceni_button {
    color: #000;
    font-size: 1.6rem;
    font-weight: bold;
    display: inline-block;
    padding: 10px 60px;
    border: 1px solid #000;
    text-decoration: none;
}
.popis_hodnoceni .hodnoceni_button:hover {
    color: #fff;
    background-color: #000;
}

.popis_video {
    margin-top: 35px;
}

#velikosti-produkt-img {
    float: right;
    padding: 13px 0 0 0;
    cursor: pointer;
}

.product-info-detail-row {
    clear: both;
    position: relative;
    display: block;
    padding: 0;
    width: 100%;
}
.product-info-detail-row ul {
    margin: 0;
    padding: 0;
}
.product-info-detail-row ul li {
    list-style-type: none;
    text-align: left;
}

.product-info-detail-row ul li span {
    min-width: 24px;
}

.product-info-detail-row a {
    color: #858585;
    text-decoration: none;
    font-size: 1.5rem;
}

.product-info-detail-row a:hover {
    color: var(--primary-color, #00c4ed);
}

.ban_product_info {
    border: 1px solid #C4C4C4;
    background-color: #f6f6f6;
    text-align: center;
    padding: 25px 0;
    margin: 35px 0;
    border-radius: 6px;
    display: inline-block;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}
.ban_product_info span {
    float: left;
    display: block;
}
.ban_product_info span.fa-mobile-alt {
    font-size: 8.6rem;
    padding-right: 24px;
    color: #1a1a1a;
}
.ban_product_info .right {
    color: #808080;
    font-weight: 300;
    font-size: 1.6rem;
    text-align: center;
}
.ban_product_info .right p {
    padding: 0;
    margin: 0;
    text-align: center;
}
.ban_product_info .right strong {
    font-size: 2.2rem;
    font-weight: normal;
    color: #000;
    line-height: 110%;
    padding: 0;
    display: block;
}

#productDescription1 {
    text-align: justify;
    margin: 0 0 10px 0;
    padding: 0;
    font-weight: normal;
    color: #6E6E6E;
    clear: both;
}

#productDescription1 h2 {
    font-size: 2rem;
    font-weight: 600;
    text-align: left;
}
#productDescription1 > h2 {
    font-size: 2.2rem;
    margin-top: 24px;
}

#productDescription1 p {
    margin: 0;
    padding: 5px 0;
    color: #262626;
}

.product-description {
    position: relative;
    color: #000000;
    width: 100%;
    margin: 38px 0 38px 0;
    padding: 0 0;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
.product-description .param_slozeni {
    width: 20%;
    background-color: #f6f6f6;
    padding: 10px 20px;
    border-radius: 10px;
}
}
.product-description .param_slozeni h2 {
}
.product-description .param_slozeni strong {
    font-size: 1.6rem;
    color: var(--primary-color, #00c4ed);
}
.product-description .description {
    width: 50%;
}
.product-description .description.description-wide {
    width: 70%;
}
.product-description .description.description-wide .productdetailreducer-descr {
    overflow: hidden;
}
.product-description .description.description-wide,
.product-description .description.description-wide div,
.product-description .description.description-wide p,
.product-description .description.description-wide span,
.product-description .description.description-wide font {
    font-size: 1.4rem!important;
}
.product-description .manufacturers {
    width: 20%;
}

.soubory-ke-stazeni-nadpis {
    padding-bottom: 5px;
}

.soubory-ke-stazeni-celkem td.parametry_hodnota div {
    margin-right: 15px;
    display: block;
    float: left;
}

#productDescription3 .soubory-ke-stazeni-celkem td {
    padding: 10px;
}

.ke_stazeni_title {
    width: 200px;
    padding-top: 2px;
}

/* *************** rozšiřující popis ***************/

#description-add .vlastnosti_description {
    position: relative;
    margin: 95px 0 65px 0;
}
#description-add.cybex p {
    text-align: center;
}
#description-add.cybex ul {
    text-align: center;
}
#description-add p.title {
    text-transform: uppercase;
    font-size: 1.8rem;
    text-align: center;
    overflow: hidden;
    margin: 45px 0;
}

#description-add p.title:before,
#description-add p.title:after {
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    height: 1px;
    background-color: #ddd;
    width: 50%;
    top: -1px;
    border: 0;
}
#description-add p.title:before {
    left: auto;
    right: 20px;
    margin-left: -50%;
}
#description-add p.title:after {
    left: 20px;
    right: auto;
    margin-right: -50%;
}
#description-add p.img {
    text-align: center;
    margin: 0 0 45px 0;
}
#description-add p.img img {
    height: auto;
    max-width: 100%;
}
#description-add p img {
    height: auto;
    max-width: 100%;
}
#description-add p.img.two img {
}
#description-add ol,
#description-add ul {
    list-style: none;
    padding: 0;
}
#description-add ol.img-description {
    margin: 0 0 65px 0;
    counter-reset: ol-counter;
    font-size: 0;
}
#description-add ol.img-description li {
    position: relative;
    display: inline-block;
    vertical-align: top;
    text-align: left;
    width: 50%;
    margin: 0 0 15px 0;
    padding: 7px 30px 10px 42px;
    font-size: 1.4rem;
}
#description-add ol.img-description li:before {
    position: absolute;
    left: 0;
    top: 0;
    content: counter(ol-counter);
    counter-increment: ol-counter;
    width: 32px;
    height: 32px;
    line-height: 32px;
    color: #000;
    background: #fcb831;
    font-size: 1.4rem;
    text-align: center;
    border-radius: 100px;
}

#description-add ul.param-description li {
    padding: 20px 0;
    border-bottom: 1px dashed #B5B5B5;
}
#description-add ul.param-description li.first {
    border-top: 1px dashed #B5B5B5;
}
#description-add ul.param-description p.title-param {
    text-transform: uppercase;
    color: #000;
}

#description-add .spec_description {
    margin: 0 0 65px 0;
}
#description-add .spec_description div.left,
#description-add .spec_description div.right {
    display: inline-block;
    width: 45%;
}
#description-add .spec_description div.left ul li {
    padding: 10px 0;
}
#description-add .spec_description div.left span {
    padding: 0 10px 0 0;
    font-size: 3rem;
    color: #fb0000;
    float: left;
}
#description-add .spec_description div.right {
    text-align: center;
}
#description-add .spec_description div.right img {
    padding: 0 10px;
}
#description-add .video_description {
    text-align: center;
    margin: 0 0 95px 0;
}
#description-add .video_description.first {
    margin-top: 105px;
}

/* *************** rozšiřující popis - II ***************/

#productDescription1 #description-more h2 {
    font-size: 3rem;
    font-weight: normal;
    text-transform: uppercase;
}
#productDescription1 #description-more .text h2 {
    font-size: 2.4rem;
}
#description-more .cybex-block,
#description-more .cybex-block-in {
    display: flex;
    flex-wrap: wrap;
}
#description-more .cybex-block {
    align-items: stretch;
}
#description-more .cybex-block.top {
    align-items: flex-start;
}
#description-more .cybex-block-in {
    width: 50%;
    align-items: center;
    justify-content: center;
}
#description-more .cybex-block.black {
    background-color: #000;
    color: #fff;
}
#description-more .cybex-block.black h2,
#description-more .cybex-block.black p {
    color: #fff;
}
#description-more .cybex-block.grey {
    background-color: #f6f6f6;
}
#description-more .cybex-block.grey.two {
    background-color: #ecebe9;
}
#description-more .cybex-block.blue {
    background-color: #407ec9;
}
#description-more .cybex-block.blue * {
    color: #fff;
}
#description-more .nuna-out {
    background-image: url("/data-central/img/nuna/bg_nuna.png");
    background-position: center;
    background-size: 100% auto;
    background-repeat: no-repeat;
}
#description-more .nuna-out.two {
    background-image: url("/data-central/img/nuna/bg_nuna2.webp");
}
#description-more .cybex-block h2,
#description-more .cybex-block p {
    text-align: center;
}
#description-more .cybex-block p {
    width: 100%;
}
#description-more .cybex-block-in.text {
    padding: 0 4%;
    flex-direction: column;
}
#description-more video {
    height: 100%;
    object-fit: cover;
    width: 100%;
    max-width: 100%;
}
#description-more .iframe_out,
.iframe_out {
    position: relative;
    overflow: hidden;
    width: 100%;
}
#description-more .iframe_out.one,
.iframe_out.one {
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}
#description-more .iframe_out.two,
.iframe_out.two {
    padding-top: 75%; /* 4:3 Aspect Ratio */
}
#description-more .iframe_out.three,
.iframe_out.three {
    padding-top: 66.66%; /* 3:2 Aspect Ratio */
}
#description-more iframe,
.iframe_out iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
    border: 0;
}
#description-more table.romer td,
#description-more table.cybex td {
    text-align: center;
    width: 50%;
}

#description-more .abc-block-out {
    background-color: #f4f4f2;
    padding: 15px;
}
#description-more .abc-block-out.table {
    background-color: #fff;
    padding: 0;
}
#description-more .abc-block-out.table table tr th,
#description-more .abc-block-out.table table tr td {
    padding: 6px 10px;
}
#description-more .abc-block-out.table table tr:nth-child(odd) th,
#description-more .abc-block-out.table table tr:nth-child(odd) td {
    background-color: #f4f4f2;
}
#description-more .abc-block-out h3 {
    font-weight: normal;
}
#description-more .abc-block-out h2,
#description-more .abc-block-out h3 {
    text-align: left;
}
#description-more .abc-block,
#description-more .abc-block-in,
#description-more .abc-block-in div {
    display: flex;
}
#description-more .abc-block-in {
    flex-wrap: wrap;
    width: 33.333%;
}
#description-more .abc-block {
    align-items: flex-start;
}
#description-more .abc-block-in div {
    align-items: center;
    padding: 8px 0;
    width: 100%;
}
#description-more .abc-block-in div img  {
    width: 46px;
    margin-right: 14px;
}
#description-more .abc-block-out table {
    width: 100%;
    padding: 0;
    margin: 0;
    border-collapse: collapse;
    text-align: left;
}
#description-more .abc-block-out.table.pdf table td a {
    font-weight: bold;
}
#description-more .abc-block-out.table.pdf table td a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f1c1";
    margin-right: 6px;
}

/* --- 16. PRICING (product detail) --- */

#productDetailRight .ceny-obal-out {
    position: relative;
    width: 100%;
}
#productDetailRight .ceny-obal {
    position: relative;
    padding: 0 0 0;
    border-bottom: 0 solid #e3e3e3;
    width: 100%;
}

#productDetailRight .manufacture-logo {
    position: absolute;
    right: 0;
    top: 1px;
    display: block;
}

#productDetailRight .ceny-obal .ceny {
    position: relative;
    float: left;
    width: 100%;
    font-size: 1.5rem;
    padding: 0;
}
#productDetailRight .ceny-obal .ceny.coupon {
}

#productDetailRight .ceny-obal .nase-cena {
    position: relative;
    font-weight: 500;
    padding: 0;
    text-align: left;
    float: left;
}

#productDetailRight .ceny-obal .nase-cena-nazev {
    float: left;
    font-size: 1.4rem;
    display: none;
}

#productDetailRight .ceny-obal .nase-cena-hodnota {
    font-size: 3.6rem;
    color: #cc0000;
    padding: 0;
    text-align: left;
}
#productDetailRight .ceny-obal .nase-cena-hodnota.coupon {
}
#productDetailRight .ceny-obal .nase-cena-hodnota strong {
    font-size: 1.4rem;
    font-weight: normal;
    color: #8e8e93;
}

#productDetailRight .ceny-obal .nase-cena-bezdph {
    position: absolute;
    top: 54px;
    left: 3px;
    width: 234px;
    height: 31px;
    border-bottom: 1px #ddd solid;
    display: none;
}

#productDetailRight .ceny-obal .nase-cena-nazev-bezdph {
    float: left;
    padding-top: 8px;
}

#productDetailRight .ceny-obal .nase-cena-hodnota-bezdph {
    float: right;
    padding-top: 8px;
}

#productDetailRight .ceny-obal .doporucena-cena {
    position: relative;
    float: left;
    padding: 5px 0 0 0;
    clear: both;
    text-align: left;
}

#productDetailRight .ceny-obal .doporucena-cena-nazev,
#productDetailRight .ceny-obal .doporucena-cena-hodnota {
    position: relative;
    float: left;
    padding: 0;
    display: inline-block;
}
#productDetailRight .ceny-obal .doporucena-cena-hodnota {
    padding-left: 10px;
}

#productDetailRight .ceny-obal .nase-cena-nazev_1 {
    display: none;
}

#productDetailRight .ceny-obal .sleva {
    position: relative;
    float: left;
    padding: 5px 0 0 10px;
}

#productDetailRight .ceny-obal .sleva-nazev,
#productDetailRight .ceny-obal .sleva-hodnota {
    position: relative;
    float: left;
    padding: 0 5px 0 0;
    display: inline-block;
}

/* ***** COUPON ****** */

.ceny-coupon-obal {
    position: relative;
    float: left;
    width: 100%;
    margin: 8px 0;
}

.coupon-help-icon,
.coupon-help-text {
    cursor: pointer;
}

.ceny-coupon,
.ceny-discount {
    position: relative;
    clear: both;
    float: left;
    font-size: 1.6rem;
    padding: 4px 0 4px 0;
    width: 100%;
    color: #000;
}
#product-details-modal .ceny-coupon,
#product-details-modal .ceny-discount {
    font-size: 1.4rem;
}
.ceny-coupon{
}
.ceny-discount {
    padding-top: 0;
}

.ceny-coupon .left,
.ceny-discount .left {
    width: 60%;
    padding-top: 0;
    text-align: left;
}
.ceny-coupon .left span.coupon-price,
.ceny-discount .left span.coupon-price {
    /*
    font-size: 2.6rem;
     */
    font-weight: normal;
    line-height: 110%;
    padding-right: 2px;
}
.ceny-coupon .right,
.ceny-discount .right {
    padding-top: 0;
    width: 40%;
    text-align: right;
}
.ceny-coupon .right strong,
.ceny-discount .right strong {
    color: #000;
}
#productDetailRight .coupon-help-text,
#productDetailRight .discount-help-text {
    padding-left: 5px;
}

.coupon-tooltiptext,
.sklad-tooltiptext,
.discount-tooltiptext {
    display: none;
    font-size: 1.4rem;
}

/******* DETAIL BOX *************/

ul#detail-box-links li {

}

ul#detail-box-links li a {

}

ul#detail-box-links li.selected,
ul#detail-box-links li:hover {

}

ul#detail-box-links li.selected a,
ul#detail-box-links li:hover a {

}

.detail-box .clearBoth1 {
    display: none;
}

.detail-box-folder {
    position: relative;
    padding: 0;
    margin: 0 0 15px;
    border-top: 1px solid #ddd;
    padding: 17px 0 17px 0;
    font-size: 1.4rem;
}

.detail-box-folder iframe,
.detail-box-folder object {
    width: 100%!important;
    max-width: 795px;
}

.detail-box-folder h2 {
    padding-bottom: 8px;
    font-size: 1.8rem;
    margin-bottom: 5px;
}

#box-velikosti {
    max-height: 440px;
    text-align: center;
    position: relative;
}

#box-velikosti h2 {
    border-bottom: none;
    margin: 0;
    padding: 0 0 5px 0;
    text-align: left;
}
.popis_hodnoceni h2 {
    text-align: center;
}

#similarproducts {
    margin: 27px 0 0 0;
    width: 100%;
}

#similarproducts .centerBoxContentsProducts,
#similarproducts .centerBoxContentsProducts1 {
    width: 100%;
    height: auto;
}
#similarproducts .centerBoxContentsProducts-in {
    border: 1px solid #fff;
}
#similarproducts .centerBoxContentsProducts-in:hover {
    border: 1px solid #000;
}
#similarproducts .centerBoxContentsProducts:hover .hiden-box {
    display: none;
}

#similarproducts .detail-box-folder {
    padding: 10px 0;
}

#similarproducts .centerBoxContentsProducts .listing_foto a img {
    margin-top: 14px;
}

#botom-naseptavac {
    display: none;
}

#botom-naseptavac.active {
    display: block;
}

#nastivene-obal {
    background-color: #fff;
    border: 1px solid #dadada;
    padding: 20px 0 25px 25px;
    position: absolute;
    top: 51px;
    width: 100%;
    z-index: 100010;
    text-align: left;
}

#nastivene-obal .nastivene-close-button {
    background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
    border: 0 none;
    color: #2c3e50;
    cursor: pointer;
    display: block;
    font-size: 3.4rem;
    font-weight: lighter;
    line-height: 20px;
    opacity: 0.6;
    padding: 12px;
    position: absolute;
    right: 0;
    text-shadow: none;
    top: 0;
    z-index: 1;
}

#nastivene-obal .nastivene-header {
    color: #aeb1bb;
    font-size: 1.3rem;
    margin-bottom: 15px;
    text-transform: none;
}

#nastivene-obal ul,
#nastivene-obal li
{
    list-style: none;
}

#nastivene-obal ul li {
    float: left;
    height: 125px;
    margin-right: 10px;
    padding-top: 5px;
    position: relative;
    text-align: center;
    width: 90px;
    color: #54596c;
}

#nastivene-obal ul li a {
    color: #54596c;
    text-decoration: none;
}
#nastivene-obal ul li a img {
    max-width: 85px;
    height: auto;
}

/********** BEST-BUY **********/

.best-buy-hp {
    padding-right: 15px;
}
.best-buy {
    position: relative;
    display: block;
    width: 40%;
    float: right;
    padding: 0;
}
.best-buy-hp .best-buy {
    width: 100%;
    float: left;
}
.best-buy .best-buy-in {
    border-radius: 20px 20px 20px 20px;
    border: 2px solid #ddd;
    padding: 20px;
}
.best-buy .best-buy-countdown,
.best-buy .best-buy-image,
.best-buy .best-buy-price {
    position: relative;
    display: block;
    width: 100%;
}
.best-buy .best-buy-image {
    text-align: center;
}
.best-buy .best-buy-image img {
    max-width: 60%;
    height: auto;
}
.best-buy-hp .best-buy .best-buy-image img {
    max-width: 100%;
    height: auto;
}
.best-buy .best-buy-image .sleva-hodnota {
    display: none;
    position: absolute;
    left: auto;
    right: 0;
    top: 1px;
    z-index: 1;
    background: #ff0000;
    color: #fff;
    padding: 0;
    line-height: 1.2;
    text-align: center;
    width: 76px;
    height: 76px;
    border-radius: 50% 50% 50% 50%;
}
.index .best-buy .best-buy-in:hover {
    animation: pulse 1.25s infinite cubic-bezier(0.66, 0, 0, 1);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.15);
}

@keyframes pulse {to {box-shadow: 0 0 0 35px rgba(0, 0, 0, 0);}}

.best-buy .best-buy-image .sleva-hodnota span {
    display: block;
    font-size: 2.2rem;
    font-weight: bold;
}
.best-buy .akce {
    position: relative;
    display: block;
    font-size: 2.4rem;
    color: #3b3b3b;
    text-align: center;
    padding: 0 0 24px 0;
}
.best-buy .best-buy-price {
    padding: 0 0;
}
.best-buy-hp .best-buy .best-buy-price {
    padding: 15px 0 18px 0;
}
.best-buy .best-buy-price h3 {
    text-align: center;
    height: 47px;
    margin: 0;
    overflow: hidden;
}
.best-buy .best-buy-price h3 a {
    font-size: 1.6rem;
    line-height: 130%;
    color: #333;
    margin: 0 0 7px;
    line-height: 1.4;
    position: relative;
    font-weight: normal;
    transition: all 0.35s ease 0s;
    text-decoration: none;
}
.best-buy .best-buy-price h3 a:hover {
    color: var(--primary-color, #00c4ed);
}
.best-buy .best-buy-price .ceny {
    text-align: center;
}
.best-buy .best-buy-price .nase-cena {
    color: #000;
    font-size: 2.6rem;
    font-weight: bold;
    display: inline-block;
    white-space: nowrap;
}
.best-buy .best-buy-price .doporucena-cena {
    text-decoration: line-through;
    color: #848484;
    white-space: nowrap;
    font-size: 1.8rem;
    display: inline-block;
}
.best-buy-hp .best-buy .listingDescription {
    height: 68px;
    margin-bottom: 26px;
    text-align: center;
}
.best-buy .best-buy-countdown {
    text-align: center;
    padding: 0;
}
.best-buy-hp .best-buy .best-buy-countdown {
    padding: 0 0 15px 0;
}
.best-buy .best-buy-countdown span.end {
    display: none;
    font-size: 1.5rem;
    color: #3b3b3b;
    padding: 0;
    text-align: center;
}
.best-buy-hp .best-buy .best-buy-countdown span.end {
    display: block;
}
.best-buy .best-buy-countdown .countdown {
    text-align: center;
    overflow: hidden;
    margin: 15px 0 0 0;
}
.best-buy .countdown-section {
    width: auto;
    margin: 0 auto;
    padding: 0 7px;
    display: inline-block;
    position: relative;
}
.best-buy .countdown-section:first-child {
    padding-left: 0;
}
.best-buy .countdown-section:last-child {
    padding-right: 0;
}
.best-buy .countdown-section:after {
    content: ':';
    color: #1a1a1a;
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 40px;
    height: 40px;
    position: absolute;
    display: block;
    top: 0;
    right: -4px;
}
.best-buy .countdown-section:last-child:after {
    display: none;
}
.best-buy .countdown-section .countdown-amount {
    display: block;
    font-size: 3rem;
    padding: 0 7px;
    line-height: 40px;
    float: none;
    margin: 0 auto;
    background: #e6e6e6;
    color: #3b3b3b;
    border-radius: 5px 5px 5px 5px;
}
.best-buy .countdown-section .countdown-period {
    display: block;
    font-size: 1.2rem;
    text-transform: uppercase;
    float: none;
    padding: 5px 0 0;
    color: #1a1a1a;
    margin: 0 auto;
}

#snippet-zalozky-bestBuy-bestBuy {
    position: relative;
    float: right;
    width: 35%;
}

#productDetailRight .best-buy {
    width: 100%;
    margin-top: 70px;
}

#indexProductList .best-buy .best-buy-in,
#zalozky_main .best-buy .best-buy-in {
    padding: 19px 20px;
    display: flex;
    align-items: center;
}
#indexProductList .best-buy .akce,
#zalozky_main .best-buy .akce {
    display: none;
}
.best-buy__right {
    width: 100%;
}
#indexProductList .best-buy .best-buy-countdown,
#indexProductList .best-buy .best-buy-price,
#indexProductList .best-buy .listingDescription,
#indexProductList .best-buy .best_button,
#zalozky_main .best-buy .best-buy-countdown,
#zalozky_main .best-buy .best-buy-price,
#zalozky_main .best-buy .listingDescription,
#zalozky_main .best-buy .best_button {
    width: 100%;
    padding-left: 14px;
}
#zalozky_main .best-buy .listingDescription {
    margin-bottom: 18px;
    margin-top: 8px;
}
#indexProductList .best-buy .listingDescription {
    display: none;
}
#indexProductList .best-buy .best_button {
    margin-top: 18px;
}
#indexProductList .best-buy .best-buy-image,
#zalozky_main .best-buy .best-buy-image {
    max-width: 40%;
}
#indexProductList .best-buy .best-buy-image img,
#zalozky_main .best-buy .best-buy-image img {
    max-width: 100%;
}
#indexProductList .best-buy h3,
#zalozky_main .best-buy h3 {
    padding-top: 0;
    margin-top: 0;
    margin-bottom: 0;
}
#indexProductList .best-buy .best-buy-image .sleva-hodnota,
#zalozky_main .best-buy .best-buy-image .sleva-hodnota {
    display: none;
    width: 50px;
    height: 50px;
    line-height: 50px;
}
#indexProductList .best-buy .best-buy-image .sleva-hodnota span,
#zalozky_main .best-buy .best-buy-image .sleva-hodnota span {
    font-size: 1.7rem;
    font-weight: 600;
}

/* --- 17. CART & ACCESSORIES --- */



#modalCartContent .text,
.check_dokoncena_objednavka {
    color: #48a016;
    font-size: 1.6rem;
    font-weight: bold;
    width: 100%;
    padding: 18px 0;
    display: block;
    position: relative;
    background-repeat: no-repeat;
    background-position: 30px 16px;
    text-transform: uppercase;
}
#modalCartContent .text i,
.check_dokoncena_objednavka i {
    font-size: 2.4rem;
    display: block;
    float: left;
    margin: -1px 8px 0 0;
}
#modalCartContent .text span {
    color: #000;
    display: block;
    font-weight: bold;
    padding-bottom: 5px;
}

#sk_line_1 {
    position: relative;
    float: left;
    background-color: #FFFFFF;
    min-height: 101px;
    text-align: left;
    padding: 20px 0 4px 0;
    width: 100%;
    border-top: 1px solid #e3e3e3;
}
#sk_line_1 .line-foto,
#sk_line_1 .cena-nazev {
    position: relative;
    float: left;
}
#sk_line_1 img {
    max-width: 100px;
    height: auto;
}
#sk_line_1 .cena-nazev {
    padding-left: 15px;
}
#sk_line_1 .line-nazev {
    font-size: 1.6rem;
    font-weight: bold;
    color: #000;
    display: block;
}
#sk_line_1 .line-mnozstvi {
    font-size: 1.6rem;
    font-weight: normal;
    display: block;
    padding: 6px 0;
}
#sk_line_1 .line-cena {
    font-size: 1.8rem;
    font-weight: normal;
    color: #000;
}
#sk_line_1 .line-cena span {
    font-weight: bold;
    display: inline-block;
    padding-left: 5px;
}
#sk_line_1 .line-nyni {
    border-top: 1px solid #e3e3e3;
    margin: 20px 0 0;
    padding: 10px 0;
}
#sk_line_1 .sk_product_info .foto {
    position: absolute;
    top: 0;
    left: 0;
    height: 85px;
    padding-right: 20px;
    background-color: #fff;
}

#sk_line_1 ul {
    list-style: circle;
    padding-left: 135px;
}

#sk_line_1 .sk_product_info .text {
    position: relative;
    display: block;
    float: left;
    font-size: 1.8rem;
    font-weight: bold;
    color: #2B8A27;
    padding-bottom: 10px;
}

#sk_line_1 .sk_product_info .nazev {
    position: relative;
    display: block;
    float: left;
    font-size: 2rem;
    color: #000;
    width: 100%;
    padding: 8px 0 8px 140px;
    background-color: #eee;
}

#sk_line_1 .sk_product_info {
    position: relative;
    display: block;
    float: left;
    width: 100%;
}

#sk_line_1 .sk_order_it {
    position: absolute;
    right: -2px;
    top: 12px;
    display: block;
}

#sk_line_2 {
    position: relative;
    float: left;
    clear: both;
    padding: 20px 0 8px 0;
    width: 100%;
    /* Phase 72 mobil: upsell grid v úzkém modalu se nesmí posouvat do stran (belt). */
    overflow-x: hidden;
}
/* Phase 72 — upsell „Zákazníci nejčastěji nakupují" v modalu: CSS GRID místo 50% floatů.
   Floatované karty s RŮZNOU výškou (select vs single, coupon, popis) se na 2. řádku zalomily
   nakřivo a odskočily moc dolů (user 2026-06-10, desktop). Grid = čisté 2-sloupcové řádky,
   align-items:stretch → karty v řádku stejně vysoké, žádný float-jump. <script> z productListu
   je display:none → negeneruje grid buňku (jako kategorie).
   minmax(0,1fr) (ne 1fr=minmax(auto,1fr)): sloupce se SMÍ zmenšit pod min-content karty,
   takže grid nikdy nepřeteče kontejner. */
#sk_line_2 .modal-upsell-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
}
/* Mobil: modal je úzký (~280px), 2 sloupce á 155px (=324px) přetečou → sideways scroll
   (user 2026-06-10, iPhone). Pod 767px (existující breakpoint) 1 sloupec — karta dostane
   plnou šířku modalu a vejde se. Desktop modal (~660px) zůstává 2-sloupcový. */
@media (max-width: 767px) {
    #sk_line_2 .modal-upsell-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}
#sk_line_2 .modal-upsell-grid .centerBoxContentsProducts {
    width: 100%;
    float: none;
}
#sk_line_2 h2 {
    color: #000;
}

#sk_line_2 .form-group {
    padding: 0 0 10px 0;
}
#sk_line_2 .form-group .form-label {
    position: relative;
    display: block;
    float: left;
}
#sk_line_2 .form-group .form-control {
    position: relative;
    display: block;
    float: right;
    max-width: 380px;
}
#sk_line_2 .form-group span {
    display: block;
    clear: both;
    width: 100%;
    color: red;
}


#sk_line_2 .nazev {
    position: relative;
    display: block;
    float: left;
    font-size: 2.2rem;
    color: #000;
    padding: 15px 0 0 0;
}

#sk_line_2 .nazev span {
    font-size: 3.4rem;
    color: #c60101;
    padding: 0 15px 0 0;
}

#sk_line_3 {
    position: relative;
    float: left;
    clear: both;
    width: 100%;
    padding: 25px 0;
    border-top: 1px solid #e3e3e3;
    text-align: center;
}

#sk_line_3 img {
    float: left;
    padding: 0;
}

#sk_line_3 a img {
    float: right;
}

#sk_line_3 a img,
#sk_line_3 .orderItemBtn {
    float: right;
    padding: 0;
}

/** HEUREKA ***/

.heureka_produkt_obal {
    position: relative;
    float: left;
    width: 33.333%;
    padding-right: 15px;
    margin-bottom: 45px;
}

.heureka_produkt {
    position: relative;
    float: left;
    width: 100%;
    padding: 0 0;
    margin: 25px 0 0 0;
    border: 2px solid #c9e8a7;
}

.heureka_produkt .ratingtext1 {
    padding: 28px 68px 28px 30px;
    background-color: #f5fbef;
    font-size: 1.7rem;
    text-transform: uppercase;
    color: #368708;
}
.heureka_produkt .ratingtext1 span {
    float: left;
}
.heureka_produkt .ratingtext1 span.far {
    position: absolute;
    right: 30px;
    top: 33px;
    font-size: 4.4rem;
}

.heureka_produkt div.hodnoceniblok {
    position: relative;
    padding: 0 30px 30px 30px;
    margin: 0;
    float: left;
    background-color: #FFF;
    width: 100%;
}
.heureka_rating {
    position: relative;
    float: left;
    width: 60%;
    margin: 33px 0 0 0;
}
.heureka_starsRate {
    float: left;
    width: 100%;
    padding: 6px 0;
}
.heureka_starsBackground {
    background: url('/data-central/img/front/heurekarating.png') no-repeat scroll 0 0 transparent;
    height: 14px;
    width: 90px;
    display: block;
    float: left;
}
.heureka_starsForeground {
    background: url('/data-central/img/front/heurekarating.png') no-repeat scroll 0 -14px transparent;
    height: 14px;
    width: 0;
}
.heureka_starsRate span {
    position: relative;
    float: left;
    display: inline-block;
    line-height: 14px;
    text-align: left;
    color: #0185b5;
    font-weight: normal;
}
.heureka_rating_right {
    position: relative;
    width: 40%;
    float: left;
    margin-top: 27px;
}
.heureka_rating_right .heurekaratingmain {
    font-size: 3.7rem;
    color: #1a1a1a;
    font-weight: 300;
}
.heureka_produkt div.hodnoceniblok .ratingtime {
    margin: 24px 0 24px 0;
}

.heureka_produkt div.hodnoceniblok .heureka_vyhody {
    position: relative;
    clear: both;
    float: left;
    display: block;
    width: 100%;
    font-size: 1.6rem;
    color: #35840d;
    text-align: left;
    padding: 0 0 0 50px;
    margin: 33px 0 0 0;
    min-height: 27px;
    line-height: 130%;
    background-repeat: no-repeat;
}
.heureka_produkt div.hodnoceniblok .heureka_vyhody span {
    position: relative;
    float: left;
    padding-top: 3px;
}
.heureka_produkt div.hodnoceniblok .heureka_vyhody span.fas {
    position: absolute;
    left: 0;
    top: 0;
    font-size: 3.0rem;
    color: #58a62e;
    width: 50px;
    padding-top: 0;
}

.heureka_produkt div.hodnoceniblok .heureka_summary {
    clear: both;
    float: left;
    display: block;
    font-size: 1.4rem;
    color: #7f7f7f;
    padding: 10px 0 0 50px;
    text-align: justify;
    width: 100%;
}

.columnLeft .heureka_produkt_obal {
    padding-right: 0;
    width: 100%;
}
.columnLeft .heureka_produkt .ratingtext1 {
    padding: 15px 10px;
    font-size: 1.6rem;
}
.columnLeft .heureka_produkt .ratingtext1 strong {
    display: inline-block;
    padding-bottom: 3px;
}
.columnLeft .heureka_produkt .ratingtext1 span.far {
    right: 15px;
    top: 17px;
    font-size: 3.4rem;
}
.columnLeft .heureka_produkt div.hodnoceniblok {
    padding: 0 15px 10px 15px;
}
.columnLeft .heureka_rating,
.columnLeft .heureka_rating_right {
    width: 100%;
    margin-top: 10px;
}
.columnLeft .heureka_starsRate span {
    display: block;
    clear: both;
}
.columnLeft .heureka_produkt div.hodnoceniblok .ratingtime {
    margin: 10px 0 0 0;
}
.columnLeft .heureka_sumary {
    display: block;
    clear: both;
    padding-top: 10px;
}

/*
 * 	Core Owl Carousel CSS File
 *	v1.3.3
 */

/* clearfix */
.owl-carousel .owl-wrapper:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
/* display none until init */
.owl-carousel{
    display: none;
    position: relative;
    width: 100%;
    -ms-touch-action: pan-y;
}
.owl-carousel .owl-wrapper{
    display: none;
    position: relative;
    transform: translate3d(0, 0, 0);
}
.owl-carousel .owl-wrapper-outer{
    overflow: hidden;
    position: relative;
    width: 100%;
}
.category-carousel-list ul.owl-carousel {
    padding: 0 7%;
    margin-top: 32px;
    border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
    padding-top: 10px;
    padding-bottom: 10px;
}
.category-carousel-list ul.owl-carousel li {
    padding: 0 10px;
}
.category-carousel-list ul.owl-carousel li a {
    text-decoration: none;
}
.category-carousel-list ul.owl-carousel .owl-item {
    height: 51px;
    border-right: 1px solid #e3e3e3;
    vertical-align: middle;
    display: inline-block;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.category-carousel-list .owl-buttons .fa {
    color: #e3e3e3;
}
.owl-carousel .owl-wrapper-outer.autoHeight{
    transition: height 500ms ease-in-out;
}

.owl-carousel .owl-item{
    float: left;
}
.owl-controls .owl-page,
.owl-controls .owl-buttons div{
    cursor: pointer;
}
.owl-controls {
    -webkit-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* mouse grab icon */
.grabbing {
    cursor:url('/data-central/img/grabbing.png') 8 8, move;
}

/* fix */
.owl-carousel  .owl-wrapper,
.owl-carousel  .owl-item{
    -webkit-backface-visibility: hidden;
    transform: translate3d(0,0,0);
}
.owl-carousel  .owl-item {
    position: relative;
}
.owl-carousel  .owl-item:hover {
    z-index: 1;
}

.owl-box-head {
    margin-top: 25px;
    font-size: 2rem;
    font-weight: normal;
}

.owl-item .centerBoxContentsProducts {
    width: 100%;
    height: auto;
}

/* Phase 72-G: STEJNĚ VYSOKÉ karty v owl carouselu (produktové slidery — HP „Dnes pro vás
   vybíráme", detail cross-sell, modal upsell). Owl v1 floatuje .owl-item → každá karta má
   výšku svého obsahu → karty s blokem „S kuponem" / delším názvem jsou vyšší = nezarovnané.
   Owl nastavuje .owl-wrapper INLINE display:block (nelze přebít čistým CSS) → main.js v
   afterInit/afterUpdate přepne wrapper na display:flex a přidá .owl-equal-height. Flex řádek
   pak roztáhne všechny položky na výšku nejvyšší REAKTIVNĚ (i po lazy-load obrázku) — bez
   měření výšek v JS. Scope JEN .owl-equal-height → grid listing (už zarovnaný přes CSS grid)
   a ostatní owl (blog, detail-foto) nedotčené. Bez !important. */
.owl-box.owl-equal-height .owl-item {
    float: none;
}
.owl-box.owl-equal-height .owl-item .centerBoxContentsProducts {
    height: 100%;
}
/* POZOR: vnitřek karty (.centerBoxContentsProducts-in) NEpřepínat na flex-column kvůli
   „bottom-align" tlačítek! Base má `.product-info--out{align-self:end}` — v GRIDu (kategorie,
   default) = zarovnání cenového bloku DOLŮ. Ale ve flex-column by align-self mířil na CROSS osu
   (horizontálně) → blok by se ZÚŽIL a zarovnal VPRAVO = prázdné místo vlevo (regrese
   „Mohlo by se vám líbit" / „Zákazníci nejčastěji nakupují"). Owl-item flex stretch sám zajistí
   stejně vysoké karty; vnitřek karty necháváme v gridu = IDENTICKÉ s kategorií (kterou user
   potvrdil jako správnou). */

/* Phase 72 — HP „Navštívené produkty" blok (pod „Dnes pro vás vybíráme"). Scope JEN .hp-visited:
   zmenšená mezera NAD blokem (k slideru výše), VYCENTROVANÝ nadpis + vertikální mezera POD ním.
   PDP „Mohlo by se vám líbit" používá stejný .owl-box-head, ale tam nadpis zůstává vlevo. */
.hp-visited {
    margin-top: -12px;
}
.hp-visited .owl-box-head {
    margin-top: 6px;
    margin-bottom: 18px;
    text-align: center;
}

/* Phase 72-C — plocha B „Naposledy prohlížené" (Category listing nad patičkou).
   clear: vyčistí floatovaný produktový grid; margin: odsazení od listingu i patičky.
   POZOR: blok NESMÍ mít class .clearBoth (ta má height:0 → zkolabovala by ho). */
.recently-viewed-block {
    clear: both;
    width: 100%;
    margin: 30px 0 50px;
}

/*!
 * Bootstrap v2.3.2
 *
 * Copyright 2013 Twitter, Inc
 * Licensed under the Apache License v2.0
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Designed and built with all the love in the world @twitter by @mdo and @fat.
 */
.clearfix {
}
.clearfix:before,
.clearfix:after {
    display: table;
    content: "";
    line-height: 0;
}
.clearfix:after {
    clear: both;
}
.hide-text {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;
}
.input-block-level {
    display: block;
    width: 100%;
    min-height: 30px;
    box-sizing: border-box;
}
.tab-rotator {
    display: block;
    margin-bottom: 15px;
    margin-top: 15px;
    text-align: center;
}

.owl-buttons {

}
.owl-buttons .owl-prev,
.owl-buttons .owl-next {
    display: inline-block;
    position: absolute;
    top: calc(50% - 30px);
    left: -8px;
}
.owl-buttons .owl-next {
    right: -8px;
    left: auto;
}
.owl-buttons .fas {
    color: #7f7f7f;
    font-size: 3.8rem;
    padding: 0 10px;
}
.owl-buttons .fas:hover {
    color: #000;
}
/* *********************** Hlidani modal ************************** */
.cheackbox-gdpr {
    padding-bottom: 5px;
}

.cheackbox-gdpr label input {
    margin-right: 5px;
}

/* ******************************************* Instagram ********************************************** */
.instagram_wrapper {
    position:relative;
}
.instagram_title {
    display: table;
    width: 100%;
    text-align: center;
    margin-bottom: 25px;
}
.instagram_title .pre-line {
    color: #9b9b9b;
    margin-bottom: 20px;
    letter-spacing: 3px;
}
.instagram_title .main-title {
    font-size: 2.2rem;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 7px;
    color: #111111;
    position: relative;
}
.instagram_wrapper .images_wrap {
    overflow:hidden;
}
.images_wrap a {
    position:relative;
    width: 16.6666%;
    display: block;
    vertical-align: top;
    float: left;
}
.images_wrap a:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    position: absolute;
    left: 50%;
    left: calc(50% - 11px);
    top: 50%;
    top: calc(50% - 37px);
    color: #fff;
    display: block;
    font-size: 6.3rem;
    transition: all 0.4s;
    opacity: 0;
}
.images_wrap a:hover:after {
    display: block;
    opacity: 1;
}
.images_wrap a img {
    position: relative;
    float: left;
    max-width: 100%;
    height: auto;
}
.images_wrap a .hover_instagram {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color:rgba(0,0,0,0.5);
    opacity: 0;
}
.images_wrap a:hover .hover_instagram {
    display: block;
    opacity: 1;
    transition: all 0.4s;
}

/* ******************************************* KONTAKT ********************************************** */

#contactUsNoticeContent h2 {
    margin: 0 0 5px;
    padding: 7px;
    clear: both;
    background-color: #f4f4f4;
}

#contactUsNoticeContent a {
    color: #000;
}

#contactUsNoticeContent strong {
    color: #000000;
}

#contactUsNoticeContent .left {
    line-height: 150%;
    padding: 10px 0 10px 0;
    width: 50%;
}

#contactUsNoticeContent .left p {
    text-align: left;
}

.kontakt-block {
    display: block;
    position: relative;
    float: left;
    width: 100%;
}
#contactUsNoticeContent .kontakt-block.delsi {
    width: 100%;
}

#contactUsNoticeContent .right {
    width: 40%;
    text-align: right;
}

#contactUsNoticeContent .right p {
    padding: 0;
    margin: 0;
}

#contactUsNoticeContent .right img {
    padding: 3px;
    border: 1px #dadada solid;
    width: 100%;
    max-width: 550px;
}

#askAQuestion {
    text-align: left;
}
#askAQuestion img {
    margin: 25px 0;
}

#contactUsForm label {
    padding-bottom: 0;
    text-align: left;
    float: left;
}
#contactUsForm label {
    margin-bottom: 15px;
}
.prodejna_img_out {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.prodejna_img_out img.prodejna_img {
    max-width: calc(50% - 10px);
    height: auto;
    padding: 0 0 20px 0!important;
}
.prodejna_img_out img.prodejna_img.big {
    max-width: 100%;
}
/* ===== Phase 64: vyjížděcí sticky cart bar — parita s ceske-matrace.cz =====
   Desktop = #productDetailControlBar DOLE (bylo top:0): foto 50 + název + cena +
   qty + buy, flex zarovnání vpravo. Mobil = .sticky-cart-bar (full-width buy).
   Zobrazí se při scrollu pod hlavní buy area (product-detail.js). */
#productDetailControlBar {
    position: fixed;
    bottom: 0;
    top: auto;
    left: 0;
    width: 100%;
    padding: 14px 0;
    background-color: #fff;
    z-index: 1000;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
    display: none;
}
#productDetailControlBar.productDetailControlBarVisible {
    display: block;
}
#productDetailControlBar .container {
    display: flex;
    justify-content: center; /* vycentrovaný (user 2026-06-05), bylo flex-end */
    align-items: center;
}
#productDetailControlBar .right {
    display: flex;
    align-items: center;
    gap: 28px;
}
#productDetailControlBar .sticky-bar-img {
    flex: 0 0 auto;
    width: 64px;
    height: 64px;
    object-fit: contain;
}
#productDetailControlBarInfo {
    text-align: left;
    line-height: 1.3;
}
#productDetailControlBar .productsName {
    font-size: 1.7rem;
    font-weight: bold;
}
#productDetailControlBar .sticky-bar-price {
    font-size: 2.2rem;
    font-weight: bold;
    color: var(--black-color, #000);
    white-space: nowrap;
}
#productDetailControlBar .sticky-bar-cart {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.5rem;
}
#productDetailControlBar .sticky-bar-qty {
    width: 66px;
    height: 52px;
    padding: 0;
    text-align: center;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 1.8rem;
}
#productDetailControlBar #buyButton {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    height: 56px;
    padding: 0 38px;
    background-color: var(--black-color, #000);
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
    border-radius: 5px;
    cursor: pointer;
    white-space: nowrap;
}
#productDetailControlBar #buyButton:hover {
    opacity: 0.85;
}
.sticky-cart-bar {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px 14px;
    background-color: #fff;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
    z-index: 1000;
}
.sticky-cart-bar.is-visible {
    display: block;
}
.sticky-cart-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    height: 58px;
    background-color: var(--black-color, #000);
    color: #fff;
    border: 0;
    border-radius: 5px;
    font-size: 1.9rem;
    font-weight: bold;
    cursor: pointer;
}
/* Desktop bar skrytý ≤767 (tam mobile bar); mobile bar skrytý ≥768 */
@media (max-width: 767px) {
    #productDetailControlBar.productDetailControlBarVisible {
        display: none;
    }
}
@media (min-width: 768px) {
    .sticky-cart-bar.is-visible {
        display: none;
    }
}
/* ===== Phase 64: additional images horizontální scroller (desktop) ===== */
#productAdditionalImages {
    display: flex;
    align-items: center;
    gap: 6px;
}
#productAdditionalImages ul {
    flex: 1 1 auto;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: hidden;
    scroll-behavior: smooth;
    list-style: none;
    margin: 0;
    padding: 0;
    position: static !important; /* beat #productAdditionalImages-obal ul position:relative!important + JS addListSlide */
    top: auto !important;
}
#productAdditionalImages .productMainImage {
    flex: 0 0 auto;
    padding: 0;
    margin: 0 8px 0 0;
}
#productAdditionalImages .productMainImage a {
    float: none;
    display: block;
}
.thumb-scroll-btn {
    flex: 0 0 auto;
    width: 26px;
    height: 100px;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    color: #555;
    cursor: pointer;
}
.thumb-scroll-btn:hover {
    background: #f1f1f1;
}

/* ****************** VÁNOCE ******************* */

.vanoce-out {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    text-align: center;
    padding: 3px 0;
    gap: 10px;
}
.vanoce-out p {
    color: #e74c3c;
    font-size: 1.2rem;
    text-align: center;
    line-height: 1.3;
}
.centeredContent .vanoce-out img {
    max-width: 44px;
    height: auto;
}

#productDetailRight .vanoce-out {
    padding: 5px 10px 5px 10px;
    margin: 0 0 15px 0;
}
#productDetailRight .vanoce-out p {
    font-size: 1.4rem;
}

#productDetailRight img.christmas-help-icon {
    left: inherit;
    right: 0;
    top: 7px;
    top: calc(50% - 11px);
}

#productDetailRight .vanoce-out .christmas-tooltiptext {
    display: none;
}

#top {
    animation-name: fadeInDown;
}
#top.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999999;
    margin: 0;
    width: 100%;
    animation-name: fadeInDown;
    box-shadow: 0 0 15px rgba(0,0,0,0.65);
}
#top.fixed .container {
    padding-top: 18px;
    padding-bottom: 18px;
}
#top.fixed .header-left {
    padding-bottom: 0;
}
.fixed #top-search-menu .top-block {
    display: none;
}
.listing-variants {
    overflow-x: hidden;
}
.listing-variants > div {
    display: inline-flex;
    padding: 0 5px;
}

/* ******** price noUIslider ******** */

/*! nouislider - 14.6.2 - 9/16/2020 */
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    user-select: none;
    box-sizing: border-box;
}
.noUi-target {
    position: relative;
}
.noUi-base,
.noUi-connects {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}
/* Wrapper for all connect elements.
 */
.noUi-connects {
    overflow: hidden;
    z-index: 0;
}
.noUi-connect,
.noUi-origin {
    will-change: transform;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    transform-origin: 0 0;
    transform-style: flat;
}
.noUi-connect {
    height: 100%;
    width: 100%;
}
.noUi-origin {
    height: 10%;
    width: 10%;
}
/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
    left: 0;
    right: auto;
}
/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
    width: 0;
}
.noUi-horizontal .noUi-origin {
    height: 0;
}
.noUi-handle {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    position: absolute;
}
.noUi-touch-area {
    height: 100%;
    width: 100%;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    transition: transform 0.3s;
}
.noUi-state-drag * {
    cursor: inherit !important;
}
/* Slider size and handle placement;
 */
.noUi-horizontal {
    height: 4px;
}
.noUi-horizontal .noUi-handle {
    width: 64px;
    height: 19px;
    right: -17px;
    top: -7px;
}
.noUi-horizontal .noUi-handle.noUi-handle-lower {
    right: inherit;
    left: 0;
}
.noUi-vertical {
    width: 18px;
}
.noUi-vertical .noUi-handle {
    width: 28px;
    height: 34px;
    right: -6px;
    top: -17px;
}
.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
    left: -17px;
    right: auto;
}
/* Styling;
 * Giving the connect element a border radius causes issues with using transform: scale
 */

.noUi-connects {
    border-radius: 3px;
}
.noUi-connect {
    background: #d6d6d6;
}
/* Handles and cursors;
 */
.noUi-draggable {
    cursor: ew-resize;
}
.noUi-vertical .noUi-draggable {
    cursor: ns-resize;
}
.noUi-handle {
    border: 1px solid #30383f;
    border-radius: 10px;
    background: #30383f;
    cursor: pointer;
    box-shadow: none;
}
.noUi-active {
    box-shadow: none;
}
/* Handle stripes;
 */
.noUi-handle:before {
    content: "Cena od";
    display: block;
    position: absolute;
    top: 7px;
    left: 0;
    color: #fff;
    width: 64px;
    text-align: center;
    left: 0;
    transform: translate(0, -50%);
}
.noUi-handle.noUi-handle-upper:before {
    content: "Cena do";
}
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
    width: 14px;
    height: 1px;
    left: 6px;
    top: 14px;
}
.noUi-vertical .noUi-handle:after {
    top: 17px;
}
/* Disabled state;
 */
[disabled] .noUi-connect {
    background: #B8B8B8;
}
[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
    cursor: not-allowed;
}
/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
    box-sizing: border-box;
}
.noUi-pips {
    position: absolute;
    color: #999;
}
/* Values;
 *
 */
.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center;
}
.noUi-value-sub {
    color: #ccc;
    font-size: 1rem;
}
/* Markings;
 *
 */
.noUi-marker {
    position: absolute;
    background: #CCC;
}
.noUi-marker-sub {
    background: #AAA;
}
.noUi-marker-large {
    background: #AAA;
}
/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%;
}
.noUi-value-horizontal {
    transform: translate(-50%, 50%);
}
.noUi-rtl .noUi-value-horizontal {
    transform: translate(50%, 50%);
}
.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px;
}
.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}
.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}
/* Vertical layout;
 *
 */
.noUi-pips-vertical {
    padding: 0 10px;
    height: 100%;
    top: 0;
    left: 100%;
}
.noUi-value-vertical {
    transform: translate(0, -50%);
    padding-left: 25px;
}
.noUi-rtl .noUi-value-vertical {
    transform: translate(0, 50%);
}
.noUi-marker-vertical.noUi-marker {
    width: 5px;
    height: 2px;
    margin-top: -1px;
}
.noUi-marker-vertical.noUi-marker-sub {
    width: 10px;
}
.noUi-marker-vertical.noUi-marker-large {
    width: 15px;
}
.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #D9D9D9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap;
}
.noUi-horizontal .noUi-tooltip {
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%;
}
.noUi-vertical .noUi-tooltip {
    transform: translate(0, -50%);
    top: 50%;
    right: 120%;
}
.noUi-horizontal .noUi-origin > .noUi-tooltip {
    transform: translate(50%, 0);
    left: auto;
    bottom: 10px;
}
.noUi-vertical .noUi-origin > .noUi-tooltip {
    transform: translate(0, -18px);
    top: auto;
    right: 28px;
}

.filtr-posuvnik {
    display: block;
    padding: 0 0;
    margin: 14px 0 0;
    position: relative;
    width: 100%;
    height: 100%;
}

.noUiSlider-text {
    position: relative;
    clear: both;
}
.noUiSlider-text input#noUiSlider-from-text-value {
    margin-right: 5px;
}
.noUiSlider-text input#noUiSlider-to-text-value {
    margin-left: 5px;
}
.noUi-target {
    background: #d6d6d6;
    border-radius: 4px;
    border: 0 solid #D3D3D3;
    margin-top: 18px;
    padding: 0 17px;
}
.qtip-wiki{
    max-width: 440px;
}
.qtip-wiki p{
    margin: 0 0 6px;
}
.qtip-wiki h1{
    font-size: 2rem;
    line-height: 1.1;
    margin: 0 0 5px;
}
.qtip-wiki img{
    float: left;
    margin: 10px 10px 10px 0;
}
.qtip-wiki .info{
    overflow: hidden;
}
.qtip-wiki p.note{
    font-weight: 700;
}
.tooltip-dictionary {
    cursor: help;
    text-decoration: underline;
}
.tooltip-dictionary::after {
    content: '?';
    background-color: #c0112e;
    color: white;
    border-radius: 40%;
    display: inline-block;
    height: 15px;
    padding: 0 3px 1px 3px;
    margin: 0 0 0 2px;
    text-decoration: none;

}
.tooltip-dictionary-content img {
    padding: 5px;
    display: block;
    width: 100%;
}
.tooltip-dictionary-content p {
}
.slideshow-single-banner {
    margin-bottom: 20px;
    overflow: hidden;
}
.slideshow-single-banner img {
    position: relative;
    width: 141%;
    height: auto;
    display: block;
    clip: rect(0,0,0,10px);
    left: -41%;
}
.product-detail-note {
    margin-bottom: 20px;
    padding: 10px 15px;
    background-color: #f2f2f2;
    color: #000;
    display: flex;
    flex-wrap: nowrap;
    font-size: 1.5rem;
    text-align: left;
}
.product-detail-note .product-detail-note-title {
    font-weight: 600;
    min-width: 210px;
}
.product-detail-note .product-detail-note-inputs {
    width: 100%;
    padding-top: 2px;
}
.product-detail-note label input {
    margin: 4px 6px 0 0;
    float: left;
    display: block;
}
.product-detail-note input#shopingCardButton-select_variant_note {
    display: block;
    width: 100%;
    border: 1px solid #a6a6a6;
    margin: 12px 0 0 0;
    padding: 10px 15px;
}


#shopingCardButton-select_variant_note_message {
    color: red;
    float: left;
}
.shopping-cart-note .note-wrapper {
    text-decoration: underline;
    cursor: pointer;
    color: #616161;
}
.shopping-cart-note .note-edit input {
    max-width: 280px;
    width: 100%;
}

.lego {
    position: relative;
    width: 100%;
    margin-bottom: 18px;
    padding: 0 0;
    display: flex;
    flex-wrap: nowrap;
}
.lego.category {
    flex-wrap: wrap;
}
.lego a {
    padding-right: 10px;
}
.lego.age a {
    width: 25%;
}
.lego.category a {
    width: 16.666666%;
    padding-bottom: 10px;
}
.lego.age a span {
    position: relative;
    display: block;
}
.lego.age a span strong {
    position: relative;
    display: block;
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    line-height: 60px;
    background-color: #edf1f2;
}
.lego.category a span {
    position: relative;
    display: block;
    padding: 10px;
    border: 1px solid #e0e0e0;
}
.lego img {
    display: block;
    height: auto;
    max-width: 100%;
}
.age-confirm-fg {
    border-radius: 5px;
    position: fixed;
    z-index: 99999998;
    width: 100%;
    height: 100%;
    max-height: 629px;
    max-width: 719px;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.age-confirm-fg {
    cursor: pointer;
}
.age-confirm-fg img {
    max-width: 100%;
    height: auto;
}
.age-confirm-bg {
    background-color: #000000de;
    position: fixed;
    width: 100%;
    z-index: 9999999;
    height: 100%;
}
a.model01variant .model01variant {
    display: none;
}
.show-all-variants-list {
    display: none;
    cursor: pointer;
}
.nav-hidden-item {
}
.order-status-detail {
    font-size: 1.6rem;
}
.order-status-detail.find,
.order-status-detail.find p {
    text-align: center;
}
.order-status-detail.find input {
    margin: 10px 5px 10px 0;
    padding: 14px 14px;
    width: 350px;
    border: 1px #c4c4c4 solid;
    font-size: 1.6rem;
}
.order-status-detail-in {
    border: 6px solid #f5f5f5;
    padding: 18px 24px;
    margin: 24px 0 34px 0;
}
.order-status-detail-in h2 {
    font-size: 2.8rem;
}
.order_login_info {
    margin: 30px 0;
}
.order_login_info a,
.order-status-detail h3 {
    color: #a6a6a6;
}
.order-status-detail-buttons .first {
    margin-right: 6px;
}
.order-status-item {
    position: relative;
    background-color: #f5f5f5;
    display: block;
    padding: 20px 20px 20px 55px;
    margin-bottom: 10px;
}
.order-status-item span {
    position: absolute;
    left: 19px;
    top: 23px;
    color: #dadada;
    font-size: 2.2rem;
}
.order-status-fill {
    position: relative;
    display: block;
    width: 100%;
}
.order-status-fill-in {
    height: 8px;
    background-color: #dadada;
    width: 50%;
}
.order-status-fill-in:first-child {
    width: 70%;
    margin-bottom: 15px;
}
form span.error-message {
    color: #eb0000;
    display: block;
}
form .odber-novinek-bottom span.error-message {
    padding-top: 4px;
}
/* ********************* Widgets ********************* */

#facebook_right,
#instagram_right {
    position: fixed;
    right: 0;
    top: 22%;
    z-index: 9999;
}
#instagram_right {
    top: 39%;
    top: calc(22% + 140px);
}
#hw-87kwowifjjowiklsadh666right {
    top: 39%!important;
    top: calc(22% + 235px)!important;
}

.productdetailreducer-bar {
    position: relative;
    padding: 5px 0;
    margin-top: 14px;
    display: none;
}
.productdetailreducer-bar button {
    cursor: pointer;
}
.naseptavac-price {
    display: inline-block;
    float: right;
    color: #cc0000;
    font-weight: bold;
}
.naseptavac-name {
    display: inline-block;
}
.naseptavac-name-strong {
    font-weight: bold;
}
.naseptavac-author {
    display: inline;
    font-style: italic;
    margin: 0 0 0 5px;
    font-size: 1.3rem;
    color: #a1a1a1;
}

.rc-slider {
    position: relative;
    height: 14px;
    padding: 5px 0;
    width: 100%;
    border-radius: 6px;
    touch-action: none;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rc-slider * {
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rc-slider-rail {
    position: absolute;
    width: calc(100% + 54px);
    background-color: rgb(0,196,237,0.5);
    height: 4px;
    border-radius: 6px;
    left: -27px;
}
.rc-slider-track {
    position: absolute;
    left: 0;
    height: 4px;
    border-radius: 6px;
    background-color: var(--primary-color, #00c4ed);
}
.rc-slider-handle {
    position: absolute;
    width: 54px;
    height: 20px;
    line-height: 20px;
    cursor: pointer;
    cursor: -webkit-grab;
    margin-top: -8px;
    cursor: grab;
    border-radius: 6px;
    background-color: var(--primary-color, #00c4ed);
    touch-action: pan-x;
    color: white;
    padding: 0 0;
    font-size: 1.1rem;
    text-align: center;
}
.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging {
    border-color: #57c5f7;
    box-shadow: 0 0 0 5px #96dbfa;
}
.rc-slider-handle:focus {
    outline: none;
}
.rc-slider-handle-click-focused:focus {
    border-color: #96dbfa;
    box-shadow: unset;
}
.rc-slider-handle:hover {
    border-color: #57c5f7;
}
.rc-slider-handle:active {
    border-color: #57c5f7;
    box-shadow: 0 0 5px #57c5f7;
    cursor: -webkit-grabbing;
    cursor: grabbing;
}
.rc-slider-mark {
    position: absolute;
    top: 18px;
    left: 0;
    width: 100%;
    font-size: 1.2rem;
}
.rc-slider-mark-text {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    color: #999;
}
.rc-slider-mark-text-active {
    color: #666;
}
.rc-slider-step {
    position: absolute;
    width: 100%;
    height: 2px;
    background: transparent;
}
.rc-slider-dot {
    position: absolute;
    bottom: -2px;
    margin-left: -4px;
    width: 8px;
    height: 8px;
    border: 2px solid #e3e3e3;
    background-color: #fff;
    cursor: pointer;
    border-radius: 50%;
    vertical-align: middle;
}
.rc-slider-dot-active {
    border-color: #96dbfa;
}
.rc-slider-dot-reverse {
    margin-right: -4px;
}
.rc-slider-disabled {
    background-color: #e3e3e3;
}
.rc-slider-disabled .rc-slider-track {
    background-color: #ccc;
}
.rc-slider-disabled .rc-slider-handle,
.rc-slider-disabled .rc-slider-dot {
    border-color: #ccc;
    box-shadow: none;
    background-color: #fff;
    cursor: not-allowed;
}
.rc-slider-disabled .rc-slider-mark-text,
.rc-slider-disabled .rc-slider-dot {
    cursor: not-allowed !important;
}
.rc-slider-vertical {
    width: 14px;
    height: 100%;
    padding: 0 5px;
}
.rc-slider-vertical .rc-slider-rail {
    height: 100%;
    width: 4px;
}
.rc-slider-vertical .rc-slider-track {
    left: 5px;
    bottom: 0;
    width: 4px;
}
.rc-slider-vertical .rc-slider-handle {
    margin-left: -5px;
    touch-action: pan-y;
}
.rc-slider-vertical .rc-slider-mark {
    top: 0;
    left: 18px;
    height: 100%;
}
.rc-slider-vertical .rc-slider-step {
    height: 100%;
    width: 4px;
}
.rc-slider-vertical .rc-slider-dot {
    left: 2px;
    margin-bottom: -4px;
}
.rc-slider-vertical .rc-slider-dot:first-child {
    margin-bottom: -4px;
}
.rc-slider-vertical .rc-slider-dot:last-child {
    margin-bottom: -4px;
}
.rc-slider-tooltip-zoom-down-enter,
.rc-slider-tooltip-zoom-down-appear {
    animation-duration: 0.3s;
    animation-fill-mode: both;
    display: block !important;
    animation-play-state: paused;
}
.rc-slider-tooltip-zoom-down-leave {
    animation-duration: 0.3s;
    animation-fill-mode: both;
    display: block !important;
    animation-play-state: paused;
}
.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,
.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active {
    animation-name: rcSliderTooltipZoomDownIn;
    animation-play-state: running;
}
.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active {
    animation-name: rcSliderTooltipZoomDownOut;
    animation-play-state: running;
}
.rc-slider-tooltip-zoom-down-enter,
.rc-slider-tooltip-zoom-down-appear {
    transform: scale(0, 0);
    animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}
.rc-slider-tooltip-zoom-down-leave {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
}
@keyframes rcSliderTooltipZoomDownIn {
    0% {
        opacity: 0;
        transform-origin: 50% 100%;
        transform: scale(0, 0);
    }
    100% {
        transform-origin: 50% 100%;
        transform: scale(1, 1);
    }
}
@keyframes rcSliderTooltipZoomDownOut {
    0% {
        transform-origin: 50% 100%;
        transform: scale(1, 1);
    }
    100% {
        opacity: 0;
        transform-origin: 50% 100%;
        transform: scale(0, 0);
    }
}
.rc-slider-tooltip {
    position: absolute;
    left: -9999px;
    top: -9999px;
    visibility: visible;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rc-slider-tooltip * {
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rc-slider-tooltip-hidden {
    display: none;
}
.rc-slider-tooltip-placement-top {
    padding: 4px 0 8px 0;
}
.rc-slider-tooltip-inner {
    padding: 6px 2px;
    min-width: 24px;
    height: 24px;
    font-size: 1.2rem;
    line-height: 1;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: #6c6c6c;
    border-radius: 6px;
    box-shadow: 0 0 4px #d9d9d9;
}
.rc-slider-tooltip-arrow {
    position: absolute;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
}
.rc-slider-tooltip-placement-top .rc-slider-tooltip-arrow {
    bottom: 4px;
    left: 50%;
    margin-left: -4px;
    border-width: 4px 4px 0;
    border-top-color: #6c6c6c;
}

.price-slider-inputs {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
.noUiSlider-text input {
    position: relative;
    border: 1px solid #b0b0b0;
    width: calc(50% - 10px);
    padding: 6px 0;
    text-align: center;
    height: 33px;
    line-height: 33px;
}
.noUiSlider-text span {
    display: block;
    width: 20px;
    height: 33px;
    line-height: 33px;
    text-align: center;
    font-size: 1.6rem;
    color: #b0b0b0;
}
.price-slider-range {
    float: left;
    width: calc(100% - 54px);
    margin: 10px 0 0 0;
    left: 27px;
    position: relative;
}
.price-slider-mess {
    text-align: center;
}
.noUiSlider-to-text-value {
}
.search-loading {
    top:10px;
    z-index: 99999999;
    position: absolute;
    right: 60px;
    width: 18px;
    display: none;
}
table.table_cybex tr {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
table.table_cybex tr td {
    width: 24%;
}
.manufacturers table.table_cybex tr td {
    width: 49%;
}

table.table_cybex {
    width: 100%;
}
.product-list-24h {
    display: block;
    width: 100px;
    height: 82px;
    background: url('../../../data-central/img/expedice.svg');
    background-size: 100% 100%;
    z-index: 1;
}
.centeredContent .product-list-24h {
    position: absolute;
    right: 0;
    bottom: 10px;
    width: 45px;
    height: 45px;
}
#productImagesBox .product-list-24h {
    position: absolute;
    right: -0;
    top: -10px;
    width: 65px;
    height: 65px;
}

.dp-text {
    overflow: hidden;
}

/* ********** akce - all banner *********** */

.bannListing {
    position: relative;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.bannListing a {
    max-width: calc(50% - 10px);
}
.bannListing a img {
    display: block;
}

/* ********** / akce - all banner *********** *


/* Predvedeni produktu */
#product-showcase-form-date {
    float: left;
}

.react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-year-read-view--down-arrow, .react-datepicker__navigation-icon::before {
    border-color: #ccc;
    border-style: solid;
    border-width: 3px 3px 0 0;
    content: "";
    display: block;
    height: 9px;
    position: absolute;
    top: 6px;
    width: 9px;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle, .react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle {
    margin-left: -4px;
    position: absolute;
    width: 0;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::before, .react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::before, .react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::after, .react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::after {
    box-sizing: content-box;
    position: absolute;
    border: 8px solid transparent;
    height: 0;
    width: 1px;
    content: "";
    z-index: -1;
    border-width: 8px;
    left: -8px;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::before, .react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::before {
    border-bottom-color: #aeaeae;
}

.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle {
    top: 0;
    margin-top: -8px;
}
.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::before, .react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::after {
    border-top: none;
    border-bottom-color: #f0f0f0;
}
.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::after {
    top: 0;
}
.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle::before {
    top: -1px;
    border-bottom-color: #aeaeae;
}

.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle {
    bottom: 0;
    margin-bottom: -8px;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::before, .react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::after {
    border-bottom: none;
    border-top-color: #fff;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::after {
    bottom: 0;
}
.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle::before {
    bottom: -1px;
    border-top-color: #aeaeae;
}

.react-datepicker-wrapper {
    display: inline-block;
    padding: 0;
    border: 0;
    width: 100%;
}

.react-datepicker {
    font-family: "Helvetica Neue", helvetica, arial, sans-serif;
    font-size: 0.8rem;
    background-color: #fff;
    color: #000;
    border: 1px solid #aeaeae;
    border-radius: 0.3rem;
    display: inline-block;
    position: relative;
}

.react-datepicker--time-only .react-datepicker__triangle {
    left: 35px;
}
.react-datepicker--time-only .react-datepicker__time-container {
    border-left: 0;
}
.react-datepicker--time-only .react-datepicker__time,
.react-datepicker--time-only .react-datepicker__time-box {
    border-bottom-left-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}

.react-datepicker__triangle {
    position: absolute;
    left: 50px;
}

.react-datepicker-popper {
    z-index: 1;
}
.react-datepicker-popper[data-placement^=bottom] {
    padding-top: 10px;
}
.react-datepicker-popper[data-placement=bottom-end] .react-datepicker__triangle, .react-datepicker-popper[data-placement=top-end] .react-datepicker__triangle {
    left: auto;
    right: 50px;
}
.react-datepicker-popper[data-placement^=top] {
    padding-bottom: 10px;
}
.react-datepicker-popper[data-placement^=right] {
    padding-left: 8px;
}
.react-datepicker-popper[data-placement^=right] .react-datepicker__triangle {
    left: auto;
    right: 42px;
}
.react-datepicker-popper[data-placement^=left] {
    padding-right: 8px;
}
.react-datepicker-popper[data-placement^=left] .react-datepicker__triangle {
    left: 42px;
    right: auto;
}

.react-datepicker__header {
    text-align: center;
    background-color: #f0f0f0;
    border-bottom: 1px solid #aeaeae;
    border-top-left-radius: 0.3rem;
    padding: 8px 0;
    position: relative;
}
.react-datepicker__header--time {
    padding-bottom: 8px;
    padding-left: 5px;
    padding-right: 5px;
}
.react-datepicker__header--time:not(.react-datepicker__header--time--only) {
    border-top-left-radius: 0;
}
.react-datepicker__header:not(.react-datepicker__header--has-time-select) {
    border-top-right-radius: 0.3rem;
}

.react-datepicker__year-dropdown-container--select,
.react-datepicker__month-dropdown-container--select,
.react-datepicker__month-year-dropdown-container--select,
.react-datepicker__year-dropdown-container--scroll,
.react-datepicker__month-dropdown-container--scroll,
.react-datepicker__month-year-dropdown-container--scroll {
    display: inline-block;
    margin: 0 2px;
}

.react-datepicker__current-month,
.react-datepicker-time__header,
.react-datepicker-year-header {
    margin-top: 0;
    color: #000;
    font-weight: bold;
    font-size: 1rem;
}

.react-datepicker-time__header {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.react-datepicker__navigation {
    align-items: center;
    background: none;
    display: flex;
    justify-content: center;
    text-align: center;
    cursor: pointer;
    position: absolute;
    top: 2px;
    padding: 0;
    border: none;
    z-index: 1;
    height: 32px;
    width: 32px;
    text-indent: -999em;
    overflow: hidden;
}
.react-datepicker__navigation--previous {
    left: 2px;
}
.react-datepicker__navigation--next {
    right: 2px;
}
.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button) {
    right: 85px;
}
.react-datepicker__navigation--years {
    position: relative;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.react-datepicker__navigation--years-previous {
    top: 4px;
}
.react-datepicker__navigation--years-upcoming {
    top: -4px;
}
.react-datepicker__navigation:hover *::before {
    border-color: #a6a6a6;
}

.react-datepicker__navigation-icon {
    position: relative;
    top: -1px;
    font-size: 2rem;
    width: 0;
}
.react-datepicker__navigation-icon--next {
    left: -2px;
}
.react-datepicker__navigation-icon--next::before {
    transform: rotate(45deg);
    left: -7px;
}
.react-datepicker__navigation-icon--previous {
    right: -2px;
}
.react-datepicker__navigation-icon--previous::before {
    transform: rotate(225deg);
    right: -7px;
}

.react-datepicker__month-container {
    float: left;
}

.react-datepicker__year {
    margin: 0.4rem;
    text-align: center;
}
.react-datepicker__year-wrapper {
    display: flex;
    flex-wrap: wrap;
    max-width: 180px;
}
.react-datepicker__year .react-datepicker__year-text {
    display: inline-block;
    width: 4rem;
    margin: 2px;
}

.react-datepicker__month {
    margin: 0.4rem;
    text-align: center;
}
.react-datepicker__month .react-datepicker__month-text,
.react-datepicker__month .react-datepicker__quarter-text {
    display: inline-block;
    width: 4rem;
    margin: 2px;
}

.react-datepicker__input-time-container {
    clear: both;
    width: 100%;
    float: left;
    margin: 5px 0 10px 15px;
    text-align: left;
}
.react-datepicker__input-time-container .react-datepicker-time__caption {
    display: inline-block;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container {
    display: inline-block;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input {
    display: inline-block;
    margin-left: 10px;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input {
    width: auto;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time] {
    appearance: textfield;
}
.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter {
    margin-left: 5px;
    display: inline-block;
}

.react-datepicker__time-container {
    float: right;
    border-left: 1px solid #aeaeae;
    width: 85px;
}
.react-datepicker__time-container--with-today-button {
    display: inline;
    border: 1px solid #aeaeae;
    border-radius: 0.3rem;
    position: absolute;
    right: -72px;
    top: 0;
}
.react-datepicker__time-container .react-datepicker__time {
    position: relative;
    background: white;
    border-bottom-right-radius: 0.3rem;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box {
    width: 85px;
    overflow-x: hidden;
    margin: 0 auto;
    text-align: center;
    border-bottom-right-radius: 0.3rem;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list {
    list-style: none;
    margin: 0;
    height: calc(195px + (1.7rem / 2));
    overflow-y: scroll;
    padding-right: 0;
    padding-left: 0;
    width: 100%;
    box-sizing: content-box;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item {
    height: 30px;
    padding: 5px 10px;
    white-space: nowrap;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover {
    cursor: pointer;
    background-color: #f0f0f0;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected {
    background-color: #216ba5;
    color: white;
    font-weight: bold;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover {
    background-color: #216ba5;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled {
    color: #ccc;
}
.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover {
    cursor: default;
    background-color: transparent;
}

.react-datepicker__week-number {
    color: #ccc;
    display: inline-block;
    width: 1.7rem;
    line-height: 1.7rem;
    text-align: center;
    margin: 0.166rem;
}
.react-datepicker__week-number.react-datepicker__week-number--clickable {
    cursor: pointer;
}
.react-datepicker__week-number.react-datepicker__week-number--clickable:hover {
    border-radius: 0.3rem;
    background-color: #f0f0f0;
}

.react-datepicker__day-names,
.react-datepicker__week {
    white-space: nowrap;
}

.react-datepicker__day-names {
    margin-bottom: -8px;
}

.react-datepicker__day-name,
.react-datepicker__day,
.react-datepicker__time-name {
    color: #000;
    display: inline-block;
    width: 1.7rem;
    line-height: 1.7rem;
    text-align: center;
    margin: 0.166rem;
}

.react-datepicker__month--selected, .react-datepicker__month--in-selecting-range, .react-datepicker__month--in-range,
.react-datepicker__quarter--selected,
.react-datepicker__quarter--in-selecting-range,
.react-datepicker__quarter--in-range {
    border-radius: 0.3rem;
    background-color: #216ba5;
    color: #fff;
}
.react-datepicker__month--selected:hover, .react-datepicker__month--in-selecting-range:hover, .react-datepicker__month--in-range:hover,
.react-datepicker__quarter--selected:hover,
.react-datepicker__quarter--in-selecting-range:hover,
.react-datepicker__quarter--in-range:hover {
    background-color: #1d5d90;
}
.react-datepicker__month--disabled,
.react-datepicker__quarter--disabled {
    color: #ccc;
    pointer-events: none;
}
.react-datepicker__month--disabled:hover,
.react-datepicker__quarter--disabled:hover {
    cursor: default;
    background-color: transparent;
}

.react-datepicker__day,
.react-datepicker__month-text,
.react-datepicker__quarter-text,
.react-datepicker__year-text {
    cursor: pointer;
}
.react-datepicker__day:hover,
.react-datepicker__month-text:hover,
.react-datepicker__quarter-text:hover,
.react-datepicker__year-text:hover {
    border-radius: 0.3rem;
    background-color: #f0f0f0;
}
.react-datepicker__day--today,
.react-datepicker__month-text--today,
.react-datepicker__quarter-text--today,
.react-datepicker__year-text--today {
    font-weight: bold;
}
.react-datepicker__day--highlighted,
.react-datepicker__month-text--highlighted,
.react-datepicker__quarter-text--highlighted,
.react-datepicker__year-text--highlighted {
    border-radius: 0.3rem;
    background-color: #3dcc4a;
    color: #fff;
}
.react-datepicker__day--highlighted:hover,
.react-datepicker__month-text--highlighted:hover,
.react-datepicker__quarter-text--highlighted:hover,
.react-datepicker__year-text--highlighted:hover {
    background-color: #32be3f;
}
.react-datepicker__day--highlighted-custom-1,
.react-datepicker__month-text--highlighted-custom-1,
.react-datepicker__quarter-text--highlighted-custom-1,
.react-datepicker__year-text--highlighted-custom-1 {
    color: magenta;
}
.react-datepicker__day--highlighted-custom-2,
.react-datepicker__month-text--highlighted-custom-2,
.react-datepicker__quarter-text--highlighted-custom-2,
.react-datepicker__year-text--highlighted-custom-2 {
    color: green;
}
.react-datepicker__day--selected, .react-datepicker__day--in-selecting-range, .react-datepicker__day--in-range,
.react-datepicker__month-text--selected,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--selected,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--selected,
.react-datepicker__year-text--in-selecting-range,
.react-datepicker__year-text--in-range {
    border-radius: 0.3rem;
    background-color: #216ba5;
    color: #fff;
}
.react-datepicker__day--selected:hover, .react-datepicker__day--in-selecting-range:hover, .react-datepicker__day--in-range:hover,
.react-datepicker__month-text--selected:hover,
.react-datepicker__month-text--in-selecting-range:hover,
.react-datepicker__month-text--in-range:hover,
.react-datepicker__quarter-text--selected:hover,
.react-datepicker__quarter-text--in-selecting-range:hover,
.react-datepicker__quarter-text--in-range:hover,
.react-datepicker__year-text--selected:hover,
.react-datepicker__year-text--in-selecting-range:hover,
.react-datepicker__year-text--in-range:hover {
    background-color: #1d5d90;
}
.react-datepicker__day--keyboard-selected,
.react-datepicker__month-text--keyboard-selected,
.react-datepicker__quarter-text--keyboard-selected,
.react-datepicker__year-text--keyboard-selected {
    border-radius: 0.3rem;
    background-color: #2579ba;
    color: #fff;
}
.react-datepicker__day--keyboard-selected:hover,
.react-datepicker__month-text--keyboard-selected:hover,
.react-datepicker__quarter-text--keyboard-selected:hover,
.react-datepicker__year-text--keyboard-selected:hover {
    background-color: #1d5d90;
}
.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range),
.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range),
.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range),
.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,
.react-datepicker__month-text--in-range,
.react-datepicker__quarter-text--in-range,
.react-datepicker__year-text--in-range) {
    background-color: rgba(33, 107, 165, 0.5);
}
.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range),
.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,
.react-datepicker__month-text--in-selecting-range,
.react-datepicker__quarter-text--in-selecting-range,
.react-datepicker__year-text--in-selecting-range) {
    background-color: #f0f0f0;
    color: #000;
}
.react-datepicker__day--disabled,
.react-datepicker__month-text--disabled,
.react-datepicker__quarter-text--disabled,
.react-datepicker__year-text--disabled {
    cursor: default;
    color: #ccc;
}
.react-datepicker__day--disabled:hover,
.react-datepicker__month-text--disabled:hover,
.react-datepicker__quarter-text--disabled:hover,
.react-datepicker__year-text--disabled:hover {
    background-color: transparent;
}

.react-datepicker__month-text.react-datepicker__month--selected:hover, .react-datepicker__month-text.react-datepicker__month--in-range:hover, .react-datepicker__month-text.react-datepicker__quarter--selected:hover, .react-datepicker__month-text.react-datepicker__quarter--in-range:hover,
.react-datepicker__quarter-text.react-datepicker__month--selected:hover,
.react-datepicker__quarter-text.react-datepicker__month--in-range:hover,
.react-datepicker__quarter-text.react-datepicker__quarter--selected:hover,
.react-datepicker__quarter-text.react-datepicker__quarter--in-range:hover {
    background-color: #216ba5;
}
.react-datepicker__month-text:hover,
.react-datepicker__quarter-text:hover {
    background-color: #f0f0f0;
}

.react-datepicker__input-container {
    position: relative;
    display: inline-block;
    width: 100%;
}

.react-datepicker__year-read-view,
.react-datepicker__month-read-view,
.react-datepicker__month-year-read-view {
    border: 1px solid transparent;
    border-radius: 0.3rem;
    position: relative;
}
.react-datepicker__year-read-view:hover,
.react-datepicker__month-read-view:hover,
.react-datepicker__month-year-read-view:hover {
    cursor: pointer;
}
.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,
.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow {
    border-top-color: #b3b3b3;
}
.react-datepicker__year-read-view--down-arrow,
.react-datepicker__month-read-view--down-arrow,
.react-datepicker__month-year-read-view--down-arrow {
    transform: rotate(135deg);
    right: -16px;
    top: 0;
}

.react-datepicker__year-dropdown,
.react-datepicker__month-dropdown,
.react-datepicker__month-year-dropdown {
    background-color: #f0f0f0;
    position: absolute;
    width: 50%;
    left: 25%;
    top: 30px;
    z-index: 1;
    text-align: center;
    border-radius: 0.3rem;
    border: 1px solid #aeaeae;
}
.react-datepicker__year-dropdown:hover,
.react-datepicker__month-dropdown:hover,
.react-datepicker__month-year-dropdown:hover {
    cursor: pointer;
}
.react-datepicker__year-dropdown--scrollable,
.react-datepicker__month-dropdown--scrollable,
.react-datepicker__month-year-dropdown--scrollable {
    height: 150px;
    overflow-y: scroll;
}

.react-datepicker__year-option,
.react-datepicker__month-option,
.react-datepicker__month-year-option {
    line-height: 20px;
    width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.react-datepicker__year-option:first-of-type,
.react-datepicker__month-option:first-of-type,
.react-datepicker__month-year-option:first-of-type {
    border-top-left-radius: 0.3rem;
    border-top-right-radius: 0.3rem;
}
.react-datepicker__year-option:last-of-type,
.react-datepicker__month-option:last-of-type,
.react-datepicker__month-year-option:last-of-type {
    -webkit-user-select: none;
    user-select: none;
    border-bottom-left-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}
.react-datepicker__year-option:hover,
.react-datepicker__month-option:hover,
.react-datepicker__month-year-option:hover {
    background-color: #ccc;
}
.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,
.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,
.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming {
    border-bottom-color: #b3b3b3;
}
.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,
.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,
.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous {
    border-top-color: #b3b3b3;
}
.react-datepicker__year-option--selected,
.react-datepicker__month-option--selected,
.react-datepicker__month-year-option--selected {
    position: absolute;
    left: 15px;
}

.react-datepicker__close-icon {
    cursor: pointer;
    background-color: transparent;
    border: 0;
    outline: 0;
    padding: 0 6px 0 0;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
}
.react-datepicker__close-icon::after {
    cursor: pointer;
    background-color: #216ba5;
    color: #fff;
    border-radius: 50%;
    height: 16px;
    width: 16px;
    padding: 2px;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    content: "×";
}

.react-datepicker__today-button {
    background: #f0f0f0;
    border-top: 1px solid #aeaeae;
    cursor: pointer;
    text-align: center;
    font-weight: bold;
    padding: 5px 0;
    clear: left;
}

.react-datepicker__portal {
    position: fixed;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    left: 0;
    top: 0;
    justify-content: center;
    align-items: center;
    display: flex;
    z-index: 2147483647;
}
.react-datepicker__portal .react-datepicker__day-name,
.react-datepicker__portal .react-datepicker__day,
.react-datepicker__portal .react-datepicker__time-name {
    width: 3rem;
    line-height: 3rem;
}
@media (max-width: 400px), (max-height: 550px) {
    .react-datepicker__portal .react-datepicker__day-name,
    .react-datepicker__portal .react-datepicker__day,
    .react-datepicker__portal .react-datepicker__time-name {
        width: 2rem;
        line-height: 2rem;
    }
}
.react-datepicker__portal .react-datepicker__current-month,
.react-datepicker__portal .react-datepicker-time__header {
    font-size: 1.4rem;
}



/* --- 25. COOKIES --- */

.cookies-info {
    box-shadow:0 -2px 4px 0 rgba(0,0,0,.14901960784313725);
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    z-index:10002;
    min-height:100px;
    background-color:#303030;
}
.cookies.container {
    background-color:#303030;
}
.cookies-info__inner {
    margin:auto;
    padding:20px 0;
    justify-content:space-between;
}
.cookies-info__content,.cookies-info__inner{
    display:flex;
}

.cookies-info__content{
    flex-direction:column;
}
.cookies-info__title{
    color:#f8f8f8;
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0 0 20px 0;
}
.cookies-info__intro{
    color:#fff;
    font-size: 1.4rem;
    font-weight:300;
    line-height:25px;
    margin-bottom:20px
}
.cookies-info__more-block{
    color:#fff;
    text-decoration:none;
    cursor:pointer
}
.cookies-info__more-block svg{
    margin-right:10px;
    margin-bottom:-3px;
    fill:#fff
}
.cookies-info__more-block:hover .cookies-info-more-label{
    text-decoration:underline
}
.cookies-info__more-block .cookies-info-more-label{
    font-size: 1.4rem;
}
.cookies-info__more-block .cookies-info-more-label--show{
    display:inline-block
}
.cookies-info__more-block .cookies-info-more-label--hide,.cookies-info__more-block.js-cookies-info-more--open .cookies-info-more-label--show{
    display:none
}
.cookies-info__more-block.js-cookies-info-more--open .cookies-info-more-label--hide{
    display:inline-block
}
.cookies-info__more-block.js-cookies-info-more--open svg{
    transform:rotate(180deg);
    margin-bottom:-5px
}
.cookies-info__text{
    font-size: 1.3rem;
    line-height:1.5
}
.cookies-info__text p{
    margin:0
}
.cookies-info__buttons{
    display:flex;
    flex-direction:column;
    justify-content:center
}
.cookies-info__button{
    font-size: 1.4rem;
    padding:10px;
    font-weight:400;
    width:100%;
    letter-spacing:.75px;
    box-shadow:0 1px 4px rgba(0,0,0,.14901960784313725);
    background:#36840a;
    color:#fff;
    white-space:nowrap;
    box-sizing:border-box;
    text-decoration: none;
}
.cookies-info__button:hover{
    background:#2d6c09;
    color:#fff;
}
.cookies-info__button:not(:first-child){
    margin-top:10px
}
.cookies-info__button--white{
    background-color:#fff;
    color:#535252
}
.cookies-info__button--white:hover{
    background:#c9c9c9;
    color:#535252
}
.cookies-info__button--link{
    display:flex;
    align-items:center;
    background:none;
    box-shadow:none;
    justify-content:center;
    text-decoration:none
}
.cookies-info__button--link:hover{
    background:none;
    text-decoration:underline
}
.cookies-info .cookies-info__inner {
    width: 100%;
}
p.cookies-info__subheadline {
    color: #F8F8F8;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
    margin: 25px 0 15px 0;
}
.cookies-info__ol-list {
    counter-reset: number;
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.cookies-info__li {
    position: relative;
    counter-increment: number;
    padding: 0 0 0 30px;
    margin: 0 0 15px 0;
}
.cookies-info__text p, .cookies-info__li {
    color: rgb(133, 133, 133);
}

/* ** privacy settings page */
.cookies-page-intro {
    color: #555;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 30px;
    max-width: 720px;
}
.cookies-type {
    width: 100%;
    padding: 20px 24px;
    margin-bottom: 16px;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    color: #1a1a1a;
    background: #fafafa;
    transition: border-color 0.2s;
}
.cookies-type:hover {
    border-color: #ccc;
}
.columnCenter .cookies-type:first-of-type {
    margin-top: 20px;
}
.cookies-type h3 {
    color: #1a1a1a;
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 6px 0;
}
.cookies-type > br + br {
    display: none;
}
.cookies-type-desc {
    color: #666;
    font-size: 13px;
    line-height: 1.5;
    margin: 0;
}
.cookies-switch {
    margin: 12px 0 0 0;
    display: flex;
    align-items: center;
    gap: 10px;
}
.cookies-switch input[type="radio"] {
    display: none;
}
.cookies-toggle {
    position: relative;
    width: 48px;
    height: 26px;
    background: #ccc;
    border-radius: 13px;
    cursor: pointer;
    transition: background 0.25s;
    flex-shrink: 0;
}
.cookies-toggle::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
    transition: transform 0.25s;
    box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}
.cookies-toggle.active {
    background: #4caf50;
}
.cookies-toggle.active::after {
    transform: translateX(22px);
}
.cookies-toggle-label {
    font-size: 13px;
    color: #888;
    user-select: none;
}
.cookies-toggle-label.active {
    color: #4caf50;
    font-weight: 500;
}
.cookies-disabled-label {
    font-size: 13px;
    color: #999;
    font-style: italic;
}
.cookies-save-settings {
    margin-top: 24px;
    padding: 12px 32px;
    font-size: 15px;
    border-radius: 6px;
}
.cookies-save-success {
    color: #4caf50;
    font-weight: 500;
    margin-left: 12px;
}

/* *************** / cookies **************** */

/* ***************** LOGIN BUTTONS ******************* */
a.login-btn.facebook, a.login-btn.google, a.login-btn.apple {
    border-style: solid;
    border-width: 1px;
    border-radius: 4px;
    height: 44px;
    max-width: 120px;
    width: 100%;
    text-align: center;
}
.login-btn.facebook {
    border-color: #4267B2;
    color: #fff;
    background-color: #4267B2;
}
a.login-btn {
    padding-left: 66px;
    text-decoration: none;
}
a.login-btn.facebook .login-google-icon, a.login-btn.google .login-google-icon, a.login-btn.facebook .login-facebook-icon, a.login-btn.google .login-facebook-icon {
    left: 0;
    top: 0;
    position: absolute;
    width: 66px;
    height: 100%;
    font-size: 2.8rem;
}

a.login-btn {
    position: relative;
    display: inline-block;
    padding-left: 66px;
    text-decoration: none;
}

a.login-btn.facebook,a.login-btn.google
    /*, a.login-btn.apple*/ {
    border-style: solid;
    border-width: 1px;
    border-radius: 3px;
}

a.login-btn.facebook span,a.login-btn.google span,a.login-btn.facebook strong,a.login-btn.google strong/*, a.login-btn.apple strong*/ {
    display: block;
    text-align: center;
}

a.login-btn.facebook strong,a.login-btn.google strong/*, a.login-btn.apple strong*/ {
    padding: 13px 4px;
    line-height: 20px;
}

a.login-btn.facebook .login-google-icon,a.login-btn.google .login-google-icon,a.login-btn.facebook .login-facebook-icon,a.login-btn.google .login-facebook-icon
    /*, a.login-btn.apple .login-apple-icon*/ {
    left: 0;
    top: 0;
    position: absolute;
    width: 66px;
    height: 100%;
    font-size: 2.8rem;
}
a.login-btn.apple .login-apple-icon {
    background: url('data:image/svg+xml;utf8,<svg width="26" height="26" xmlns="http://www.w3.org/2000/svg" width="842.32007" height="1000.0001"><path fill="#fff" d="M824.66636 779.30363c-15.12299 34.93724-33.02368 67.09674-53.7638 96.66374-28.27076 40.3074-51.4182 68.2078-69.25717 83.7012-27.65347 25.4313-57.2822 38.4556-89.00964 39.1963-22.77708 0-50.24539-6.4813-82.21973-19.629-32.07926-13.0861-61.55985-19.5673-88.51583-19.5673-28.27075 0-58.59083 6.4812-91.02193 19.5673-32.48053 13.1477-58.64639 19.9994-78.65196 20.6784-30.42501 1.29623-60.75123-12.0985-91.02193-40.2457-19.32039-16.8514-43.48632-45.7394-72.43607-86.6641-31.060778-43.7024-56.597041-94.37983-76.602609-152.15586C10.740416 658.44309 0 598.01283 0 539.50845c0-67.01648 14.481044-124.8172 43.486336-173.25401C66.28194 327.34823 96.60818 296.6578 134.5638 274.1276c37.95566-22.53016 78.96676-34.01129 123.1321-34.74585 24.16591 0 55.85633 7.47508 95.23784 22.166 39.27042 14.74029 64.48571 22.21538 75.54091 22.21538 8.26518 0 36.27668-8.7405 83.7629-26.16587 44.90607-16.16001 82.80614-22.85118 113.85458-20.21546 84.13326 6.78992 147.34122 39.95559 189.37699 99.70686-75.24463 45.59122-112.46573 109.4473-111.72502 191.36456.67899 63.8067 23.82643 116.90384 69.31888 159.06309 20.61664 19.56727 43.64066 34.69027 69.2571 45.4307-5.55531 16.11062-11.41933 31.54225-17.65372 46.35662zM631.70926 20.0057c0 50.01141-18.27108 96.70693-54.6897 139.92782-43.94932 51.38118-97.10817 81.07162-154.75459 76.38659-.73454-5.99983-1.16045-12.31444-1.16045-18.95003 0-48.01091 20.9006-99.39207 58.01678-141.40314 18.53027-21.27094 42.09746-38.95744 70.67685-53.0663C578.3158 9.00229 605.2903 1.31621 630.65988 0c.74076 6.68575 1.04938 13.37191 1.04938 20.00505z"/></svg>') no-repeat center;
}
a.login-btn.google .login-google-icon {
    background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 26 26" width="26" height="26" xmlns="http://www.w3.org/2000/svg"><g transform="matrix(1, 0, 0, 1, 27.009001, -39.238998)"><path fill="%234285F4" d="M -3.264 51.509 C -3.264 50.719 -3.334 49.969 -3.454 49.239 L -14.754 49.239 L -14.754 53.749 L -8.284 53.749 C -8.574 55.229 -9.424 56.479 -10.684 57.329 L -10.684 60.329 L -6.824 60.329 C -4.564 58.239 -3.264 55.159 -3.264 51.509 Z"/><path fill="%2334A853" d="M -14.754 63.239 C -11.514 63.239 -8.804 62.159 -6.824 60.329 L -10.684 57.329 C -11.764 58.049 -13.134 58.489 -14.754 58.489 C -17.884 58.489 -20.534 56.379 -21.484 53.529 L -25.464 53.529 L -25.464 56.619 C -23.494 60.539 -19.444 63.239 -14.754 63.239 Z"/><path fill="%23FBBC05" d="M -21.484 53.529 C -21.734 52.809 -21.864 52.039 -21.864 51.239 C -21.864 50.439 -21.724 49.669 -21.484 48.949 L -21.484 45.859 L -25.464 45.859 C -26.284 47.479 -26.754 49.299 -26.754 51.239 C -26.754 53.179 -26.284 54.999 -25.464 56.619 L -21.484 53.529 Z"/><path fill="%23EA4335" d="M -14.754 43.989 C -12.984 43.989 -11.404 44.599 -10.154 45.789 L -6.734 42.369 C -8.804 40.429 -11.514 39.239 -14.754 39.239 C -19.444 39.239 -23.494 41.939 -25.464 45.859 L -21.484 48.949 C -20.534 46.099 -17.884 43.989 -14.754 43.989 Z"/></g></svg>') no-repeat center;
    background-size: 26px 26px;
}

a.login-btn.facebook .login-facebook-icon {
    background: url('data:image/svg+xml;utf8,<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><defs><style>.cls-1{fill:%23fff;}</style></defs><title>flogo-HexRBG-Wht-512</title><path class="cls-1" d="M483.74,0H28.26A28.26,28.26,0,0,0,0,28.26V483.74A28.26,28.26,0,0,0,28.26,512H273.5V314H207V236.5h66.5v-57c0-66.13,40.39-102.14,99.38-102.14,28.25,0,52.54,2.11,59.62,3V149.5l-40.81,0c-32,0-38.19,15.24-38.19,37.62V236.5h76.74l-10,77.5H353.5V512H483.74A28.26,28.26,0,0,0,512,483.74V28.26A28.26,28.26,0,0,0,483.74,0Z"/></svg>') no-repeat center;
    background-size: 28px 28px;
}
.social-login-buttons {
    max-width: 550px;
}
.social-login-buttons a.login-btn.apple {
    border: 0;
    text-align: center;
    background-color: black;
}
.social-login-buttons .login-btn.apple img {
    width: 100%;
    border: 0;
}
.social-login-buttons-header {
    position: relative;
    margin: 24px 0;
    border-bottom: 1px solid rgb(218, 222, 224);
}
.social-login-buttons-header-text {
    position: relative;
    top: 10px;
    left: 50%;
    background-color: white;
}
.social-login-buttons-list {}
.social-login-buttons-list > a.login-btn {

}
/* ***************** / LOGIN BUTTONS ******************* */


/* ********** BLOG HP ************** */

#blog-hp {
    display: grid;
    grid-template: repeat(3,1fr) / repeat(6,1fr);
    gap: 16px;
    margin-bottom: 24px;
}
#blog-hp > a {
    position: relative;
    display: block;
    text-decoration: none;
}
#blog-hp > a:first-child * {
    color: #1a1a1a;
}
#blog-hp > a:first-child:hover {
    color: #1a1a1a;
}
#blog-hp > a:first-child:hover .blog-hp__in__title {
    text-decoration: underline;
}
#blog-hp > a:hover span {
    text-decoration: underline;
}
#blog-hp > a:not(:first-child):after {
    content: "";
    position: absolute;
    inset: 0;
    display: block;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 50%, rgba(0,0,0,0) 100%);
    border-radius: 10px;
}
#blog-hp > a img {
    border-radius: 10px;
    display: block;
}
#blog-hp > a:first-child {
    grid-area: 1/1/4/5;
}
#blog-hp > a:first-child .blog-hp__in {
    position: absolute;
    display: block;
    text-align: left;
    bottom: 30px;
    left: 30px;
    padding: 27px;
    border-radius: 10px;
    background-color: #fff;
    width: 370px;
    max-width: 50%;
}
#blog-hp .blog-hp__category {
    display: block;
    position: absolute;
    bottom: 11px;
    left: 15px;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    z-index: 1;
}
#blog-hp > a:last-child {
    background: #000;
    border-radius: 10px;
    display: flex;
    gap: 8px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
}
#blog-hp > a:last-child span {
    z-index: 1;
}
.blog-hp__in__category {
    display: inline-block;
    border: 1px solid #000;
    padding: 1px 8px;
    border-radius: 5px;
}
.blog-hp__in__title {
    font-size: 1.8rem;
    font-weight: 500;
    padding: 6px 0;
}
.nas_tym {
    display: grid;
    grid-template: auto / 1fr;
    gap: 24px;
    background-color: #f4f4f4;
    padding: 12px 24px 26px 24px;
}
.nas_tym.one {
    display: inline-grid;
    grid-template: auto / 1fr;
    padding-top: 24px;
}
.nas_tym div {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: #fff;
    padding: 10px;
    box-shadow: 0 .375rem 1.5625rem 0 rgba(0,0,0,.08);
}
.nas_tym h2 {
    margin: 14px 0 0 0;
}
@media (max-width: 1199px) {
    #blog-hp {
        display: flex;
        flex-wrap: wrap;
    }
    #blog-hp > a:first-child {
        width: 100%;
        flex: unset;
    }
    #blog-hp > a {
        width: calc((100% / 6) - ((16px * 5) / 6));
    }
}
@media (min-width: 1025px) {
    #blog-hp {
        margin-bottom: 37px;
    }
}
@media (max-width: 1024px) {
    #blog-hp .blog-hp__category,
    #blog-hp > a:last-child {
        font-size: 1.4rem;
    }
}
@media (max-width: 767px) {
    #blog-hp {
        gap: 8px;
    }
    #blog-hp > a {
        width: calc((100% / 3) - ((8px * 2) / 3));
    }
    #blog-hp > a:first-child img {
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
    }
    #blog-hp > a:first-child .blog-hp__in {
        position: static;
        width: 100%;
        max-width: none;
        border-top-right-radius: 0;
        border-top-left-radius: 0;
        background: #f1f1f1;
        padding: 17px;
    }
}
@media (max-width: 480px) {
    #blog-hp > a {
        width: calc((100% / 2) - (8px / 2));
    }
}



/* desktop */
.cpost-widget-desktop {
    background-color: white;
    border: solid #e1e1e1 5px;
    border-radius: 5px;
    position: fixed;
    top: 10%;
    left: 10%;
    right: 10%;
    bottom: 15%;
    z-index: 999999;
}
.cpost-widget-desktop iframe {
    width: 100%;
    border: none;
    border-top: solid #e1e1e1 2px;
    height: calc(100% - 45px);
    background-color: white;
}
.cpost-widget-desktop .cpost-widget-cancel button {
    margin: 10px 0 8px 0;
}
.cpost-widget-desktop .cpost-widget-cancel {
    display: block;
    text-align: center;
}
.cpost-widget-desktop .cpost-widget-cancel {
    background-color: white;
}
.cpost-widget-mobile .cpost-widget-cancel {
    background-color: #fecc00;
}

/* mobile */
.cpost-widget-mobile {
    display: block;
    position: fixed;
    z-index: 99999;
    background: white;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.cpost-widget-mobile iframe {
    width: 100%;
    z-index: 999999;
    background: white;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: calc(100% - 45px);
}


.cpost-cancel-btn {}
.cpost-widget-cancel button i {
    padding: 2px 6px 0 0;
}
.cpost-widget-bg {
    display: none;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    z-index: 9999;
    position: fixed;
    background: rgb(56 56 56 / 50%);
}
.cpost-widget-cancel {
    display: block;
}
.cpost-widget-cancel button {
    background: #c61c1c;
    color: #fcfcfc;
    padding: 5px 15px;
    font-size: 1.7rem;
    font-weight: bold;
    margin: 10px 0 8px 0;
    border-radius: 4px;
    cursor: pointer;
    border: 0;
}

/* ***** NOVÁ VERZE KUPONU - méně výrazná ***** */
.akce-info{
    color: #f00;
    margin-bottom: 10px;
    margin-left: 3px;
}
.coupon-tab{
    background-color: #fc6993;
    display: inline;
    padding: 5px 10px;
    border-radius: 4px 4px 0 0;
    color: #fff;
}

.ceny-coupon-obal-product {
    position: relative;
    float: left;
    width: 100%;
    margin: 0 0 12px 0;
    padding: 15px 15px;
    background-color: #FFE6EC;
    border: 1px solid #FDA0B9;
    border-radius: 0 4px 4px 4px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 1.4rem;
    justify-content: space-between;
}

.ceny-coupon-obal-new {
    position: relative;
    float: left;
    width: 100%;
    margin: 8px 0 12px 0;
    padding: 15px 15px;
    background-color: #FFE6EC;
    border: 1px solid #FDA0B9;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 1.4rem;
}

.coupon-buy-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    background-color: #000;
    border-radius: 4px;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 500;
    color: #fff;
    transition: all 0.2s ease;
    cursor: pointer;
}

.coupon-buy-link:hover {
    background-color: #e9ecef;
    border-color: #adb5bd;
    color: #212529;
    text-decoration: none;
}

.coupon-buy-link i {
    font-size: 1.3rem;
}

.coupon-code-badge {
    display: inline-block;
    padding: 5px 8px;
    border-radius: 3px;
    color: #333;
}

.coupon-price-wrapper {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    margin-left: auto;
}
.ceny-coupon-obal-product .coupon-price-wrapper{
    margin-left: unset;
}

.coupon-label {
    font-weight: normal;
    color: #666;
}

.coupon-price-value {
    font-size: 1.9rem;
    color: #000;
}
.ceny-coupon-obal-product .coupon-price-value{
    color: #cc0000;
    font-size: 2rem;
    font-weight: 500;
}

/* listing blok */
.listing-coupon {
    float: none;
    flex-basis: 100%;
    width: 100%;
    margin: 0 0 8px 0;
    padding: 5px 8px;
    font-size: 1.3rem;
    border: 0;
}

.coupon-link-wrapper{
    text-align: left;
    line-height: 1.4rem;
}

.coupon-link-simple {
    color: #fc6993;
    font-weight: 500;
    transition: color 0.2s ease;
    font-size: 1.2rem;
}

.coupon-link-simple:hover {
    color: #003d7a;
    text-decoration: underline;
}

.listing-coupon .coupon-price-value {
    font-size: 1.6rem;
    font-weight: 400;
}

@media (max-width: 1000px) {
    .ceny-coupon-obal-new {
        padding: 15px 10px;
        font-size: 1.2rem;
    }

    .coupon-price-value {
        font-size: 1.6rem;
    }

    .coupon-label {
        display: none;
    }
}

@media (max-width: 480px) {
    .ceny-coupon-obal-product .coupon-buy-link {
        margin-left: auto;
        order: 3;
    }

    .coupon-price-value {
        font-size: 2rem;
        font-weight: 500;
    }

    .coupon-code-badge {
        font-size: 1.1rem;
        padding: 2px 6px;
    }

    .coupon-buy-link {
        font-size: 1.3rem;
    }

    .listing-coupon {
        padding: 4px 6px;
        gap: 6px;
        font-size: 1.1rem;
    }

    .listing-coupon .coupon-price-value {
        font-size: 1.4rem;
        font-weight: 500;
    }

    .listing-coupon .coupon-link-simple {
        font-size: 1.1rem;
    }

    .coupon-link-wrapper {
        line-height: 1.2rem;
    }
}

/* Phase 74 — VIP registrační box „VIP cena po přihlášení" (varianta 1: krémový/zlatý box,
   zlatý rámeček, zlatá korunka). Zobrazen nepřihlášeným na kartách bez růžového kupónového
   boxu (productList/default.latte). Celý box je klikací odkaz na registraci. */
.product-card__vip-price {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    /* Phase 74: VIP box je ve STEJNÉM slotu jako růžový box (mutuálně výlučné) → stejné
       odsazení i padding jako .ceny-coupon-obal-new.listing-coupon (margin 0 0 8px 0,
       padding 5px 8px) = dokonale zarovnané přes karty. */
    margin: 0 0 8px 0;
    padding: 5px 8px;
    box-sizing: border-box;
    /* Světlejší, jemnější krémově-zlatý gradient (blíže Benešovu mockupu — varianta 1). */
    background: linear-gradient(135deg, #fefbf3 0%, #f8ebca 100%);
    border: 1px solid #d9b14e;
    border-radius: 12px;
    text-decoration: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.product-card__vip-price:hover {
    border-color: #c89a2f;
    box-shadow: 0 2px 8px rgba(201, 154, 47, 0.35);
    text-decoration: none;
}

.product-card__vip-crown {
    flex: 0 0 auto;
    width: 24px;
    height: 20px;
}

.product-card__vip-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    text-align: left;
}

/* Font = Poppins (dědí ze stránky, stejně jako růžový kupónový box). Jednotná
   velikost napříč viewporty (NE per-mobil zmenšení) + explicit letter-spacing
   normal = stejné, konzistentní mezery mezi písmeny jako růžový box. Titulek na
   1 řádku (varianta 1 — Beneš) přes nowrap; korunka se na úzkém mobilu zmenší. */
.product-card__vip-title {
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: normal;
    color: #1a1a1a;
    white-space: nowrap;
}

.product-card__vip-subtitle {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: normal;
    color: #5a4a35;
    white-space: nowrap;
}

/* Úzký mobilní karusel (karta ~166 px) — zmenšit korunku + titulek tak, aby
   „VIP cena po přihlášení" zůstalo na 1 řádku (nowrap) i v nejužší kartě. */
@media (max-width: 480px) {
    .product-card__vip-price {
        gap: 4px;
        padding: 4px 5px;
        border-radius: 10px;
    }

    /* Jen korunka se zmenší, aby jednotný titulek (1.1rem) zůstal na 1 řádku
       i v nejužší kartě mobilního karuselu (~166 px). Velikost textu se NEmění. */
    .product-card__vip-crown {
        width: 15px;
        height: 13px;
    }
}

/* Produktovka (--detail): prominentnější box než na kartě — větší SVG korunka i text,
   buy sloupec má prostor. Specificita 2 tříd přebíjí base i mobilní velikosti, takže
   platí i na mobilu produktovky. Delší podtitulek (subtitle_long) se zalamuje (NE nowrap);
   titulek zůstává na 1 řádku (nowrap z base). */
.product-card__vip-price--detail {
    padding: 9px 14px;
    gap: 12px;
}

.product-card__vip-price--detail .product-card__vip-crown {
    width: 34px;
    height: 28px;
}

.product-card__vip-price--detail .product-card__vip-title {
    font-size: 1.5rem;
}

.product-card__vip-price--detail .product-card__vip-subtitle {
    font-size: 1.2rem;
    white-space: normal;
}

/* Desktop produktovka (širší buy sloupec) — ještě výraznější korunka i text. */
@media (min-width: 768px) {
    .product-card__vip-price--detail {
        padding: 12px 18px;
        gap: 14px;
    }

    .product-card__vip-price--detail .product-card__vip-crown {
        width: 46px;
        height: 38px;
    }

    .product-card__vip-price--detail .product-card__vip-title {
        font-size: 2rem;
    }

    .product-card__vip-price--detail .product-card__vip-subtitle {
        font-size: 1.4rem;
    }
}

/* CSS spinner — replaces loading.gif */
@keyframes css-spinner {
    to { transform: rotate(360deg); }
}
.css-spinner:not([hidden]) {
    width: 24px;
    height: 24px;
    border: 3px solid #e0e0e0;
    border-top-color: #999;
    border-radius: 50%;
    animation: css-spinner 0.7s linear infinite;
    vertical-align: middle;
}

/* Diagonal strikethrough for DMOC recommended price on product detail */
#productDetailRight .ceny-obal .doporucena-cena span {
    position: relative;
    display: inline-block;
}
#productDetailRight .ceny-obal .doporucena-cena span::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 5px;
    width: 100%;
    height: 1px;
    background-color: #999;
    transform-origin: left bottom;
    transform: rotate(-10deg);
}
