/*! HTML5 Boilerplate v5.2.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   WordPress Core
   ========================================================================== */

.alignnone { margin: 5px 20px 20px 0; }
.aligncenter, div.aligncenter { display: block; margin: 5px auto 5px auto; }
.alignright { float:right; margin: 5px 0 20px 20px; }
.alignleft { float: left; margin: 5px 20px 20px 0; }
.aligncenter { display: block; margin: 5px auto 5px auto; }
a img.alignright { float: right; margin: 5px 0 20px 20px; }
a img.alignnone { margin: 5px 20px 20px 0; }
a img.alignleft { float: left; margin: 5px 20px 20px 0; }
a img.aligncenter { display: block; margin-left: auto; margin-right:auto; }
.wp-caption { background: #fff; border: 1px solid #f0f0f0; max-width: 96%; /* Image does not overflow the content area */ padding: 5px 3px 10px; text-align: center; }
.wp-caption.alignnone { margin: 5px 20px 20px 0; }
.wp-caption.alignleft { margin: 5px 20px 20px 0; }
.wp-caption.alignright { margin: 5px 0 20px 20px; }
.wp-caption img { border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto; }
.wp-caption p.wp-caption-text { font-size: 11px; line-height: 17px; margin: 0; padding: 0 4px 5px; }


/* ==========================================================================
   Calle
   ========================================================================== */

body { font-family:Arimo,Arial,sans-serif; font-size:1rem; }
a { color:#000; }
a:hover, a:focus { color:#000; text-decoration:underline; }
hr { display:none; }
input { font-family:Arimo,Arial,sans-serif; }
button, .button { font-family:Arimo,Arial,sans-serif; }
button.primary, .button.primary,
button.primary:hover, .button.primary:hover { background-color:#f9f12c; color:#000; }
.button.primary a { color:#000; }
.textalignleft { text-align:left; }
.textaligncenter { text-align:center; }
.textalignright { text-align:right; }

#container { background:#fff; }



#header-wrapper { /*border:1px solid green;*/ }
#header-wrapper .logo { position:relative; margin:0; padding:0; text-align:center; }
#header-wrapper .logo a { display:block; width:115px; height:90px; background:url(../images/calle-logo.png) no-repeat; text-indent:-900em;  }

#header-wrapper .header-row { margin-top:1rem; z-index:10; }
#header-wrapper .language { margin:.5rem 0 1rem; }
#header-wrapper .language .lang { display:none; }
#header-wrapper .language ul { list-style-type:none; margin:0; padding:0; }
#header-wrapper .language ul li { display:inline-block; }
#header-wrapper .language ul li a { display:block; border:1px solid #231f20; width:30px; height:17px; overflow:hidden; opacity:.4; text-indent:-900em; background:url(../images/flags.png) no-repeat; background-size:150px 17px;}
#header-wrapper .language ul li a#est { background-position:0 0; }
#header-wrapper .language ul li a#eng { background-position:-30px 0; }
#header-wrapper .language ul li a#swe { background-position:-60px 0; }
#header-wrapper .language ul li a#fin { background-position:-90px 0; }
#header-wrapper .language ul li a#rus { background-position:-120px 0; }
#header-wrapper .language ul li a.active { opacity:1; }

#header-wrapper .nav { position:relative; background-color:#efefee; z-index:1000; }
#header-wrapper .nav ul { list-style-type:none; margin:0; padding:0; }
#header-wrapper .nav ul li { position:relative; display:inline-block; font-size:.75rem; }
#header-wrapper .nav ul li a { color:#787975; display:block; padding:.5rem .6rem; text-decoration:none; }
#header-wrapper .nav ul li a:hover { background-color:#e5e5e5; }
#header-wrapper .nav ul li a i { font-size:1rem; }
#header-wrapper .nav ul li > ul { display:none; position:absolute; background-color:#efefee; border-bottom-left-radius:5px; border-bottom-right-radius:5px; border-left: 1px solid #e2e2e2; border-right: 1px solid #e2e2e2; z-index: 10; }
#header-wrapper .nav ul li:hover > ul { display:block; }
#header-wrapper .nav ul li > ul > li { border-bottom:1px solid #e2e2e2; display:block; }
#header-wrapper .nav ul li > ul > li a { padding:.3rem .6rem; }

#header-wrapper .product-nav { background-color:#43443f; overflow:hidden; }
#header-wrapper .product-nav ul { list-style-type:none; margin:0; padding:0; }
#header-wrapper .product-nav ul li { margin:0; padding:0; }
#header-wrapper .product-nav ul li a { display:block; color:#fff; padding:.3rem 1rem; text-decoration:none; }
#header-wrapper .product-nav ul li a:hover, #header-wrapper .product-nav ul li a.active,
#header-wrapper .product-nav ul li ul.sub li a:hover, #header-wrapper .product-nav ul li ul.sub li a.active { background:#f9f12c; color:#000; }

#header-wrapper .product-nav ul li.home a i { font-size:1.2rem; }

#header-wrapper .search { position:relative; background:#e6e6e6; padding:5px 1.5rem; margin-bottom:1rem; border-radius:10px; }
#header-wrapper .search input { border:none; }
#header-wrapper .search input.search-txt { background-color:#e6e6e6; box-shadow:none; margin:0; color:#000; padding:.2rem; }
#header-wrapper .search input.search-submit {  display:block; background-color:#fff25d; border-radius:5px; padding:.5rem; margin:0; color:#000; width:100%; }

#header-wrapper .block-footer .row { margin:0; }

#content-wrapper { padding:1rem 0; }
.content { /*border:1px solid orange;*/ }
.right-column { /*border:1px solid blue;*/ }
.side-block { background-color:#e6e6e6; border-radius:10px; margin-bottom:1rem; padding:1rem; font-size:.875rem; overflow:hidden; }
.side-block a { color:#000; }
.side-block.primary { background-color:#f9f12c; }
.side-block-random-link { display:block; font-size:.75rem; text-align:center; margin:-.6rem 0 1.2rem; }
.side-block .block-head { font-weight:bold; font-size:.9375rem; }
.side-block .block-head i, .side-block .banner i { font-size:1.5rem; margin-right:.4rem; }
.side-block h4 { font-size:.9375rem; font-weight:bold; }

.side-block.shopping-cart { padding:0; background-color:#43443f; color:#fff; overflow:hidden; }
.side-block.shopping-cart .block-head { padding:.2rem 1rem .2rem; background-color:#2d2f2b;  }
.side-block.shopping-cart .block-body { padding:.5rem 1rem;  }
.side-block.shopping-cart .shopping-cart-btn-view { display:block; background-color:#63645f; color:#fff; text-align:center; font-size:.6875rem; padding:.4rem; }
.side-block.shopping-cart .shopping-cart-btn-order { display:block; background-color:#ffed06; color:#000; text-align:center; font-size:.6875rem; padding:.4rem; }

.side-block .banner { font-size:.9375rem; font-weight:bold; }
.side-block .banner .pullout-button { position:relative; background-color:transparent; }
.side-block .banner .pullout-button:hover { text-decoration:underline; }

.side-block.suggestions .block-head,
.side-block.cocktails .block-head { font-size:1.125rem; text-align:center; margin-bottom:1rem; }

.side-block.map { text-align:center; }
.side-block.map .block-head { font-size:1.125rem; text-align:center; }
.side-block.map .calle-map { margin:0 -1rem; }

.side-block.pdf { text-align:center; padding:1rem 1rem 0; }
.side-block.pdf .block-head { font-size:1.125rem; text-align:center; margin-bottom:.8rem; line-height:1.1; }
.side-block.pdf .block-body a img { max-width:80%; box-shadow:2px 0 30px rgba(0,0,0,.7); margin-bottom:0; }

.side-block-pic-holder { text-align:center; margin-bottom:1rem; }
.side-block-text-holder a { text-decoration:underline; }
.side-block-poster-holder table { margin:0; padding:0; background:none; border:none;  }

.side-block.subnav { background:#363732; padding:0; overflow:hidden; }
.side-block.subnav .block-head { color:#fff; font-size:1rem; font-weight:bold; padding:.7rem 1rem .5rem; }
.side-block.subnav .block-body ul { list-style-type:none; margin:0; padding:0; }
.side-block.subnav .block-body ul li {  margin-bottom:1px;  }
.side-block.subnav .block-body ul li a { display:block; background:#43443f; color:#fff; padding:.2rem 1rem; font-size:.85rem; }
.side-block.subnav .block-body ul li a:hover { background:#8a7d10; text-decoration:none; }
.side-block.subnav .block-body ul li a.active { background:#FAE11E; color:#000; font-weight:bold; }

.tab-wrapper { border-bottom:1px solid #43443f; margin-bottom:1rem; /*padding-bottom:1px;*/ }
.tab-wrapper a { display:inline-block; }
.tab-wrapper a .new-product-tab, .tab-wrapper a .top-product-tab { padding:.5rem 1rem .4rem; background:#e6e6e6; border-top-left-radius:10px; border-top-right-radius:10px; color:#666; }
.tab-wrapper a .new-product-tab.active { background:#43443f; font-weight:bold; color:#fff; }
.tab-wrapper a .top-product-tab.active { background:#43443f; font-weight:bold; color:#fff; }

.list-item { position:relative; border:1px solid #939598; border-radius:10px; overflow:hidden; padding:.5rem; font-size:.75rem; }
.list-item-text h1, .list-item-text h2 { font-size:1rem; }
.list-item .list-item-image { text-align:center; height:230px; margin-top:70px; margin-bottom:60px; }
.list-item .list-item-image img { width:auto; max-width:80%; max-height:220px; margin-bottom:50px; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); }
.list-item .list-item-text { position:absolute; top:0; left:0; z-index:1; }
.list-item .list-item-text h1 { margin:0; }
.list-item .list-item-text h1 a { font-weight:bold; font-size:.875rem; display:inline-block; background:rgba(255,255,255,.8); padding:.5rem; }
.list-item .list-item-text p { display:inline-block; background:rgba(255,255,255,.8); padding:0 .5rem .5rem; margin:0; font-size:.875rem; }
.list-item .list-item-text-additional { width:50%; font-size:.75rem; line-height:1; overflow:hidden; }
.list-item .list-item-text-additional p { margin:0; font-size:inherit; }
.exclusive-label-s { position:absolute; top:30px; right:5px; display:block; width:62px; height:50px; background:url(../images/calle-special.png) no-repeat; background-size:62px 50px; text-indent:-900em; z-index:2;}
.list-item .list-item-cart { position:absolute; bottom:.5rem; right:0; width:125px; text-align:right; }
.list-item .list-item-cart p { display:block; margin:0; padding:0 .7rem; text-align:right; /*background:rgba(255,255,255,.8);*/  }
.list-item .list-item-cart p + p { margin-top:-8px; }
.list-item .list-item-cart p .hind { font-size:1.75rem; font-weight:bold; }
.list-item .list-item-cart p .hind.exlusive { color: #9d1135;}
.list-item .list-item-cart p .valuuta.exlusive { color: #9d1135;}
.list-item .list-item-cart p { font-size:.75rem; margin-left:-100%; }

.list-item-cart-l { position:relative; width:105px; margin:0 .5rem 0 auto; }
.list-item-cart-l a { position:absolute; top:0; left:0; display:block; width:22px; height:27px; background:#e6e6e6; text-align:center; font-size:1.125rem; font-weight:bold; border-radius:3px; line-height:1.5; }
.list-item-cart-l a:hover { background:#43443f; color:#fff; text-decoration:none; }
.list-item-cart-l a + form + a { left:auto; right:0; }
.list-item-cart-l .item-num { margin:0 25px; width:55px; height:27px; background:#e6e6e6; text-align:center; box-shadow:none; border:none;  border-radius:3px; }
.list-item .list-item-cart p.lisa { font-size:.6875rem; text-align:center; width:100%; padding:0; margin-left:0; }

.title-divider-gray { font-weight:bold; margin-bottom:1rem; }

#footer-wrapper { background-color:#43443f; color:#fff; padding:1rem; }
#footer-wrapper #footer {  }
#footer-wrapper .caution { font-size:1rem; font-weight:normal; text-align:center; }
#footer-wrapper .caution span { color:#f9f12c; }
#footer-wrapper #footerB { text-align:right; font-size:.75rem; color:#ccc; }




/* - - - - - - - - - - - - - Popup - - - - - - - - - - - - - - */

.overlay {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #000;
	opacity: 0.5;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
	filter: alpha(opacity=50);
	z-index: 800;
}

.popup {
	position: absolute;
	top: 100px;
	left: 50%;
	margin-left: -170px;
	max-width: 329px;
	padding: 20px; /*25px*/
	z-index: 1003;
	color: #303940;
	font-size: 12px;
	line-height: normal;
	text-transform: none;
	text-align: left;
	background-color: #fff;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	box-shadow: 0px 0px 60px #000;
	-moz-box-shadow: 0px 0px 60px #000;
	-webkit-box-shadow: 0px 0px 60px #000;
	cursor: default;
	overflow: hidden;

}
.popup .close {
	display: block;
	height: 27px;
	width: 27px;
	position: absolute;
	right: 10px;
	top: 10px;
	text-align: center;
	font-size:1.5rem;

}
.popup .close:hover {
	text-decoration:none;
	color:#ccc;
}
.popup .popup-head {
	position: relative;
	width: 369px;
	height: 97px;
	margin: -20px -20px 0 -20px;
	/*padding: 20px 20px 0 20px; */
	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	display:none;
}

/*.popup .head-image-1 {
	background: url("../images/popup_head_1.jpg") no-repeat;
}*/

.popup .popup-body h2 {
	font: 1.5rem Arial, Helvetica, sans-serif;
	margin: 0 0 1rem;
	line-height: 24px;
	text-align: center;
}
.popup .popup-body {
	margin: 0;
	line-height: 1.3em;
	/*max-height: 360px;*/
	padding: 0 15px;
	overflow: auto;
}

.popup .popup-body p { margin:.5rem 0; }

.popup .popup-foot {
	min-height: 34px;
	text-align: center;
	margin: 25px 0 0 0;
	padding: 0;/*border: 1px solid red;*/
}

.popup .button { float:none; background-color:#43443f; padding:.5rem 1rem; margin-bottom:5px; border-radius:5px; }
.popup .button.primary { background-color:#f9f12c; color:#000; }

.popup-caution {
	clear: both;
}


.popup.popup-map { width:100%; }
.popup iframe { border:none; }
.calle-map { cursor:pointer; }

#map-close { font-size:20px; float:right; }
#map-close:hover { text-decoration:none; }

.age-confirm .popup-body {
	text-align: center;
}

.newsletter-subscription {
	text-align: center;
}

.newsletter-subscription label {
	display: block;
	width: 96px;
	clear: left;
	float: left;
	text-align: left;
	margin: 0;
}

.newsletter-subscription label + label {
  clear: none;
  width: 50px;
}

.newsletter-subscription .email-field {
	width: 156px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}

.newsletter-subscription .captcha-field {
	width: 92px;
	margin-right: 10px;
}

.newsletter-subscription .captcha-info {
	clear: left;
}

.password-reminder  {
	text-align: center;
}
#calendarButton.button {
	height: 23px;
	width: 23px;
	background: url("../images/calendar-icon.png") no-repeat left top;
	display: block;
	text-indent: -200px;

}

.calendar.popup .button {
	background: #38040b;
	color: white;
}

.results, .rightProfile{
	list-style:square;
}


#inner-path { background-color:#ebedef; padding:.2rem .5rem; margin-bottom:1rem; border-radius:5px; font-size:.85rem; color:#959aa0; }
#inner-path a { font-size:.85rem; color:#959aa0; }

#inner-title { margin:0 0 1rem; }
#inner-title p, #inner-title h1, #inner-title h2, #inner-title h3 { font-size:1.25rem; font-weight:bold; }

#inner-sort { background-color:#e6e6e6; border:solid 1px #9a9fa3; padding:.5rem; margin-bottom:1rem; border-radius:5px; font-size:.75rem; }
#inner-sort label { display:inline-block; font-size:inherit; }
#inner-sort label select { display:inline-block; margin:0; font-size:inherit; }


#product-wrapper { margin-bottom:1rem; }
#product-wrapper .product-item-image { text-align:center; }
#product-wrapper .product-item-image img { max-width:100%; max-height:350px; }
#product-wrapper .product-text {  }
#product-wrapper .product-text h1 { font-size:1.5rem; }
#product-wrapper .product-text p { margin:0; }
#product-wrapper .product-text p.green { font-weight:bold; }


#product-wrapper .product-item-cart { position:relative; text-align:right; width:120px; margin:1rem 0 0 auto; }
#product-wrapper .product-item-cart p { display:inline-block; margin:0; padding:0; text-align:right; background:rgba(255,255,255,.8);  }
#product-wrapper .product-item-cart p .hind { font-size:1.75rem; font-weight:bold; /*margin-right:.2rem;*/ }
#product-wrapper .product-item-cart p .hind.exlusive { color: #9d1135;}
#product-wrapper .product-item-cart p .valuuta.exlusive { color: #9d1135;}
#product-wrapper .product-item-cart-l { position:relative; width:120px; margin:0 .5rem 0 auto; }
#product-wrapper .product-item-cart-l a { position:absolute; top:0; left:0; display:block; width:22px; height:27px; background:#e6e6e6; text-align:center; font-size:1.125rem; font-weight:bold; border-radius:3px; }
#product-wrapper .product-item-cart-l a:hover { background:#43443f; color:#fff; text-decoration:none; }
#product-wrapper .product-item-cart-l a + form + a { left:auto; right:0; }
#product-wrapper .product-item-cart-l .item-num { margin:0 25px; width:70px; height:27px; background:#e6e6e6; text-align:center; box-shadow:none; border:none;  border-radius:3px; }
#product-wrapper .product-item-cart .product-item-box { font-size:.6875rem; text-align:center; }


#inner-content-text h1 { font-size:1.75rem; }
#inner-content-text h2 { font-size:1.25rem; }
#inner-content-text h3 { font-size:1rem; font-weight:bold; }
.list-item-other { border:1px solid #000; border-radius:10px; padding:1rem; margin-bottom:1rem; }
.list-item-other-text h1, .list-item-other-text h2 { font-size:1.25rem; font-weight:bold; }
.list-item-other-text p a { text-decoration:underline; }

.title-divider { margin:1rem 0; font-size:1.25rem; font-weight:bold; }

.partners-pic-list, .partners-text-list { list-style:none; padding:10px; margin:0; }
.partners-pic-list li { display:inline-block; margin:0; padding:5px 20px 0 0; }

.back-link, .forward-link { font-size:.85rem; }

.back-link { padding: 5px;
    font-weight: normal;
    text-decoration: none;
    display: block;
    float: left; }

.forward-link {
    padding: 5px;
    font-weight: normal;
    text-decoration: none;
    display: block;
    float: right;
}

.pagenavi { background:#bcbdc0; text-align:center; font-size:.85rem; border-radius:5px; padding:.3rem 1rem; }
.pagenavi span, .pagenavi a { margin-right:.5rem; }
.pagenavi span a { margin-right:0; }
.pagenavi .current { font-weight:bold; }

.progress { display:none; }

.results-box { margin-bottom:2rem; }
.results { margin-left:2rem; }

#mainCartTable table { width:100%; }

div.button { background-color:#626f78; color:#fff; border-radius:10px; }
div.button a { color:#fff; }
div.button:hover { background-color:#43443f; }
div.button:hover a { text-decoration:none; }

#orderForm table { width:100%; }

.checkout-zoot { background:#e6e6e6; padding:1rem; border-radius:10px; }
.checkout-zoot ul { list-style-type:none; margin:0; padding:0; }
.checkout-zoot table { margin:0; }

.bank-box { padding:5px; }

p.batch-price { font-size:.75rem !important; margin-left:-100% !important; }
p.batch-price .hind { font-size:.75rem !important; font-weight:bold; line-height:normal; margin-right:0 !important; }
.list-item-cart > p .valuuta { font-size:1rem !important; }
.list-item-cart > p.batch-price .valuuta { font-size:.75rem !important; }
#mainCartTable p.batch-price { margin-bottom:0; margin-left:0 !important; }
#product-wrapper .product-item-cart p.huge { line-height:1.2; display:block; margin-left:-100% !important; }
#product-wrapper .product-item-cart p.batch-price { display:block; margin-left:-100% !important; }

/*#ageConfirmDiv { display:none !important; }*/

#campaingreg-form { clear:both; }

.ipaper-thumbnails li { text-align: center; }
.ipaper-thumbnails li .ipaper-image { display:block; position:relative; overflow: hidden; }
.ipaper-thumbnails li a img { box-shadow:0 0 20px rgba(0,0,0,.5); }
.ipaper-thumbnails .ipaper-image-text { position:absolute; top:50%; left:0; right:0; transform:translateY(-50%); display:block; background-color:#f9f12c; color:#000; box-shadow: 0 2px 5px rgba(0, 0, 0, 1); text-align:center; font-size:.8rem; line-height:1rem; font-weight:bold; padding:7px 5px; }
.ipaper-thumbnails .ipaper-image-text p { margin:0; font-weight:bold; font-size:.8rem; line-height:1rem; }
#content-wrapper.ipaper-wrapper { padding:0; border-top:1px solid #666; }
.ipaper-index .block-head { background-color:#43443f; color:#fff; padding:.5rem 1rem; margin:-1rem -1rem 0; }
.ipaper-index .block-head h3 { color:#fff; font-size:1rem; margin-bottom:.1rem; }
.ipaper-index .block-body { margin:1rem 1rem 0; }
.back-navigation { background-color:#fff; padding:1rem; text-align:center; }
.back-navigation span:hover { /*color:#fff;*/ cursor:pointer; text-decoration: underline; }
/*.campain.hidden-area { display:none; }*/


#container-outer{
	position:absolute;
	/*left:50%;*/
	width:100%;
	z-index: 2;
}
#container{
	position:relative;
	/*left:-50%;*/
}
canvas{
	position:fixed;
	-webkit-transform: translateZ(0);
}
#library {
	display: none;
}
body{
	overflow-x: hidden;
}
.carousel {
  overflow: hidden;
	border: 1px solid #939598;
	border-radius: 6px;
	height: 278px; /*301px*/
	margin-bottom: 20px;
}
.carousel-content {
	height: 278px; /*301px*/
}

.mainpage-text {
  margin: 1rem 0 0;
}

.mainpage-text h2 {
  font-size: 1.5rem;
  margin: 0 0 .5rem;
  line-height: 1.3;
}



/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers:
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */



/* Small screens */
/* Define mobile styles */
@media only screen {
	#container { width:100%; }
	#header-wrapper .logo a { margin:auto; }
	#header-wrapper .language { text-align:center; }
	#header-wrapper .product-nav ul li { display:block; font-size:1.1rem; border-bottom:1px solid #626f78; }
	#header-wrapper .product-nav ul li:last-child { border-bottom:none; }
	#header-wrapper .product-nav ul li a { padding:.6rem 2rem; }
	#header-wrapper .product-nav ul li ul.sub { display:none; border-top:1px solid #626f78; }
	#header-wrapper .product-nav ul li.opened ul.sub { display:block; }
	#header-wrapper .product-nav ul li ul.sub li a { padding:.4rem 2rem .4rem 4rem; font-size:.9rem; color:#ddd; }
	#header-wrapper .nav { text-align:center; }
	#header-wrapper .nav .alignright { float:none; background-color:#bcbdc0; }
	.popup { position:absolute; top:20px; }
	.popup.popup-map { margin-left:0; left:0; top:0; }
	.side-block.subnav { display:none; }
	.pagenavi { margin-bottom:1rem; }
  	.carousel { height: 120px; }
  	.carousel-content {	height: 120px; }
}

/* max-width 640px, mobile-only styles, use when QAing mobile issues */
@media only screen and (max-width: 40em) {

}

/* Medium screens */
/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
	#header-wrapper .logo a { margin:0; }
	#header-wrapper .language { text-align:left; }
	#header-wrapper .product-nav { border-top-left-radius:10px; border-top-right-radius:10px; }
	#header-wrapper .product-nav ul li { display:inline-block; font-size:.9rem; border-right:1px solid #626f78; }
	#header-wrapper .product-nav ul li a { padding:.6rem .8rem; }
	#header-wrapper .product-nav ul li ul.sub { display:none; }
	#header-wrapper .product-nav ul li.opened ul.sub { display:none; }
	#header-wrapper .nav { text-align:left; }
	#header-wrapper .nav .alignright { float:right; background-color:transparent; }
	.popup { position:fixed; top:100px; }
	.popup.popup-map { max-width:680px; margin-left:-340px; left:50%; top:100px; }
	.side-block.subnav { display:block; }
	.pagenavi { margin-bottom:0; }
	.carousel { height: 230px; }
  	.carousel-content {	height: 230px; }
}

/* min-width 641px and max-width 1024px, use when QAing tablet-only issues */
@media only screen and (min-width: 40.063em) and (max-width: 64em) {

}

/* iPhone 6 */
@media only screen and (min-device-width:375px) and (max-device-width:667px) and (orientation:landscape) and (-webkit-min-device-pixel-ratio:2) {
	.popup { position:absolute; top:20px; }
	#header-wrapper .search input.search-submit { background:#fff25d url(../images/search.svg) no-repeat center center; background-size:1rem 1rem; text-indent:-900em; }
}


/* iPhone 6 Plus */
@media only screen and (min-device-width:414px) and (max-device-width:736px) and (orientation:landscape) and (-webkit-min-device-pixel-ratio:3) {
	.popup { position:absolute; top:20px; }
	#header-wrapper .search input.search-submit { background:#fff25d url(../images/search.svg) no-repeat center center; background-size:1rem 1rem; text-indent:-900em; }
}


/* Large screens */
/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
	body { background:#dddedf url(../images/bg.png) repeat-x 0 0; }
	#container { max-width:64em; margin:auto; }
	.row { max-width:74em; }
	#header-wrapper .product-nav ul li { font-size:.9rem; border-bottom:none; }
	#header-wrapper .product-nav ul li a { padding:.6rem .8rem; }
	.carousel { height: 270px; }
  	.carousel-content {	height: 270px; }
}

/* min-width 1025px and max-width 1440px, use when QAing large screen-only issues */
@media only screen and (min-width: 64.063em) and (max-width: 90em) {

}

/* XLarge screens */
/* min-width 1441px, xlarge screens */
@media only screen and (min-width: 90.063em) {
	#container { max-width:75em; margin:auto; }
	.row { max-width:75em; }
}

/* min-width 1441px and max-width 1920px, use when QAing xlarge screen-only issues */
@media only screen and (min-width: 90.063em) and (max-width: 120em) {

}

/* XXLarge screens */
/* min-width 1921px, xxlarge screens */
@media only screen and (min-width: 120.063em) {

}





@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


.newsletter-subscription-gdpr {
	width: 600px;
    max-width: 100%;
    margin: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.newsletter-subscription-gdpr iframe {
	width: 100%;
    height: 700px;
}
