html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
  }

/* Table of contents

/*    1.  # Normalize
/*    2.  # Globals   
/*    3.  # Layout   
/*    4.  # Text



/* normalize minified (insert later) */



/* 
-------------------------------------------------

    # Globals 

-------------------------------------------------
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
}

* {
  box-sizing: border-box;
}

img,
video,
iframe {
  max-width: 100%;
}

img,
video {
  display: inline;
  height: auto;
}








/* Mobile first layout SmartMenus Core CSS 
-------------------------------------------------------------------------------------------*/

.menu {position:relative;z-index:500;}
.menu,.menu ul,.menu li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0);}
.menu-rtl,.menu-rtl ul,.menu-rtl li{direction:rtl;text-align:right;}
.menu>li>h1,.menu>li>h2,.menu>li>h3,.menu>li>h4,.menu>li>h5,.menu>li>h6{margin:0;padding:0;}
.menu ul{display:none;}
.menu li,.menu a{position:relative;}
.menu a{display:block;}
.menu a.disabled{cursor:not-allowed;}
.menu:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden;}
.menu,.menu *,.menu *:before,.menu *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}



/* Mobile version
-------------------------------------------------------------------------------------------*/

.menu {
  margin-top: 1em;
}

.menu a /*, .menu a:hover, .menu a:focus, .menu a:active */ {
  padding: .75em 0em;
  padding-right: 58px; /* make room for the toggle button (sub indicator) */
  line-height: 1em;
  text-decoration: none;

    
    /* Adds a hyphen where the word breaks, if supported (No Blink) */
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

/*
  .menu a.has-submenu {
    padding-right: 4em; /* make room for the toggle button (sub indicator)
    background: red;
  }
  */
  

.menu a span.sub-arrow {
  background: rgba(0,0,0, 0.15);
  background: transparent;
  background-color: black;
  font: 300 24px/1.75em 'Roboto';
  text-align: center;
  text-shadow: none;
  color: white;

  display: block;
  height: 1.75em;
  width: 1.75em;
  position: absolute;
  top: -1px;
  right: 0;
  left: auto;
  margin-top: 0;
  overflow: hidden;
}

.menu a.highlighted span.sub-arrow:before {
  display: block;
  content: '-';
  font-size: 1.5em;
}

.menu li {
  border-top: 1px solid rgba(0, 0, 0, 0.25);
}

.menu ul a {
  border-left: 1em solid transparent;
}

.menu ul ul a {
  border-left: 2em solid transparent;
}

.menu ul ul ul a {
  border-left: 3em solid transparent;
}

.menu ul ul ul ul a {
  border-left: 4em solid transparent;
}

.menu ul ul ul ul ul a {
  border-left: 5em solid transparent;
}


/* 
--------------------------------------------------------------------
    Desktop 1st level 
--------------------------------------------------------------------
*/
@media all and (min-width: 768px) {

  /* Switch to desktop layout
  ----------------------------------------------- */

  .menu {
    margin-top: 0; /*reset mobile*/
    float: right\9; /* IE8 */
  }

  .menu > li {
    float: none;
    display: inline-block;
  }

  .menu ul li, 
  .menu.menu-vertical li {
    float: none;
  }

  .menu  {
    text-align: left;
    padding: 0 0;
  }

  .menu a {
    /*color: #555555;*/
    font-weight: 300;
    line-height: 1em;
    padding: .75em 0;
    text-decoration: none;
  }

  .menu > li {
    margin: 0 0 0 1.5em;   /* gap between top items */
  }

  .menu > li:first-child {
    margin-right: 0;
  }

  .menu a.has-submenu {
    padding-right: 1.25em; /* make room for the toggle button (sub indicator) */
  }

  .menu a span.sub-arrow {
    color: inherit;
    top: 50%;
    margin-top: -.5em;
    right: 0;
    width: auto;
    height: 1em;
    font: normal 1em/1em 'FontAwesome';
    background: transparent;
    text-align: right;
  }

  .menu a span.sub-arrow:before,
  .menu a.highlighted span.sub-arrow:before {
    display: block;
    content: '-';
    content: "\f107"; /* arrow down (instead of default plus icon) */
    font-size: 1em;
  }

  .menu li {
    border-top: 0;
  }

  .menu ul a,
  .menu ul ul a,
  .menu ul ul ul a,
  .menu ul ul ul ul a,
  .menu ul ul ul ul ul a {
    border-left: 0;
  }

/* 
--------------------------------------------------------------------
    Desktop 2nd level 
--------------------------------------------------------------------
*/

/* ul arrow
  .menu > li > ul:before,
  .menu > li > ul:after {
    content: '';
    position: absolute;
    top: -18px;
    left: 30px;
    width: 0;
    height: 0;
    overflow: hidden;
    border-width: 9px;
    border-style: dashed dashed solid dashed;
    border-color: transparent transparent #bbbbbb transparent;
  }
   */

   /*
  .menu > li > ul:after {
    top: -16px;
    left: 31px;
    border-width: 8px;
    border-color: transparent transparent white transparent;
  }
  */

  /* position 2nd level */
  .menu ul {
    position: absolute;
    width: 10em;
    min-width: 10em; /*change in .js file*/
    max-width: 10em; /*change in .js file*/
    border: 1px solid #ddd;
    background: white;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  /* submenu items */
  .menu ul a /*, .menu ul a:hover, .menu ul a:focus, .menu ul a:active, .menu ul a.highlighted */{
    border: 0;
    border: 0;
    padding: .5em 1.5em; /*submenu items*/
    /*color: #555555;*/
  }

  .menu ul a {
  }

  /* extra vertical space on first and last submenu point */
  .menu ul li:first-child > a {
    margin-top: 1.5em;
  }
  .menu ul li:last-child > a {
    margin-bottom: 1.5em;
  }

  /* make room for submenu arrow */
  .menu ul a.has-submenu {
    padding-right: 1.75em;
  }

  /* position submenu arrow */
  .menu ul a span.sub-arrow {
    right: .75em;
  }

  /* submenu arrow */
  .menu ul a span.sub-arrow:before,
  .menu ul a.highlighted span.sub-arrow:before {
    display: block;
    content: "\f105"; /* angle right */
  }

/* 
--------------------------------------------------------------------
    Desktop scroll-up
--------------------------------------------------------------------
*/

  .menu span.scroll-up,
  .menu span.scroll-down {
    position: absolute;
    display: none;
    visibility: hidden;
    overflow: hidden;
    background: white;
    height: 20px;
  }

  .menu span.scroll-up:hover,
  .menu span.scroll-down:hover {
    background: #eeeeee;
  }

  .menu span.scroll-up:hover span.scroll-up-arrow, 
  .menu span.scroll-up:hover span.scroll-down-arrow {
    border-color: transparent transparent #d23600 transparent;
  }

  .menu span.scroll-down:hover span.scroll-down-arrow {
    border-color: #d23600 transparent transparent transparent;
  }

  .menu span.scroll-up-arrow, .menu span.scroll-down-arrow {
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -6px;
    width: 0;
    height: 0;
    overflow: hidden;
    border-width: 6px;
    border-style: dashed dashed solid dashed;
    border-color: transparent transparent #555555 transparent;
  }

  .menu span.scroll-down-arrow {
    top: 8px;
    border-style: solid dashed dashed dashed;
    border-color: #555555 transparent transparent transparent;
  }

/* 
--------------------------------------------------------------------
    Desktop vertical
--------------------------------------------------------------------
*/
  .menu.menu-vertical {
    padding: 10px 0;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
  }
  .menu.menu-vertical a {
    padding: 10px 20px;
  }
  .menu.menu-vertical a:hover, .menu.menu-vertical a:focus, 
  .menu.menu-vertical a:active, .menu.menu-vertical a.highlighted {
    background: white;
  }
  .menu.menu-vertical a.disabled {
    background: #eeeeee;
  }
  .menu.menu-vertical a span.sub-arrow {
    right: 8px;
    top: 50%;
    margin-top: -5px;
    border-width: 5px;
    border-style: dashed dashed dashed solid;
    border-color: transparent transparent transparent #555555;
  }
  .menu.menu-vertical > li > ul:before,
  .menu.menu-vertical > li > ul:after {
    display: none;
  }
  .menu.menu-vertical ul a {
    padding: 10px 20px;
  }
  .menu.menu-vertical ul a:hover, 
  .menu.menu-vertical ul a:focus, 
  .menu.menu-vertical ul a:active, 
  .menu.menu-vertical ul a.highlighted {
    background: #eeeeee;
  }
  .menu.menu-vertical ul a.disabled {
    background: white;
  }

}



/* 
--------------------------------------------------------------------
    Mobile toggle menu
--------------------------------------------------------------------
*/

.main-menu-btn {
  width: 40px;
  height: 45px;
  /*text-indent: 40px;*/
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  z-index: 1000;
  right: 0;
  top: 0;
  position: absolute;
}
/* hamburger icon */
.main-menu-btn-icon, 
.main-menu-btn-icon:before, 
.main-menu-btn-icon:after {
  position: absolute;
  top: 30%;
  left: 2px;
  height: 2px;
  width: 36px;
  background: #bbb;
  background: black;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}
/* hamburger icon */
.main-menu-btn-icon {
}
.main-menu-btn-icon:before {
  content: '';
  top: -9px;
  left: 0;
}
.main-menu-btn-icon:after {
  content: '';
  top: 9px;
  left: 0;
}
.menu-text {
  display: block;
  font-family: 'Open Sans',Arial;
  font-size: .7em;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1px;
  position: absolute;
  top: 30px;
  text-align: center;
  width: 100%;
}
/* x icon */
#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon {
  height: 0;
  background: transparent;
}
#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before {
  top: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after {
  top: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* hide menu state checkbox (keep it visible to screen readers) */
#main-menu-state {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(1px,1px,1px,1px);
}
/* hide the menu in mobile view */
#main-menu-state:not(:checked) ~ #main-menu {
  display: none;
}
#main-menu-state:checked ~ #main-menu {
  display: block;
}
@media (min-width: 768px) {
  /* hide the button in desktop view */
  .main-menu-btn {
    position: absolute;
    top: -99999px;
  }
  /* always show the menu in desktop view */
  #main-menu-state:not(:checked) ~ #main-menu {
    display: block;
  }
}



/* 
--------------------------------------------------------------------
    No-JS Desktop version
--------------------------------------------------------------------
*/

/* sub menus defaults */
.no-js #main-menu li:hover ul {
  display: block;
  top: auto;
  left: -99999px;
  width: 10em;
  height: auto;
  overflow: visible;
  z-index: 100;
}

@media (min-width: 768px) {

  /* first level sub menus offset */
  .no-js #main-menu li ul {
    margin: 0;
  }

  /* second+ level sub menus offset */
  .no-js #main-menu li ul ul {
    /*margin:-2.7em 0 0 10em;*/
    margin: 0;
    left: 10em;
  }

  /* show sub menus on hover */
  .no-js #main-menu li:hover > ul {
    left: auto;
  }

}










/* 
-------------------------------------------------

    # Text 

-------------------------------------------------
*/

html {
  font-size: 18px;
}

nav {
  font-weight: 300;
}

h1,h2,h3,h4,h5,h6 {
  font-weight: bold;
}

body {
  color: #333;
  font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", 
  Helvetica, Arial, "Lucida Grande", sans-serif;
}

::selection {
  background: black;
  color: white;
}

b, strong {
  font-weight: bold !important;
}

i,em {
  font-style: italic;
}

a {
  color: #333;
  color: inherit;
  text-decoration: none;
}

/* links */



a:hover,
.search-toggle-desktop:hover,
#socialTrigger:hover,
.cart-toggle:hover,
.cart-toggle:focus,
.login-toggle:hover,
.login-toggle:focus,
.cart-checkout-link:hover,
.cart-checkout-link:focus {
  opacity: .75;
  transition: all .25s;
  color: black;
}

.cart-checkout-link:hover,
.cart-checkout-link:focus {
  color: white;
}

.hgroup a:hover {
    opacity: 1;
}

article a {
  color: black;
  border-bottom: 1px solid grey;
  text-decoration: none;
  transition: all .25s;
}

.product a {
    border-bottom: none;
}

article a:hover {
  color: black;
  border-color: black;
  opacity: 1;
}

button a:hover {
  opacity: 1;
}


b,strong {
  font-weight: bold;
}

article * {
  line-height: 150%;
}

p {
  margin-bottom: 1em;
}

strong {
  font-weight: 700;
}

ul,ol,dt {
  padding-left: 1em;
  margin-bottom: 1em;
}

/* ------------------ Headings ------------------ */

h1,h2,h3,h4,h5,h6 {
  margin-bottom: .5em;
}

h1 {
  font-size: 1.75em;
}

h2 {
  font-size: 1.25em;
}

h3 {
  font-size: 1.15em;
}

h4 {
  font-size: 1.1em;
}

h5 {
  font-size: 1.05em;
}

h6 {
  font-size: 1em;
}

hr {
  border:0;
  border-top: 1px solid #ccc;
  margin: 2em 0;
}

.usability-skiptocontent,
.searchbar-label {
  display: none; /*shame*/
}


footer .container {
  text-align: center;
}


a,
a[href$=jpg], 
a[href$=jpeg], 
a[href$=jpe], 
a[href$=png], 
a[href$=gif],
a[href$=JPG], 
a[href$=JPEG], 
a[href$=JPG], 
a[href$=PNG], 
a[href$=GIF] {
  text-decoration: none;
  border: 0 none;
  }


/* Form elements */

input[type="text"],
input[type="password"],
textarea {
  display: inline-block;
  margin: 0;
  width: 100%;
  font: inherit;
  color: inherit;
  padding: .5em .75em;
  border-radius: 2px;
  box-shadow: none;
  appearance: none; 
  outline: none;
  border: solid 1px #ccc;
  transition: box-shadow 0.3s, border 0.3s;
}

article input[type="text"]:focus,
article input[type="password"]:focus,
article textarea:focus { 
  outline: none;
  border: solid 1px #707070;
  /*box-shadow: 0 0 5px 1px #969696;*/
  border: solid 1px #707070;
  box-shadow: 0 0 5px 1px black;
}


/* Buttons */

button a,
a.btn,
input[type="submit"],
button,
a.mekke-btn {
  /* font-size: .8em; trouble in cart link */ 
  background-color: black;
  border-radius: 3px;
  border: 0;
  color: white;
  cursor: pointer;
  display: inline-block;
  font-weight: 300;
  font: inherit;
  letter-spacing: 2px;
  padding: .75em 1.25em;
  text-decoration: none;
  transition: opacity 0.3s;
  width: auto;
}


a.btn:hover,
input[type="submit"]:hover,
button:hover,
a.btn:first-child:hover {  
  opacity: .75;
  background-color: black;
  color:  white;
}

button:hover a {  
  color:  white;
  opacity: 1;
}

article a.btn:focus,
article input[type="submit"]:focus,
article button:focus {  
  box-shadow: 0 0 5px 2px black;
}

/* 
-------------------------------------------------

    # Layout header
    
-------------------------------------------------
*/


header {
  min-height: 85px;
}

@media all and (min-width: 768px) {

  header {
    min-height: 0;
  }

}

.hgroup {
  margin-bottom: 0em;
  max-width: 60%;
  max-width: calc(100% - 6em);
}

.hgroup-logo {
  max-height: 75px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}

/*
.menu-button {
  float: right;
  max-width: 25%;
}
*/

.hgroup-title { 
  font-size: 1.5em; /*mobile*/
  font-weight: 300;
  margin: 0;
  padding: 0;
  max-width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;
  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

@media all and (min-width: 768px) {

.hgroup-title { 
  font-size: 1.75em;
  } 
}


.hgroup-tagline {
  font-family: inherit;
  font-size: 1em;
  font-weight: 300;
  letter-spacing: 1px;
  margin: 0;
  padding-top: .5em;
  padding: 0;
  text-align: left;
}

.hgroup-tagline p {
  margin: 0;
}

@media all and (min-width: 768px) {

/* reset mobile */

  .hgroup {
    margin-bottom: 0;
    max-width: auto;
    min-width: auto;
  }

/*  desktop header */

  .menu {
    clear: both;
    content: "";
    display: table;
  }

  .hgroup-logo {
    max-height: initial;
  }

}




/* 
-------------------------------------------------

    Basic styling
    Skin 0
    
-------------------------------------------------
*/   


body {
  /*background: #f6f6f6;*/
  text-align: center;
  font-weight: 400;
}    

article {
  background: white;
}

footer {
  color: black;
}




/* 
-------------------------------------------------

    # Spacing 

-------------------------------------------------
*/

/*
.content {
  padding: 2em 0;
}
*/

.topbar {
  padding: 0;
}

header {
  padding: 1em 0;
}

.hero {
}

article {
  padding-top: 3em;
  padding-bottom: 3em;
}

footer {
  padding-top: 3em;
  padding-bottom: 4em;
}

.container {
  margin: 0 auto; /* center website */
  width: 90%;
  max-width: 1400px;
  /*position: relative;*/
  text-align: left;
}

header .container {
  position: relative;
}

.hero .container {
  font-size: 1rem; 
  padding: 3em 0;
}

.hero-carousel .container {
    padding: 0;
    max-width: 100%;
}


@media all and (min-width: 768px) {


  .container {
    max-width: 1400px;
  }

  .padding {
    margin: 0 4em;
  }

}


/*clearfix*/

header:after,
.topbar:after,
#adm_form:after,
#searchbar form:after,
header .container:after,
form:after,
input:after,
article:after {
  clear: both;
  content: "";
  display: table;
}

/* 
-------------------------------------------------

    # Search in menu 
    
-------------------------------------------------
*/   


.menu .menu-item-search-toggle {
  /*margin-left: 0;*/
  position: relative;
  right: 0em;
}

@media all and (max-width: 767px) {
  .menu .menu-item-search-toggle {
    display: none;
  }



}

.search-toggle-desktop {
  background: transparent;
  border: 0;
  cursor: pointer;
  display: block;
  font-size: inherit;
  padding: 0 1em;
  text-align: center;
  height: 2em; 
  overflow: hidden;
}

.search-toggle-mobile {
  display: block;
  font-size: 1.75em;
  height: 45px;
  position: absolute;
  right: 1.75em; 
  text-align: center; 
  top: 0;
  width: 40px;
}

@media all and (min-width: 768px) {
  .search-toggle-mobile {
    display: none; /* hide mobile search toggle on desktop */
  }
}




/* * Search icon *
================================================== */

.icon-search {
  text-indent: -9999px;
  background: url(../img/search.png) no-repeat center center;
  background-size: contain;
  display: block;
  width: 1em;
  margin: 0 auto;
}

.ie7 .icon-search,
.ie8 .icon-search {
  background-image: url(../img/search-small.png);
}

.icon-search-minus {
  background-image: url(../img/search-minus.png);
}



/* * hidden search field *
================================================== */

.searchbar {
  /*height: 62px;*/
  background: transparent;
  border-radius: 2px;
  border: 1px solid #222; /*fallback*/
  border-color: rgba(0,0,0,.5); /*progressive*/
  display: none;
  font-size: 1em;
  margin: 1em 0 0 0;
  position: relative;
  right: 0;
  width: 100%;
  z-index: 50;
}

#s {
  background: transparent;
  border: 0;
  color: black;
  display: block;
  font-size: 1.25em;
  font-weight: normal;
  font-weight: 300;
  outline: none;
  padding: .75em;
  text-align: left;
  width: calc(100% - 2.5em);
}


@media all and (min-width: 768px) {
  #s {
    padding-left: 1em;
    padding-right: 1em;
  }
}

#searchbar ::-webkit-input-placeholder {
  color: black;
  color: #222;
}

#searchbar ::-moz-placeholder {
  color: black;
  color: #222;
}

#searchbar :-ms-input-placeholder {
  color: black;
  color: #222;
}


/* * search button *
================================================== */

#searchsubmit {
  background: url(../img/search.png) no-repeat center center;
  background-size: 50% 50%;
  border: 0;
  color: black;
  cursor: pointer;
  display: block;
  font-size: 1.5em;
  height: 100%;
  outline: none;
  position: absolute;
  text-indent: -9999px;
  width: 2.5em;
  right: 0;
  border-left: 1px solid #222; /*fallback*/
  border-color: rgba(0,0,0,.5); /*progressive*/
}


.ie8 #searchsubmit {
  background-image: url(../img/search-small.png);
}

@media all and (min-width: 768px) {

  #searchsubmit {
    right: 0;
  }
}

#searchbar input[type=submit],
#searchbar button {
  padding: 0;
}

#searchform {
  width: 100%;
}







/* 
-------------------------------------------------

    # Cart 
    
-------------------------------------------------
*/   

/* cart buttons */

.topbar .container {
  text-align: right;
}



/* login toggle */



.cart-area {
  border-radius: 0;
  line-height: 1;
  padding: 0;
  vertical-align: top;
  display: inline-block;
  color: white;
  transition: all .2s;
  margin: 0;  
  border: 0;
  position: relative;
  font-size: .8em;
}



/*
.ie8 .cart-area,
.ie8 .login-toggle {
  float: right;
  }

*/

.cart-area.cart-empty {
  display: none;
}


/* Cart icon */

.cart-toggle {
  background: transparent;
  border-radius: 0;
  border: 0;
  color: white;
  cursor: pointer;
  display: inline-block;
  letter-spacing: 0;
  margin-right: -5px;
  /*padding: .33rem 0;*/
  padding: 0;
  text-align: right;
  padding: 1em 1.5em 1em 3em;
  position: relative;
  border-bottom-left-radius: 3px;
  background: black;
}



.cart-icon {
  display: inline-block;
  color: white;
  height: 1em;
  width: 1em;
  position: absolute;
  left: 1.25em;
  top: .9em;
}

.cart-number {
  color: white;
  display: block;
  display: inline-block;
  font-weight: 300;
  max-height: 1em;
  min-height: 1em;
  min-width: 1em;
  position: relative;
  text-align: center;
  

}

.cart-checkout-link {
  color: white;
  display: block;
  margin: 0;
  padding: 0;
  vertical-align: top;

  background: #fc0;
  background: transparent;
  padding: 0; 
  border: 0;
  box-shadow: 0;
  position: relative;
  padding: 1em 1.5em;


  /*padding: .5rem 0 .1rem 0;*/
  display: inline-block;
  border-bottom-right-radius: 3px;
  background: black;
  border-left: 1px solid rgba(255,255,255,.5);
}

.cart-box ul {
  list-style: none;
}

.cart-box .linker a {
  font-weight: bold;
}

b, strong {
  font-weight: bold;
}


/* Cart and login box (common styles) */

.cart-box {
  background: white;
  border-radius: 2px;
  border: 1px solid #ddd;
  box-shadow: 0 5px 9px rgba(0, 0, 0, 0.2);
  display: none;
  margin-bottom: 1em;
  margin-top: .5em;
  padding: 2em 1.5em;
  position: relative;
  right: 0;
  z-index: 1100;
  width: 100%;
  text-align: left;
}

div#cart.collapsable {
  width: 100% !important;
}


@media all and (min-width: 768px) {

  .cart-box {
    width: 400px;
  }

}


.ie8 .cart-box {
    width: 400px;
  }


#cart input[type="submit"] {
  margin-bottom: .5em;
}


/* 
-------------------------------------------------

    # Login 
    
-------------------------------------------------
*/   


/* login box */

@media all and (min-width: 768px) {

  .topbar .container {
    position: relative;
  }

  .cart-box /*for mekke/Ã¸i*/ {
    position: absolute;
    right: 0em; /*compensate for padding*/
    top: 5em;
    top: 100%;
    top: calc(100% + 1em);
  }

}

.ie8 .topbar .container {
  position: relative;
}

.ie8 .cart-box /*for mekke/Ã¸i*/ {
  position: absolute;
  right: 0em; /*compensate for padding*/
  top: 2.5em;
  top: 100%;
}





div#cart.collapsable {
  border-radius: 0;
  border: 0;
  box-shadow: none;
  display: block;
  font-size: 1em;
  padding: 0;
  position: static;
}

.cart-new .linker {
  display: none;
}


.ie-warning {
  padding: 1em; 
  background: #ddd; 
  border-bottom: 1px solid black;
}

.ie-warning a {
  text-decoration: underline;
}



/* Social share
------------------------------------------------------------------------ */

div#social_wrap {
  display: none;
  margin-bottom: 2em;
  padding: 1.5em;
  border: 1px solid black;
  background: rgba(0,0,0,.1);
  background: white;
  border-radius: 2px;
  box-shadow: .25em .25em .5em rgba(0,0,0,.25);
  margin-top: 2em;
}

div#social_wrap a {
  border: 0;
}

.no-js div#social_wrap {
 display: block;  /* Unhide for non-js browsers */
}


#socialTriggerWrapper {
}

#socialTrigger {
  border: 0;
  background: none;
  cursor: pointer;
  font: inherit;
  padding: 0;
  margin: 0 auto;
  text-align: center;
  display: block;
  color: inherit;

  letter-spacing: 0;
  text-transform: none;
}

#socialTrigger i {
  /*
  background: black;
  color: white;
  border-radius: 50%;
  padding:.5em;
  font-size: .75em;
  */
  display: block;
  margin: 0 auto;
  margin-bottom: .5em;
}

/* footer */

footer i.fa {
  display: block;
  margin-bottom: .5em; /* mobile spacing */
  font-size: 1.5em;
}

footer address {
  margin-bottom: 2em; /* mobile spacing */
}

footer .email2,
footer .phone2 {
  margin-top: .5em; /* mobile spacing */
  display: inline-block;
}



@media all and (min-width: 768px) {
  footer address {
    margin-bottom: 0; /* remove spacing on desktop */
  }
}


/* mekke stuff (to be moved to mekke.css eventually) */


#facebook-toggle {
  cursor: pointer;
}

div#mekke-language a {
  border: 0;
}

div#mekke-language img {
  padding: 0 !important;
  margin-right: 10px;
}

#mekke-language:after {
  clear: both;
  content: "";
  display: table;
}

a.mekke-btn {
  color: white!important; /*   - remove !important from mekke.css */
}

#contactbox-contact.fixed {
    position: fixed;
    bottom: 0;
    right: 5%; 
    background: black;
    background: rgba(0,0,0,0.8);
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    color: white;
    padding: 2em 1.5em;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.2);
    border: 1px solid black;
    border-bottom: 0;
    z-index: 1000;
    font-size: 1em;
    width: 270px;

}

#contactbox-contact.fixed h2 {
  color: white;
    font-size: 1.25em;
}

#contactbox-contact.fixed .submit {
  background: white;
  color: black;
  font-weight: bold;
}

div.fixed {
    right: 5%; 
    background: black !important;
    color: white !important;

}


@media all and (max-width: 767px) {

  div#contactbox-contact.fixed {
    display: none !important;
  }

}



#contactbox-contact_show {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
    border: 1px solid black;
    border-bottom: 0;

}

div#contactbox-contact input.submit {
  width: auto;
  background: black;
  color: white;
  text-shadow: none;
  border-radius: 2px;
}

div#contactbox-contact input {
  border-radius: 2px;
}

form.mekkeform,
form.mekkeform input[type=text],
form.mekkeform textarea {
    width: 100%;
}

#mekke-language {
    float: right;
}



/*Sticky*/

.sticky_fixed {
  position: fixed;
  top: 0;
  z-index: 1000;
  width: 100%;
  padding-top: .5em;
  padding-bottom: .5em;
  background: white; /*header bg*/
  box-shadow: 0 20px 20px -20px rgb(0 0 0 / 40%);
}
.sticky_before {
    height: 1px;
}
@media only screen and (min-width: 679px) {
    .sticky_fixed .hgroup {
        display:none;
    }
}

/*End Sticky*/


/*Floating*/

.floating_menu {
  position: absolute;
  z-index: 1000;
  width: 100%;
  background: white; /*header bg*/
}

.floating_topline {
    margin-top: 50px;
}

@media (max-width: 500px) {
    .floating_topline_both {
        margin-top: 100px;
    }
}

/*End Floating*/

/* Gallery */
.header_image_text {
    color: white;
    /*font-size: 3vw;*/
    font-weight: bolder;
    text-shadow: 1px 1px #000;
}

.static_header_image_text {
    color: white;
    /*font-size: 3vw;*/
    font-weight: bolder;
    text-shadow: 1px 1px #000;
}

#hpedit-login-a,
.personvernlink {
    text-shadow: 1px 1px 0 white !important;
    text-transform: uppercase !important;
}