HTML { }
BODY { padding:0; margin:0; font-family: 'Fira Sans', sans-serif; font-size:16px; color:#3f4954; position:relative; }

.site-width { width:1280px; margin:0 auto; position:relative; height:100%; box-sizing:border-box; }
.hide-for-desktop { display:none; }
.text-center { text-align:center; }
.clear { clear:both; }
.fa-vc { line-height:inherit !important; }
A.btn { background-color:#fce033; color:#484848 !important; padding:0 30px; text-transform:none; display:inline-block; box-sizing:border-box; line-height:40px; border-radius:20px; }
A.btn:hover { text-decoration:none; background-color:#ec982b; color:#fff !important; }
.t-table { display:table; width:100%; }
.t-row { display:table-row; }
.t-cell { display:table-cell; position:relative; }
.t-cell.top { vertical-align:top; }
.t-cell.middle { vertical-align:middle; }
.no-padding { padding:0; }
.form-group { margin-bottom:20px; }
.form-group.button-right { text-align:right; }
.form-group LABEL { display:block; padding:10px 0; }
.form-group SPAN { display:inline-block; padding-top:10px; font-size:14px; line-height:22px; color:#555; }
.form-group SPAN A { padding:0 !important; font-weight:normal !important; color:#555 !important; }

.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; }

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}
.badge {
  display: inline-block;
  padding: .25em .4em;
  font-size: 50%;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  border-radius: .25rem;
}

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 { color:#ec982b; }
H1 STRONG { display:block; text-transform:none; }
H1 { font-size:48px; line-height:54px; }
H2 { font-size:48px; line-height:54px; }
H3 { font-size:26px; line-height:36px; font-weight:500; }
H4 { font-size:24px; line-height:30px; }
H5 { font-size:18px; line-height:24px; }
H6 { font-size:16px; line-height:22px; }
P, #intro LI { line-height:24px; }
STRONG { font-weight:500; }
HR { padding:0; margin:0 0 20px 0; border:1px solid #c8c8c8; }

FORM .twocol-container { display:grid; grid-template-columns:1fr 1fr; grid-column-gap:50px; }

INPUT, TEXTAREA, BUTTON, SELECT { font-family: 'Fira Sans', sans-serif; font-size:16px; color:#000; box-sizing:border-box; padding:10px; width:100%; border:1px solid #f7f6f6; background-color:#f7f6f6; }
INPUT[type=submit], BUTTON[type=submit] { -webkit-transition:all .2s ease-in-out; -moz-transition:all .2s ease-in-out; -o-transition:all .2s ease-in-out; transition:all .2s ease-in-out; background-color:#ec982b; color:#fff; width:auto; cursor:pointer; border:none; border-radius:18px; padding:10px 30px; }
INPUT[type=submit]:hover, BUTTON[type=submit]:hover { background-color:#bf5a50; color:#fff; -webkit-transition:all .2s ease-in-out; -moz-transition:all .2s ease-in-out; -o-transition:all .2s ease-in-out; transition:all .2s ease-in-out; }
INPUT.error, TEXTAREA.error { border-bottom:1px solid #bf0e0e; }

HEADER { height:100px; position:fixed; top:0; background-color:rgba(236,152,43,0.8); z-index:120; width:100%; -webkit-transition:all .2s ease-in-out; -moz-transition:all .2s ease-in-out; -o-transition:all .2s ease-in-out; transition:all .2s ease-in-out; }
HEADER A.logo { position:absolute; left:0; top:18px; }
HEADER A.logo IMG { -webkit-transition:all .2s; -moz-transition:all .2s; -o-transition:all .2s; transition:all .2s; width:48px; border:8px solid #fff; border-radius:50%; }
HEADER NAV.menu { font-size:0; text-align:center; padding-top:34px; font-weight:bold;  }
HEADER NAV.menu UL LI { display:inline-block; font-size:16px; padding:0 15px; color:#fff; }
HEADER NAV.menu UL A { color:#fff; line-height:66px; text-decoration:none; font-weight:500; transition:none !important; }
HEADER NAV.menu UL A:hover, HEADER NAV.menu UL A.active { color:#fce033; }

HEADER NAV.menu DIV.megamenu { position:fixed; left:0; width:100%; font-weight:normal; text-align:left; padding:30px 0; background-color:rgba(252,224,51,0.85); visibility:hidden; transition:none !important; }
HEADER NAV.menu DIV.megamenu .megamenu-container { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; grid-column-gap:50px; color:#451c04; }
HEADER NAV.menu DIV.megamenu H4 { color:#451c04; padding-bottom:5px; font-size:20px; line-height:auto; }
HEADER NAV.menu DIV.megamenu A { color:#451c04; }
HEADER NAV.menu LI:hover DIV.megamenu { visibility:visible; } 

HEADER UL.lang-switch { position:absolute; right:0; bottom:25px; font-size:0; }
HEADER UL.lang-switch LI { display:inline-block; font-size:16px; padding-left:10px; }
HEADER UL.lang-switch LI:after { content:'|'; padding-left:10px; color:#fff; }
HEADER UL.lang-switch LI:last-child:after { display:none; }
HEADER UL.lang-switch A { color:#fff; line-height:16px; text-decoration:none; }
HEADER UL.lang-switch A:hover { color:#f97669; }
HEADER .show-overlay-menu { visibility:hidden; position:absolute; right:20px; top:34px; font-size:32px; line-height:40px; color:#fff; width:35px; text-transform:uppercase; text-align:center; }
HEADER .show-overlay-menu:hover { text-decoration:none; }
HEADER.fixed {  }
HEADER.open { background-color:rgba(0,0,0,0); }
HEADER.open .show-overlay-menu I:before { content:"\00d7"; font-size:60px; line-height:32px; }

#overlay-menu { background-color:rgba(40,47,57,0.95); width:0; min-width:0; 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:640px; height:100%; box-sizing:border-box; padding-top:200px; }
#overlay-menu .close-overlay-menu { position:absolute; right:40px; top:40px; }
#overlay-menu NAV { font-size:5vw; line-height:7vw; padding-bottom:80px; }
#overlay-menu NAV LI { position:relative; }
#overlay-menu NAV LI A { padding-left:30px; }
#overlay-menu NAV LI A:hover { text-decoration:none; }
#overlay-menu NAV LI A.active:before, #overlay-menu NAV LI A:hover:before { content:url('../images/menu-arrow.png'); position:absolute; left:0; top:50%; transform:translate(0, -50%); color:#fff200; font-size:8vh; }
#overlay-menu NAV LI BUTTON { position:absolute; right:0; top:0; width:48px; height:48px; text-align:center; border:none; border-left:1px solid rgba(255,255,255,0.4); background-color:transparent; color:#fff; cursor:pointer; }
#overlay-menu NAV UL UL { display:none; margin-bottom:0; font-size:4vw; }
#overlay-menu NAV UL UL LI A { padding-left:45px; color:rgba(255,255,255,0.7); }
#overlay-menu NAV UL UL LI A:hover { }
#overlay-menu .bottom { position:absolute; bottom:100px; width:100%; box-sizing:border-box; line-height:24px; }
#overlay-menu .bottom SPAN { display:block; color:#fff; }
#overlay-menu.open { width:50%; min-width:640px; }

#banner { height:860px; position:relative; min-width:1100px; width:100%; padding:0; box-sizing:border-box; background-repeat:no-repeat; background-position:center center; background-size:cover; }
#banner.sub { height:500px; background-color:#999999; }
#banner.sub.small { height:100px; }
#banner slogan { color:#fff; display:inline-block; position:absolute; top:50%; transform:translateY(-50%); width:560px; right:0; }
#banner slogan H1 { font-size:80px; color:#fff; padding:0; font-weight:300; line-height:normal; }
#banner slogan P { font-size:40px; font-weight:300; padding:20px 0 0 0; display:block; line-height:normal; }
#banner.sub slogan { left:0; }
#banner.sub slogan H1 { font-size:72px; line-height:78px; }
#banner.sub slogan Q { font-size:18px; line-height:24px; padding:0; }

#breadcrumbs { padding:50px 0; }
#breadcrumbs UL { font-size:0; }
#breadcrumbs LI { display:inline-block; font-size:12px; padding:0 10px 0 0; color:#b9b9b9; }
#breadcrumbs LI A { color:#b9b9b9; }
#breadcrumbs LI:after { content:'\203A'; padding-left:10px; }
#breadcrumbs LI:last-child:after { content:''; }

#words .site-width { padding:20px 0; color:#c4df9b; line-height:64px; font-size:0; }
#words .site-width SPAN { padding-right:80px; font-size:56px; font-weight:bold; }
#words .site-width SPAN:nth-child(3) { padding-right:0; }

#home { padding:100px 0; }
#home .home-container { display:grid; grid-template-columns:2fr 1fr; grid-column-gap:20px; grid-row-gap:20px; }
#home .home-container > DIV { min-height:450px; color:#fff; font-weight:300; padding:30px; box-sizing:border-box; background-size:cover; background-position:center center; position:relative; }
#home .home-container > DIV:nth-child(3) { grid-column:1/-1; }
#home .home-container > DIV:after { position:absolute; width:100%; height:100%; background-color:rgba(0,0,0,0.3); content:''; left:0; top:0; display:block; z-index:10; }
#home .home-container > DIV .inner { position:relative; z-index:20; max-width:500px; }
#home .home-container > DIV H3 { color:#fff; }
#home .home-container > DIV A { background-color:rgba(255,255,255,0); border:1px solid #fff; color:#fff !important; }
#home .home-container > DIV A:hover { background-color:rgba(255,255,255,1); color:#3f4954 !important; }

#intro { padding:100px 0 0 0; text-align:center; }
#intro .site-width { padding:0 340px; }
#intro.page { text-align:left; padding-bottom:50px; }
#intro.page .site-width { padding:0; width:700px; }
#intro UL { padding:0 0 20px 20px; }
#intro UL LI { list-style-type:disc; }

#content { padding:0 0 50px 0; }
#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; }
#content EM { font-style:italic; }

.col12-container { display:grid; grid-template-columns:2fr 3fr; grid-column-gap:100px; }
.col12-container > DIV IMG { max-width:100%; }

.col31-container { display:grid; grid-template-columns:3fr 1fr; grid-column-gap:100px; }
.col31-container > DIV IMG { max-width:100%; }
.col31-container .load-more { padding:50px 0; text-align:center; }

#content .sidemenu FORM { padding-bottom:20px; }
#content .sidemenu FORM INPUT[type=text] { border:1px solid #d3d3d3; border-right:0; background-color:#fff; line-height:18px; border-top-left-radius:20px; border-bottom-left-radius:20px; padding-left:20px; width:calc(100% - 50px); float:left; }
#content .sidemenu FORM INPUT[type=submit] { width:50px; padding:0; float:left; border-radius:0; background-color:#fff; height:41px; border-top-right-radius:20px; border-bottom-right-radius:20px; border:1px solid #d3d3d3; border-left:0; position:relative; background-image:url('../images/icon-loop.png'); background-position:center center; background-repeat:no-repeat; }
#content .sidemenu H5 { font-size:20px; line-height:26px; color:#5d7235; font-weight:600; }
#content .sidemenu UL { padding:0 0 20px 5px; margin:0; }
#content .sidemenu UL LI { list-style-type:"\203A"; padding:0 0 0 10px; }
#content .sidemenu UL LI SPAN { display:block; font-weight:300; font-style:italic; }
#content .sidemenu UL.bigmenu { padding-left:0; }
#content .sidemenu UL.bigmenu LI { list-style-type:none; padding:0 0 10px 0; font-size:20px; line-height:26px; font-weight:600; }
#content .sidemenu UL.bigmenu LI:last-child { padding:0; }
#content .sidemenu UL.bigmenu LI A { color:#5d7235; }
#content .sidemenu A.btn { margin-bottom:20px; }

#content .dossier-menu { padding:0; list-style-type:none; }
#content .dossier-menu LI { border-bottom:1px solid #d3d3d3; padding:10px 0 10px 10px; list-style-type:"\203A"; list-style-position:inside; }
#content .dossier-menu LI A { padding-left:10px; display:inline-block; }
#content .dossier-menu LI:last-child { border-bottom:0; }

.thema-container { display:grid; grid:auto / repeat(5, 1fr); gap:20px; }
.thema-container > A { display:block; height:400px; overflow:hidden; width:100%; position:relative; grid-column:span 3; }
.thema-container > A:nth-child(3n), 
.thema-container > A:nth-child(3n-1) { grid-column:span 2; }
.thema-container > A .img { transition:all .5s; width:100%; height:100%; background-position:center; background-size:cover; background-color:#d9d9d9; }
.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; }

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

.blogs-container { display:grid; grid-template-columns:1fr 1fr 1fr; grid-column-gap:75px; grid-row-gap:75px; padding:30px 0 0 0; }
.blogs-container > A:hover { text-decoration:none; }
.blogs-container > A .img { width:100%; display:block; height:160px; overflow:hidden; }
.blogs-container > A .img > DIV { transition:all .5s; width:100%; display:block; height:160px; background-position:center; background-size:cover; }
.blogs-container > A:hover .img > DIV,
.blogs-container > A:focus .img > DIV { transform: scale(1.2); }
.blogs-container > A .inner { padding:20px 0 0 0; }
.blogs-container > A .inner H2 { font-size:20px; line-height:26px; color:#484848; font-weight:500; padding-bottom:5px; }
.blogs-container > A .inner P:last-child { padding:0; color:#ec982b; }
.blogs-container > A:hover .inner H2, 
.blogs-container > A:hover .inner P { text-decoration:none; }
.blogs-container > A:hover .inner P:last-child { text-decoration:underline; }

.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 { display:grid; grid-template-columns:1fr 1fr; grid-column-gap:50px; grid-row-gap:50px; }
.icons-container > A { position:relative; padding-left:56px; }
.icons-container > A:hover { text-decoration:none; }
.icons-container > A IMG { position:absolute; left:0; top:0; width:36px; }
.icons-container > A H3 { color:#5d7235; font-size:18px; font-weight:500; padding:0; line-height:24px; }
.icons-container > A:hover H3 { text-decoration:underline; }

#info { padding-top:100px; }
#info.pt30 { padding-top:30px; }
#info .info-container { display:grid; grid-template-columns:calc(50% - 350px) 700px calc(50% - 350px); font-size:16px; }
#info .info-container H3 { color:#fff; padding-bottom:0; font-size:30px; line-height:normal; }
#info .info-container .info-container-col:first-child { background-color:#3f4954; border-bottom:40px solid #fff; padding:50px 0 100px 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:40px solid #fff; border-bottom:40px solid #fff; background-repeat:no-repeat; background-position:center center; background-size:cover; padding:0 40px; }
#info .info-container .info-container-col:last-child { background-color:#3f4954; border-top:40px solid #fff; padding:100px 0 30px 0; }
#info .info-container .info-container-col .inner { width:290px; box-sizing:border-box; color:#fff; box-sizing:border-box; padding:0 50px; height:100%; display:block; }
#info .info-container .info-container-col:first-child .inner { float:right; }

#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 40px 20px 40px; }
#info.order .info-container .info-container-col .inner { padding:0; position:relative; }
#info.order .info-container .info-container-col FIGURE { width:220px; height:300px; overflow:hidden; position:absolute; }
#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:20px; top:0; } 
#info.order .info-container .info-container-col:last-child FIGURE { left:20px; bottom:0; } 

#gallery { padding:60px 0 50px 0; text-align:center; }
#gallery H2 { padding:0; line-height:normal; }
#gallery .gallery-container { display:grid; grid-template-columns:1fr 1fr 1fr; width:700px; grid-column-gap:14px; grid-row-gap:14px; margin:0 auto; padding:20px 0 50px 0; }
#gallery .gallery-container A FIGURE { overflow:hidden; height:200px; 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:1000px; padding:20px 0; margin-bottom:30px; }
#gallery .gallery-container.carousel A { width:25%; padding:0 7px; }
.carousel__button.is-next { right:-62px !important; }
.carousel__button.is-prev { left:-62px !important; }

#googlemaps { padding-top:50px; }

#order { padding:50px 0 100px 0; }
#order .site-width { width:700px; text-align:left; }
#order .products-table .t-table { padding-bottom:20px; }
#order .products-table .t-cell { box-sizing:border-box; }
#order .products-table .t-cell.col2 { width:90px; }
#order .products-table .t-cell.col3 { width:80px; text-align:right; padding-right:20px; }
#order .products-table .t-cell.col4 { width:70px; }
#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; }

.col-2-container { justify-items:stretch; align-items:stretch; display:grid; grid-template-columns:50% 50%; grid-column-gap:50px; }
.col-2-column:first-child { padding:0 0 150px 150px; }
.col-2-container.order-form .col-2-column:first-child { padding-bottom:50px; }
.col-2-column.no-bottom-padding { padding-bottom:0; }
.col-2-column.no-left-padding { padding-left:0; }
.col-2-column:nth-child(2) { padding:0 100px 0 0; }
.col-2-column.align-bottom { align-self:end; }
.col-3-container { justify-items:stretch; align-items:stretch; display:grid; grid-template-columns:220px 740px 220px; grid-column-gap:50px; }
.col-3-container .arrows { position:relative; } 
.col-3-container .arrows IMG { position:absolute; right:0; top:-40px; }
.col-3-container .arrows.right IMG { top:80px; }
#intro A.btn { position:absolute; right:90px; bottom:200px; }
#intro A.btn:before, .dark-block A.btn:before { content:url('../images/arrows-down.png'); position:absolute; left:50%; top:-20px; transform:translate(-50%, -100%); }
#intro .order-form H2 { padding-bottom:20px; }
#intro .order-form .t-table { padding-bottom:40px; }
#intro .order-form .t-cell { padding-bottom:10px; }
#intro .order-form BUTTON { position:relative; }
#intro .order-form BUTTON:after { content:url('../images/arrows-left.png'); position:absolute; right:0; top:50%; transform:translate(calc(100% + 50px), -50%); }
#intro .prices { padding-right:0; }
#intro .prices H2 { font-family:'Norwester Regular', sans-serif; text-transform:uppercase; font-size:36px; padding-bottom:10px; }
#intro .prices H5 { padding-bottom:10px; }
#intro .prices UL { list-style-type:disc; padding-left:15px; }
#intro .prices .t-cell { padding-bottom:30px; }
#intro .prices .t-cell.image { width:100px; }
#intro .prices .t-cell.image FIGURE { display:table; width:100%; }
#intro .prices .t-cell.image FIGURE .inner { display:table-cell; width:100%; height:150px; padding:0 20px 0 0; box-sizing:border-box; text-align:center; vertical-align:top; }
#intro .prices .t-cell.image FIGURE IMG { max-width:95%; max-height:95%; display:inline-block; }
#intro .prices .t-cell.info {  }

.dark-block { margin-top:-120px; }
.dark-block.no-top-margin { margin-top:0; }
.dark-block .dark-block-container { justify-items:stretch; align-items:stretch; display:grid; grid-template-columns:auto 320px 960px auto; grid-column-gap:50px; color:#fff; }
.dark-block .dark-block-container H2 { color:#fff200; padding-bottom:20px; }
.dark-block .dark-block-column-30 { grid-column:1/3; position:relative; }
.dark-block .dark-block-column-30 IMG { position:absolute; right:0; top:25px; }
.dark-block .dark-block-column-70 { grid-column:3/5; background-position:center; background-size:cover; background-image:url('../images/block-bg-grey.jpg'); }
.dark-block .dark-block-column-70 .content { width:935px; box-sizing:border-box; padding:50px 50px 30px 50px; }

.dark-block .dark-block-container.right-whitespace { grid-template-columns:auto 960px 320px auto; }
.dark-block .dark-block-container.right-whitespace .dark-block-column-70 { grid-column:1/3; }
.dark-block .dark-block-container.right-whitespace .dark-block-column-70 .content { float:right; padding-left:150px; }
.dark-block .dark-block-container.right-whitespace .dark-block-column-30 { grid-column:3/5; }
.dark-block A.btn { position:absolute; left:63px; bottom:0; }

#home-text { padding:50px 0; }

#products { padding:50px 0 0 0; }
.products-container { justify-items:stretch; align-items:stretch; display:grid; grid-template-columns:1fr 1fr 1fr; grid-column-gap:50px; grid-row-gap:50px; }
.products-container .product FIGURE { display:table; width:100%; }
.products-container .product FIGURE .inner { display:table-cell; width:100%; height:320px; padding:20px; box-sizing:border-box; text-align:center; vertical-align:middle; }
.products-container .product FIGURE IMG { max-width:95%; max-height:95%; display:inline-block; transition:all .5s; }
.products-container .product A { color:#636363; }
.products-container .product A:hover { text-decoration:none; }
.products-container .product A:hover FIGURE IMG { max-width:100%; max-height:100%; }
.products-container .product P { display:block; text-align:center; }
.products-container .product .buttons { padding:0 40px; box-sizing:border-box; }
.products-container .product .buttons A { display:block; text-align:center; }
.products-container .product .buttons A.more { margin-bottom:10px; padding:7px; box-sizing:border-box; border:1px dotted #636363; }
.products-container .product .buttons A.btn { color:#fff; }

#product-details { padding:50px 0 0 0; }
#product-details .product-image { width:250px; box-sizing:border-box; padding-right:30px; }
#product-details .product-image FIGURE { width:100%; }
#product-details .product-image FIGURE IMG { max-width:100%; }
#product-details A.btn:after { content:url('../images/arrows-left.png'); position:absolute; right:0; top:50%; transform:translate(0, -50%); }
#product-details H1 { line-height:36px; }
#product-details H1 STRONG { font-size:26px; }
#product-details .price { font-family:'Kollektif Bold', sans-serif; font-size:30px; color:#354159; padding-bottom:40px; }
#product-details .price SUP { vertical-align:super; font-size:14px; }
#product-details .order-button { padding:50px 0; }
#product-details IMG.label { position:absolute; right:0; top:0; }
#product-details H3.related-title { padding:0 0 20px 0; font-family:'Kollektif Bold', sans-serif; font-size:18px; color:#707070; }
#product-details .products-container { grid-template-columns:1fr 1fr; }

#contact { padding:50px 0 0 0; }
#contact H2 { padding-bottom:20px; }
#contact SPAN { color:#bf0e0e; display:inline-block; padding:16px 0; }
.contact-container { justify-items:stretch; align-items:stretch; display:grid; grid-template-columns:auto 220px 220px 740px auto; grid-column-gap:50px; background-color:#e1e1e1; }
.contact-column-2 { grid-column:1/3; background-position:center; background-size:cover; background-image:url('../images/contact-img.jpg'); }
.contact-column-1 { grid-column:3/4; box-sizing:border-box; padding:25px 0 0 0; }
.contact-column-4 { grid-column:4/6; }
.contact-column-4 .content { width:740px; box-sizing:border-box; padding:50px 0; }
#contact INPUT[type=submit] { float:right; }

.overlay { display:none; background-color:rgba(0,0,0,0.85); width:100%; height:100%; position:fixed; left:0; top:0; z-index:200; }
.popup { display:none; position:fixed; top:50%; left:50%; transform:translate(-50%, -50%); z-index:210; width:400px; background-color:#fff; padding:40px; }
.popup:before { content:''; position:absolute; left:-101px; bottom:20px; background-image:url('../images/frog.png');
    background-size:140px 226px;
    display: inline-block;
    width: 140px; 
    height: 226px; }
.popup A.close { position:absolute; right:20px; top:5px; font-size:60px; color:#000; line-height:auto; font-weight:300; }
.popup A.close:hover { text-decoration:none; }
.popup .content H3 { font-family:'Playfair Display', serif; font-size:60px; line-height:70px; padding-bottom:40px; }
.popup .content .form-group { margin-bottom:20px; }
.popup .content INPUT[type=email], .popup .content INPUT[type=password] { border:1px solid #ebebeb; border-bottom:1px solid #868685; background-color:#ebebeb; display:inline-block; padding:15px 20px; }
.popup .content INPUT[type=submit] { font-family:'Playfair Display', serif; background-color:#cff3a6; border:none; width:150px; height:150px; text-align:center; border-radius:75px; font-size:24px; cursor:pointer; }

FOOTER { padding:40px 0 0 0; background-color:#cfbe00; color:#fff; }
FOOTER A { color:#fff; text-decoration:none; transition:all .5s; }
FOOTER A:hover { color:#647baa; text-decoration:none; }
FOOTER H5 { font-size:16px; color:#fff; }
FOOTER UL.nav { font-size:14px; }
FOOTER UL.nav LI { line-height:22px; }
FOOTER UL.nav LI A { color:#fff; }
FOOTER UL.nav LI A:hover { text-decoration:underline; }
FOOTER .footer-container { display:grid; grid-template-columns:64px 1fr 1fr 1fr 1fr 1fr; grid-column-gap:50px; }
FOOTER .footer-container > DIV:last-child IMG { width:100px; }
FOOTER A.logo IMG { -webkit-transition:all .2s; -moz-transition:all .2s; -o-transition:all .2s; transition:all .2s; width:48px; border:8px solid #fff; border-radius:50%; }
FOOTER .social { padding-bottom:15px; }
FOOTER .social UL { font-size:0; }
FOOTER .social LI { display:inline-block; padding:0 5px 5px 0; }
FOOTER .social LI:last-child { padding:0; }
FOOTER .social LI A { width:24px; height:24px; display:block; color:#fff; font-size:16px; text-align:center; line-height:24px; transition:all .5s; /*border-radius:50%; border:1px solid #fff;*/ }
FOOTER .social LI A:hover { /*background-color:#fff;*/ color:#3f4954; }

FOOTER UL.address { font-size:0; padding:60px 0 60px 0; text-align:center; }
FOOTER UL.address LI { font-size:16px; display:inline-block; padding-right:10px; }
FOOTER UL.address LI:after { content:"/"; padding-left:10px; }
FOOTER UL.address LI:last-child:after { content:""; padding:0; }

FOOTER .bottom { color:rgba(255,255,255,0.8); font-size:12px; padding:100px 0 20px 0; line-height:16px; display:grid; grid-template-columns:1fr 3fr 1fr; grid-column-gap:25px; }
FOOTER .bottom A { color:rgba(255,255,255,0.8); }
FOOTER .bottom UL { font-size:0; }
FOOTER .bottom LI { display:inline-block; font-size:12px; padding-left:10px; }
FOOTER .bottom LI:first-child { padding:0; } 
FOOTER .bottom LI:after { content:'|'; padding-left:10px; color:rgba(255,255,255,0.8); }
FOOTER .bottom LI:last-child:after { display:none; }
FOOTER .bottom > DIV:first-child { }
FOOTER .bottom > DIV:nth-child(2) { text-align:center; }
FOOTER .bottom > DIV:last-child { text-align:right; }