/*
Theme Name: DP Apollo Child
Theme URI: https://www.doppelpack.com
Author: Timon Scheibner | Doppelpack Werbeagentur GmbH
Author URI: https://www.doppelpack.com
Template: dp-apollo
Description: Child theme for DP Apollo
Version: 3.0.0
*/


/* ============================================================= */
/* Base
/* ============================================================= */

html {
    --scrollbar-foreground: #a6895c;
    --scrollbar-background: #131313;
}

/* Works on Firefox */
* {
    scrollbar-width: auto;
    scrollbar-color: var(--scrollbar-foreground) var(--scrollbar-background);
}

/* Works on Chrome, Edge, and Safari */
*::-webkit-scrollbar {
    width: 15px;
}

*::-webkit-scrollbar-track {
    background: var(--scrollbar-background);
}

*::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar-foreground);
    border-radius: 0;
    border: 2px solid var(--scrollbar-background);
}

body {
    font-size: 18px;
    font-weight: 300;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 1em;
    margin-bottom: 0.5em;
}

p {
    margin-top: 1em;
    margin-bottom: 1em;
}

a {
    transition: all 0.15s linear;
}

a:focus,
a:active,
a:hover {
    color: var(--wp--preset--color--secondary, #222222);
}

button {
    text-transform: uppercase;
    font-weight: 300;
    transition: all 0.15s linear;
}

iframe {
    border: none;
}

/* ============================================================= */
/* Helper Classes
/* ============================================================= */


/* ============================================================= */
/* Site Header
/* ============================================================= */

#scroll-to-top {
    display: none;
}


/* ============================================================= */
/* Entry Header
/* ============================================================= */

/* Featured Media
/* ------------------------------------------------------------- */

.featured-media {
    max-height: 58vh;
}

.featured-media:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--wp--preset--color--secondary, #222222);
    opacity: 0.4;
}


/* ============================================================= */
/* Site Content
/* ============================================================= */

body.search #site-content {
    margin-bottom: 2rem;
}

body.error404 #site-content {
    margin-bottom: 4rem;
}

/* ============================================================= */
/* Gutenberg Blocks
/* ============================================================= */

.is-style-outline > .wp-block-button__link:not(.has-text-color),
.wp-block-button__link.is-style-outline:not(.has-text-color) {
    color: var(--wp--preset--color--primary, #BD9E77);
}

/*
* Search and File Block button styles.
* Necessary until the following issues are resolved in Gutenberg:
* https://github.com/WordPress/gutenberg/issues/36444
* https://github.com/WordPress/gutenberg/issues/27760
*/

.wp-block-search__button,
.wp-block-file .wp-block-file__button {
    background-color: var(--wp--preset--color--primary, #BD9E77);
    border-radius: 0;
    border: none;
    color: #ffffff;
    font-size: 1em;
    padding: 0.6em 1.2em;
}

/*
 * Button hover styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

.wp-block-button__link,
.wp-block-search__button,
.wp-block-file .wp-block-file__button {
    transition: all 0.15s linear;
}

/* Outline */

.is-style-outline > .wp-block-button__link.has-primary-background-color {
    background-color: transparent!important;
    border-color: var(--wp--preset--color--primary, #BD9E77);
    color: var(--wp--preset--color--primary, #BD9E77);
}

/* Secondary */

.wp-block-button__link.has-secondary-background-color {
    background-color: var(--wp--preset--color--secondary, #222222) !important;
    border-color: var(--wp--preset--color--secondary, #222222);
    color: #ffffff;
}

/* Secondary - Outline */

.is-style-outline > .wp-block-button__link.has-secondary-background-color {
    background-color: transparent!important;
    border-color: var(--wp--preset--color--secondary, #222222);
    color: var(--wp--preset--color--secondary, #222222);
}

/* White */

.wp-block-button__link.has-white-background-color {
    background-color: #ffffff!important;
    border-color: #ffffff;
    color: var(--wp--preset--color--primary, #BD9E77);
}

/* White - Outline */

.is-style-outline > .wp-block-button__link.has-white-background-color {
    background-color: transparent!important;
    border-color: #ffffff;
    color: #ffffff;
}

/* Pastell rose */

.wp-block-button__link.has-pastellrose-background-color {
    border-color: var(--wp--preset--color--secondary, #222222);
    color: var(--wp--preset--color--secondary, #222222);
}

/* Pastell rose - Outline */

.is-style-outline > .wp-block-button__link.has-pastellrose-background-color {
    background-color: #ffffff!important;
    border-color: var(--wp--preset--color--pastellrose);
    color: var(--wp--preset--color--secondary, #222222);
}


/* Hover - all Buttons */

.wp-block-button__link:hover,
.is-style-outline > .wp-block-button__link:not(.has-text-color):hover,
.wp-block-button__link.is-style-outline:not(.has-background):hover,
.wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-button__link.has-secondary-background-color:hover,
.is-style-outline > .wp-block-button__link.has-secondary-background-color:hover,
.wp-block-button__link.has-white-background-color:hover,
.is-style-outline > .wp-block-button__link.has-white-background-color:hover,
.wp-block-button__link.has-pastellrose-background-color:hover,
.is-style-outline > .wp-block-button__link.has-pastellrose-background-color:hover {
    color: #ffffff!important;
    background-color: #1c1c1c !important;
    border-color: #1c1c1c!important;
    box-shadow: 0 0 0.8em 0 rgba(189, 158, 119, 0.3);
    cursor: pointer;
}


/* Columns
 * Define Gap - not possible via theme.json (bug)
 * ------------------------------------------------------------- */

.wp-block-columns {
    gap: 4vw!important;
}

#footer-top .wp-block-columns {
    gap: 20px!important;
    margin-bottom: 20px!important;
}

/* DP Accordion
 * ------------------------------------------------------------- */

.dp-accordion .dp-accordion-heading,
.dp-accordion .dp-accordion-heading:active,
.dp-accordion .dp-accordion-heading:focus {
    background-color: var(--wp--preset--color--primary, #BD9E77)!important;
    font-size: 22px!important;
}

html.no-touch .dp-accordion-heading:hover {
    background-color: var(--wp--preset--color--secondary, #222222)!important;
}

.dp-accordion .dp-accordion-heading svg > * {
    fill: currentColor;
}

/* Media Text
 * Breakpoint-Fix for Media Text Block
 * ------------------------------------------------------------- */

@media (max-width: 767px) {

    .wp-block-media-text,
    .wp-block-media-text.has-media-on-the-right {
        grid-template-columns: 1fr;
    }

    .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
    }

    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content,
    .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
    }

}


/* Zitat
 * ------------------------------------------------------------- */

.wp-block-quote {
    border-left: 4px solid var(--wp--preset--color--primary, #BD9E77);
    padding-left: 1em;
}

.wp-block-quote cite {
    font-size: 0.9em;
}

/* Vorteile Seminarhotel (DP Icon Grid)
 * ------------------------------------------------------------- */

#vorteile-seminarhotel .item .icon svg {
	transition: transform 0.15s linear;
}

#vorteile-seminarhotel .item:hover .icon svg {
	transform: scale(1.15);

}

#vorteile-seminarhotel h3 {
	font-weight: 700;
}

/* ============================================================= */
/* Entry Footer
/* ============================================================= */


/* ============================================================= */
/* Post Navigation
/* ============================================================= */


/* ============================================================= */
/* Site Footer
/* ============================================================= */

#site-footer {
    font-size: 16px;
    padding: 0;
}

#site-footer a:not(.wp-block-button__link) {
    color: inherit;
    text-decoration: none;
}

#site-footer a:not(.wp-block-button__link):hover,
#site-footer a:not(.wp-block-button__link):focus,
#site-footer a:not(.wp-block-button__link):active {
    color: var(--wp--preset--color--secondary, #222222);
}

/* Footer Top
 * ------------------------------------------------------------- */

#footer-top {
    background-color: #f8f8f8;
    background-image: url("assets/images/hintergrund-footer.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    overflow: hidden;
}

#footer-top .gallery-footer {
    position: relative;
}

#footer-top .gallery-footer:before {
    display: block;
    content: "";
    position: absolute;
    top: -20px;
    left: 0;
    width: 100vw;
    max-width: 100vw;
    height: 999999px;
    margin-left: calc(100% + 10px - 50vw);
    margin-right: calc(100% + 10px - 50vw);
    background-color: #ffffff;
}

@media (max-width: 781px) {

    #footer-top .gallery-footer:before {
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }

}

#footer-form {
    margin: 0;
	z-index: 1;
}


#footer-form .alpenland-icon-calendar {
    position: relative;
}

#footer-form .alpenland-icon-calendar:before {
    position: absolute;
    right: 0.5em;
    top: 0.25em;
    color: var(--wp--preset--color--primary, #BD9E77);
    font-size: 1.3em;
    pointer-events: none;
}

#footer-form .alpenland-icon-calendar input {
    font-family: "Open Sans", sans-serif;
    padding-right: 2.4em;
}

#footer-form .frm_submit button {
    width: 100%;
    margin: 0;
}

/* Footer Main
 * ------------------------------------------------------------- */

#footer-main {
    color: #ffffff;
    background-color: var(--wp--preset--color--primary, #BD9E77);
    padding: 40px 0;
}

#footer-main > .container > .row {
    gap: 40px;
}

#footer-main ul.menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

#footer-main ul.menu a {
    line-height: 2;
}

/* Language Switcher */

#footer-main .language-switcher {
    display: flex;
    align-items: center;
    margin: 1.5em 0 0;
}

#footer-main .language-switcher .wpml-ls-legacy-list-horizontal {
    border: 0;
    padding: 0;
}

#footer-main .language-switcher .wpml-ls-legacy-list-horizontal li {
    display: flex;
}

#footer-main .language-switcher .wpml-ls-legacy-list-horizontal a {
    position: relative;
    display: flex;
    background-color: var(--wp--preset--color--secondary, #222222);
    line-height: 1;
    padding: 0.6em 1.2em;
}

#footer-main .language-switcher .wpml-ls-legacy-list-horizontal a:hover,
#footer-main .language-switcher .wpml-ls-legacy-list-horizontal a:active,
#footer-main .language-switcher .wpml-ls-legacy-list-horizontal a:focus {
    color: #ffffff;
    background-color: #131313;
}

#footer-main .language-switcher .wpml-ls-legacy-list-horizontal a:after {
    content: "\e922";
    font-family: 'alpenland-icons' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: 0.4em;
}

/* Contact */

#footer-main .footer-tel {
    font-size: 1.3em;
    font-weight: 400;
}

#footer-main .footer-tel i {
    margin-right: 0.4em;
}

/* Social Links */

#footer-main #menu-footer-social-links,
#footer-main #menu-footer-social-links-en {
    display: flex;
    gap: 0.7em;
    font-size: 20px;
    margin: 20px 0;
}

#footer-main .menu-social-links-item span {
    display: none;
}

/* Rechtliche Links */

#footer-main #menu-footer-rechtliche-links a,
#footer-main #menu-footer-rechtliche-links-en a {
    line-height: 1;
}

/* Partner Links */

#footer-main #menu-footer-partner-links,
#footer-main #menu-footer-partner-links-en {
    display: flex;
    gap: 0.7em;
    margin: 20px 0;
}

#footer-main li.partner-logo {
    position: relative;
    line-height: 1;
    height: 36px;
}

#footer-main li.partner-logo:after {
    content: "";
    display: block;
    height: 100%;
    width: auto;
}

#footer-main li.partner-logo.logo-ari:after {
    content: url("assets/images/logo-ari.png");
}

#footer-main li.partner-logo.logo-interval:after {
    content: url("assets/images/logo-interval.png");
}

#footer-main li.partner-logo.logo-rci:after {
    content: url("assets/images/logo-rci.png");
}

#footer-main li.partner-logo > a {
    color: transparent!important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Cookie Settings */
#footer-main #footer-3 > section:last-child > p {
	margin: 0;
}

/* Footer Logo
 * ------------------------------------------------------------- */

#footer-logo {
    color: #ffffff;
    background-color: var(--wp--preset--color--secondary, #222222);
    padding: var(--wp--custom--spacing--medium, 40px) 0;
}

#footer-logo svg {
    color: #ffffff;
}

/* ============================================================= */
/* Archives
/* ============================================================= */


/* ============================================================= */
/* Numeric Post Navigation
/* ============================================================= */


/* ============================================================= */
/* Post Type "Jobs"
/* ============================================================= */

/* Title
 * ------------------------------------------------------------- */

.job-page-title .logo-icon {
    position: relative;
    pointer-events: none;
    height: 60px;
    margin-top: 40px;
    opacity: 20%;
}

.job-page-title .logo-icon svg { height: 100%; }

.job-page-title .logo-icon svg path { color: #BD9E77; }

.job-page-title > h1 {
    margin-top: 0.5rem;
}

.job-page-title > h2 {
    text-transform:uppercase;
}

/* Entry Footer
 * ------------------------------------------------------------- */
body.single-jobs .entry-footer {
    margin: 40px 0 60px;
}

/* ============================================================= */
/* Featherlight Lightbox
/* ============================================================= */

.featherlight {
    cursor: pointer;
}

.featherlight:last-of-type {
    background-color: rgba(34, 34, 34, 0.8);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.featherlight .featherlight-content {
    max-width: calc(100% - 120px);
    max-height: calc(100% - 120px);
    background-color: var(--wp--preset--color--primary, #BD9E77);
}

[data-featherlight] img {
    cursor: pointer;
}

.featherlight .featherlight-close-icon {
    top: 15px;
    right: 15px;
    width: 30px;
    height: 30px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZmlsbD0iI0JEOUU3NyIgZD0iTTgsMTZDMy41OSwxNiwwLDEyLjQxLDAsOFMzLjU5LDAsOCwwczgsMy41OSw4LDgtMy41OSw4LTgsOFpNOCwuOTFDNC4wOSwuOTEsLjkxLDQuMDksLjkxLDhzMy4xOCw3LjA5LDcuMDksNy4wOSw3LjA5LTMuMTgsNy4wOS03LjA5UzExLjkxLC45MSw4LC45MVoiLz48cGF0aCBmaWxsPSIjQkQ5RTc3IiBkPSJNMTEuNzQsMTIuMTljLS4xMiwwLS4yMy0uMDQtLjMyLS4xM0wzLjk0LDQuNThjLS4xOC0uMTgtLjE4LS40NiwwLS42NCwuMTgtLjE4LC40Ni0uMTgsLjY0LDBsNy40Nyw3LjQ3Yy4xOCwuMTgsLjE4LC40NiwwLC42NC0uMDksLjA5LS4yLC4xMy0uMzIsLjEzWiIvPjxwYXRoIGZpbGw9IiNCRDlFNzciIGQ9Ik00LjI2LDEyLjE5Yy0uMTIsMC0uMjMtLjA0LS4zMi0uMTMtLjE4LS4xOC0uMTgtLjQ2LDAtLjY0TDExLjQyLDMuOTRjLjE4LS4xOCwuNDYtLjE4LC42NCwwLC4xOCwuMTgsLjE4LC40NiwwLC42NGwtNy40Nyw3LjQ3Yy0uMDksLjA5LS4yLC4xMy0uMzIsLjEzWiIvPjwvc3ZnPg==');
    filter: grayscale(1) brightness(2);
    opacity: 1;
    transition: all 0.15s linear;
}

.featherlight .featherlight-close-icon:hover {
    opacity: 1;
    filter: grayscale(0) brightness(1);
}

.featherlight-next,
.featherlight-previous {
    width: 30px;
    height: 30px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDE2IDE2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxNiAxNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiNCRDlFNzciIGQ9Ik0wLDhjMC00LjQsMy42LTgsOC04czgsMy42LDgsOHMtMy42LDgtOCw4UzAsMTIuNCwwLDh6IE0xNS4xLDhjMC0zLjktMy4yLTcuMS03LjEtNy4xUzAuOSw0LjEsMC45LDhzMy4yLDcuMSw3LjEsNy4xUzE1LjEsMTEuOSwxNS4xLDh6Ii8+PHBhdGggZmlsbD0iI0JEOUU3NyIgZD0iTTUuNiwzLjhjMC0wLjEsMC0wLjIsMC4xLTAuM2MwLjItMC4yLDAuNS0wLjIsMC42LDBsNC4zLDQuM2MwLjIsMC4yLDAuMiwwLjUsMCwwLjZzLTAuNSwwLjItMC42LDBMNS43LDQuMUM1LjYsNCw1LjYsMy45LDUuNiwzLjhMNS42LDMuOHoiLz48cGF0aCBmaWxsPSIjQkQ5RTc3IiBkPSJNNS42LDEyLjNjMC0wLjEsMC0wLjIsMC4xLTAuM0wxMCw3LjdjMC4yLTAuMiwwLjUtMC4yLDAuNiwwYzAuMiwwLjIsMC4yLDAuNSwwLDAuNmwtNC4zLDQuM2MtMC4yLDAuMi0wLjUsMC4yLTAuNiwwQzUuNiwxMi41LDUuNiwxMi40LDUuNiwxMi4zTDUuNiwxMi4zeiIvPjwvc3ZnPg0K');
    background-position: center;
    background-size: contain;
    filter: grayscale(1) brightness(2);
    opacity: 1;
    transition: all 0.15s linear;
}

.featherlight-previous {
    left: 15px;
    transform: rotate(180deg)
}

.featherlight-next {
    right: 15px;
}

.featherlight-next:focus,
.featherlight-next:hover,
.featherlight-previous:focus,
.featherlight-previous:hover {
    opacity: 1;
}

html.no-touch .featherlight-next:focus,
html.no-touch .featherlight-next:hover,
html.no-touch .featherlight-previous:focus,
html.no-touch .featherlight-previous:hover {
    opacity: 1;
    filter: grayscale(0) brightness(1);
}


/* ============================================================= */
/* Formidable
/* ============================================================= */

.frm_dropzone {
    background-color: transparent!important;
}

.frm_style_alpenland-seminar-konfigurator .frm_checkbox.frm_image_option {
	display: flex;
}

.frm_style_alpenland-seminar-konfigurator .frm_checkbox .frm_text_label_for_image_inner {
	hyphens: auto;
}

#frm_field_560_container > div.frm_opt_container,
#frm_field_560_container .frm_error {
	display: flex;
	justify-content: center;
}

/* Views
* ------------------------------------------------------------- */

.frm_display .frm-grid-view .wp-block-buttons {
	justify-content: center;
}

/* ============================================================= */
/* Popup
/* ============================================================= */

/* Small devices (landscape phones, 576px and up) */
@media (max-width: 475px) {

	#pum-6412 .popup-image-seminar {
		display: none;
	}
	
}


/* ============================================================= */
/* Smart Slider
/* ============================================================= */

.n2-ss-button-container--non-full-width,
.n2-ss-button-container--non-full-width a {
    transition: all 0.15s linear!important;
}


/* ============================================================= */
/* Quad Layers Instagram Feed
/* ============================================================= */

.qligg-mfp-wrap .mfp-arrow {
    color: #ffffff;
    opacity: 1;
}


/* ============================================================= */
/* reCAPTCHA
/* ============================================================= */

@media (max-width: 767px) {

    .grecaptcha-badge {
        bottom: 60px!important;
    }

}


/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {

}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

    /* ============================================================= */
    /* Post Type "Jobs"
    /* ============================================================= */

    /* Title
     * ------------------------------------------------------------- */

    .job-page-title .logo-icon {
        height: 100px;
    }


    /* ============================================================= */
    /* Featherlight Lightbox
    /* ============================================================= */

    .featherlight .featherlight-content {
        max-width: calc(100% - 280px);
        max-height: calc(100% - 280px);
    }

    .featherlight .featherlight-close-icon {
        top: 50px;
        right: 50px;
        width: 40px;
        height: 40px;
    }

    .featherlight-next,
    .featherlight-previous {
        width: 40px;
        height: 40px;
    }

    .featherlight-previous {
        left: 50px;
    }

    .featherlight-next {
        right: 50px;
    }

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

    /* ============================================================= */
    /* Site Footer
    /* ============================================================= */

    /* Footer Main
    /* ------------------------------------------------------------- */

    #footer-main {
        padding-top: 80px;
    }

}


/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

    /* ============================================================= */
    /* Post Type "Jobs"
    /* ============================================================= */

    /* Title
     * ------------------------------------------------------------- */

    .job-page-title .logo-icon {
        height: 300px;
        margin-top: -150px;
    }

}