/* */
 
@font-face {
font-family: "Regular";
src: url("../webfonts/PPObjectSans-Regular.woff2") format("woff2");
font-weight: normal;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: "Bold";
src: url("../webfonts/PPObjectSans-Bold.woff2") format("woff2");
font-weight: normal;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: "Serif_Regular";
src: url("../webfonts/PPWoodland-Regular.woff2") format("woff2");
font-weight: normal;
font-style: normal;
font-display: swap;
}


:root {
/* col sizes - 12 columns */
/*
--col-1: 8.443%;
--col-space: 1.319%;
*/
--col-1: 8.442982456140351%;
--col-space: 1.315789473684211%;
--col-1-no-space: calc(var(--col-1) - var(--col-space));

--col-1-popup: 14.619%;
--col-space-popup: 2.339%;
--col-1-no-space-popup: calc(var(--col-1-popup) - var(--col-space-popup));

}

html {
min-height: 0vw;
/*font-size: 1vw;*/
/*font-size: max(1vw, 12px);*/
font-size: clamp(12px, 1vw, 260px);/* seem to work in safari too */
-webkit-tap-highlight-color: transparent;
-webkit-text-size-adjust: 100%;
background-color: #ffffff;
scrollbar-gutter: stable;
}

body {
box-sizing: border-box;
border: 0;
color: #1E3228;
font-family: "Regular", sans-serif;
font-weight: normal;
font-size: 1rem;
line-height: 1.3;
padding: 0;
margin: 0 auto;
text-align: center;
overflow-x: hidden;
-webkit-overflow-scrolling: touch;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}


.contentGrid {
width: calc(100% - 7.5rem);
margin: 0 auto;
margin-left: 3.75rem;
margin-right: 3.75rem;
}

.dev .contentGrid {
background: repeating-linear-gradient(90deg, rgba(226, 254, 255, 0.5), rgba(226, 254, 255, 0.5) var(--col-1-no-space), rgba(255, 255, 255, 0.1) var(--col-1-no-space), rgba(255, 255, 255, 0.1) var(--col-1));
}

/*
.dev .pageHeader .contentGrid {
background: transparent;
}
*/

.dev .popUpBlock-wide:not(.popUpBlock-fullwide) .contentGrid {
background: repeating-linear-gradient(90deg, rgba(226, 254, 255, 0.5), rgba(226, 254, 255, 0.5) var(--col-1-no-space-popup), rgba(255, 255, 255, 0.1) var(--col-1-no-space-popup), rgba(255, 255, 255, 0.1) var(--col-1-popup));
}

.dev .pageFooter .contentGrid, 
.dev .sitemapWrapper .contentGrid {
background: repeating-linear-gradient(90deg, rgba(226, 254, 255, 0.2), rgba(226, 254, 255, 0.2) var(--col-1-no-space), rgba(255, 255, 255, 0.1) var(--col-1-no-space), rgba(255, 255, 255, 0.1) var(--col-1));
}

.pageHeader {
-moz-user-select: none;
-khtml-user-select: none;
-webkit-user-select: none;
user-select: none;
}

.pageWrapper {
width: 100%;/* max page with */
max-width: 100%;
padding: 0;
margin: 0 auto;
background-color: #ffffff;
}

.pageFooter {
width: 100%;
padding: 3.5rem 0;
margin: 0 auto;
}


img {
max-width: 100%;
height: auto;
border: 0;
}

*:focus {
outline: none;
}

a {
color: inherit;
text-decoration: none;
border: 0px;
outline: none;
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
transition: 0.3s;
}

a:link {
outline: none;
}

a:visited {
outline: none;
}

a:hover {
outline: none;
}

a[href^="mailto"] {
/**/
}

a[href^="tel"] {
text-decoration: none;
outline: none;
color: inherit;
white-space: nowrap;
}

a[href^="tel"]:hover {
text-decoration: none;
outline: none;
}

div, a, span, p, h1, h2, h3, h4, em {
box-sizing: border-box;
border: 0;
}

b, strong, .boldStyle {
font-family: "Bold", sans-serif;
font-weight: normal;
}

sup, sub {
font-size: 0.5em;
}

span:before, 
span:after {
box-sizing: border-box;
}

h1, h2, h3, h4 {
display: block;
margin-top: 0;
margin-bottom: 0;
-webkit-transition: 0.2s;
-moz-transition: 0.2s;
-o-transition: 0.2s;
transition: 0.2s;
}

p {
margin-top: 0;
}

hr {
width: 100%;
height: 0;
border: 0;
background-color: #FCBFFC;
border-color: #FCBFFC;
border-top: 1px solid #FCBFFC;
margin: 1.5rem 0 1.5rem 0;
}


ul {
padding: 0 0 0 1rem;
margin-top: 0;
box-sizing: border-box;
}

ol {
padding: 0 0 0 1rem;
margin-top: 0;
box-sizing: border-box;
}

input, select, textarea {
font-family: "Regular", sans-serif;
font-size: inherit;
}

input, select {
padding: 0.65rem;
margin: 0;
box-sizing: border-box;
border: 0.0625rem solid #dddddd;
border-radius: 0;
outline: none;
}

select {
width: 100%;
margin: 0;
box-sizing: border-box;
padding: 0.75rem 1.875rem 0.75rem 0.625rem;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: #ffffff;
background-image: url(../images/select-arrow-right.svg);
background-repeat: no-repeat;
background-size: auto 0.5rem;
background-position: right 0.625rem top 50%/*0.625rem*/;
cursor: pointer;
}

select option {
padding: 0.625rem;
border: 0;
outline: 0;
}

select::-ms-expand {
display: none;
}


select:-moz-focusring {
border: 0;
outline: 0;
color: transparent;
text-shadow: 0 0 0 #000;
}

select:-moz-focus-inner {
border: 0;
outline: 0;
}

.alignLeft {
text-align: left;
}

.alignRight {
text-align: right;
}

.alignCenter {
text-align: center;
}


input[type="checkbox"] {
float: left;
width: 1.25rem;
height: 1.25rem;
box-sizing: border-box;
border: 0;
border-radius: 0;
padding: 0.3125rem;
margin: 0 0.625rem 0 0;
}

textarea {
float: left;
width: 100%;
height: 12.5rem;
box-sizing: border-box;
border: 0.0625rem solid #dddddd;
border-radius: 0;
padding: 0.625rem;
margin: 0;
color: #1E3228;
-webkit-appearance: none;
resize: none;
}

.checkboxStyle {
display: inline-block;
width: 1.25rem;
height: 1.25rem;
margin: 0 0.625rem 0 0;
border: 0.0625rem solid #dddddd;
background-color: #ffffff;
vertical-align: middle;
overflow: hidden;
position: relative;
}

.checkboxStyle label {
cursor: pointer;
position: absolute;
width: 1.25rem;
height: 1.25rem;
top: 0;
left: 0;
background: transparent none repeat scroll 0% 0%;
border: 0;
}

.checkboxStyle label::after {
opacity: 0.1;
content: "";
position: absolute;
width: 0.562rem;
height: 0.312rem;
background: transparent none repeat scroll 0% 0%;
top: 0.187rem;
left: 0.25rem;
border-width: medium medium 0.125rem 0.125rem;
border-style: none none solid solid;
border-color: -moz-use-text-color -moz-use-text-color #dddddd #dddddd;
-moz-border-top-colors: none;
-moz-border-right-colors: none;
-moz-border-bottom-colors: none;
-moz-border-left-colors: none;
border-image: none;
-moz-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.checkboxStyle input[type="checkbox"] {
width: 1.25rem;
height: 1.25rem;
visibility: hidden;
}

.checkboxStyle input[type="checkbox"]:checked + label::after {
opacity: 1 !important;
}

form.formStyles .inputRow > input[type="text"], 
form.formStyles .inputRow > select, 
form.formStyles .inputRow > textarea {
width: 100%;
}

form.formStyles .inputRow > select {
color: #000;
border-color: #000;
}

div > svg {
display: block;
margin: 0;
}

video {
display: block;
width: 100%;
max-width: 100%;
}



.popUpBlock.popUpBlock-wide:not(.popUpBlock-fullwide) .contentGrid {
width: calc(100% - 7.5rem);
margin-left: 3.75rem;
margin-right: 3.75rem;
}

.wordWrap {
word-wrap: break-word;
}

.autoHyphens {
word-wrap: break-word;
word-break: break-word;
-webkit-hyphens: auto;
   -moz-hyphens: auto;
    -ms-hyphens: auto;
        hyphens: auto;
}

.noHyphens {
white-space: nowrap;
-webkit-hyphens: none !important;
   -moz-hyphens: none !important;
    -ms-hyphens: none !important;
        hyphens: none !important;
}

/* ------------- over all ------------ */

.overAllWrapper {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(255,255,255,0.8);
z-index: 9999;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}

.overAllWrapper-darker {
background: rgba(0,0,0,0.75) !important;
}

/* ------------- loading ani ------------ */
.overAllWrapperLoading {
background: rgba(0,0,0,0.75);
}

.overAllWrapperLoading.darker {
background: rgba(0,0,0,0.85) !important;
}


.loader {
margin: -2rem 0 0 -2rem;
font-size: 2rem;
position: fixed;
top: 50%;
left: 50%;
text-indent: -9999em;
border-top: 0.45rem solid rgba(0,0,0,0.5);
border-right: 0.45rem solid rgba(0,0,0,0.5);
border-bottom: 0.45rem solid rgba(0,0,0,0.75);
border-left: 0.45rem solid rgba(0,0,0,1);
-webkit-transform: translateZ(0);
-moz-transform:    translateZ(0);
-ms-transform:     translateZ(0);
-o-transform:      translateZ(0);
transform:         translateZ(0);
-webkit-animation: load8 1s infinite linear;
animation: load8 1s infinite linear;
}

.loader, .loader:after {
border-radius: 50%;
width: 4rem;
height: 4rem;
}

@-webkit-keyframes load8 {
0% {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
100% {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}
}

@keyframes load8 {
0% {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
100% {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}
}

.nouserSelect {
-moz-user-select: none;
-khtml-user-select: none;
-webkit-user-select: none;
user-select: none;
/* desable saving */
-webkit-touch-callout: none;
}

.noscriptStyle {
position: fixed;
top: 0;
left: 0;
z-index: 20001;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
box-sizing: border-box;
border: 0;
padding: 1rem;
margin: 0 auto;
font-size: 1rem;
background-color: rgba(232,0,47,0.75);/*red opaque*/
color: #ffffff;
text-align: center;
}

.noscriptStyle a {
display: block;
}

/* IE9 < */
.getNewerbrowser {
display: none;
position: fixed;
left: 0;
bottom: 0;
z-index: 20002;
width: 100%;
box-sizing: border-box;
border: 0;
padding: 0.6rem 2rem 0.6rem 2rem;
margin: 0;
text-align: center;
background-color: #e8002f;/*red*/
color: #ffffff;
font-size: 1rem;
}

.getNewerbrowser a {
color: #ffffff;
}



/* mobiles */
@media all 
and (max-width: 750px) {

:root {
/* col sizes - 6 columns */

--col-1: 17.164179104477612%;
--col-space: 2.985074626865672%;
--col-1-no-space: calc(var(--col-1) - var(--col-space));

--col-1-popup: 17.164179104477612%;
--col-space-popup: 2.985074626865672%;
--col-1-no-space-popup: calc(var(--col-1-popup) - var(--col-space-popup));

}

html {
font-size: 1vw;
font-size: max(1vw, 16px);
}

body {
font-size: 1rem;
overflow-x: hidden;
}

.pageHeader {
/**/
}

.contentGrid {
width: calc(100% - 3rem);
margin: 0 auto;
margin-left: 1.5rem;
margin-right: 1.5rem;
}

.popUpBlock.popUpBlock-wide:not(.popUpBlock-fullwide) .contentGrid {
width: calc(100% - 3rem);
margin-left: 1.5rem;
margin-right: 1.5rem;
}


}



/* Safari only hack */
@supports (hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none) {	

    table.percentAnimated > tbody > tr.backgroundFill { 
        background-image: none !important; 
    }

}



@media all and (display-mode: fullscreen) {
	/**/
}
