/*
 Theme Name:   GeneratePress Child
 Description:  Default GeneratePress child theme
 Template:     generatepress
 Version:      1.0.0
*/

/**
 * Root variables -----------
 * */
:root {
    /* Element size */
    --max-width-global: 1500px;

    /* Color */
    --color-bg-input: #dbdbdb;
    --color-bg-session: #aeaeae26;
    --color-banner-light: #ffb837;
    --color-border-element: #1b1b1b1c;
    --color-border-line: #4140402e;
    --color-border-input: #eaeaea;
    --color-border-menu: #ffffff57;
    --color-body: #e3e3e3;
    --color-button: #e3e3e3;
    --color-main: #4a8329;
    --color-link: #007088;
    --color-overlay: #2b2b2beb;
    --color-text: #3c3c3c;
    --color-error: #e62a11;
    --color-heading: #218398;
    --color-overlay: #2b2b2beb;
    --color-note: #df9322;
    --color-note-bg: #f2a93d26;
    --color-sub: #bb850d;
    --color-success: green;
    --color-warning: #b87f00;

    /* Font size */
    --font-size-45: clamp(33px, 3vw, 45px);
    --font-size-35: clamp(28px, 3vw, 35px);
    --font-size-30: clamp(24px, 3vw, 30px);
    --font-size-25: clamp(19px, 2vw, 25px);
    --font-size-20: clamp(17px, 2vw, 20px);
    --font-size-17: clamp(15px, 1.5vw, 17px);

    /* Shadow */
    --emboss-in-nomal: inset 3px 3px 3px #5151511a, inset -3px -3px 3px #ffffff45;
    --box-shadow-button: 6px 6px 9px #98989836, -6px -6px 9px #ffffff4f;
    --box-shadow-modal: 0 10px 30px #282828d9;
    --box-shadow-sub-menu: 10px 10px 10px #00000024;
    --box-shadow-p-archive: inset 2px 2px 5px #b1b1b11a, inset -2px -2px 5px #f3f3f32b;
    --box-shadow-small: inset 2px 2px 3px #51515114, inset -2px -2px 3px #ffffff2e;
    --box-shadow-min: inset 2px 2px 3px #89898914, inset -2px -2px 3px #f3f3f32e;
    --box-shadow-hover: 6px 6px 9px #9898985e, -6px -6px 9px #f0f0f085;
    --box-shadow-input: 0 0 0 #ffffff00, 0 0 0 #ffffff00, inset 2px 2px 3px #8989893d, inset -2px -2px 3px #f3f3f32e;
    --box-shadow-input-hover: 6px 6px 9px #9898985e, -6px -6px 9px #f0f0f085, inset 0 0 0 #ffffff00, inset 0 0 0 #ffffff00;
    --text-shadow: 1px 1px 2px #4e4e4e33, -1px -1px 2px #ffffff3b;

    /* transition */
    --transition-box-shadow: box-shadow 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-background-color: background-color 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-color: color 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-transform: transform 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-opacity: opacity 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
    --transition-max-height: max-height 0.3s ease-in-out;
    --transition-max-width: max-width 0.3s cubic-bezier(0.39, 0.58, 0.57, 1);
}

/**
 * END Root variables
 * */

/**
 * Core -----------
 * */

/* Basic core */
.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover>a,
.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus>a,
.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"])>a,
.main-navigation .menu-bar-item:hover>a,
.main-navigation .menu-bar-item.sfHover>a {
    color: var(--color-note);
}

a {
    text-decoration: none;
}

.wp-block-button__link {
    border-radius: 3px;
    background-color: var(--color-main);
    padding: 0.3em 1.5em !important;
    text-transform: uppercase;
}

h1 {
    font-size: clamp(30px, 7vw, 40px);
}

h3 {
    font-size: clamp(20px, 7vw, 29px);
}

img {
    border-radius: 3px;
}

/* Forms core */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(16px, 3.2vw, 20px);
    font-weight: bold !important;
    text-transform: uppercase !important;
    color: #fff;
    padding: 0.5em 1.2em;
    margin: 1em 0;
    border: none;
    border-radius: 3px;
    cursor: pointer;
    background-color: var(--color-main) !important;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
    border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
    border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
    color: #666;
    background-color: var(--color-bg-input) !important;
    box-shadow: var(--box-shadow-input) !important;
    border: 1px solid var(--color-border-input) !important;
    border-radius: 3px;
    font-size: 16px !important;
}

input:focus,
input[type=checkbox]:checked,
textarea:focus {
    box-shadow: var(--box-shadow-input-hover) !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
    color: #111;
}

input::placeholder {
    color: #00000075 !important;
}

textarea {
    width: 100%;
}

/**
 * END Core
 * */

/**
 * Utils -----------
 * */

/* utils class */
.accent-info {
    background-color: var(--color-note-bg);
    color: var(--color-text) !important;
    border-left: 5px solid var(--color-note);
    border-radius: 3px;
    padding: .5em;
    max-width: max-content;
}

.banner-title {
    text-transform: uppercase;
    color: var(--color-banner-light) !important;
    font-size: var(--font-size-45);
    text-shadow: 1px 1px 0px #2b2b2ba8, -1px -1px 0px #2b2b2ba8, -1px 3px 0px #2b2b2ba8, 1px -1px 0px #2b2b2ba8;
    font-weight: bold;
    margin-bottom: 0;
    text-align: center;
    position: relative;
    z-index: 1;
}

.banner-title-sub {
    margin: 0;
    color: var(--color-button) !important;
    line-height: 1.1;
    font-size: var(--font-size-30);
    text-shadow: 1px 1px 0px #2b2b2ba8, -1px -1px 0px #2b2b2ba8, -1px 3px 0px #2b2b2ba8, 1px -1px 0px #2b2b2ba8;
    font-weight: bold;
    text-align: center;
    position: relative;
    z-index: 1;
}

.tan-note {
    display: block;
    font-size: 90%;
    font-style: italic;
    padding: .5em 0;
    color: var(--color-warning);
}

.tan-fs-80 {
    font-size: 80% !important;
}

.tan-margin-0 {
    margin: 0;
}

.max-width-global {
    max-width: var(--max-width-global);
    margin: 0 auto !important;
    padding-left: .5em;
    padding-right: .5em;
}

.max-width-1000 {
    max-width: 1000px;
    margin: 0 auto;
    padding-left: .5em;
    padding-right: .5em;
}

.tan-icon-svg {
    width: 1em;
    height: 1em;
    margin-right: 7px;
    fill: currentcolor;
}

.no-scroll-y {
    touch-action: none !important;
    overflow-y: hidden !important;
    width: 100% !important;
    position: fixed !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.sub-field-form {
    padding: 0 !important;
    margin: -1em 1em 0 1em !important;
}

.tan-session {
    padding-top: clamp(2.5em, 5vw, 5em);
    padding-bottom: clamp(2.5em, 5vw, 5em);
}

.session-title {
    padding: 1em 0;
    margin-bottom: 3em;
    background: var(--color-bg-session);
}

.session-title h3 {
    color: var(--color-text);
    text-transform: uppercase;
}

.session-title hr {
    flex: 1;
    color: var(--color-border-element);
}

/* Modal */
.tan-modal-container {
    position: fixed;
    overflow: hidden;
    z-index: 99999;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    background-color: #e3e3e300;
    visibility: hidden;
    transform: translatey(-140%);
    transition: var(--transition-background-color);
    -webkit-transition: var(--transition-background-color);
    -moz-transition: var(--transition-background-color);
    -o-transition: var(--transition-background-color);
}

.show-modal-container {
    visibility: visible !important;
    transform: translatey(0) !important;
}

.active-modal-container {
    background-color: var(--color-body) !important;
}

.tan-modal {
    display: flex;
    justify-content: center;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    transition: var(--transition-transform);
    -webkit-transition: var(--transition-transform);
    -moz-transition: var(--transition-transform);
    -o-transition: var(--transition-transform);
}

.active-modal-tranform {
    transform: translate3d(0, 0, 0) !important
}

.tan-modal-wrapper {
    opacity: 0;
    position: relative;
}

.active-modal-wrapper {
    opacity: 1 !important;
    transition: var(--transition-opacity);
    -webkit-transition: var(--transition-opacity);
    -moz-transition: var(--transition-opacity);
    -o-transition: var(--transition-opacity);
}

.close-modal-button {
    display: inline-block;
    position: absolute;
    top: .1em;
    right: 0;
    font-size: clamp(25px, 7vw, 32px);
    font-weight: bold;
    cursor: pointer;
    border-radius: 0.15em;
    display: inline-block;
    padding: 0 0.4em;
}

/**
 * END Utils
 * */

/**
 * Header Custom -----------
 * */

/* Top menu Header */

.top-header-wrapper {
    z-index: 999999;
    position: relative;
    background-color: var(--color-main);
}

.top-header-menu ul.menu {
    list-style: none;
    display: flex;
    justify-content: flex-end;
    max-width: var(--max-width-global);
    margin: 0 auto;
}

.top-header-menu li {
    border-left: 1px solid var(--color-border-menu)
}

.top-header-menu li:first-child {
    border: none;
}

.top-header-menu a {
    padding: .5em .7em;
    display: inline-flex;
    align-items: center;
    color: var(--color-button);
    font-size: clamp(13.5px, 1.5vw, 15px);
}

/* WPML */

@media (max-width: 440px) {
    .top-header-menu li {
        flex: 0 1 33.33%;
        align-items: center;
        display: flex;
        justify-content: center;
    }

    .top-header-menu span {
        display: none;
    }
}

/* Main menu Header */
.inside-header {
    padding: .6em;
}

.site-logo {
    width: clamp(115px, 18vw, 180px);
}

.main-navigation .main-nav ul li a,
.main-navigation {
    font-size: var(--font-size-17);
    font-weight: 600;
    padding-left: 0;
}

.main-navigation .menu .tan-icon-svg {
    margin-right: 0;
}

.main-navigation .main-nav ul ul li a {
    padding: 13px 20px;
}

.main-navigation .menu .sub-menu {
    padding: 1em 0;
    border-radius: 3px;
    background-color: var(--color-body);
    box-shadow: var(--box-shadow-sub-menu);
    width: 250px;
}

.menu-item-has-children .dropdown-menu-toggle {
    padding-right: 15px;
    padding-left: 0;
    vertical-align: middle;
}

/* Sticky menu desktop */
@media (min-width: 769px) {
    header#masthead {
        position: sticky;
        background-color: #e3e3e3;
        top: 0;
        box-shadow: 0 10px 20px var(--box-shadow-sub-menu);
        z-index: 99999;
        box-shadow: 0px 10px 20px #00000054;
    }
}

/* Mobile menu-toggle  */
@media (max-width:768px) {
    .main-navigation .menu-bar-item>a {
        margin-right: 1em
    }

    .main-navigation .menu-toggle {
        color: #fff !important;
        font-size: var(--font-size-20);
        line-height: 40px;
        padding: 0 14px;
    }

    /* .has-inline-mobile-toggle #site-navigation.toggled {
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--color-body) !important;
    width: 100%;
    height: 100vh;
    z-index: 99;
    margin: 0 !important;
} */

    .main-navigation.toggled .menu {
        margin: 1em auto 4em auto;
        max-width: 500px;

    }

    .main-navigation .dropdown-menu-toggle {
        font-size: var(--font-size-30);
        font-weight: 600;
    }

    .sub-menu.toggled-on ul.sub-menu {
        padding: 0;
        background-color: #ffffff69;
        padding-left: 1.2em;
        margin-bottom: 1em;
        border-radius: 3px;
    }
}

/* Search button */
.main-navigation .menu-bar-item>a,
.main-navigation .menu-bar-item.sfHover>a {
    padding-left: 14px;
    padding-right: 14px;
    line-height: 40px;
    background: var(--color-main) !important;
    color: #fff;
}

.main-navigation .menu-bar-item:hover>a {
    color: #fff;
}

/* Search modal */
.search-modal-form {
    width: 750px;
}

.menu-bar-item>a {
    font-size: var(--font-size-17);
    font-weight: 600;
    border-radius: 3px;
}

.search-modal-fields {
    align-items: center;
    color: #fff;
    padding: 1em;
}

.search-modal-fields input {
    color: #181818 !important;
}

.search-modal-fields button {
    height: 60px;
    border-radius: 0 3px 3px 0;
}

/* Search normal */
form.search-form {
    display: flex;
    align-items: center;
    width: 750px;
    max-width: 100%;
}

form.search-form label {
    width: 100%;
}

form.search-form input.search-field {
    width: 100%;
}

button.search-submit {
    border-radius: 0 3px 3px 0;
    height: 45px;
}

/**
 * END Header Custom
 * */

/**
 * Homepage
 * */

/* session banner */
.home-banner .banner-title-sub,
.home-banner {
    font-size: var(--font-size-25);
}

.home-banner-button {
    margin-top: 1em;
}

/* Top products */
.top-products h4 {
    font-size: var(--font-size-20);

}

.top-products figure.wp-block-image.size-full {
    margin-top: 2em;
    margin-bottom: 1em;
}

.top-products .wp-block-button .wp-block-button__link {
    font-size: var(--font-size-17);
}

.top-products figure.wp-block-image {
    max-width: 400px;
    margin: 0 auto;
}

.top-products .wp-block-buttons {
    margin-bottom: 2em;
}

@media (max-width: 1060px) {
    .top-products .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 47% !important;
    }

    .top-products .is-layout-flex {
        flex-wrap: wrap !important;
    }
}


@media (max-width: 475px) {
    .top-products .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 100% !important;
    }

    .top-products .is-layout-flex {
        flex-wrap: wrap !important;
    }
}

/* session gallery */
.home-gallery {
    background-color: #d9d9d9;
}

.home-gallery figure {
    margin-top: 3em;
}

/* Presence - images text */
.presence-content {
    max-width: 1050px;
    margin: 0 auto !important;
    background-color: #8ad499;
}

.presence-content .wp-block-heading {
    color: #000;
}

.presence-content .presence-content h2 {
    font-size: var(--font-size-35);
}

.presence-content figure.wp-block-media-text__media {
    max-width: 400px;
    margin: 0 auto !important;
}

.presence-content .wp-block-buttons>.wp-block-button {
    padding-bottom: 1em;
}


/* session Tagline - review */
.home-tagline.is-layout-flex {
    align-items: center;
    justify-content: center;
    margin-bottom: 3em;
}

.tagline-review {
    background-color: #d9d9d9;
}

.home-tagline p {
    margin: .2em;
}

/* Google review HTML */

span#idreview {
    display: block;
    margin-top: -100px;
    padding-bottom: 100px;
}

.google-review-html-warp-layout {
    text-align: center;
    margin-top: 3em;
}


.google-review-html-warp.margin-left-review {

    float: right;
}

.google-review-html-warp.margin-right-review {

    float: left;
}

.google-review-html-warp {
    width: 49%;
    padding: 3% 3% 0% 3%;
    margin-bottom: 20px;
    display: inline-block;
    text-align: left;
    border: 1px dashed rgba(0, 0, 0, 0.2);
    border-radius: 15px;
    vertical-align: top;
}

@media (max-width:921px) {
    .google-review-html-warp {
        width: 100%;
        text-align: left;
        margin: 20px 0px !important;
    }

    .google-review-html-warp-layout {
        text-align: center;
        margin-left: 5px;
        margin-right: 5px;
    }
}

.google-review-html-img {
    display: inline-block;
    vertical-align: top;
}

.google-review-html-info ul,
.google-review-html-img ul {
    margin: 0;
}

.google-name-cus {
    color: #3a3a3a;
    font-weight: 700;
}

.star-info-user {
    color: #3a3a3a;
}

.google-review-html-img img {
    margin-right: 5px;
}

.google-review-html-info {
    display: inline-block;
    vertical-align: top;
}

.google-review-info {
    list-style-type: none;
}

.google-review-info {
    line-height: 22px;

}

.google-review-info img {
    vertical-align: middle;
    margin-right: 5px;
}

.google-verify {
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 20px;
}

.google-review-end {
    text-align: right;
    float: right;
}


/**
 * END Homepage
 * */

/**
 * Contact page
 * */
.google-map figure img:hover {
    border: 1px solid #fff;
}

@media (max-width:750px) {
    .google-map .gform_heading .gform_description {
        margin-top: 1em;
    }
}

/**
 * END Contact page
 * */

/**
 * Blog -----------
 * */
.archive .page-header {
    display: none;
}

header.page-header-archive-custom {
    position: relative;
}

.archive-page-custom {
    display: flex;
    min-height: clamp(160px, 30vw, 430px);
    position: relative;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-position: center;
    background-repeat: repeat;
    background-size: auto;
    padding-left: .5em;
    padding-right: .5em;
}

.archive-page-custom::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.archive-advertising,
.archive-leuchtwerbung {
    background-image: url('/wp-content/uploads/2024/09/leuchtkasten_desktop6_LE_auto_x2_optimazed.jpg');
}

.archive-advertising::before,
.archive-leuchtwerbung::before {
    background-color: rgb(40 124 226 / 35%);
}

.archive-signs,
.archive-schilder {
    background-image: url('/wp-content/uploads/2024/09/Mesh-PVC-Banner-banner.jpg');
}

.archive-signs::before,
.archive-schilder::before {
    background-color: rgb(80 111 150 / 75%);
}

.archive-vehicle-lettering,
.archive-fahrzeugbeschriftung {
    background-image: url('/wp-content/uploads/2024/09/lkm-desktop-banner_LE_auto_x2.jpg');
}

.archive-vehicle-lettering::before,
.archive-fahrzeugbeschriftung::before {
    background-color: rgb(198 79 106 / 35%);
}

.archive-direct-plate-printing,
.archive-plattendirektdruck {
    background-image: url('/wp-content/uploads/2024/09/plattendruck_desktop_LE_auto_x2_optimazed.jpg');
}

.archive-direct-plate-printing::before,
.archive-plattendirektdruck::before {
    background-color: rgb(175 206 244 / 35%);
}

.archive-printing,
.archive-digitaldruck {
    background-image: url('/wp-content/uploads/2024/09/digitaldrucken-desktop_LE_auto_x2_optimazed.jpg');
}

.archive-printing::before,
.archive-digitaldruck::before {
    background-color: rgb(149 134 56 / 35%);
}

.archive-window-lettering,
.archive-fensterbeschriftung {
    background-image: url('/wp-content/uploads/2024/09/Meinspandau_LE_auto_x2_optimazed.jpg');
}

.archive-window-lettering::before,
.archive-fensterbeschriftung::before {
    background-color: rgb(40 124 226 / 35%);
}

.format-standard .inside-article-custom {
    display: flex;
    border-bottom: 1px dashed var(--color-border-line);
    padding: 2em .5em;
}

.inside-article-custom .post-image {
    padding: .5em 0;
    width: 30%;
    max-width: 300px;
}

.inside-article-custom .article-right-content {
    flex: 1;
    padding: .1em;
    padding-left: 1em;
}

.inside-article-custom .article-right-content header {
    padding-bottom: .5em;
}

.inside-article-custom .article-right-content header h2 {
    font-size: var(--font-size-30);
}

.inside-article-custom .article-right-content .entry-summary {
    margin-top: 1em;
    padding-left: 1em;
}

.inside-article-custom .article-right-content p {
    display: list-item;
    margin-bottom: .5em;
}

.button-more-info {
    font-weight: bold;
}

span.more-info {
    vertical-align: middle;
}

.entry-meta {
    display: none;
}

@media (max-width:600px) {
    .inside-article-custom {
        flex-wrap: wrap;
    }

    .inside-article-custom .post-image {
        width: 100%;
        max-width: 100%;
    }

    .separate-containers .inside-article-custom {
        padding: .5em;
    }

    .inside-article-custom .article-right-content {
        padding: 0;
    }
}

/**
 * END Blog -----------
 * */

/**
 * Left sidebar
 * */
.inside-left-sidebar .widget-title {
    font-size: var(--font-size-30);
    margin-bottom: .5em;
    padding: .1em .5em;
    background-color: var(--color-main);
    color: #fff;
    border-radius: 3px;
    text-transform: uppercase;
}

.inside-left-sidebar .menu-item-home {
    display: none;
}

.inside-left-sidebar #menu-primary-menu-1 li::first-child {
    display: none;
}

.inside-left-sidebar .menu-item>a {
    color: var(--color-text);
}

.inside-left-sidebar .menu>.menu-item-has-children>a,
.is-left-sidebar #menu-primary-menu-1>.menu-item-type-post_type,
.is-left-sidebar .sub-menu .menu-item-has-children>a {
    font-weight: bold !important;
}

.inside-left-sidebar li.contact-menu,
.inside-left-sidebar .Services-menu>a {
    display: none;
}

@media (max-width: 925px) {
    .site-content .content-area {
        width: 100%;
    }

    .is-left-sidebar {
        display: none;
    }
}

/**
 * END Left sidebar
 * */

/**
 * Single post -----------
 * */

/**
 * Wordpress custom
 * */

/* Single post */
.site-main .wp-block-group__inner-container {
    padding: 0;
}

.wp-block-heading {
    color: var(--color-main);
    font-weight: bold;
}

.wp-block-media-text>.wp-block-media-text__content {
    padding-top: 1em
}

/* image - text */
@media (max-width: 750px) {
    .wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns: 100% !important;
    }

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

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

/**
 * END Wordpress custom
 * */

/* GeneratePress custom single post */
.single .page-header-image-single {
    display: none !important;
}

.single .separate-containers .inside-article,
.single .separate-containers .comments-area,
.separate-containers .page-header,
.single .separate-containers .paging-navigation {
    padding: .5em !important;
}

.single .entry-meta {
    display: none !important;
}

@media (max-width:600px) {
    .separate-containers .inside-article {
        padding: .5em;
    }
}

/* END GeneratePress custom single post */

/* Swiper cutom */
.swiper {
    width: 100%;
    height: auto;
}

.swiper-wrapper {
    padding-bottom: 2.5em;
    gap: unset;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* PhotoSwipe cutom */
.pswp__button {
    background-color: #ffffff30 !important;
}

/* noUiSlider custom */
.noUi-target {
    background: var(--color-bg-input);
    border: 1px dashed #ffffffb8;
    box-shadow: var(--box-shadow-input);
}

.noUi-connect {
    background: var(--color-heading);
    border-radius: 3px;
    box-shadow: var(--box-shadow-input);
}

.noUi-horizontal .noUi-handle {
    width: 33px;
    height: 30px;
    top: -7px;
    right: -10px;
}

.noUi-handle {
    border: 1px solid #ffffffb8;
    border-radius: 3px;
    background: var(--color-heading);
    cursor: default;
    box-shadow: var(--text-shadow);
    cursor: pointer;
}

/* Gravity form custom */
.gform-theme--framework .gfield--type-section .gsection_title {
    margin-bottom: 0 !important;
}

.gform_heading .gform_description {
    margin-top: -1em;
}

.gform_title {
    font-size: clamp(25px, 7vw, 35px);
}

.form-request .gform-theme {
    margin: 0 auto;
    padding: 5% 1em 50% 1em;
}

.gform_drop_area.gform-theme-field-control {
    background: #ffffff9c;
}

.gform_required_legend {
    display: none;
}

.gform-body fieldset label {
    cursor: pointer;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
    color: var(--color-heading);
    font-weight: bold;
}

.gform-theme--framework .gf_progressbar .percentbar_blue {
    background-color: var(--color-main);
}

.gform_page_footer {
    position: relative;
}

.gform_page_footer .gform-loader {
    position: absolute;
    right: 2em;
    font-size: 2.5px;
    box-shadow: var(--box-shadow-input);
}

.gform-theme--framework .gform-loader {
    border-block-end-color: #00a9cf;
    border-block-start-color: #19b5d821;
    border-inline-end-color: #19b5d821;
    border-inline-start-color: #00a9cf;
}

.gform_previous_button {
    color: #ebebeb !important;
}

.form-confirm {
    border: 1px dashed #0303036b;
    border-radius: 3px;
    padding: 0 1em;
    margin-top: 2em;
}

/* Banner single post */
.banner-single-post {
    min-height: clamp(160px, 30vw, 430px);
    position: relative;
    margin: -1.8em 0 .1em 0;
}

.banner-single-post-title {
    font-size: var(--font-size-35) !important;
    margin: 0;
}

/* Left element images */
.col-image-single {
    max-width: 40%;
    padding: 0;
    margin: 0;
}

.col-image-single .swiper {
    padding-top: 2em;
}

/* Right element content */
.col-content-single-group {
    /*     position: sticky;
    position: -webkit-sticky;
    top: 1em; */
    transition: top 0.3s ease-out;
    max-width: 100%;
    z-index: 1;
    padding: 2em 1em 1em 2em;
}

.child-breadcrumbs {
    border-bottom: 1px solid var(--color-border-line);
    padding-bottom: .5em;
}

.col-content-single {
    position: relative;
    font-size: clamp(14px, 2.5vw, 17px);
}

/* Assembly */
.assembly-warrper .wp-block-image {
    max-width: 450px;
    margin: 0 auto;
    padding: .5em;
}

.assembly-step {
    margin-bottom: .8em;
}

.assembly-step .accent-info {
    margin: 0 auto;
}

.assembly-col {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    background-color: var(--color-note);
}

.assembly-arrow {
    font-size: 30px;
    background: var(--color-note);
    width: 40px;
    height: 40px;
    border-radius: 40px;
    padding: .5em;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-body);
    margin-bottom: -.5em !important;
}

/* Form request modal */
.form-modal {
    transform: translate3d(0, -140%, 0);
}

.form-modal-wrapper {
    width: 100%;
}

.form-content {
    max-width: 800px;
    margin: 0 auto;
    padding-left: .5em;
}

.form-header {
    background: var(--color-heading);
    position: relative;
    z-index: 3;
}

.form-header-content {
    max-width: var(--max-width-global);
    position: relative;
    margin: 0 auto;
}

.form-header h3 {
    color: #fff;
    padding: .2em .5em;
    margin: 0;
}

.close-form-button {
    background: var(--color-heading);
    color: #fff;
}

.form-wrapper {
    max-width: 850px;
    margin: 0 auto;
    width: 100%;
    height: 100vh;
    overflow-x: hidden !important;
    overflow-y: scroll ! Important;
}

.form-request input[type="button"],
.form-request input[type="submit"] {
    margin: 1em auto !important;
    flex: 1;
    width: 50%;
    max-width: 400px;
}

/* slider input */
.tan-slider-input {
    padding: 0 1em;
}

.tan-slider-input .ginput_container_number {
    display: flex;
    gap: 1em;
    align-items: center;
}

.tan-slider-input .gfield_description.instruction {
    padding: 0;
    margin: 0;
}

.tan-slider-input input {
    max-width: 90px !Important;
}

/* Request form normal */
fieldset.products-group-checkbox {
    display: none;
}

fieldset.products-group-checkbox.active {
    display: block;
}

.products-group-checkbox legend {

    font-size: var(--font-size-30) !important;
}

.products-group-checkbox label {
    font-weight: bold !important;
}

/* END Request form normal */

/* Form configurator */
.form-configurator {
    width: 100%;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: scroll !Important;
    display: flex;
    max-width: 1500px;
    margin: 0 auto;
}

#form_images_wrapper {
    background-color: var(--color-body);
    position: sticky;
    top: 0;
    border-right: 3px solid var(--color-border-element);
    flex: 0 0 45%;
    max-width: 650px;
    border-radius: 3px;
}

/* Media Form configurator */
@media (max-width:781px) {
    .form-wrapper-lightbox {
        flex-wrap: wrap;
    }

    #form_images_wrapper {
        top: 0;
        border-right: none;
        flex: 0 0 100%;
        max-width: 100%;
        display: flex;
        justify-content: center;
        border-bottom: 2px solid #fefefe33;
        z-index: 2;
        margin: 0 auto;
        box-shadow: 0 5px 10px #35353533;
    }

    .form-configurator .form-content {
        flex: 0 0 100%;
    }

    .form-request-images {
        width: clamp(9em, 38vw, 18em);
        left: unset;
    }
}

/* Form images element */
.form-request-images {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    transition: var(--transition-opacity);
    -webkit-transition: var(--transition-opacity);
    -moz-transition: var(--transition-opacity);
    -o-transition: var(--transition-opacity);
}

.form-request-images.show {
    visibility: visible;
    opacity: 1;
    position: relative;
}

/* Form images label Lightbox */
#input_2_68 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#input_2_68 .gchoice {
    padding: .5em;
}

.lightbox-desired-type .ginput_container_radio input[type="radio"] {
    display: none !important;
}

.lightbox-desired-type .ginput_container_radio label {
    display: inline-block;
    cursor: pointer;
    margin: 10px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.lightbox-desired-type .ginput_container_radio label::before {
    content: "";
    display: inline-block;
    width: 100px;
    height: 100px;
    border-radius: 3px;
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 1em;
    vertical-align: middle;
    transition: var(--transition-transform);
    -webkit-transition: var(--transition-transform);
    -moz-transition: var(--transition-transform);
    -o-transition: var(--transition-transform);
}

.lightbox-desired-type .ginput_container_radio input[type="radio"]:hover+label::before {
    transform: scale(1.1);
}

.lightbox-desired-type .ginput_container_radio input[type="radio"]:checked+label::before {
    border: 1px solid var(--color-success);
    transform: scale(1.1);
    box-shadow: var(--box-shadow-input-hover);
}

#choice_2_68_0+label::before {
    background-image: url("/wp-content/uploads/2024/08/single-side-thumb-200x200.jpg");
}

#choice_2_68_1+label::before {
    background-image: url("/wp-content/uploads/2024/08/double-side-thumb-200x200.jpg");
}

/* Related post */
.related-posts {
    margin-top: 6em;
}

.related-posts h5 {
    font-size: var(--font-size-20);
}

.related-posts .row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.related-posts .col {
    padding: .25em;
    display: flex;
    box-sizing: border-box;
}

.related-posts .col a {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.related-posts .thumnail {
    padding: 5px;
    box-sizing: border-box;
}

.related-posts .col img {
    vertical-align: middle;
    transition: var(--transition-transform), var(--transition-box-shadow);
    -webkit-transition: var(--transition-transform), var(--transition-box-shadow);
    -moz-transition: var(--transition-transform), var(--transition-box-shadow);
    -o-transition: var(--transition-transform), var(--transition-box-shadow);
}

/* @media  related post */
@media (max-width: 475px) {
    .related-posts .col {
        flex: 1 0 50%;
    }
}

@media (pointer: fine) and (hover:hover) {
    .related-posts .col img:hover {
        box-shadow: var(--box-shadow-hover);
        transform: scale(1.02);
    }
}

/* END Related post */


/* Media 781px) post single */
@media (max-width: 781px) {
    .template-post {
        gap: 0;
    }

    .col-image-single {
        padding-right: unset !important;
        max-width: 100%;
    }

    .col-content-single-group {
        padding: 0;
        padding-top: .5em;
    }
}

/* END Media 781px) post single */

/**
 * Footer
 * */
.inside-footer-widgets aside {
    margin-bottom: .5em !important;
}

.inside-footer-widgets h4 {
    color: #65d126
}

.inside-footer-widgets a {
    color: var(--color-banner-light);
}


/**
 * END Footer
 * */