HTML { }
BODY { font-size:4vw; }

.site-width { width:100%; }
.hide-for-mobile { display:none; }
.hide-for-desktop { display:block; }

.form-group.product LABEL { display:inline-block; width:60%; line-height:45px; }
.form-group.product .number { display:inline-block; width:29%; }
.form-group.product .number INPUT { width:50%; }

.error-msg { background-color:#ffd5c7; padding:20px; border-bottom:1px solid #f26c4f; margin-bottom:20px; line-height:24px; }
.success-msg { background-color:#cff3a6; padding:20px; border-bottom:1px solid #add77d; margin-bottom:20px; line-height:24px; }

A { color:#737373; text-decoration:none; transition:all .5s; }
A:hover { text-decoration:underline; }
H1, H2, H3, H4, H5, H6, P { padding:0 0 20px 0; margin:0; transition:all .5s; }
H1, H2, H3, H4, H5, H6 {  }
H1 STRONG { display:block; text-transform:none; }
H1 { font-size:10vw; line-height:12vw; }
H2 { font-size:10vw; line-height:12vw; }
H3 { font-size:8vw; line-height:10vw; }
H4 { font-size:7vw; line-height:9vw; }
H5 { font-size:6vw; line-height:8vw; }
H6 { font-size:5vw; line-height:7vw; }
P, #intro LI { line-height:6vw; }

FORM .t-table, FORM .t-row, FORM .t-cell { display:block; }
FORM .twocol-container { grid-template-columns:1fr; }

HEADER { }
HEADER A.logo { left:20px;  }
HEADER A.logo IMG { }
HEADER NAV.menu { display:none;  }
HEADER UL.lang-switch { display:none; }
HEADER .show-overlay-menu { visibility:visible; }

#overlay-menu { background-color:rgba(40,47,57,0.95); width:0; min-width:0; min-height:100%; position:fixed; z-index:130; display:block; transition:all .5s; box-sizing:border-box; overflow:hidden; }
#overlay-menu A { color:#fff; }
#overlay-menu .inner-content { position:absolute; right:0; top:0; width:100%; height:100%; box-sizing:border-box; padding:100px 20px 0 20px; overflow-y:auto;}
#overlay-menu .close-overlay-menu { position:absolute; right:20px; top:20px; }
#overlay-menu .close-overlay-menu IMG { width:42px; }
#overlay-menu  NAV { font-size:5vw; line-height:6vh; width:335px; }
#overlay-menu .bottom { position:absolute; padding-left:30px; bottom:50px; width:335px; box-sizing:border-box; line-height:24px; }
#overlay-menu .bottom SPAN { display:block; color:#fff; }
#overlay-menu.open { width:100%; min-width:auto; }

#banner { height:500px; min-width:100%; padding:100px 0 0 0; }
#banner.sub { height:350px; }
#banner slogan { width:70%; padding:0 20px; text-align:right; }
#banner slogan H1 { font-size:10vw; line-height:normal; }
#banner slogan P { font-size:5vw; padding-top:10px; }

#breadcrumbs { display:none; }

#home { padding:50px 20px; }
#home .home-container { grid-template-columns:1fr; }
#home .home-container > DIV { min-height:350px; }
#home .home-container > DIV:nth-child(3) { }
#home .home-container > DIV:after { }
#home .home-container > DIV .inner { }
#home .home-container > DIV H3 { }
#home .home-container > DIV A { }
#home .home-container > DIV A:hover { }

#content { padding:50px 20px; }
#content H1 { color:#5d7235; font-size:30px; line-height:36px; font-weight:500; }
#content H3 { font-size:24px; line-height:30px; }
#content UL { padding-left:20px; list-style-type:disc; line-height:24px; padding-bottom:15px; }
#content LI { padding-bottom:5px; }

.col12-container { grid-template-columns:1fr; }

.col31-container { grid-template-columns:1fr; }

#content .sidemenu { padding-top:50px; }

#blogform { padding:0 0 25px 0; }
#blogform SELECT { width:auto; float:right; margin:0 0 10px 25px; }

.blogs-container { grid-template-columns:1fr; grid-row-gap:30px; padding:30px 0 0 0; }

.reactions { padding:100px 0 0 0; }
.reactions H4 { border-bottom:1px solid #d9d9d9; }
.reaction-container { display:grid; grid-template-columns:64px auto; grid-column-gap:50px; padding:50px 0; border-bottom:1px solid #d9d9d9; }
.reaction-container.no-bottom-border { border-bottom:0; }
.reaction-container > DIV IMG { border-radius:50%; width:64px; }
.reaction-container > DIV .info { display:grid; grid-template-columns:1fr 1fr; padding-bottom:20px; }
.reaction-container > DIV .info > DIV:last-child { text-align:right; color:#ec982b; }
.reaction-container > DIV .content { line-height:24px; }

.icons-container { grid-template-columns:1fr; grid-row-gap:30px; padding-top:50px; }

.thema-container { display:grid; grid-template-columns:1fr; grid:1fr; }
.thema-container > A { display:block; min-height:400px; height:auto; overflow:hidden; width:100%; position:relative; grid-column:1; }
.thema-container > A:nth-child(3n), 
.thema-container > A:nth-child(3n-1) { grid-column:1; }
.thema-container > A .img { transition:all .5s; width:100%; height:100%; background-position:center; background-size:cover; }
.thema-container > A:hover .img,
.thema-container > A:focus .img { transform: scale(1.2); }
.thema-container > A .inner { padding:20px; position:absolute; z-index:10; background-color:rgba(255,255,255,0.8); bottom:0; left:0; width:100%; display:block; box-sizing:border-box; }
.thema-container > A .inner SPAN { font-size:12px; line-height:18px; padding-bottom:5px; display:inline-block; }
.thema-container > A .inner H2 { font-size:18px; line-height:24px; color:#484848; font-weight:500; padding-bottom:5px; }
.thema-container > A .inner P { font-size:14px; line-height:20px; }
.thema-container > A .inner P:last-child { padding:0; font-weight:500; }

#info { padding-top:50px; }
#info.pt30 { padding-top:30px; }
#info .info-container { display:grid; grid-template-columns:1fr; font-size:16px; }
#info .info-container H3 { color:#fff; padding-bottom:0; font-size:30px; line-height:normal; }
#info .info-container H3.hide-for-desktop { color:#f97669; padding-bottom:20px; }
#info .info-container .info-container-col:first-child { background-color:#3f4954; border-bottom:none; padding:50px 0; box-sizing:border-box; }
#info .info-container .info-container-col:first-child LI { line-height:22px; padding-bottom:20px; position:relative; }
#info .info-container .info-container-col:first-child LI:first-child:before { content:url('../images/icon-pointer.png'); position:absolute; top:26px; left:-40px; }
#info .info-container .info-container-col:first-child LI:nth-child(2):before { content:url('../images/icon-phone.png'); position:absolute; top:0; left:-40px; }
#info .info-container .info-container-col:first-child LI:last-child:before { content:url('../images/icon-mail.png'); position:absolute; top:0; left:-40px; }
#info .info-container .info-container-col:nth-child(2) { font-size:18px; border-top:none; border-bottom:none; background-repeat:no-repeat; background-position:center center; background-size:cover; padding:20px; min-height:200px; }
#info .info-container .info-container-col:last-child { background-color:#3f4954; border-top:none; padding:50px 0; }
#info .info-container .info-container-col .inner { width:100%; box-sizing:border-box; color:#fff; box-sizing:border-box; padding:0 70px; height:100%; display:block; }
#info .info-container .info-container-col:first-child .inner { float:none; }

#info.order .info-container .info-container-col:first-child { background-color:#fff; border-bottom:none; padding:0; }
#info.order .info-container .info-container-col:last-child { background-color:#fff; padding:0; }
#info.order .info-container .info-container-col:nth-child(2) { background-color:#3f4954; color:#fff; padding:40px 20px; }
#info.order .info-container .info-container-col .inner { padding:0; position:relative; }
#info.order .info-container .info-container-col FIGURE { width:100%; height:150px; overflow:hidden; position:static; }
#info.order .info-container .info-container-col FIGURE IMG { object-fit:cover; width:100%; height:100%; }
#info.order .info-container .info-container-col:first-child FIGURE { right:auto; top:auto; } 
#info.order .info-container .info-container-col:last-child FIGURE { left:auto; bottom:auto; } 

#gallery { padding:60px 0 50px 0; text-align:center; }
#gallery .site-width { padding:0 20px; }
#gallery H2 { padding:0; line-height:normal; }
#gallery .gallery-container { display:grid; grid-template-columns:1fr 1fr; width:100%; grid-column-gap:20px; grid-row-gap:20px; margin:0 auto; padding:20px 0 50px 0; }
#gallery .gallery-container A FIGURE { overflow:hidden; height:150px; display:block; }
#gallery .gallery-container A FIGURE IMG { object-fit:cover; width:100%; height:100%; transition:all .5s; }
#gallery .gallery-container A:hover { text-decoration:none; }
#gallery .gallery-container A:hover FIGURE IMG { transform:scale(1.1); }
#gallery .gallery-container.carousel { display:block; width:100%; padding:20px 0; margin-bottom:30px; }
#gallery .gallery-container.carousel A { width:50%; padding:0 7px; }
.carousel__button.is-next { right:-62px !important; display:none; }
.carousel__button.is-prev { left:-62px !important; display:none; }

#order { padding:50px 0 100px 0; }
#order .site-width { width:100%; padding:0 20px; text-align:left; }
#order .products-table .t-table { display:block; line-height:22px; }
#order .products-table .t-row { display:block; border-bottom:1px solid #d9d9d9; padding:10px 0; }
#order .products-table .t-table .t-row:last-child { border-bottom:none; }
#order .products-table .t-cell { display:block; }
#order .products-table .t-cell SPAN.bull { display:none; }
#order .products-table .t-cell.col2 { width:100%; }
#order .products-table .t-cell.col3 { display:none; }
#order .products-table .t-cell.col4 { width:100%; text-align:right; }
#order .products-table .t-cell.col4 INPUT { width:100px; }
#order .products-table .t-cell H4 { padding:0; }
#order .products-table .t-cell SMALL { font-size:14px; }
#order .products-table .t-cell INPUT { border:1px solid #bababa; line-height:auto; padding:5px; text-align:center; margin:2px 0; }
#order .products-table .t-cell INPUT[type=text] { text-align:left; padding:5px 10px; }
#order .form-block { background-color:#f1f1f1; padding:20px; margin:30px -20px 10px -20px; }
#order .form-block H4 { color:#3f4954; }
#order .form-block INPUT, #order .form-block TEXTAREA, #order .form-block SELECT { background-color:#f1f1f1; border-top:1px solid #f1f1f1; border-left:1px solid #f1f1f1; border-right:1px solid #f1f1f1; }
#order .form-block SELECT { width:auto; max-width:100%; }

FOOTER { padding:50px 20px; }
FOOTER A { }
FOOTER A:hover { }
FOOTER H5 { font-size:5vw; }
FOOTER UL.nav { font-size:4vw; }
FOOTER UL.nav LI { line-height:7vw; }
FOOTER UL.nav LI A { color:rgba(255,255,255,0.7); }
FOOTER UL.nav LI A:hover { }
FOOTER .footer-container {grid-template-columns:1fr; grid-row-gap:50px; text-align:center; }
FOOTER .footer-container > DIV:last-child IMG { }
FOOTER A.logo IMG { width:112px; }
FOOTER .social { }
FOOTER .social UL { }
FOOTER .social LI { }
FOOTER .social LI:last-child { }
FOOTER .social LI A { }
FOOTER .social LI A:hover { }

FOOTER .bottom { font-size:3vw; line-height:5vw; grid-template-columns:1fr; grid-row-gap:25px; text-align:center; }
FOOTER .bottom A { color:rgba(255,255,255,0.8); }
FOOTER .bottom UL { font-size:0; }
FOOTER .bottom LI { display:inline-block; font-size:3vw; padding-left:10px; }
FOOTER .bottom > DIV:last-child { text-align:center; }