/* TODO: styles.css, csf-base.css and other common elements have to be merged in here (after they got cleaned) */

html { font-size: 16px; font-family: "museo-sans", sans-serif }
a { color: #37a3d4; text-decoration: none }
a img { border: none }

.page { position: relative }
.main { margin: 0 auto; width: 975px; padding: 35px 0 42px 0 }
.catalog-category-view .col2-left-layout .col-main, .catalogsearch-result-index .col2-left-layout .col-main { float: left; width: 737px; margin: 0 0 0 10px }
.col-left { float: left; width: 217px; }

.block-text h4 { color: #37a3d4; }
.products-grid .you-save { color: #37a3d4; }
.pages li { background: url(../i/pages.png); }
.pages .current { border-color: #146696; }
.check-list li { background-image:url(../i/ico-chekcked-green.png); }

.swipe-container { overflow-x: auto }
.swipe-container ul { display: table }
.swipe-container li { display: table-cell }
.swipe-container .products-grid li { float: none; width: auto }
.swipe-container .products-grid li .grid-cell-container { border-bottom: none; width: 213px }
.swipe-prev, .swipe-next { position: absolute; top: 40%; z-index: 10; cursor: pointer; opacity: 0; font-family: "21run", sans-serif; color: #bebebe; margin: 0 5px }
.swipe-next { right: 0 }
.swipe-prev { left: 0 }
.swipe-next:after { content: "\75" }
.swipe-prev:after { content: "\74" }

/* Main search form */
#searchPanel { float: left;  margin: 29px 110px 0 126px }
#search_mini_form { display: block; border-radius: 10px; box-shadow: 0 0 15px 0 rgba(0,0,0,0.20); position: relative }
#search_mini_form input { float: left; width:280px; border: none; border-radius: 10px 0 0 10px; font-size: 15px; text-align: center; padding: 10px; background-color: #ffffff }
#search_mini_form button { padding: 8px 11px; border-radius: 0 10px 10px 0; cursor: pointer; border: none; background-color: #1b213f; font-family: "21run", sans-serif; color: #ffffff; font-size: 20px }

.search-autocomplete { z-index: 200; position: absolute }
.search-autocomplete ul { border: 1px solid #ccc; border-top: none; width: 299px; overflow: hidden; background: #ffffff }
.search-autocomplete ul li { border-top:1px solid #cccccc }
.search-autocomplete ul li a { color:#474747; display:block; height: 39px; line-height: 39px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap }
.search-autocomplete ul li.no-thumbnail a { padding-left: 16px }
.search-autocomplete ul li a:hover { background-color: #e9e9e9 }
.search-autocomplete ul li img { margin: 1px; float: left }

/* Header */
.header { margin: 0 auto; max-width: 1110px; padding: 0 35px }
.logo { float: left; margin: 20px 0 37px }
.logo img { width: 246px; height: 61px }
.header-container { background-color: #00a3e2 }
.header .customer-account, .shopping-cart, #tablet-search-button, #mobile-menu-button { color: #1b213f; float: right; text-align: center; display: block; margin-top: 22px; font-size: 14px }
.header .customer-account:before, .shopping-cart:before, #tablet-search-button:before, #mobile-menu-button:before { font-family: "21run", sans-serif; color: #ffffff; font-size: 35px; display: block; -moz-osx-font-smoothing: grayscale; font-feature-settings: "liga", "kern"; text-rendering: optimizelegibility }
.header .customer-account { margin-right: 24px; margin-left: 35px }
.header .customer-account:before { content: "\61" }
.shopping-cart:before { content: "\67" }
#tablet-search-button:before { content: "\68" }
#mobile-menu-button:before { content: "\6a"; text-transform: none }
#mobile-menu-button.expanded:before { content: "\71"; text-transform: none }
#mobile-menu-button { margin-top: 0; margin-left: 10px; padding-top: 9px; width: 75px; height: 57px; border-left: #79c3ed solid 1px; font-size: 10px; font-weight: 700; text-transform: uppercase; display: none }
.shopping-cart { position: relative }
.shopping-cart span { background-color: #ff7102; border-radius: 9px; color: #ffffff; position: absolute; top: -4px; left: 33px; width: 18px; font-size: 14px; padding: 1px 0 }
#tablet-search-button { margin-left: 35px; display: none }

@media (max-width: 1219px) {
    .logo { margin-bottom: 15px }
    nav { border-top: #323853 solid 1px }
    .header.tablet-search-bar { border-bottom: #1b213f solid 48px }
    #searchPanel { display: none; position: absolute; float: none; margin: 0; top: 140px; left: 15px; z-index: 1 }
    .tablet-search-bar #searchPanel { display: block }
    #search_mini_form input { background-color: transparent; text-align: left; text-transform: uppercase; border-bottom: #76798a solid 1px; border-radius: 0; width: 178px; padding: 7px 3px; font-size: 14px; color: #ffffff }
    #search_mini_form button { font-size: 24px; padding: 6px }
    #search_mini_form { box-shadow: none }
    #tablet-search-button { display: block }
}

@media (max-width: 767px) {
    .logo { margin: 14px 14px 8px }
    .logo img { width: 158px; height: auto }
    .header { padding: 0; border-bottom: #1b213f solid 48px }
    #searchPanel { display: block; top: 103px }
    .shopping-cart { position: absolute; top: 100px; right: 0; height: 28px; margin-top: 0; font-size: 0; border-left: #56596e solid 1px; padding: 10px 25px 10px 24px }
    .shopping-cart span { font-size: 10px; width: 15px; top: 6px; left: 32px }
    .shopping-cart:before { font-size: 26px }
    #mobile-menu-button, nav.expanded { display: block }
    .header .customer-account, #tablet-search-button, nav { display: none }
}

/* Main navigation */
nav { color: #ffffff; position: absolute; top: 137px; z-index: 50; text-align: center; width: 100% }
nav h2 { color: #ff7102; font-size: 20px; margin-bottom: 20px }
.nav { display: inline-block; border-radius: 10px; overflow: hidden }
.nav a { color: #1b213f }
.nav > li { float: left; border-left: #323853 solid 1px }
.nav > li > a { background-color: #1b213f; display: block; padding: 7px 53px 8px 45px; font-size: 20px; color: #ffffff; position: relative }
.nav > li.nav-4 > a { background-color: #f03d38 }
.nav > li.nav-1 { border-left: none }
.nav > li > a span:after { content:""; width: 0; height: 0; border-style: solid; border-width: 4px 3.5px 0 3.5px; border-color: rgba(255, 255, 255, .7) transparent transparent transparent; position: absolute; top: 18px; margin-left: 7px }
.nav > li.hover > a span:after { border-color: #ff7102 transparent transparent transparent }
.nav > li.hover a { color: #1b213f }
.nav > li.hover > a { background: #ffffff; color: #ff7102 }
.sub-menu-container { left: -100000px; position: absolute; background: #ffffff; padding: 20px 0; width: 1200px; border-bottom: #ff7102 5px solid; text-align: left }
.hover .sub-menu-container { left: 50%; margin-left: -600px; z-index: 4 }
.nav li li a { display: block; margin: 0 17px 17px 0; font-weight: bold }
.nav-overlay { background-color: #000000; opacity: .3; position: absolute; top: 156px; left: 0; right: 0; z-index: 40; display: none }
.fake-background { position: absolute; top: 156px; width: 1200px; opacity: 1; border-top: 20px #ffffff solid; z-index: 45; left: 50%; margin-left: -600px; display: none }
.columns-wrapper { display: table; width: 100% }
.top-categories, .other-categories, .special-offer { display: table-cell; border-right: #d9d9d9 solid 1px; padding-left: 40px }
.top-categories { width: 224px }
.other-categories { width: 495px }
.other-categories ul { float: left; width: 50% }
.special-offer { border-right: none; padding-right: 40px }
.special-offer img { max-width: 100%; display: block }
.special-offer a { border-radius: 5px; overflow: hidden; display: block }
.nav .customer-account { display: none }

/* Brands Navigation */
.nav .brands-button { }
.nav .button { background: #ffffff; color: #000000; border-color: #bdc3cc }
.brand-logos-viewport { height: 56px; overflow: hidden; padding-top: 30px }
.brand-logos-container { display: table; border-top: #d8d8d8 solid 1px; padding: 20px 20px 0; width: 100% }
.brand-logos-container .brand-logos-title, .brand-logos-container p { display: table-cell; vertical-align: top }
.brand-logos-container .brand-logos-title { color: #1b213f; font-size: 20px; font-weight: bold; white-space: nowrap }
.brand-logos-container p img { margin-left: 20px }
.brand-logos-container .all-brands { display: inline-block; font-weight: 700; position: relative; top: -8px; left: 15px }

@media (max-width: 1219px) {
    nav { position: static }
    .nav { display: table; border-radius: 0; width: 100% }
    .nav > li { float: none; display: table-cell }
    .nav > li > a { padding: 10px }
    .hover .sub-menu-container { left: 0; margin-left: 0; width: 100% }
    .top-categories { width: 193px }
    .other-categories { width: 198px }
    .other-categories ul { float: none; width: 100% }
}

@media (max-width: 767px) {
    .nav { display: block; background-color: #e3e4e6 }
    .nav > li { display: block; clear: both; border-bottom: #4c5064 solid 1px }
    .nav > li > a span:after { display: none }
    .nav > li.nav-1, .nav > li.nav-2, .nav > li.nav-3 { border-color: #cdcdcf; width: 33%; float: left; clear: none; border-bottom: none }
    .nav > li.nav-1 > a, .nav > li.nav-2 > a, .nav > li.nav-3 > a { background-color: #e3e4e6; color: #1b213f }
    .nav > li.nav-1.hover > a, .nav > li.nav-2.hover > a, .nav > li.nav-3.hover > a { background: #ffffff; color: #ff7102 }
    .nav > li.nav-4 { border-bottom: none }
    .nav .customer-account { display: block }
    .brand-logos-viewport { display: none }
    .columns-wrapper { display: block }
    .top-categories, .other-categories { display: block; border-right: none; width: auto; padding: 0; margin: 0 20px }
    .top-categories { border-bottom: #d9d9d9 solid 1px; margin-bottom: 20px }
    .special-offer { display: none }
    .sub-menu-container { text-align: inherit }
}

/* Products grid elements which are commonly used */
.products-grid { overflow: hidden }
.products-grid li { list-style: none; float: left;  width: 33%; position: relative; margin-bottom: -1px }
.products-grid .brand-logo { position: absolute; right: 2px; top: 1px; max-width: 166px }
.products-grid li .grid-cell-container { padding: 25px 15px 20px 15px; height: 196px; border-bottom: 1px solid #eaeaea; border-right: 1px solid #eaeaea }
.products-grid li.last .grid-cell-container { border-right: none }
.products-grid .product-image { display: block; margin: 0 0 10px 0 }
.products-grid .price-box { float: right; text-align: right; margin: 0 0 0 10px; min-height: 44px }
.products-grid .product-name { font: bold 14px/22px Verdana, sans-serif; color: #323232; margin: 0 0 5px 0; position: relative }
.products-grid .regular-price, .products-grid .special-price { font-size: 15px; font-weight: bold; position: absolute; bottom: 28px; right: 14px }
.products-grid .base-price { clear: both; text-align: right; font-size: 12px }
.products-grid .you-save { color: #ac3f07 }
.products-grid .product-category { margin-bottom: 7px }
.products-grid .product-category a { color: #000 }
.products-grid li h2.product-name, .products-grid li h3.product-name, .products-grid li h4.product-name { text-overflow: ellipsis }
.products-grid li span.new-product { background:#3CABD9; color: #FFF; font-family:GeogrotesqueRegular, Helvetica, Arial, sans-serif; font-size:1.2em; overflow:hidden; padding:3px 7px; text-transform:uppercase; position:absolute; left:0; top:0; vertical-align:baseline }

/* Prices */
.price-label { display: none }
.old-price { text-decoration: line-through }

/* Benefits */
.benefits-container { background-color: #dcdde0; position: relative }
.benefits { margin: 0 auto; padding: 40px 0 30px; width: 1080px }
.benefits .slick-slider { width: 100%; text-align: center }
.benefits .slick-slide { float: left; width: 20% }
.benefits .slick-slide:before { font-family: "21run", sans-serif; background-color: #ffffff; color: #ff7102; font-size: 40px; padding: 8px 10px; border-radius: 5px; display: block; width: 40px; margin: 0 auto 15px; box-shadow: 0 0 10px 0 rgba(0,0,0,0.20); -moz-osx-font-smoothing: grayscale; font-feature-settings: "liga", "kern"; text-rendering: optimizelegibility }
.benefits .shipping:before { content: "\6d" }
.benefits .money-back:before { content: "\6e" }
.benefits .satisfied-customers:before { content: "\6f" }
.benefits .secure-payment:before { content: "\70" }
.benefits .brands:before { content: "\6c" }
.benefits .slick-prev { left: -20px }
.benefits .slick-next { right: -20px }

/* Previous/Next Buttons */
.slick-prev, .slick-next { position: absolute; top: 50%; display: block; width: 20px; height: 20px; margin-top: -10px; padding: 0; cursor: pointer; color: transparent; border: none; outline: none; background: transparent; overflow: hidden; z-index: 20 }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { color: transparent; outline: none; background: transparent }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1 }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: 0 }
.slick-prev:before, .slick-next:before { font-family: "21run", sans-serif; color: #bebebe; font-size: 20px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale }
.slick-next:before { content: "\75" }
.slick-prev:before { content: "\74" }

@media (max-width: 1219px) {
    .benefits { width: 100% }
}

@media (max-width: 767px) {
    .benefits { margin: 0 25px; width: auto }
}

/* Footer */
.footer-container { background: #f2f2f2 }
.footer { margin: 0 auto; width: 1020px; padding: 40px 0 30px 0 }
.footer-blocks { border-bottom: 1px solid #d7d7d7; padding: 30px 0 }
.footer-block { float: left }
.footer-column-1 { width: 297px }
.footer-column-2 { width: 271px }
.footer-column-3 { width: 224px }
.footer-column-4 { width: 227px }
.footer-block img { background-color: #ffffff; border-radius: 5px; border: #d2d5d6 solid 1px; margin-right: 5px }
.footer-block ul { overflow: hidden; margin-right: 25px }
.footer-block-info { padding: 30px 0; color: #282828 }
.footer-block-info h2 { font-size: 20px; padding-top: 30px }
.global-footer-text { color: #7a7a7a; font-size: 14px; border-bottom: 1px solid #d7d7d7; padding-bottom: 30px }
.footer-block a { color: #323232; text-decoration: underline }
.footer-block li { list-style: none; margin-bottom: 5px }
.footer-block-title { font-size: 20px; margin-right: 25px; margin-bottom: 10px; font-weight: 700 }
.footer-block-wide { float: right; width: 365px }
.footer-block-wide img { margin-bottom: 21px }
.footer .additional-blocks { display: none }

@media (max-width: 1219px) {
    .footer-categories, .footer .shipping-methods, .footer .languages { display: none }
    .footer .additional-blocks { display: block }
    .footer .main-blocks { border-bottom: none; padding-bottom: 0 }
    .footer { padding: 10px 40px; width: auto }
    .footer-column-1 { width: 40% }
    .footer-column-2 { width: 35% }
    .footer-column-3, .footer-column-4 { width: 25% }
}

@media (max-width: 767px) {
    .footer-block-info h2, .footer-block-info p, .footer .additional-blocks { display: none }
    .footer .shipping-methods, .footer .languages { display: block }
    .footer { padding: 0 }
    .footer-blocks { padding: 0; border-bottom: none }
    .footer-block-info { padding: 0 }
    .global-footer-text { border-bottom: none; padding: 20px }
    .footer-block { width: 100%; text-align: center; border-bottom: 1px solid #d7d7d7 }
    .footer-block p, .footer-block ul { display: none }
    .footer-block.expanded p, .footer-block.expanded ul { display: block }
    .footer-block-title { padding: 10px 0; font-size: 18px; margin: 0 }
    .footer-block-title:after { content: "\73"; float: right; font-family: "21run", sans-serif; margin-right: 10px; color: #b5b5b5 }
    .expanded .footer-block-title:after { content: "\76" }
}

/*dhl cms box*/
#dhl_content { background-color: #FFFFFF; border: 1px solid #CCCCCC; color: #666666; font-size: 10px; max-width: 700px; display: inline-block }
#dhl_content h2 {color: #000000;font-size: 1.4em;line-height: 1.286;margin-bottom: 0.357em;}
#dhl_content #header {padding-bottom: 8px;position: relative;z-index: 100;}
#dhl_content #header .header-content {background-color: #FFCC00;}
#dhl_content #content-wrapper {clear: both;margin-top: -8px;z-index: 0;padding-bottom: 3em;}
#dhl_content #wrapper {max-width: 98em;min-width: 72em;padding-right: 15px;}
#dhl_content #content-col {float: left;}
#dhl_content #header .header-content {border-bottom: 14px solid #CC0000;height: 54px;}
#dhl_content #wrapper {background: none repeat scroll 0 0 transparent;max-width: 1000em;min-width: 0;padding-right: 0;}
#dhl_content #content-col {float: none;padding: 4.5em 5em 0 4em;}
#dhl_content .logo p {margin-bottom: 0;}
#dhl_content .logo a {display: block;}
#dhl_content .brand-logo {left: 1.2em;position: absolute;top: 2px;}
#dhl_content.popup .brand-logo {top: 0;}
#dhl_content .jump-area-footer {bottom: 1.2em;left: 1em;position: absolute;width: 26em;}

/* Info Banner */
#promo-bar { display: table; width: 1200px; height: 34px; margin: 0 auto; padding: 0 }
#promo-bar li { width: 33%; font-size: 12px; font-weight: 700; display: table-cell; vertical-align: middle; margin: 0; padding: 0; list-style: none; text-align: center }
#promo-bar li:before { content: "\63"; font-family: "21run", sans-serif; color: #b5b5b5; font-size: 14px; vertical-align: bottom; margin-right: 5px }
#promo-bar .ekomi { position: relative; top: -5px }

@media (max-width: 1219px) {
    #promo-bar { width: 100%; position: relative; overflow: hidden }
    #promo-bar li, #promo-bar .ekomi { width: 100%; position: absolute; top: -100px; transform: scale(0); transition: 1s}
    #promo-bar li.current { top: 10px; transform: scale(1); transition: 1s }
    #promo-bar li.current.ekomi { top: 2px }
}

/* CMS Block Search Result */
.brooks-search-result-heading { margin: 10px 0}
.brooks-search-result-column { float: left; width: 32% }
.brooks-search-result-separator { float: left; width: 2% }

/* Styled dropdown */
.styled-select-wrapper { border-radius: 2px; padding: 6px 30px 6px 6px; border: 1px solid #d0d0d0; background: #ffffff url("../images/sprite.png") no-repeat top right; color: #666666; position: relative }
.styled-select-wrapper select { position: absolute; opacity: 0; left: 0; width: 100% }
.styled-select-wrapper span { line-height: 21px }

.contacts-index-index .styled-select-wrapper { padding-left: 15px }
.contacts-index-index .styled-select-wrapper select { width: 100% }

/* Supplementary stuff */

/* Fonts */
@font-face { font-family: 'GeogrotesqueSemiBold'; src: url('../fonts/geogtq-sb-webfont.eot'); src: url('../fonts/geogtq-sb-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/geogtq-sb-webfont.woff') format('woff'), url('../fonts/geogtq-sb-webfont.ttf') format('truetype'), url('../fonts/geogtq-sb-webfont.svg#GeogrotesqueSemiBold') format('svg'); font-weight: normal; font-style: normal }
@font-face { font-family: 'GeogrotesqueLight'; src: url('../fonts/geogtq-lg-webfont.eot'); src: url('../fonts/geogtq-lg-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/geogtq-lg-webfont.woff') format('woff'), url('../fonts/geogtq-lg-webfont.ttf') format('truetype'), url('../fonts/geogtq-lg-webfont.svg#GeogrotesqueLight') format('svg'); font-weight: normal; font-style: normal }
@font-face { font-family: 'GeogrotesqueMedium'; src: url('../fonts/geogtq-md-webfont.eot'); src: url('../fonts/geogtq-md-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/geogtq-md-webfont.woff') format('woff'), url('../fonts/geogtq-md-webfont.ttf') format('truetype'), url('../fonts/geogtq-md-webfont.svg#GeogrotesqueMedium') format('svg'); font-weight: normal; font-style: normal }
@font-face { font-family: 'GeogrotesqueRegular'; src: url('../fonts/geogtq-rg-webfont.eot'); src: url('../fonts/geogtq-rg-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/geogtq-rg-webfont.woff') format('woff'), url('../fonts/geogtq-rg-webfont.ttf') format('truetype'), url('../fonts/geogtq-rg-webfont.svg#GeogrotesqueRegular') format('svg'); font-weight: normal; font-style: normal }
@font-face { font-family: 'GeogrotesqueUltraLight'; src: url('../fonts/geogtq-ul-webfont.eot'); src: url('../fonts/geogtq-ul-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/geogtq-ul-webfont.woff') format('woff'), url('../fonts/geogtq-ul-webfont.ttf') format('truetype'), url('../fonts/geogtq-ul-webfont.svg#GeogrotesqueUltraLight') format('svg'); font-weight: normal; font-style: normal }
@font-face { font-family: "21run"; src:url("../fonts/21run.eot"); src:url("../fonts/21run.eot?#iefix") format("embedded-opentype"), url("../fonts/21run.woff") format("woff"), url("../fonts/21run.ttf") format("truetype"), url("../fonts/21run.svg#21run") format("svg"); font-weight: normal; font-style: normal }

/* Rounded borders */
.roundedBorder { border-radius: 2px }

@media (max-width: 767px) {
    .products-grid .regular-price, .products-grid .special-price { position: static }
    .products-grid .you-save { clear: both }
    .products-grid li .grid-cell-container { min-height: 200px }
}

/* Clearer */
.header:after, .nav .brands-logos:after, .brooks-search-result-heading:after, .advice-menu:after, .footer-blocks:after,
.main:after, .brand-logos-container:after, .other-categories:after { content: ""; display: block; height: 0; clear: both; visibility: hidden }
