@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 300;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-300.eot); src: local('Open Sans Light'), local('OpenSans-Light'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-300.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 300;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-300italic.eot); src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-300italic.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300italic.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300italic.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300italic.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-300italic.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-regular.eot); src: local('Open Sans Regular'), local('OpenSans-Regular'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-regular.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-regular.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-regular.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-regular.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-regular.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 400;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-italic.eot); src: local('Open Sans Italic'), local('OpenSans-Italic'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-italic.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-italic.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-italic.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-italic.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-italic.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 600;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-600.eot); src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-600.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 700;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-700.eot); src: local('Open Sans Bold'), local('OpenSans-Bold'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-700.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 600;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-600italic.eot); src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-600italic.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600italic.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600italic.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600italic.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-600italic.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 700;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-700italic.eot); src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-700italic.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700italic.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700italic.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700italic.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-700italic.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 800;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-800.eot); src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-800.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800.svg#OpenSans) format('svg'); } @font-face {
font-family: 'Open Sans';
font-style: italic;
font-weight: 800;
src: url(//archiv.upf.de/fonts/open-sans-v15-latin-800italic.eot); src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'),
url(//archiv.upf.de/fonts/open-sans-v15-latin-800italic.eot?#iefix) format('embedded-opentype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800italic.woff2) format('woff2'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800italic.woff) format('woff'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800italic.ttf) format('truetype'), url(//archiv.upf.de/fonts/open-sans-v15-latin-800italic.svg#OpenSans) format('svg'); }   html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section{display:block}
nav ul {list-style:none}
blockquote, q{quotes:none}
blockquote:before, blockquote:after,
q:before, q:after{
content:'';
content:none
}
a{
background:transparent;
color:#000;
font-size:100%;
margin:0;
padding:0;
text-decoration:none;
vertical-align:baseline
}
a:hover{
color:#000;
text-decoration:underline
} ins{
background-color:#fff;
color:#000;
text-decoration:none
} mark{
background-color:#ff9;
color:#000; 
font-style:italic;
font-weight:bold
}
del{text-decoration: line-through}
abbr[title], dfn[title]{
border-bottom:1px dotted;
cursor:help
}
table{
border-collapse:collapse;
border-spacing:0;
width:100%
}
table thead th{
font-size:18px;
text-align:left;
text-transform:uppercase
} hr{
display:block;
height:1px;
border:0;   
border-top:1px solid #cccccc;
margin:1em 0;
padding:0
}
input, select{vertical-align:middle}
small{font-size:10px} *{
box-sizing:border-box;
-moz-box-sizing:border-box;
-ms-box-sizing:border-box;
-o-box-sizing:border-box;
-webkit-box-sizing:border-box;
}
html{height:100%}
html,body{
min-height:100%;
height:auto !important;
height:100%
}
body{
background:#fff;
color:#7f7f7f;
font-size:18px;
font-family:'Open Sans', sans-serif;
font-weight:400;
line-height:1.2;
min-height:100%;
height:auto
}
h1,h2,h3,h4,h5,h6{
font-family:"Open Sans",Serif;
font-weight:700;
line-height:1.3;
margin:0 0 15px;
padding:0;
text-align:left
}
h1{
color:#b5182b;
font-size:36px;
font-weight:400;
letter-spacing:2px;
text-transform:uppercase
}
h2{font-size:24px}
h3{font-size:20px}
h4{font-size:18px}
p{
line-height:28px;
margin:0 0 15px;
}
a img{border:0}
ol{
font-weight:700;
list-style-position:inside
} .row-boxed:after,
.row-full:after,
.clearfix:after{
visibility:hidden;
display:block;
font-size:0;
content:" ";
clear:both;
height:0
}
* html .row-boxed,
* html .row-full,
* html .clearfix{zoom:1} *:first-child+html .row-boxed,
*:first-child+html .row-full,
*:first-child+html .clearfix{zoom:1}  .bg-white{background-color:#fff}
.bg-white-transparent{background-color:rgba(255,255,255,0.7)}
.fg-white{color:#fff}
.bg-black{background-color:#000}
.fg-black{color:#000}
.bg-lightgrey{background-color:#efefef}
.fg-darkgrey{color:#444}
.bg-darkgrey{background-color:#444}
.fg-lightgrey{color:#efefef}
.bg-red{background-color:#b5182b}
.fg-red{color:#b5182b} .aligncenter{ 
display:block;
margin:50px auto
}
.alignleft{
float:left;
margin-bottom:25px;
margin-right:25px
}
.alignright{
float:right;
margin-bottom:25px;
margin-left:25px
}
.wp-caption-text{
font-size:12px;
line-height:16px
} .row-boxed{
margin:0 auto 30px;
position:relative;
width:1100px
}
.row-full{
margin-left:auto;
margin-right:auto;
position:relative;
width:100%
}
.row-full:after,
.row-boxed:after{
visibility:hidden;
display:block;
font-size:0;
content:" ";
clear:both;
height:0
}
* html .row-full,
* html .row-boxed{zoom:1} *:first-child+html .row-full,
*:first-child+html .row-boxed{zoom:1} .column{
float:left;
padding-right:20px
}
.column:last-of-type{padding-right:0}
.col1{width:8.33333%}
.col2{width:16.66667%}
.col3{width:25%}
.col4{width:33.33333%}
.col5{width:41.66667%}
.col6{width:50%}
.col7{width:58.33333%}
.col8{width:66.66667%}
.col9{width:75%}
.col10{width:83.33333%}
.col11{width:91.66667%}
.col12{width:100%}
.header{margin-bottom:25px}
.centered{
position: relative;
text-transform:uppercase;
top: 50%;
transition:all 500ms ease;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}
.button{
display:inline-block;
cursor:pointer;
font-size:12px;
margin:15px auto;
max-width:350px;
padding:8px 15px;
text-align:center;
text-decoration:none !important;
text-transform:uppercase;
font-weight:700;
transition:all 250ms ease;
-webkit-transition:all 250ms ease
}
.button:hover{text-decoration:none}
.button-grey{
border:1px solid #999;
color:#999 !important;
}
.button-grey:hover{
background-color:#000;
border:1px solid #000;
color:#fff !important
}
.padding-bottom{padding-bottom:50px}
.padding-top{padding-top:50px}
.content-wrapper{padding:100px !important}
.content{
font-family:"Open Sans",Serif;
font-size:16px;
font-weight:300;
line-height:1.4
}
.content p,
.content li,
.content td{line-height:1.9}
.content p{margin-bottom:15px}
.content p:last-of-type{margin-bottom:0}
.content a{
text-decoration:underline;
transition:all 100ms ease
}
.content a:hover{
color:#ef962d;
text-decoration:none
}
.content ul{
margin-bottom:15px;
margin-left:25px
}
.content li{
list-style:square;
padding-bottom:5px;
padding-top:5px
}
.content img{
height:auto;
max-width:100%
}
.subtitle{
margin-bottom:65px;
position:relative;
text-align:center
}
.hide{display:none}
.divider-top{
border-top:2px solid #7e7e7e;
padding-top:80px !important
}
.text-center{text-align:center}
.text-border-bottom{
display:inline-block;
position:relative
}
.text-border-bottom:after{
background-color:#000;
content:"";
display:block;
height:2px;
margin:5px auto 20px;
text-align:center;
width:65%	
}
.page-header-title{
color:#000;
font-size:44px;
font-weight:300;
line-height:54px;
margin-bottom:0;
padding:75px 0
}
.loading-symbol{
display:block;
margin:25px auto
}
.custom-hr{
display:block;
margin:0 auto
}
.no-padding{padding:0}
.no-margin{margin:0} #header{
height:133px;
position:relative
}
#header > .row-boxed{height:133px}
#logo{
left:0;
margin:auto;
position:absolute;
top:60px
}
#header-navigation{
bottom:0;
display:block;
font-family:"Open Sans",sans-serif;
height:100%;
margin:auto;
position:absolute;
right:0;
text-align:right;
top:0;
}
#header-navigation li{
display:inline-block;
height:100%;
position:relative;
z-index:80
}
#header-navigation li a{
background:#000;
color:#fff;
display:block;
font-size:18px;
font-weight:700;
height:100%;
letter-spacing:2px;
padding:86px 10px 0;
text-align:center;
transition:all 250ms ease;
text-transform:uppercase
}
#header-navigation .current_page_item a,
#header-navigation li:hover a{
background:#fff;
color:#b5182b;
text-decoration:none;
}
#header-navigation li ul{display: none;}
#header-navigation li a:hover{z-index:99}
#header-navigation li:hover > ul{
display:block;
opacity:0;
z-index:98;
position:absolute;
width:100%;
-webkit-animation: fadein 250ms forwards; -moz-animation: fadein 250ms forwards; -ms-animation: fadein 250ms forwards; -o-animation: fadein 250ms forwardss; animation: fadein 250ms forwards;
}
#header-navigation li ul li:hover > ul{
left:250px;
top:0
}
#header-navigation li:hover ul li{
display:block !important;
position:relative;
width:330px;
z-index:77
}
#header-navigation li:hover ul li a{
border-right:15px solid #000;
color:#000;
font-size:16px !important;
font-weight:400;
height:auto;
padding:15px 10px !important;
text-align:left;
transition:all 250ms ease;
z-index:18
}
#header-navigation li:hover ul li a:hover {
border-right:15px solid #b5182b !important;
color:#b5182b;
z-index: 11
}
@keyframes fadein{
from { opacity: 0; }
to   { opacity: 1; }
} @-moz-keyframes fadein{
from { opacity: 0; }
to   { opacity: 1; }
} @-webkit-keyframes fadein{
from { opacity: 0; }
to   { opacity: 1; }
} @-ms-keyframes fadein{
from { opacity: 0; }
to   { opacity: 1; }
} @-o-keyframes fadein{
from { opacity: 0; }
to   { opacity: 1; }
} #home-parallax-header{
height:800px;
position:relative;
width:100%;
background-image: url(//archiv.upf.de/wp-content/themes/upf-custom/lib/media/images/home-wallpaper.jpg);
background-repeat: no-repeat;
background-size: cover;
background-position: bottom center;
}
#home-parallax-header .cta-wallpaper{
bottom:150px;
left:0;
margin:auto;
position:absolute;
right:0;
text-align:center;
text-transform:uppercase;
}
#home-parallax-header .cta-tagline{
color:#fff;
display:inline-block;
font-size:44px;
font-weight:400;
letter-spacing:2px;
margin:0 auto 30px;
padding:25px;
position:relative;
text-shadow: 1px 1px 5px #333;
}
#home-parallax-header .cta-button{
border:2px solid #fff;
color:#fff;
display:block;
font-size:14px;
font-weight:800;
margin:0 auto;
max-width:250px;
padding:15px 35px;
text-align:center;
transition:all 250ms ease-in-out;
}
#home-parallax-header .cta-button:hover{
background-color:#b5182b;
border-color:#b5182b;
color:#fff;
text-decoration:none;
}
#home-content{
margin-bottom:0;
padding:50px 0 0;
} .portfolio-list-fullwidth {
display:block;
font-size:0;
list-style:none;
position:relative;
text-align:center;
width:100%;
z-index:4;
}
.portfolio-list-fullwidth li {
display:block;
float:left;
overflow:hidden;
width:25%;
}
.portfolio-list-fullwidth li a {
display:block;
height:100%;
position:relative;
width:100%;
}
.portfolio-list-fullwidth li a img {
height:auto;
max-width:100%;
position:relative;
width:100%;
z-index:2;
}
.portfolio-list-fullwidth li a:hover .caption {
left:0;
z-index:3;
}
.portfolio-list-fullwidth li a .caption {
background-color:#b5182b;
color:#fff;
height:100%;
left:-100%;
padding:15px;
position:absolute;
text-align:center;
top:0;
transition:all 250ms ease-in-out;
width:100%;
z-index:1;
}
.portfolio-list-fullwidth li a .tb {
display:table;
height:100%;
width:100%;
}
.portfolio-list-fullwidth li a .tb-cell {
display:table-cell;
text-align:center !important;
vertical-align:middle;
}
.portfolio-list-fullwidth li a .tb-cell h3 {
margin-bottom:13px;
padding-bottom:17px;
position:relative;
text-align:center !important;
}
.portfolio-list-fullwidth li a .tb-cell h3:after { }
.portfolio-list-fullwidth li a .tb-cell p {
font-size:16px;
line-height:1.3;
margin-bottom:0;
} #default-page{} #single-page .thumbnail{padding-right:25px} table.preisliste{
border-collapse:collapse;
margin:0 auto 50px;
width:100%
}
table.preisliste tr > td{
border-bottom:1px solid #ccc;
padding:10px 10px 10px 0;
vertical-align:top		
}
table.preisliste tr > td:first-child{
}
table.preisliste tr > td:nth-child(2){
font-weight:600;
text-align:right
}
.equipment{
background-color:#f8f8f8;
padding:15px
} #referenzen-wall{
list-style:none;
margin:0;
width:100%
}
#referenzen-wall li{
padding:10px;
text-align:center
} .wpcf7 p{margin:25px auto 0}
.wpcf7 select,
.wpcf7 input[type=text],
.wpcf7 input[type=tel],
.wpcf7 input[type=email],
.wpcf7 textarea{
border:0;
border-bottom:1px dashed #000;
font-family:"Open Sans",Verdana;
font-size:14px;
margin-bottom:10px;
outline:none;
padding:10px;
width:100%
}
.wpcf7 input[type=text]:focus,
.wpcf7 input[type=tel]:focus,
.wpcf7 input[type=email]:focus,
.wpcf7 textarea:focus{
border-bottom:1px solid #b5182b
}
.wpcf7 select{
height:40px
}
.wpcf7 textarea{height:100px}
.wpcf7 input[type=submit]{
background:#b5182b;
border:0;
color:#fff;
cursor:pointer;
display:block;
margin:0;
padding:15px;
text-transform:uppercase;
transition:all 250ms ease;
width:100%
}
.wpcf7 input[type=submit]:hover{background-color:#83b817}
.wpcf7-form-control-wrap{margin-bottom:10px}
#kontakt-logo{
display:block;
margin-bottom:25px
}
#kontakt-infobox{}
#kontakt-infobox h2{margin-bottom:0}
#kontakt-infobox em{
display:block;
font-size:14px;
margin-bottom:15px
}
#kontakt-gmap{
margin-top:25px;
width:100%
} #footer{margin-top:100px}
#footer .row-boxed{border-top:1px dashed #000}
#footer,
#footer .row-boxed{
color:#000;
font-size:12px;
height:50px;
margin-bottom:0;
text-align:center
}
#footer ul{
display:inline-block;
list-style:none;
margin:0;
padding:0
}
#footer li{
display:inline
}
#footer a{
border-right:1px dashed #000;
color:#000;
height:50px;
line-height:50px;
margin-right:5px;
padding-right:5px
}
#footer a:last-of-type{border-right:0}
#fb-icon{
margin-left:10px;
position:relative;
top:5px
}
#scroll-to-top{
background:#b5182b;
background:#000;
bottom:-100px;
position:fixed;
right:75px;
transition:all 750ms cubic-bezier(.23,.42,.28,.89);
z-index:100
}
#scroll-to-top.visible{bottom:75px} .parallax-header-full,
.parallax-header{
position:absolute;
top:0;
width:100%
}
.parallax-header{height:800px}
.parallax-header-full{height:100%} .accordion, .accordion *{
-webkit-box-sizing:border-box; 
-moz-box-sizing:border-box; 
box-sizing:border-box;
}
.accordion{
overflow:hidden;
border-radius:3px;
background:#f7f7f7;
}
.accordion-section-title{
background:#173567;
color:#fff;
display:inline-block;
font-size:1.2em;
padding:15px;
text-decoration:none !important;
transition:all linear 0.15s;
width:100%
}
.accordion-section-title.active, .accordion-section-title:hover{
background:#e37222;
color:#fff !important;
text-decoration:none
}
.accordion-section:last-child .accordion-section-title{
border-bottom:none;
color:#fff
}
.accordion-section-content{
padding:15px;
display:none;
}
.accordion-section-content.open{display:block} @media screen and (max-width: 1024px){
h1{
letter-spacing:0;
font-size:26px;
}
h2{
font-size:20px;
}
img{
height:auto;
max-width:100%
}
.row-boxed{width:100%}
.column{
display:block;
float:none;
margin-bottom:15px
}
.col1,
.col2,
.col3,
.col4,
.col5,
.col6,
.col7,
.col8,
.col9,
.col10,
.col11,
.col12{width:100%}
#header{
padding:10px;
height:auto;
}
#header > .row-boxed{height:auto;}
#logo{
position:relative;
display:block;
margin:0 auto;
top:auto;
bottom:auto;
}
#home-parallax-header .cta-wallpaper{bottom:auto}
}
@media screen and (max-width: 720px){
.portfolio-list-fullwidth li {
width: 50%;
}
}
@media screen and (max-width: 360px){
.row-boxed{width:90%}
.column{
padding-left:0;
padding-right:0
}
.hide{display:none}
#contact-bar{
padding-top:25px;
text-align:center
}
#oeffnungszeiten{
margin:25px auto;
width:100%
}
#oeffnungszeiten td:first-of-type{width:30%}
#oeffnungszeiten td:last-of-type{width:70%}
.header-navigation{display:none}
}