@import url(https://use.typekit.net/hhp3wkf.css);
:root {
--header-height: 7em;
}
@media (max-width: 600px) {
:root {
--header-height: 5em;
}
.entry-content {
font-size: 20px;
line-height: 1.2;
}
footer {
font-size: 20px;
line-height: 1.2;
}
}
* {
font-smoothing: antialiased;
-webkit-font-smoothing: antialiased;
box-sizing: border-box;
}
body {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
a {
text-underline-offset: 0.2em;
} .entry-content,
footer {
margin-block-start: 0 !important;
}
.entry-content > * {
margin-block-start: 0 !important;
}
.entry-content > .wp-block-group.has-background {
padding-top: 4.5em;
padding-bottom: 4.5em;
}
*:first-child {
margin-block-start: 0;
margin-top: 0;
}
*:last-child {
margin-block-end: 0;
margin-bottom: 0;
}
body {
padding-top: var(--header-height) !important;
}
header {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 9999;
min-height: var(--header-height);
background: #fff;
}
header > * {
}
header nav {
text-transform: uppercase;
font-weight: bold;
}
header .nav-wrap {
margin-top: 3.5em;
}
@media (max-width: 600px) {
header .nav-wrap {
display: flex;
flex-flow: column;
margin-top: 1em;
align-items: flex-end;
}
button.wp-block-navigation__responsive-container-open {
margin-right: 0.5em;
transform: scaleX(2);
transform-origin: right;
}
}
@media (max-width:599px) {
header ul.wp-block-navigation__container.is-responsive {
gap: 0 !important;
}
header .wp-block-navigation__container.is-responsive li a {
font-size: 2em !important;
}
}
@media (min-width: 1100px) {
header .wp-block-navigation__container.is-responsive li a {
font-size: 1.25em !important;
}
}
header .current-menu-ancestor,
header .current-menu-item {
color: var(--wp--preset--color--primary) !important;
}
header .wp-block-site-logo.is-default-size img {
width: 12em;
height: auto;
position: absolute;
border-radius: 100%;
box-shadow: 0 2em 2em rgba(0,0,0,0.3);
top: 1em;
}
@media (max-width: 600px) {
header .wp-block-site-logo.is-default-size img {
width: 6em;
left: 0.5em
}
}	
.social-icons {
gap: 0;
}
@media (min-width: 600px) {
.subheader-background {
height: 0;
background: rgba(61, 51, 41, 0.97);
transition: all 0.2s ease-out;
overflow: hidden;
}
.subheader-background.is-active {
height: calc(100vh - 4em);
}
.subheader-background::before {
content: "";
display: block;
width: 30em;
height: 30em;
background: url(//alponte-oberwald.ch/app/themes/puro/assets/images/lotus.svg) no-repeat center;
background-size: contain;
opacity: 0;
transform: translateX(-25%);
transition: all 0.2s ease-out;
margin-top: 15em;
}
.subheader-background.is-active::before {
opacity: 0.5;
}
header nav,
header nav ul,
header nav ul li {
position: static !important;
}
header nav ul ul.wp-block-navigation__submenu-container {
padding-top: 3em;
font-size: 1em;
line-height: 1;
position: absolute !important;
left: 0;
width: calc(100vw - 6em) !important;
max-width: 1160px !important;
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
color: var(--wp--preset--color--tertiary) !important;
display: flex !important;
flex-flow: row wrap !important;
gap: 0 1em;
}
header nav ul ul.wp-block-navigation__submenu-container li a {
padding-left: 0 !important;
padding-right: 0 !important;
}
@media (min-width: 1000px) {
header nav ul ul.wp-block-navigation__submenu-container {
padding-top: 3em;
font-size: 1.1em;
line-height: 1;
}
}
@media (min-width: 1100px) {
header nav ul ul.wp-block-navigation__submenu-container {
padding-top: 3em;
font-size: 1.25em;
line-height: 1;
}
}
@media (min-width: 1300px) {
header nav ul ul.wp-block-navigation__submenu-container {
padding-top: 3em;
font-size: 1.5em;
line-height: 1;
}
}
header nav ul ul.wp-block-navigation__submenu-container li {
width: calc(33.33% - 0.67em);
}
@media (max-width: 800px) {
header nav ul ul.wp-block-navigation__submenu-container li {
width: calc(50% - 1em);
}
}
header nav ul ul .current-menu-item {
color: #fff !important;
}
}
@media (max-width: 599px) {
.wp-block-navigation__responsive-container {
padding: 2em 1em !important;
}
.wp-block-navigation__responsive-container ul {
gap: 0.5em !important;
}
.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content > ul {
font-size: 1.4em;
}
.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content > ul ul {
font-size: 0.75em;
}
}
.hero-gallery {
gap: 0 !important;
margin-left: 2.375em;
position: relative;
}
.hero-gallery.logo-cover {
align-items: stretch !important;
}
.hero-gallery::before {
content: "";
display: block;
position: absolute;
background: var(--wp--preset--color--primary);
top: 0;
right: 100%;
width: 2.375em;
height: 100%;
}
.entry-content > .hero-gallery:first-child::before { background: #69465e; }
.hero-gallery.has-foreground-background-color::before { background: var(--wp--preset--color--foreground); }
.hero-gallery.has-secondary-background-color::before { background: var(--wp--preset--color--secondary); }
.hero-gallery.has-tertiary-background-color::before { background: var(--wp--preset--color--tertiary); }
@media (min-width: 1236px) {
.hero-gallery {
margin-left: calc((100vw - 1160px) / 2);
}
.hero-gallery::before {
width: calc((100vw - 1160px) / 2);
}
}
.hero-gallery > * {
width: 54% !important;
}
@media (max-width: 700px) {
.hero-gallery > * {
display: none;
}
}
.hero-gallery > * > img {
width: 100%;
height: auto;
}
.hero-gallery.logo-cover figure > img {
height: 100%;
object-fit: cover;
}
.hero-gallery > *.is-small {
width: 46% !important;
}
@media (max-width: 700px) {
.hero-gallery > *.is-small {
width: 100% !important;
display: block;
}
}
.hero-gallery > *.is-small > img {
width: 100%;
height: auto;
}
.hero-gallery.logo-cover .header-logo-holder {
padding-top: 2em;
padding-bottom: 2em;
height: 100%;
display: flex;
flex-flow: column wrap;
justify-content: space-between;
}
.hero-gallery.logo-cover .wp-block-site-logo.is-default-size {
width: 100%;
}
.hero-gallery.logo-cover .wp-block-site-logo.is-default-size a {
display: block;
width: 70%;
margin: 0 auto;
}
.hero-gallery.logo-cover .wp-block-site-logo.is-default-size img {
width: 100%;
height: auto;
}
footer p {
margin: 0 !important;
line-height: 1.2;
}
footer > .wp-block-group {
padding-top: 3em;
padding-bottom: 1em;
}
footer .imprint {
gap: 2em;
margin-top: 4em;
}
footer .imprint > p {
position: relative;
}
footer .imprint > p:not(:first-child)::before {
content: "|";
display: block;
position: absolute;
left: -1em;
}
form {
color: var(--wp--preset--color--foreground) !important;
display: flex;
flex-flow: row wrap;
margin-left: 0;
position: relative;
margin-bottom: 4em;
}
form .form-row {
width: 100% !important;
margin-bottom: 0.5rem;
}
form .form-row.double {
gap: 10px;
display: flex;
}
form .form-row.double > *  {
flex: 1
}
.form-row.checkbox-row {
}
.form-row.space-up {
margin-top: 1.5em;
}
.form-row:not(.checkbox-row) label {
display: flex;
background: rgba(255,255,255,0.9);
width: 100%;
padding: 0.7em 1em;
}
.form-row label > span:first-child {
white-space: nowrap;
margin-right: 0.5em;
}
.form-row label input {
flex: 1 !important;
display: block;
width: auto;
}
.wpcf7-form-control-wrap {
display: block;
flex: 1;
}
form select,
form textarea,
form input[type='text'],
form input[type='email'],
form input[type='tel'],
form input[type='number'],
form input[type='submit'] {
box-sizing: border-box;
background: transparent;
color: #333;
appearance: none;
-webkit-appearance: none;
border: 2px solid transparent;
border-radius: 0;
padding: 0;
font: inherit;
line-height: 100%;
width: 100%;
outline: none;
transition: all 0.2s ease-in-out;
}
form textarea {
height: 8.2em;
}
form input::placeholder,
form textarea::placeholder {
color: var(--wp--preset--color--foreground);
}
form input[type='checkbox'] {
border: 2px solid #EAE6DE;
background: #EAE6DE;
width: 1.25em;
height: 1.25em;
appearance: none;
-webkit-appearance: none;
margin: 0 !important;
display: inline-block;
transform: translateY(2px);
border-radius: 0;
}
form input[type='checkbox']:checked {
background: #C60C0E;
border-color: #C60C0E;
}
.wpcf7-checkbox .wpcf7-list-item {
display: block;
margin-top: 0.5em;
}
.double-checkboxes .wpcf7-checkbox {
display: flex;
flex-flow: row wrap;
gap: 1em;
}
.double-checkboxes .wpcf7-checkbox .wpcf7-list-item {
width: calc(50% - 1em);
margin-top: 0;
}
form .wpcf7-list-item {
margin-left: 0 !important
}
form select:focus,
form input[type='text']:focus,
form input[type='email']:focus,
form input[type='tel']:focus,
form input[type='number']:focus,
form input[type='submit']:focus {
border: 2px solid #EAE6DE;
}
form select {
background:  url(//alponte-oberwald.ch/app/themes/puro/assets/images/arrow-down-white.svg) no-repeat center right 0.75em;
background-size: 1em auto;
border: 2px solid #EAE6DE;
font-weight: bold;
}
form input[type='submit'] {
background: var(--wp--preset--color--secondary);
color: #fff;
border: 0 !important;
padding: 0.7em 1em;
font-weight: bold;
width: auto;
font-size: 1.2rem;
line-height: 120%;
padding-left: 2.5rem;
padding-right: 2.5rem;
cursor: pointer;
background-repeat: no-repeat;
background-position: center right 1em;
background-size: 1.1em;
overflow: hidden;
margin-top: 1em !important;
font-family: var(--wp--preset--font-family--headlines);
text-transform: uppercase;
}
.hidden {
display: none;
}
@media (min-width: 700px){
.flex-form {
display: flex;
flex-flow: row wrap;
gap: 3em;
}
.flex-form > .half {
width: calc(50% - 1.5em);
}
}
iframe[src*="maps"] {
width: 100% !important;
max-width: 100% !important;
}
.grecaptcha-badge {
visibility: hidden !important;
}
@media (max-width: 700px) {
.entry-content > .wp-block-cover {
min-height: unset !important;
aspect-ratio: 10 / 7 !important;
}
}
@media (max-width: 600px) {
:where(.wp-block-group.has-background){
padding: 1em !important;
}
}
.entry-content a {
color: inherit !important;
}
.wpcf7-response-output {
color: #fff !important;
}