@charset "utf-8";
/* latin */
@font-face {
    font-family: 'Muli';
    src: url("../fonts/font_muli_latin.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
    font-display: swap;
}

html,
body {
    margin: 0;
    padding: 0;
    height: 100% !important;
}

/* FONT SETTINGS */

@media screen {
    body, p, td, font, div, button, input, select, h1, h2, h3, h4, a, nav, blockquote {
        font-family: 'Muli', serif !important;
    }
}

.uk-navbar-dropdown-nav, .uk-nav-default, .uk-breadcrumb > * > * {
    font-size: 16px;
}

a {
    color: #436e88;
}

a:hover {
    color: #304c60;
    text-decoration: underline dotted;
}

/* FONTS SIZES */
.fs-8 {
    font-size: 8pt !important;
}

.fs-9 {
    font-size: 9pt !important;
}

.fs-10 {
    font-size: 10pt !important;
}

.fs-11 {
    font-size: 11pt !important;
}

.fs-12 {
    font-size: 12pt !important;
}

.fs-13 {
    font-size: 13pt !important;
}

.fs-14 {
    font-size: 14pt !important;
}

.fs-16 {
    font-size: 16pt !important;
}

.fs-18 {
    font-size: 18pt !important;
}

.fs-20 {
    font-size: 20pt !important;
}

.fs-22 {
    font-size: 22pt !important;
}

.fs-24 {
    font-size: 24pt !important;
}

.fs-28 {
    font-size: 28pt !important;
}

.fs-32 {
    font-size: 32pt !important;
}

/* FONT COLORS - el: extra-lite, l: lite, p: pale, m: mid, d: dark, ed: extra dark  */

.fc-whi {
    color: #FFFFFF !important;
}

.fc-whi-m {
    color: #F5F5F5 !important;
}

.fc-whi-d {
    color: #F1F1F1 !important;
}

.fc-whi-ed {
    color: #E5E5E5 !important;
}

.fc-bla {
    color: #000000 !important;
}

.fc-bla-p {
    color: #333333 !important;
}

.fc-bla-l {
    color: #555555 !important;
}

.fc-bla-el {
    color: #777777 !important;
}

.fc-gre {
    color: #CCCCCC !important;
}

.fc-gre-l {
    color: #EEEEEE !important;
}

.fc-gre-p {
    color: #DDDDDD !important;
}

.fc-gre-m {
    color: #AAAAAA !important;
}

.fc-gre-d {
    color: #999999 !important;
}

.fc-gre-ed {
    color: #808080 !important;
}

.fc-red {
    color: #CC3300 !important;
}

.fc-red-l {
    color: #e63229 !important;
}

.fc-red-p {
    color: #ff6363 !important;
}

.fc-red-m {
    color: #b52d00 !important;
}

.fc-red-d {
    color: #962600 !important;
}

.fc-red-ed {
    color: #6b1f00 !important;
}

.fc-grn {
    color: #009933 !important;
}

.fc-grn-l {
    color: #20b051 !important;
}

.fc-grn-p {
    color: #6dd173 !important;
}

.fc-grn-m {
    color: #00852d !important;
}

.fc-grn-d {
    color: #00731a !important;
}

.fc-grn-ed {
    color: #004d12 !important;
}

.fc-blu {
    color: #336699 !important;
}

.fc-blu-l {
    color: #1484c4 !important;
}

.fc-blu-p {
    color: #17aae3 !important;
}

.fc-blu-m {
    color: #387fb0 !important;
}

.fc-blu-d {
    color: #2a547d !important;
}

.fc-blu-ed {
    color: #1f3c5c !important;
}

.fc-ora {
    color: #FF9933 !important;
}

.fc-ora-l {
    color: #FFC285 !important;
}

.fc-ora-p {
    color: #FFAD5C !important;
}

.fc-ora-m {
    color: #CC7A29 !important;
}

.fc-ora-d {
    color: #995C1F !important;
}

.fc-ora-ed {
    color: #804C1A !important;
}

.fc-oli {
    color: #c7c797 !important;
}

.fc-oli-l {
    color: #d1d1a7 !important;
}

.fc-oli-p {
    color: #dbdbba !important;
}

.fc-oli-m {
    color: #baba88 !important;
}

.fc-oli-d {
    color: #adad7f !important;
}

.fc-oli-ed {
    color: #8f8f6a !important;
}

.fc-granite {
    color: #708090 !important;
}

.fc-theme {
    color: #68727f !important;
}


/* BACKGROUND COLOURS - el: extra-lite, l: lite, p: pale, m: mid, d: dark, ed: extra dark  */

.bc-whi {
    background-color: #FFFFFF !important;
}

.bc-whi-m {
    background-color: #F5F5F5 !important;
}

.bc-whi-d {
    background-color: #F1F1F1 !important;
}

.bc-whi-ed {
    background-color: #E5E5E5 !important;
}

.bc-bla {
    background-color: #000000 !important;
}

.bc-bla-p {
    background-color: #333333 !important;
}

.bc-bla-l {
    background-color: #555555 !important;
}

.bc-bla-el {
    background-color: #777777 !important;
}

.bc-gre {
    background-color: #CCCCCC !important;
}

.bc-gre-l {
    background-color: #EEEEEE !important;
}

.bc-gre-p {
    background-color: #D3D3D3 !important;
}

.bc-gre-m {
    background-color: #AAAAAA !important;
}

.bc-gre-d {
    background-color: #999999 !important;
}

.bc-gre-ed {
    background-color: #808080 !important;
}

.bc-red {
    background-color: #CC3300 !important;
}

.bc-red-l {
    background-color: #e63229 !important;
}

.bc-red-p {
    background-color: #ff6363 !important;
}

.bc-red-m {
    background-color: #b52d00 !important;
}

.bc-red-d {
    background-color: #962600 !important;
}

.bc-red-ed {
    background-color: #6b1f00 !important;
}

.bc-grn {
    background-color: #009933 !important;
}

.bc-grn-l {
    background-color: #20b051 !important;
}

.bc-grn-p {
    background-color: #6dd173 !important;
}

.bc-grn-m {
    background-color: #00852d !important;
}

.bc-grn-d {
    background-color: #00731a !important;
}

.bc-grn-ed {
    background-color: #004d12 !important;
}

.bc-blu {
    background-color: #336699 !important;
}

.bc-blu-l {
    background-color: #1484c4 !important;
}

.bc-blu-p {
    background-color: #17aae3 !important;
}

.bc-blu-m {
    background-color: #387fb0 !important;
}

.bc-blu-d {
    background-color: #2a547d !important;
}

.bc-blu-ed {
    background-color: #1f3c5c !important;
}

.bc-ora {
    background-color: #FF9933 !important;
}

.bc-ora-l {
    background-color: #FFC285 !important;
}

.bc-ora-p {
    background-color: #FFAD5C !important;
}

.bc-ora-m {
    background-color: #CC7A29 !important;
}

.bc-ora-d {
    background-color: #995C1F !important;
}

.bc-ora-ed {
    background-color: #804C1A !important;
}

.bc-oli {
    background-color: #c7c797 !important;
}

.bc-oli-l {
    background-color: #d1d1a7 !important;
}

.bc-oli-p {
    background-color: #dbdbba !important;
}

.bc-oli-m {
    background-color: #baba88 !important;
}

.bc-oli-d {
    background-color: #adad7f !important;
}

.bc-oli-ed {
    background-color: #8f8f6a !important;
}

.bc-theme {
    background-color: #68727f !important;
}

.b {
    font-weight: bold !important;
}

.b300 {
    font-weight: 300 !important;
}

.b400 {
    font-weight: 400 !important;
}

.b600 {
    font-weight: 600 !important;
}

.i {
    font-style: italic !important;
}

.n {
    font-weight: normal !important;
    font-style: normal !important;
}

.u {
    text-decoration: underline;
}

h1 {
    font-size: 18pt;
    font-weight: 300;
    color: #e07a00;

}

h2 {
    font-size: 14pt;
    font-weight: 400;
    color: #82898d;
}

h3 {
    font-size: 12pt;
    font-weight: 400;
    color: #584E29;
}

h3 {
    position: relative;
    text-transform: uppercase;
}

h3::before {
    /* content: "";
    display: inline-block;
    position: relative;
    top: calc(-.1 * 1em);
    vertical-align: middle;
    height: .9em;
    margin-right: 10px;
    border-left: 5px solid #e5e5e5; */
}

blockquote {
    padding-left: 10px !important;
    border-left: 5px solid #e5e5e5 !important;
    font-size: 16px;
}


h4 {
    font-size: 10pt;
    font-weight: 400;
    color: #584E29;
}

.uk-table-smaller th, .uk-table-smaller td {
    padding: 6px 8px;
}

.uk-table-smallest th, .uk-table-smallest td {
    padding: 4px 6px;
}

.required {
    border-right: 3px #F90 solid !important;
}

.circle {
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

/* BORDERS */
.brd-c-whi {
    border: 1px solid #FFF;
}

.brd-c-gre {
    border: 1px solid #CCC;
}

.brd-c-gre-l {
    border: 1px solid #EEE;
}

.brd-c-gre-m {
    border: 1px solid #DDD;
}

.brd-c-gre-d {
    border: 1px solid #AAA;
}

.brd-remove {
    border: 0 !important;
}

.brd-top-remove {
    border-top: 0 !important;
}

.brd-bottom-remove {
    border-bottom: 0 !important;
}

.brd-left-remove {
    border-left: 0 !important;
}

.brd-right-remove {
    border-right: 0 !important;
}

.brd-radius-remove {
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
}

.brd-radius-left-remove {
    -webkit-border-radius: 0 4px 4px 0 !important;
    border-radius: 0 4px 4px 0 !important;
}

.brd-radius-right-remove {
    -webkit-border-radius: 4px 0 0 4px !important;
    border-radius: 4px 0 0 4px !important;
}

.brd-radius-top-remove {
    -webkit-border-radius: 0 0 4px 4px !important;
    border-radius: 0 0 4px 4px !important;
}

.brd-radius-bottom-remove {
    -webkit-border-radius: 4px 4px 0 0 !important;
    border-radius: 4px 4px 0 0 !important;
}

/* PADDING */
.pad-small {
    padding: 2px 4px !important;
}

.pad-medium {
    padding: 4px 8px !important;
}

.pad-large {
    padding: 6px 12px !important;
}

/* SHADOWS */
.box-shadow {
    box-shadow: 0 8px 5px -7px rgba(0, 0, 0, 0.4);
}

.box-window {
    border: 1px solid #DDDDDD;
    box-shadow: 0 8px 5px -7px rgba(0, 0, 0, 0.3);
}

.box-shadow-hover:hover {
    box-shadow: 0 8px 5px -7px rgba(0, 0, 0, 0.4);
}

.box-select {
    background-color: #EAEAE0;
}

.box-details {
    background-color: #ACBBC0;
}

/* CONTENTS: FILTERS */
#filters_body .selected-filter {
    background-color: #eef3ef;
}

#filters_body li {
    padding: 4px;
    margin: 0;
}

#filters_body li a {
    display: block;
}

#filters_body div ul li li:hover {
    background-color: #f4f4f4;
}

#filters_body h3 {
    padding: 6px;
    background-color: #eeeeee;
    font-size: 12pt;
}

.price {
    font-size: 1.3rem;
    font-weight: 500;
    color: #ab0002 !important;
}

.success {
    border-color: #32d296;
}

.danger {
    background-color: #ffeef3 !important;
}

h3.uk-accordion-title::after {
    color: white !important;
}

.price-detail {
    font-size: .7rem;
    color: #444;
    text-transform: uppercase;
}

/* CONTENTS: SERACH RESULTS */
#results_browse h3 {
    font-size: 1.1rem;
    margin: 0 0 30px 0
}

#results_browse a {
    text-decoration: none;
}

/* FRAMEWORK MODS */
/* .pagination .uk-active {
    background-color: #FFCC00;
} */

.pagination .uk-active span {
    background-color: #FFCC00;
}

.pagination li:first-child {
    padding-left: 20px !important;
}

.pagination li {
    padding-left: 8px;
}

.uk-countdown-number {
    font-size: 32pt;
    line-height: 42px;
}

.uk-countdown-separator {
    font-size: 22pt;
    line-height: 42px;
}

.uk-countdown-label {
    font-size: 10pt;
}

blockquote {
    border-left: 3px;
    border-color: #000000;
}

.uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before {
    content: "|";
    margin: 0px 10px;
}

.uk-button-success {
    background-color: #7fbc4c;
    color: #FFFFFF;
}

.uk-button-primary {
    background-color: #00A5E3;
}

.uk-button-primary:hover {
    background-color: #0092ca;
}

.uk-button-primary:focus {
    background-color: #0092ca;
}

/* .uk-form-icon {
    top: 31%;
    bottom: 0;
    left: 3%;
} */

.uk-navbar-nav, .uk-navbar-right {
    background-color: #68727f;
}

.uk-navbar-nav > li > a {
    color: #FFFFFF !important;
    font-family: 'Muli', serif;
    height: 60px;
}

.uk-navbar-nav > li > a:hover {
    color: #ffd400 !important;
}

.uk-table-line td {
    border-bottom: 1px solid #CCCCCC;
}

.uk-table-unline td {
    border-bottom: 0;
}

.uk-notification-message {
    background-color: #666666;
    color: #FFFFFF;
}

/* MEDIA MODIFIERS */
@media (max-width: 1280px) {
    .filter-name {
        display: none;
    }
}

img {
    opacity: 1;
    transition: opacity 0.3s;
}

img[data-src] {
    opacity: 0;
}

.rating {
    border: 0;
    float: left;
    /*font-size: 14px;*/
    margin: 0;
    padding: 0;
}

.rating > input {
    display: none !important
}

.rating > label {
    color: #666;
    float: right;
    cursor: pointer;
}

.rating-inactive {
    color: gray
}

.rating > input:checked ~ label,
.rating:not(:checked) > label:hover,
.rating:not(:checked) > label:hover ~ label,
.rating-active {

    color: #666
}

.rating > input:checked ~ label{
    color: gold
}

.rating > input:checked + label:hover,
.rating > input:checked ~ label:hover,
.rating > label:hover ~ input:checked ~ label,
.rating > input:checked ~ label:hover ~ label,
.rating-hover {
    color: gold
}

.ico_bg_reviews, .ico_reviews, .ico_quickstep-bw-s, .ico_junckers-bw-s, .ico_boen-bw-s, .ico_balterio-bw-s, .ico_kahrs-bw-s, .ico_bona-bw-s, .ico_div {
    display: inline-block;
    background: url("../gfx/home/spritebox-sprite.png") no-repeat;
}

.ico_bg_reviews {
    background-position: -0px -0px;
    height: 213px;
    width: 100%;
    display: flex
}

.iframe_width {
    width: calc(100% * 1 / 1.39);
}

/*.uk-navbar-nav>li>a {
    padding: 0 10px;
}*/
body div.ac-widget {
    background-size: 190px!important;
    cursor: pointer!important;
    background-color: #FFFFFF!important;
    background-position: bottom;
}

@media (max-width: 639px) {
    .ico_bg_reviews {
        display: inline-block
    }

    .iframe_width {
        width: 100%;
    }
}

@media (max-width: 960px) {
    .iframe_width {
        width: 100%;
    }

    .sticky-nav {
        position: fixed;
        z-index: 1000;
        width: 100%;
        background: #f4f4f4;
        text-align: center;
    }

    .sticky-nav-height  {
        min-height:32px;
    }

    .sticky-nav-float-right {
        float: right;
    }

}

.ico_reviews {
    background-position: -0px -213px;
    height: 213px;
    width: 262px
}

.ico_quickstep-bw-s {
    background-position: -518px -213px;
    height: 50px;
    width: 148px
}

.ico_junckers-bw-s {
    background-position: -666px -213px;
    height: 50px;
    width: 118px
}

.ico_boen-bw-s {
    background-position: -784px -213px;
    height: 50px;
    width: 114px
}

.ico_balterio-bw-s {
    background-position: -898px -213px;
    height: 50px;
    width: 111px
}

.ico_kahrs-bw-s {
    background-position: -1009px -213px;
    height: 50px;
    width: 97px
}

.ico_bona-bw-s {
    background-position: -262px -280px;
    height: 50px;
    width: 96px
}

.ico_div {
    background-position: -1106px -213px;
    height: 3px;
    width: 5px
}

.basket-items {
    /* background-color: #7fbc4c; */
    color: #FFFFFF;
}

.vat {
    font-size: 8pt;
    padding: 4px 10px;
    text-decoration: none;
}

.vat-left {
    -webkit-border-radius: 15px 0 0 15px;
    border-radius: 15px 0 0 15px;
}

.vat-right {
    -webkit-border-radius: 0 15px 15px 0;
    border-radius: 0 15px 15px 0;
}

.vat-off {
    border: 1px solid #CCCCCC;
    background-color: #FFFFFF;
    color: #888888;
}

.vat-off:hover {
    color: #888888;
    text-decoration: none;
}

.vat-on {
    border: 1px solid #7fbc4c;
    background-color: #7fbc4c;
    color: #FFFFFF;
}

.vat-on:hover {
    color: #FFFFFF;
    text-decoration: none;
}

.web-group {
    padding: 4px 12px;
    border-bottom: 1px solid #DDDDDD;
}

.web-group-active {
    background-color: #FFFFFF;
    border: 1px solid #DDDDDD;
    border-top: 1px solid #FFF;
    border-bottom: 0 solid #FFF;
    padding: 4px 12px;
}

.cookies {
    background-color: rgba(0, 0, 0, 0.7);
    padding: 20px;
    border-bottom: 1px solid #6D747A;
    position: fixed !important;
    z-index: 2;
    color: #fff;
}


.sameAs {
    font-size: 1.2rem;
    color: #666;
    cursor: pointer;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    padding-bottom: 0.75rem;
}

.chrismas-time-banner {
    padding: 10px 10px !important;
    background-color: #FF6666;
    align-content: center;
    color: #F8F8FF !important;
    font-size: 15px;
}
.uk-slider-items li .uk-card .uk-card-body {
    padding: 10px 15px 60px;
}
.uk-slider-items li .uk-card .uk-card-body h2 {
    min-height: 55px;
}
.uk-slider-items li .uk-card .uk-card-body .price {
    padding-right: 5px;
}
.uk-slider-items li .uk-card .uk-card-body .uk-card-footer {
    text-align: center;
}
.uk-nav-default {
    font-size: 10px;
}
.uk-section-shop.product-container{
	padding-top: 30px;
	padding-bottom: 30px;
}
/** custom styling for owl carousel**/
.related-products-section .owl-stage {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.related-products-section .owl-item{
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: auto !important;
}
.related-products-section .portfolio-media {
    min-height: 72%!important;
}
.uk-search-default input#search {
    background: #FFF;
    color: rgb(88, 78, 41);
    border-radius: 3px;
}
.uk-search-default input#search::placeholder {
    color: rgb(88, 78, 41);
}
.uk-search-default button[type="button"].uk-search-icon {
    /* background: rgb(88, 78, 41); */
    color:rgb(88, 78, 41);
}
.tw-page-title-container .tw-page-title.search-heading small {
    color: #fff!important;
}
.hide_for_refresh:disabled ~ .disabled-buttons-notify {
    display: inline-block;
}
button:not(:disabled) ~ .disabled-buttons-notify.uk-text-danger  {
    display: none;
    width: 100%;
}
.cart-prices-label {
    float: left;
    margin: 5px 0px;
}
.cart-prices {
    margin: 5px 0px;
    position: absolute;
    right: 35px;
}
.subtotal-row {
    padding: 0 30px!important;
    color: rgba(255, 255, 255, 0.5);
    font-size: 14px;
}
#cart-dropdown .item-close {
    position: absolute;
    top: 2px;
    right: -10px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
    color: #FFF;
    border: 1px solid #fff;
    border-radius: 50%;
    padding: 0px 3px 8px 6px;
    padding-top: 0px;
    padding-right: 3px;
    padding-bottom: 8px;
    padding-left: 6px;
    height: 15px;
    width: 15px;
}
#cart-dropdown .cart-btn:hover .item-close {
    opacity: 1;
    visibility: visible;
}
@media (max-width: 639px) {
    .uk-slider-items li .uk-card .uk-card-body {
        padding: 10px 5px 60px;
    }
}
@media (max-width: 959px) {
    .chrismas-time-banner {
        font-size: 12px;
    }
}
@media (min-width: 959px) and (max-width: 1200px) {
    .uk-navbar-nav>li>a {
        font-size: 14px;
        padding: 7px;
    }
    .uk-navbar-nav>li>a[style] {
        font-size: 14px!important;
        padding: 7px;
    }
}
@media (min-width: 768px) and (max-width: 958px) {
    .navbar-header-right-wrapp {
        margin-top:10px!important;
    }
    .uk-search-default {
        width: 100%!important;
    }
}
@media (min-width: 639px) and (max-width: 767px) {
    .uk-section-shop .uk-width-single {
        width: 102px!important;
    }
    .chrismas-time-banner .working-time span {
        display: block;
    } 
}
@media (max-width: 420px) {
    .owl-carousel.owl-theme.owl-carousel-zoom .owl-item img {
        max-width: 340px !important;
    }
}

/* Performance: Prevent layout shifts - removed min/max height as it caused gap issues */

/* Reserve space for product images */
.shop-image-container img {
    aspect-ratio: 1 / 1;
    object-fit: contain;
    width: 100%;
    height: auto;
}

/* Reserve space for brand logos */
.logos-carousel .post-item img {
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

/* Footer logo dimensions */
footer .tw-logo img {
    width: 235px;
    height: auto;
}

/* Header logo dimensions - prevent CLS */
.top-bar .tw-logo img {
    width: 235px;
    height: auto;
    max-height: 55px;
    object-fit: contain;
}

/* Navbar height reservation */
.top-bar {
    min-height: 65px;
}

.navbar-brown.uk-navbar-container {
    min-height: 60px;
}

/* Top bar - desktop layout */
.top-bar {
    flex-wrap: nowrap !important;
    align-items: center;
    padding-left: 10px !important;
    padding-right: 10px !important;
}
.top-bar > div:first-child {
    flex-shrink: 0;
}
.top-bar .navbar-header-right-wrapp {
    flex-wrap: nowrap !important;
    align-items: center;
}
.top-bar .tw-box.layout-4 {
    width: auto !important;
    flex-shrink: 0;
    white-space: nowrap;
}
.top-bar .uk-search-default {
    width: auto;
    flex-shrink: 1;
    flex-grow: 1;
    max-width: 450px;
}
.top-bar .uk-search-default input {
    width: 100% !important;
    min-width: 350px;
}
.top-bar .tw-header-meta {
    flex-shrink: 0;
    display: flex;
    align-items: center;
}
.top-bar .tw-element.tw-box.layout-4 {
    width: auto !important;
    flex-shrink: 0;
}

/* Mobile header layout - stack elements properly */
@media (max-width: 959px) {
    .top-bar {
        flex-wrap: wrap !important;
        padding: 8px 10px !important;
        min-height: auto !important;
        position: relative;
    }
    /* Logo row */
    .top-bar > div:first-child {
        width: 100%;
        text-align: center;
        margin-bottom: 8px;
    }
    .top-bar .tw-logo img {
        width: 180px;
        max-height: 45px;
    }
    /* Right wrapper takes full width */
    .top-bar .navbar-header-right-wrapp {
        width: 100%;
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center;
        align-items: center;
        gap: 8px;
    }
    /* Hide phone number/wishlist box on mobile - saves space */
    .top-bar .navbar-header-right-wrapp > .tw-box.layout-4:first-of-type {
        display: none !important;
    }
    /* Search box full width - Row 1 */
    .top-bar .uk-search-default {
        order: 1;
        width: 100% !important;
        margin: 0 0 5px 0 !important;
    }
    .top-bar .uk-search-default input {
        width: 100% !important;
    }
    /* Row 2: All controls on same line */
    /* Mobile menu icon - far left */
    .top-bar .tw-header-meta .mobile-menu {
        position: absolute;
        left: 10px;
        top: auto;
        bottom: 12px;
    }
    /* VAT toggle - left of center */
    .top-bar .tw-element.tw-box.layout-4 {
        order: 2;
        margin: 0 !important;
        margin-right: auto !important;
        padding-left: 35px; /* Space for menu icon */
    }
    /* Header meta (cart, user icons) - right side */
    .top-bar .tw-header-meta {
        order: 3;
        display: flex;
        align-items: center;
    }
}

/* Small mobile screens */
@media (max-width: 639px) {
    .top-bar {
        padding: 5px 8px !important;
    }
    .top-bar .tw-logo img {
        width: 150px;
        max-height: 40px;
    }
    /* VAT toggle smaller text */
    .top-bar .vat {
        font-size: 7pt;
        padding: 3px 8px;
    }
    .top-bar .tw-header-meta .mobile-menu {
        left: 8px;
        bottom: 10px;
    }
    .top-bar .tw-element.tw-box.layout-4 {
        padding-left: 30px;
    }
}

/* Search dropdown - extend to right edge */
.top-bar .uk-search-default {
    position: static;
}
.top-bar .navbar-header-right-wrapp {
    position: relative;
}
.top-bar .results_dd.uk-dropdown {
    display: none;
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
    top: 100% !important;
    width: 400px !important;
    max-width: calc(100vw - 20px);
    box-sizing: border-box;
}
.top-bar .results_dd.uk-dropdown.uk-open,
.top-bar .results_dd.uk-dropdown[style*="display: block"] {
    display: block !important;
}

/* Slider height reduction (25% smaller) and CLS prevention */
/* Set explicit heights on section to prevent any layout shift */
/* Critical: These styles ensure the slider reserves space BEFORE owl carousel JS runs */
.tw-slider {
    contain: layout style;
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
    overflow: hidden;
    position: relative !important;
}
/* Pre-initialization: Show first slide immediately before JS loads */
.tw-slider .owl-carousel {
    height: 100% !important;
    display: block !important;
    visibility: visible !important;
}
.tw-slider .owl-carousel > .slider-item:first-child {
    display: block !important;
    height: 100% !important;
    visibility: visible !important;
}
/* Hide other slides before JS initializes */
.tw-slider .owl-carousel > .slider-item:not(:first-child) {
    display: none !important;
}
/* After owl initializes, let it control visibility */
.tw-slider .owl-carousel.owl-loaded > .slider-item {
    display: none !important; /* Owl will handle via owl-item wrapper */
}
.tw-slider .owl-stage-outer,
.tw-slider .owl-stage,
.tw-slider .owl-item {
    height: 100% !important;
}
.tw-slider .owl-item .slider-item {
    display: block !important;
}
.tw-slider .slider-item {
    height: 300px !important;
}
@media (min-width: 960px) {
    .tw-slider {
        height: 450px !important;
        min-height: 450px !important;
        max-height: 450px !important;
    }
    .tw-slider .slider-item {
        height: 450px !important;
    }
}

/* Remove white gap below slider */
.tw-slider {
    margin-bottom: 0 !important;
}
.tw-slider + section {
    margin-top: 0 !important;
}
.tw-slider + section .uk-margin-large-top:first-child,
.tw-slider + section > .uk-container > .uk-margin-large-top:first-child {
    margin-top: 20px !important;
}

/* LCP optimization - First slide with img tag instead of background */
.slider-item-first {
    position: relative;
    overflow: hidden;
}
.slider-item-first .slider-bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}
.slider-item-first .slider-bg-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.slider-item-first .slider-content {
    position: relative;
    z-index: 1;
}
/* Dark overlay for first slide */
.slider-item-first::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 0;
    pointer-events: none;
}
.slider-item-first .slider-content {
    z-index: 2;
}

/* WebP background images with fallback */
.slider-item[data-bg-webp] {
    background-image: var(--bg-fallback);
}
.webp .slider-item[data-bg-webp] {
    background-image: var(--bg-webp);
}

/* Footer background with WebP support */
.footer-bg {
    background-image: url(/assets/gfx/home/footer-back.jpg);
    background-size: cover;
}
.webp .footer-bg {
    background-image: url(/assets/gfx/home/footer-back.webp);
}

/* Preloader CLS fix - prevent layout shift by keeping content in flow */
/* Override theme.css which hides content with visibility:hidden causing CLS */
body.loading > .header-container,
body.loading > .main-container,
body > .header-container,
body > .main-container {
    visibility: visible !important;
    opacity: 1 !important;
}
/* Make preloader an overlay that covers content without affecting layout */
body > .tw-preloader {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: #fff !important;
    z-index: 99999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: opacity 0.3s ease-out !important;
}
/* Hide preloader after page loads (JS removes .loading class) */
body:not(.loading) > .tw-preloader {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* GDPR Cookie Banner - prevent CLS by using fixed positioning */
#gdpr_cookie-overlay,
#gdpr_cookie-mainWrapp,
.gdpr_cookie-mainContainer {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9999 !important;
    transform: translateZ(0);
}
#gdpr_cookie-overlay {
    top: 0 !important;
    bottom: auto !important;
}

/* Accessibility - Color contrast fixes */
/* Fix gray text in headings - #999 doesn't meet WCAG AA (4.5:1) on white */
.tw-heading {
    color: #595959; /* 7:1 contrast ratio on white */
}
.tw-heading p {
    color: #595959;
}
/* Fix GDPR cookie banner link color for better contrast */
#gdpr_cookie-mainWrapp a,
.gdpr_cookie-mainContainer a {
    color: #1565c0 !important; /* Darker blue with 4.6:1 contrast */
}

/* Fix uk-text-success color - UIKit default #32d296 has 2.6:1 contrast (fails WCAG AA) */
.uk-text-success {
    color: #0d7a3e !important; /* 4.6:1 contrast ratio on white - passes WCAG AA */
}

/* Fix form success color */
.uk-form-success,
.uk-form-success:focus {
    color: #0d7a3e;
    border-color: #0d7a3e;
}