/*
Theme Name:Venice
Theme URI: http://www.projektvenice.com
Author: Projekt Venice GmbH
Author URI: http://www.projektvenice.ch/
Description: Venice Template
Version: 4.1
Text Domain: venice_lang
License: all rights reserved @ projektvenice.com
License URI: projektvenice.com
*/
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 { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/* Functions
-------------------------------------------------------------- */
/* =Mixin REM TO PX
-------------------------------------------------------------- */
/* =Mixin Button
-------------------------------------------------------------- */
/* =Basic Elements
-------------------------------------------------------------- */
#page { position: relative; min-height: 100vh; padding-top: 800px; color: #3C2B2B; background-color: #FFF; font-family: "Open Sans", sans-serif; }

i { font-family: "FontAwesome" !important; }

body, html { height: 100%; margin: 0; padding: 0; width: 100%; }

.row { max-width: 98rem; }

/* =Kontakt Alert
-------------------------------------------------------------- */
.panel.success { color: #3c763d; background-color: #dff0d8; border-color: #d0e9c6; }

.panel.error { color: #a94442; background-color: #f2dede; border-color: #ebcccc; }

.panel { padding: 15px; margin-bottom: 1rem; border: 1px solid transparent; border-radius: .25rem; }

/*! Pushy - v1.0.0 - 2016-3-1
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
#header-mobile { display: none; position: fixed; top: 0; left: 0; height: 80px; width: 100%; background-color: #FFF; z-index: 9; }
#header-mobile a { display: block; position: absolute; top: 5px; left: 20px; }
#header-mobile img { width: auto; max-height: 60px; }
#header-mobile .menu-btn { position: absolute; top: 25px; right: 20px; font-size: 30px; cursor: pointer; }

/* Menu Appearance */
.pushy { position: fixed; width: 200px; height: 100%; top: 0; z-index: 9999; background: #191918; overflow: auto; visibility: hidden; -webkit-overflow-scrolling: touch; /* enables momentum scrolling in iOS overflow elements */ font-family: Open Sans; }
.pushy a { display: block; color: #b3b3b1; padding: 8px 15px; text-decoration: none; outline: 0; font-size: 0.875rem; line-height: 160%; }
.pushy a:hover { color: #FFF; }
.pushy ul { margin: 0; }
.pushy ul:first-child { margin-top: 10px; }
.pushy.pushy-left { left: 0; }
.pushy.pushy-right { right: 0; }
.pushy #lang_sel_list li { display: inline-block; }

/* Menu Movement */
.pushy-left { -webkit-transform: translate3d(-200px, 0, 0); -ms-transform: translate3d(-200px, 0, 0); transform: translate3d(-200px, 0, 0); }

.pushy-open-left #container, .pushy-open-left .push { -webkit-transform: translate3d(200px, 0, 0); -ms-transform: translate3d(200px, 0, 0); transform: translate3d(200px, 0, 0); }

.pushy-right { -webkit-transform: translate3d(200px, 0, 0); -ms-transform: translate3d(200px, 0, 0); transform: translate3d(200px, 0, 0); }

.pushy-open-right #container, .pushy-open-right .push { -webkit-transform: translate3d(-200px, 0, 0); -ms-transform: translate3d(-200px, 0, 0); transform: translate3d(-200px, 0, 0); }

.pushy-open-left .pushy, .pushy-open-right .pushy { -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

/* Menu Transitions */
#container, .pushy, .push { transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }

/* Site Overlay */
.site-overlay { display: none; }

.pushy-open-left .site-overlay, .pushy-open-right .site-overlay { display: block; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9998; background-color: rgba(0, 0, 0, 0.5); -webkit-animation: fade 500ms; animation: fade 500ms; }

@keyframes fade { 0% { opacity: 0; }
  100% { opacity: 1; } }
@-webkit-keyframes fade { 0% { opacity: 0; }
  100% { opacity: 1; } }
/* Submenu Appearance */
.pushy-submenu { /* Submenu Icon */ }
.pushy-submenu ul { padding-left: 15px; transition: max-height 0.2s ease-in-out; margin: 0; list-style: none; }
.pushy-submenu ul .pushy-link { transition: opacity 0.2s ease-in-out; }
.pushy-submenu > a { position: relative; }
.pushy-submenu > a::after { font-family: FontAwesome; content: '\f105'; display: block; height: 11px; width: 8px; position: absolute; top: 50%; right: 15px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); transition: transform 0.2s; }

/* Submenu Movement */
.pushy-submenu-closed ul { max-height: 0; overflow: hidden; }
.pushy-submenu-closed .pushy-link { opacity: 0; }

.pushy-submenu-open { /* Submenu Icon */ }
.pushy-submenu-open ul { max-height: 1000px; }
.pushy-submenu-open .pushy-link { opacity: 1; }
.pushy-submenu-open a::after { -webkit-transform: translateY(-50%) rotate(90deg); -ms-transform: translateY(-50%) rotate(90deg); transform: translateY(-50%) rotate(90deg); }

.no-csstransforms3d .pushy-submenu-closed ul { max-height: none; display: none; }

/* =Fonts
-------------------------------------------------------------- */
@font-face { font-family: 'VeniceIcons'; src: url("assets/fonts/VeniceIconsRegular.eot"); src: url("assets/fonts/VeniceIconsRegular.eot") format("embedded-opentype"), url("assets/fonts/VeniceIconsRegular.ttf") format("truetype"), url("assets/fonts/VeniceIconsRegular.woff") format("woff"), url("assets/fonts/VeniceIconsRegular.svg") format("svg"); font-weight: normal; font-style: normal; }
.vicon:before { display: inline; font-family: "VeniceIcons"; font-size: 1rem; }
.vicon.mail:before { content: '\f000'; }
.vicon.attachement:before { content: '\f001'; }
.vicon.phone:before { content: '\f002'; }

#header { position: fixed; top: 0; left: 0; width: 100%; min-height: 130px; padding-top: 20px; background-color: rgba(255, 255, 255, 0.9); z-index: 2; }
#header .row { max-width: 200rem; }
#header #header-logo img { width: 260px; }
#header #header-menu, #header #primary-menu { text-align: right; }
#header #header-menu .menu, #header #primary-menu .menu { list-style: none; margin: 0; padding: 0; }
#header #header-menu .menu li, #header #primary-menu .menu li { display: inline-block; }
#header #header-menu { font-size: 0.9375rem; padding: 10px 10px 9px 0; }
#header #header-menu > div, #header #header-menu .mail, #header #header-menu .phone, #header #header-menu .menu { display: inline-block; }
#header #header-menu .menu a { font-size: 0.9375rem; color: #000; text-decoration: none; }
#header #header-menu .menu a:hover { color: #D2232A; }
#header #header-menu .mail { position: relative; padding-left: 60px; }
#header #header-menu .mail:before { position: absolute; top: -4px; left: 30px; font-size: 1.4rem; }
#header #header-menu .mail a { text-decoration: none; color: #000; }
#header #header-menu .mail a:hover { color: #D2232A; }
#header #header-menu .phone { position: relative; padding-left: 60px; }
#header #header-menu .phone:before { position: absolute; top: -3px; left: 30px; font-size: 1.4rem; }
#header #primary-menu { padding: 30px 0 0 0; }
#header #primary-menu .menu .sub-menu { display: none; position: absolute; top: 48px; left: -9px; width: 300px; margin: 0; padding: 15px 20px; text-align: left; background-color: rgba(255, 255, 255, 0.9); border-top: 2px solid #D2232A; }
#header #primary-menu .menu .sub-menu .menu-item { display: block; }
#header #primary-menu .menu .sub-menu a { display: inline-block; line-height: 2rem; color: #000; text-decoration: none; transition: padding-left 1s; }
#header #primary-menu .menu .sub-menu a:hover { color: #D2232A; padding-left: 20px; }
#header #primary-menu .menu .menu-item:last-child .sub-menu { left: auto; right: 0; }
#header #primary-menu .menu > .menu-item { position: relative; height: 48px; margin-right: 20px; }
#header #primary-menu .menu > .menu-item:last-child { margin-right: 0; }
#header #primary-menu .menu > .menu-item > a { font-size: 1rem; color: #000; text-decoration: none; padding: 5px 10px; border-radius: 5px; }
#header #primary-menu .menu > .menu-item > a:hover { color: #FFF; background-color: #D2232A; }
#header #primary-menu .menu > .menu-item:hover .sub-menu { display: block; }

#slider { position: absolute; top: 0; left: 0; width: 100%; height: 800px; }
#slider .slider-container, #slider .venice-slider, #slider .slick-list, #slider .slick-track { height: 100%; }
#slider .slick-prev, #slider .slick-next { color: #D2232A; }
#slider .cover { background-position: center; }

#main-content { padding: 100px 0; }
#main-content h1 { margin-bottom: 40px; }
#main-content h2 { margin-bottom: 20px; margin-top: 34px; }
#main-content h3 { padding-bottom: 30px; }
#main-content ul { margin: 0 0 24px 20px; }
#main-content p { margin-bottom: 14px; }
#main-content b, #main-content strong { font-weight: 500; }
#main-content .wp-block-cover { width: calc( 100vw - 9px ); margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); margin-top: 60px; margin-bottom: 60px; }
#main-content .wp-block-cover .wp-block-cover__inner-container p { color: #FFF; font-weight: 300; font-style: italic; font-size: 2.9rem; line-height: 3.75rem; margin-bottom: 30px; }
#main-content .wp-block-cover.has-background-dim:before { background-color: transparent; }
#main-content .button { display: inline-block; padding: 7px 15px; border: 1px solid #D2232A; border-radius: 5px; }
#main-content .button:hover { color: #FFF; background-color: #D2232A; }
#main-content .c-accordion__item { padding: 30px 0 10px 0; border-bottom: 1px solid #707070; }
#main-content .c-accordion__item p { padding-right: 50px; }
#main-content .c-accordion__item:last-child { border-bottom: none; }
#main-content .c-accordion__title:after { font-size: 40px; font-weight: 500; color: #D2232A; }

#bodenbelaege { margin-bottom: 100px; }
#bodenbelaege .item { min-height: 420px; text-align: center; line-height: 1.2rem; }
#bodenbelaege .item h3 { font-size: 1.125rem; margin-bottom: 30px; font-weight: 500; }
#bodenbelaege .item a { position: relative; display: block; min-height: 420px; text-decoration: none; color: #FFF; font-weight: 300; padding: 40px 5px 60px 5px; background-color: rgba(0, 0, 0, 0.3); }
#bodenbelaege .item a:hover { background-color: rgba(0, 0, 0, 0.7); }
#bodenbelaege .item a:hover .button { color: #000; background-color: #fff; }
#bodenbelaege .item .button { position: absolute; display: block; left: 50%; bottom: 40px; width: 80%; border: 1px solid #fff; border-radius: 5px; margin-left: -40%; padding: 7px; }
#bodenbelaege .cover { background-size: cover; background-position: cneter; }

#footer { background-color: #D8D4CF; }
#footer #footer-top { padding: 60px 0 20px 0; font-size: 1rem; line-height: 1.4rem; }
#footer #footer-top h3 { font-size: 1.25rem; margin-bottom: 15px; }
#footer #footer-top a { color: #D2232A; text-decoration: none; }
#footer #footer-top a:hover { opacity: 0.7; }
#footer #footer-top #footer-adress2 { padding-top: 36px; }
#footer #footer-top #footer-mitglied ul { list-style: none; margin: 30px 0 0 0; padding: 0; }
#footer #footer-top #footer-mitglied ul li { display: inline-block; padding-right: 20px; }
#footer #footer-top #footer-mitglied ul li:last-child { padding-right: 0; }
#footer #footer-top #footer-mitglied ul li img { width: auto; height: 100px; }
#footer #copyright { padding: 30px 0; }
#footer #copyright #copyright-text { color: #3C2B2B; font-weight: 300; }
#footer #copyright #copyright-menu { text-align: right; }
#footer #copyright #copyright-menu img { margin-left: 30px; }
#footer #copyright #copyright-menu .menu-footermenu-container, #footer #copyright #copyright-menu .menu { display: inline-block; }
#footer #copyright #copyright-menu .menu { list-style: none; margin: 0; padding: 0; }
#footer #copyright #copyright-menu .menu .menu-item { display: inline-block; }
#footer #copyright #copyright-menu .menu .menu-item:after { content: '/'; padding: 0 5px 0 7px; }
#footer #copyright #copyright-menu .menu .menu-item:last-child:after { display: none; }
#footer #copyright #copyright-menu .menu .menu-item a { color: #3C2B2B; text-decoration: none; }
#footer #copyright #copyright-menu .menu .menu-item a:hover { color: #D2232A; }

.page-template-kontakt #slider iframe { height: 100%; width: 100%; }
.page-template-kontakt .button { margin-top: 20px; }

/* =Responsive
-------------------------------------------------------------- */
@media only screen and (max-width: 70em) { #page { padding-top: 480px; }
  #header { display: none; }
  #header-mobile { display: block; }
  #slider { top: 80px; height: 400px; }
  #bodenbelaege .item { font-size: 0.8rem; line-height: 1.0rem; }
  #bodenbelaege .item h3 { font-size: 0.8rem; margin-bottom: 10px; }
  .slick-prev, .slick-next { transform: translateY(-50%); } }
@media only screen and (max-width: 52.5em) { #footer, #footer #copyright #copyright-menu { text-align: center; }
  #footer #copyright #copyright-menu img { display: block; margin: 20px auto; }
  #bodenbelaege .item { margin-top: 10px; margin-bottom: 10px; font-size: 1.2rem; line-height: 1.2; }
  #bodenbelaege .item h3 { font-size: 1.2rem; margin-bottom: 10px; } }
