/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local('Open Sans Regular'), local('OpenSans-Regular'),
         url('/fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
         url('/fonts/open-sans-v15-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;

}
/* open-sans-700 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local('Open Sans Bold'), local('OpenSans-Bold'),
         url('/fonts/open-sans-v15-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
         url('/fonts/open-sans-v15-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
  
* {padding: 0; margin: 0;}
html {overflow-y: scroll; font-size: 16px; scroll-behavior: smooth;}
body {background: #333; font-family: 'Open Sans'; color: #666666; font-size: 0.8rem; line-height: 1.45;}
a {color: rgb(247, 44, 114); text-decoration: none; cursor: pointer;}
a.gray {color: #666666; text-decoration: underline;}

.container {max-width: 73rem; margin: 0 auto; padding: 0 1rem;}
.content {background: #fcfcfc url(/img/bg_content.svg) center top no-repeat; background-attachment: fixed; padding: 4rem 0 5.5rem; background-blend-mode: multiply;}

#navigation {background: white; border-bottom: 0.0625rem solid #e5e5e5; position: fixed; width: 100%; z-index: 99;}
#navigation .container {display: flex; align-items: center;}
#navigation .container #menu {display: flex; align-items: center; justify-content: space-between; flex-grow: 1;}
#navigation ul {display: flex; align-items: center;}
#navigation ul li {list-style: none;}
#navigation .brand img {display: inline-block; height: 2rem; vertical-align: middle;}
#navigation .brand {font-size: 1.05rem; color: #666666; padding: 0.25rem 0.9rem 0.25rem 0;}
#navigation ul li a {display: block; color: #666666; text-decoration: none; padding: 0.25rem 0.9rem;}
#navigation .brand:hover, #navigation ul li a:hover, #navigation ul li.active a {color: rgb(247, 44, 114);}
#navigation ul li svg {height: 1rem; fill: #777; position: relative; top: 0.0625rem;}

#togglemenu {display: none; color: #666666; cursor: pointer;}
.menuopen #togglemenu {color: white;}

#breadcrumbs, #breadcrumbs a {color: silver; text-decoration: none;}
#breadcrumbs {position: relative; z-index: 2; margin: 0;}
#breadcrumbs li {list-style: none; display: inline;}
#breadcrumbs li::before {content: "/"; display: inline-block; margin: 0 0.25rem;}
#breadcrumbs li:first-child:before {content: none;}
.post-header {padding-top: 2.3rem;}
.post-header h1 {padding-top: 0;}

p:not(:last-child), pre:not(:last-child), .content ul:not(:last-child), .content ol:not(:last-child), div.expand {margin-bottom: 1.2rem;}

pre {
    display: block;
    padding: 0.5rem;
    margin: 0 0 0.5rem;
    font-size: 0.75rem;
    line-height: 1.4;
    word-break: break-all;
    word-wrap: break-word;
    color: #444444;
    background-color: #f5f5f5;
    border: 0.0625rem solid #cccccc;
    border-radius: 0.25rem;
    overflow: auto;
    position: relative;
}
pre > .copy-code { position: sticky; top: 0; margin-left: auto;  left: calc(100% - 1rem);  width: 1rem; height: 1rem; background:red; padding: 0;  background: url('/img/copy.svg') center center / contain no-repeat; display: block;  margin-bottom: -1rem;}
pre > .copy-code.copied { background-image: url('/img/check.svg');}
img {display: block; max-width: 100%;}
.content ul {margin-left: 2.5rem;}

h1, h2, h3, h4 {color: #444444; font-weight: normal; line-height: 1.1;}
h1 {padding: 2.8rem 0 0.75rem; font-size: 2.05rem;}
h2 {padding: 2.8rem 0 0.75rem; font-size: 1.6rem;}
h3 {font-size: 1.1rem; padding: 1.25rem 0 0.3rem;}
h3.post-meta {padding: 0;}
h1 + h2 {padding-top: 0; font-size: 1.1rem;}
h4 {font-size: 0.9rem; padding: 1rem 0 0.25rem;}

.threecols {display: flex; width: 100%; justify-content: space-between; flex-wrap: wrap;}
.threecols .col {width: 30%;}
article {max-width: 47rem;}
blockquote {padding: 0.5rem 1rem; margin: 0 0 1rem; font-size: 1rem; border-left: 0.35rem solid #dddddd;}

.columns {column-width: 13rem;}

/* FORMS */

form {max-width: 34rem;}
form > div {padding-top: 0.8rem; clear: both;}
form > div.half {width: 47.5%; float: left;}
form > div.half + .half {margin-left: 5%; clear: none;}
label {display: block; margin-bottom: 0.3rem;}
textarea, input, select, button {
    font-family: 'Open Sans'; 
    font-size: 0.8rem; 
    height: 1.83rem; 
    line-height: 1rem; 
    border: 0.0625rem solid #dddddd; 
    border-radius: 0.25rem;
    width: calc(100% - 1.24rem);
    padding: 0.1875rem 0.625rem;
    background: white;
    color: #666666;
}
select {padding: 0.6rem; height: auto; line-height: 1.4; width: 100%;}
textarea {height: auto; line-height: 1.4; min-width: calc(100% - 1.24rem); max-width: calc(100% - 1.24rem); padding: 0.6rem;}
input[type="button"], input[type="submit"], input[type="radio"], input[type="checkbox"] {border: 0; width: auto;}
input[type="radio"], input[type="checkbox"] {height: auto; line-height: auto; margin-right: 0.4rem; vertical-align: middle; position: relative; bottom: 0.1rem;}
.radio {position: relative; top: 0.125rem;}
.radio + .radio {padding-top: 0;}
input[type='number'] {-moz-appearance: textfield;}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {-webkit-appearance: none;}
.btn, input[type="submit"], button {
    background: rgb(247, 44, 114); 
    font-weight: bold; 
    color: rgba(255,255,255,0.8); 
    text-decoration: none;
    padding: 0.35rem 0.7rem;
    border: 0;
    cursor: pointer;
    border-radius: 0.25rem;
}
.btn:hover {color: rgba(255,255,255,1);}
input[type="number"] {-moz-appearance: textfield;}
input[type="number"].quantity {width: 1.5rem; min-width: 1.5rem; text-align: center;}
input::-webkit-outer-spin-button, 
input::-webkit-inner-spin-button {-webkit-appearance: none;}
select::-ms-expand {display: none;}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: white url("/img/chevron_down.svg") calc(100% - 0.8rem) 55% no-repeat;
    background-size: auto 0.7rem;
}
table {margin-bottom: 1.4rem;}
table th, table td {padding-right: 1rem; text-align: left;}
table a {color: #666666; text-decoration: underline; text-decoration-color: rgba(102, 102, 102, 0.5);}
.emoticon {font-size: 200%; line-height: 1;}


/* IMAGES */
#instafeed li:hover, #instafeed img:hover, .productimage:hover, #productlist li a:hover div {filter: grayscale(0%) brightness(100%) contrast(100%) opacity(100%);}
#instafeed li, #instafeed img, .productimage, #productlist li a div {filter: grayscale(100%) brightness(116%) contrast(83%) opacity(70%); transition: filter .3s ease;}


.cart form, #shoppingcart, #checkout_progress {max-width: 45rem;}
.image-gallery-index a {color: #777;}


.manage-consent {cursor: pointer;}
.home h1 {font-size: 2rem; font-weight: normal;}


#footer {padding: 1.25rem 0 2.5rem; color: #aaa;}
#footer h3 {font-weight: 400; line-height: 1.1; color: #eee;}
#footer a {color: #aaa; text-decoration: underline; text-decoration-color: rgba(255,255,255,0.2);}
#footer a:hover {text-decoration: underline;}
#footer img {cursor: pointer; height: 6.5rem; opacity: 0.45; display: inline-block; vertical-align: middle;}
#footer img:first-child {margin-right: 0.8rem; margin-top: 0.15rem; height: 4.9rem;}

@media (max-width: 55rem) {
    .threecols .col {width: 47.5%;}
    .threecols .col:nth-child(3) {margin-top: 1.5rem;}
    #togglemenu {display: block;}
    #navigation ul li svg {position: relative; top: 0.15rem;}
    #navigation ul {display: block; margin: 0 0.5rem 1rem;}
    #navigation .container {justify-content: space-between;}
    #navigation .container #menu {
        display: none; 
        position: fixed; 
        top: 0; 
        padding: 3.2rem 0 1.5rem;
        left: 0;
        width: 100%;
        background: white;
        z-index: -1;
        border-bottom: 0.0625rem solid #e5e5e5;
    }
    .menuopen #navigation .container #menu {display: block;}
    #navigation .container .btn {margin: 1rem;}
}
@media (max-width: 45rem) {
    html {font-size: 18px;}
    .threecols {display: block;}
    .threecols .col {width: 100%;}
    .threecols .col + .col {margin-top: 1.5rem;}
}
