/*
	Theme Name: DDM Theme
	Description: Ein für den Kunden angepasstes Theme
	Version: 1.0.0
	Author: COM.POSiTUM
	Author URI: https://compositum.de
*/

/* .lang-selection,
.lang-selection > :only-child {
  display: none !important;
} */
/* html {
    font-family: "Cairo", sans-serif;
    font-size: calc(10px / 11 * 11) !important;
    line-height: calc(1.4 / 11 * 11) !important;
    line-height: 1.4 !important;
    font-optical-sizing: auto !important;
    font-style: normal !important;
    font-variation-settings: "slnt" 0 !important;
}
body {
    letter-spacing: -0.01em !important;
    font-weight: 300 !important;
}
strong {
    font-weight: 700 !important;
}
.nav ul li {
    line-height: 1 !important;
} */

/* /NEU/wp-content/themes/ddm/fonts/Cairo/Cairo-VariableFont_slnt,wght.ttf */

:root {
    --primary: #004f9f;
    --secondary: #d15c04;
    --textcolor: #121212;
    --menucolor: #fff;
    --focus: #d0e0f3;
    --grey: #eee;
}

html {
    color: var(--textcolor);
    background-color: #fff !important;
    font-size: 10px;
}

a:hover {
    color: var(--secondary);
}

p + p {
    margin-top: 2rem;
}

img {
    width: auto;
    max-width: 100%;
    max-height: 90vh;
}

article img[src*='svg']:not([alt='PayPal']) {
    width: 250px;
    height: auto;
}

[style='flex-basis: 250px'] {
    min-width: 250px;
}

.wp-block-column.shrink {
    flex-grow: 1;
    width: calc(100% - (260px + 32px));
    flex-basis: calc(100% - (260px + 32px)) !important;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

.nav a,
footer {
    color: var(--menucolor);
}

.home .wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.wrapper {
    min-height: 100vh;
}

.wrapper > * {
    width: 100%;
    display: inline-block;
}

aside {
    background-color: var(--primary);
    height: max-content;
    /* padding: 1rem calc(100vw / 12);  */
}

aside form {
    max-width: 30rem;
    display: flex;
    margin-left: auto;
}

main {
    padding-bottom: 3rem;
}

.logo a {
    display: flex;
    margin: 1rem 0;
    justify-content: flex-start;
    /* padding: 0 3rem; */
    padding: 0 5rem 0 16vh;
}

.logo img {
    max-width: 22rem;
    max-height: 8rem;
}

section {
    padding: 3rem calc(100vw / 12);
    position: relative;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
    justify-content: unset;
}

section p {
    color: var(--primary);
    display: flow-root;
}

section#intro {
    display: flex;
    text-align: center;
    color: var(--primary);
}

section#intro h1,
section#intro p.h1,
section#intro h2,
section#intro p.h2 {
    margin: 0;
}

#intro .fade-from-left {
    overflow: visible;
}

section > h1,
section > p.h1 {
    border-bottom: 0.2rem solid var(--secondary);
    margin-bottom: 3rem;
}

article {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}

article > *:not(.entry-content):not(img:first-child) {
    width: 100%;
}

article .entry-content:not(:first-child) {
    margin-left: 0;
    padding-left: 3rem;
}

article .entry-content {
    margin: 0 calc(100vw / 12);
    max-width: calc(100% - (100vw / 12 * 2));
}

.entry-content a {
    font-weight: 700;
    text-decoration: underline;
}

.entry-content a:not(.button):hover {
    color: var(--secondary);
}

.entry-content a.button {
    text-decoration: none;
}

.entry-content h3,
.entry-content p.h3 {
    font-size: 2.2rem;
}

.entry-content ul {
    margin-left: 3.5rem;
}

.entry-content li {
    font-size: 2rem;
    color: var(--primary);
}

ul.arrows {
    margin-left: 0;
}

ul.arrows li {
    list-style: none;
}

ul.arrows li a {
    display: inline-block;
    max-width: calc(100% - 3rem);
}

ul.arrows li:before {
    content: '';
    background-image: url(img/arrows.svg);
    background-size: contain;
    background-position: center;
    width: 2rem;
    height: 2rem;
    display: inline-block;
    margin-right: 1rem;
    vertical-align: top;
    margin-top: 0.25rem;
}

article > :first-child:not(.entry-content),
article > img:first-child {
    max-width: calc(100% / 12);
    height: auto;
    width: 100%;
}

article#post-404 > :first-child:not(.entry-content) {
    max-width: unset;
    width: 100%;
}

article:not(:last-child) {
    margin-bottom: 5rem;
}

section p {
    font-size: 2rem;
}

.page_thumbnail {
    width: 100%;
    height: 25vh;
}

.breadcrumb {
    width: 100%;
    padding: 5rem calc(100vw / 12) 2rem;
    justify-content: flex-start;
}

.breadcrumb {
    font-size: 2.1rem;
    font-weight: 800;
}

.breadcrumb a {
    margin-right: 1rem;
    color: var(--primary);
    opacity: 0.6;
}

.breadcrumb a::after {
    display: inline-block;
    content: url('img/arrows.svg');
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
    opacity: 1;
}

.breadcrumb a:not(:last-of-type):after {
    content: url('img/arrows-transparent.svg');
}

.breadcrumb h1,
.breadcrumb p.h1,
.breadcrumb span {
    color: var(--primary);
    width: max-content;
}

.breadcrumb h1,
.breadcrumb p.h1 {
    font: inherit;
    margin: 0;
    padding: 0;
    display: inline;
}

.wp-block-gallery {
    margin: 2rem 0;
}

.post_list {
    align-items: flex-start;
}

.post_details:not(:first-child) {
    padding-left: 3rem;
}

.post_list h2,
.post_list p.h2 {
    margin-top: 0;
}

.button {
    background-color: var(--secondary);
    color: var(--menucolor);
    display: inline-block;
    padding: 1rem 2rem;
    margin: 0.8rem 0;
    min-width: 10rem;
    text-align: center;
    font-weight: 700;
}

.button:hover {
    color: inherit;
}

.view-article {
    display: none;
}

.full-vp {
    min-height: 100vh;
}

.scroll-down {
    position: absolute;
    display: block;
    left: 50%;
    bottom: 5%;
    transform: translate(-50%, -50%);
    background-image: url(img/arrow-down-black.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 4rem;
    height: 2rem;
    cursor: pointer;
}

/*------------------------------------*\
    CONTEACT FORM
\*------------------------------------*/

form {
    max-width: 80rem;
}

form .col {
    justify-content: flex-start;
}

fieldset {
    border: none;
    margin: 0;
    padding: 0;
    margin-bottom: 1rem;
}

form fieldset > span:first-of-type {
    min-width: 25%;
    padding-right: 2rem;
}

form fieldset > span:last-of-type {
    flex-grow: 1;
}

.newsletter,
.data-security {
    display: inline;
}

.newsletter input,
.data-security input {
    width: auto;
}

.newsletter .wpcf7-list-item {
    margin: 0;
}

fieldset .wpcf7-list-item {
    margin: 0;
}

fieldset .wpcf7-list-item input {
    margin: 0 1em 0 0;
}

fieldset .wpcf7-list-item.first.last {
    margin: 0;
    font-weight: 700;
}

.newsletter .wpcf7-list-item-label {
    margin-left: 1.7rem;
}

.data-security + p {
    display: inline-block;
}

.data-security .wpcf7-list-item {
    margin: 0;
}

input[type='submit'] {
    width: auto;
    display: block;
    margin: 1rem auto;
    font-weight: 700;
}

article.page input[type='submit']:hover {
    border-color: var(--primary);
    background-color: var(--primary);
    color: var(--menucolor);
}

article.page input[type='text'],
article.page input[type='email'],
article.page input[type='password'] {
    border: 1px solid var(--primary);
}

/*------------------------------------*\
    CUSTOM STYLES
\*------------------------------------*/

header {
    margin-top: 5rem;
}

header nav {
    background-color: var(--primary);
    flex-grow: 1;
}

header nav ul {
    display: flex;
    justify-content: space-around;
}

header .header-top-line {
    display: flex;
    align-items: center;
    justify-content: end;
}

main {
    color: var(--primary);
    min-height: calc(100vh - 39.5rem);
}

.footer-copyright {
    background-color: var(--menucolor);
    color: var(--primary);
    display: flex;
    justify-content: flex-end;
}

.copyright {
    margin-bottom: 0.75rem;
}

.diagonal_line {
    position: relative;
    text-decoration: none;
}

.diagonal_line a {
    text-decoration: none;
}

.diagonal_line:hover p {
    color: var(--secondary);
}

.diagonal_line:before {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: top;
    background-color: inherit;
}

/****************************/

h1 span:nth-child(odd),
p.h1 span:nth-child(odd) {
    font-weight: 300;
}

section#intro {
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    padding: 0;

    transform: skew(-11.5deg, 0deg);
    transform-origin: bottom;
    width: 100%;
    height: 75vh;
}

section#intro > * {
    transform: skew(11.5deg, 0deg);
    transform-origin: bottom;
}

.full-content {
    align-items: flex-start;
    width: 100%;
    overflow: hidden;
}

.headline h1,
.headline p.h1 {
    font-size: 5rem;
    font-weight: normal;
}

.headline {
    margin: 5rem 0 1rem;
}

/*******************************/
/********   SWIPER   ***********/
/*******************************/

#intro .swiper-container {
    width: 100%;
    height: 100%;
    padding: 2rem 0 0;
}

#intro .swiper-wrapper {
    justify-content: initial;
}

#intro .swiper-slide {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    opacity: 0;
    transition: all 0.3s ease;
    overflow: hidden;

    transform: skew(-11.5deg, 0deg);
    transform-origin: bottom;
    box-shadow: -4px -3px 5px rgba(0, 0, 0, 0.3);
}

#intro .swiper-slide > * {
    transform: skew(11.5deg, 0deg);
    transform-origin: bottom;
}

#intro .swiper-slide-active {
    opacity: 1;
}

.background-wrapper {
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.background-wrapper img {
    position: absolute;
    left: 50%;
    top: 50%;
    height: auto;
    width: auto;
    min-height: 100%;
    min-width: 100%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.text-wrapper {
    background-color: var(--primary);
    color: var(--menucolor);
    display: inline-block;
    padding: 2rem 4rem;
    min-width: 40%;
    text-align: right;
}

.text-wrapper p {
    max-width: none;
    font-size: 5rem;
    font-weight: 700;
    color: var(--menucolor);
    text-align: left;
    padding-left: 5vw;
    line-height: 1.2;
}

.text-wrapper p small {
    display: block;
    font-size: 60%;
    font-weight: 300;
}

.button-prev,
.button-next {
    position: absolute;
    top: 5rem;
    z-index: 100;
    cursor: pointer;
}

.button-prev {
    left: 18rem;
    transform: rotate(180deg);
}

.button-next {
    right: 5rem;
}

.button-prev img,
.button-next img {
    width: 100px;
    height: auto;
}

/*******************************/
/******   SCHLAGWORTE    *******/
/*******************************/

.tag-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
    padding: 5rem 0;
    margin: 0 -5rem;
}

.tag-wrapper .tag {
    width: 50%;
}

.tag-wrapper .single-tag {
    margin: 2.5rem;
    background-color: var(--grey);
    width: 100%;
    width: calc(100% - 5rem);
    padding: 2rem 5rem;
    font-size: 2.5rem;
    min-height: 25vh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    transform: skewX(-11.5deg);
}

.tag-wrapper.subpage_container .single-tag {
    /* font-size: 2.3rem; */
    text-align: center;
    height: 100%;
    margin: 0 !important;
}

.subpage_container.custom_contact_blocks a {
    text-decoration: none;
}

.subpage_container.custom_contact_blocks .excerpt span {
    font-weight: 300;
    font-size: 17.5px;
}

.tag-wrapper.subpage_container .tag {
    margin: 1rem 0;
}

.tag-wrapper.subpage_container .single-tag p > span:last-child {
    align-self: center;
}

.tag-wrapper .single-tag > * {
    transform: skewX(11.5deg);
    -webkit-transform: skewX(11.5deg);
    -moz-transform: skewX(11.5deg);
    -ms-transform: skewX(11.5deg);
    -o-transform: skewX(11.5deg);
    max-width: 50rem;
    width: 100%;
}

.tag-wrapper .single-tag:hover .highlighted {
    font-size: 1.1em;
}

body:not(.home) .tag-wrapper p {
    font-size: 0.7em;
    width: 100%;
    text-align: center;
}

@media screen and (min-width: 769px) {
    body.home .tag-wrapper p {
        font-size: 2.5rem;
    }
}

.single-tag p {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.single-tag p > span {
    display: inline-block;
}

.single-tag .excerpt {
    margin-top: 1rem;
}

strong {
    font-weight: 700;
}

.highlighted {
    color: rgb(211, 97, 27);
    transform: scale(1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    display: inline-block;
}

section#tags {
    padding: 0;
    overflow: hidden;
    height: auto;
}

.single-tag p > span:first-child {
    align-self: flex-start;
}

.single-tag p > span:last-child {
    align-self: flex-end;
}

.subpage_container #child-2395 {
    display: none;
}

/***************************/

#call-to-phone-action {
    position: fixed;
    right: 0;
    top: 19.5rem;
    padding: 1rem 1.5rem;
    /* height: 10rem; */
    width: 11rem;
    background-color: var(--secondary);
    z-index: 99;
    cursor: pointer;
}

#call-to-phone-action:hover {
    position: fixed;
    right: 0;
    top: 19.5rem;
    padding: 1rem 1.5rem;
    /* height: 10rem; */
    width: 11rem;
    background-color: var(--primary);
    z-index: 99;
    cursor: pointer;
}

#call-to-phone-action p {
    color: var(--menucolor);
    text-align: center;
    font-weight: 700;
}

#call-to-phone-action-container {
    background-color: var(--primary);
    position: fixed;
    top: 19.5rem;
    right: -60rem;
    width: 60rem;
    max-width: 100vw;
    z-index: 90;
    padding: 5rem;
}

.close-call-to-action {
    color: var(--menucolor);
    font-size: 2rem;
    position: absolute;
    top: 10%;
    right: 10%;
}

.close-call-to-action img {
    width: 5rem;
}

.close-call-to-action {
    display: none;
}

.close-call-to-action .pop_up_close {
    position: absolute;
    right: 10px;
    top: 10px;
    display: block;
    width: 20px;
    height: 20px;
}

.close-call-to-action .pop_up_close:before {
    transform: rotate(45deg);
}

.close-call-to-action .pop_up_close:after {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
}

.close-call-to-action .pop_up_close:before,
.close-call-to-action .pop_up_close:after {
    content: '';
    background: var(--menucolor);
    height: 10%;
    width: 75%;
    position: absolute;
    left: 12.5%;
    top: 45%;
}

#call-to-phone-action-container:before,
#call-to-phone-action-container:after {
    content: '';
    height: 100%;
    width: 100%;
    left: 0%;
    top: 0%;
    transform-origin: bottom;
    position: absolute;
    z-index: -1;
    background-color: inherit;
    transform: skewX(-11.5deg);
    -webkit-transform: skewX(-11.5deg);
    -moz-transform: skewX(-11.5deg);
    -ms-transform: skewX(-11.5deg);
    -o-transform: skewX(-11.5deg);
}

#call-to-phone-action-container:before {
    transform-origin: top;
}

#call-to-phone-action-container .form-text-wrapper p {
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--menucolor);
    padding-left: 15px;
    display: inline-block;
}

#call-to-phone-action-container form > p {
    margin: 1rem 0 3rem;
}

.submit-button {
    position: relative;
}

.submit-button:before {
    content: '';
    height: 100%;
    width: 5rem;
    left: -2rem;
    top: 50%;
    position: absolute;
    transform: translate(-100%, -50%);
    background-image: url(img/arrows-white.svg);
    background-size: contain;
    -webkit-transform: translate(-100%, -50%);
    -moz-transform: translate(-100%, -50%);
    -ms-transform: translate(-100%, -50%);
    -o-transform: translate(-100%, -50%);
}

div.wpcf7 .ajax-loader:not(.is-active) {
    height: 0;
    display: none;
}

input[type='submit'] {
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 15px;
    padding-right: 15px;
}

.wpcf7-not-valid-tip {
    display: inline-block;
    color: var(--secondary);
    margin-bottom: 0.5rem;
    margin-left: 15px;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    border: none;
    padding: 0 15px;
    color: var(--secondary);
    font-weight: 700;
}

input {
    border: none;
    margin: 0.5rem 0;
}

/*****/

.product-container {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: flex-start;
}

.product-container p {
    font-size: 1.3rem;
    font-size: max(calc(0.5vw + 0.5vh + 0.1vmin), 12px);
}

.product-info-wrapper {
    position: fixed;
    border: 3px solid;
    padding: 2rem;
}

.product-container .product {
    width: 30%;
    position: relative;
    margin-top: 3rem;
    margin-bottom: 1rem;
    margin-right: 2rem;
}

.product-container,
.product-container .product,
.product-container .product .content {
    display: flex;
    align-items: stretch;
}

.product-container:not(.product-category-contents .product-container):not(
        .ddm-single-product
    ) {
    padding-left: calc(100% / 12 + 3rem);
}

.ddm-single-product {
    max-width: unset !important;
}

.product-container .product .content {
    width: 100%;
    padding: 0 2rem 0 0;
}

.product-container .product .content-img {
    position: relative;
    width: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: var(--grey);
}

.product-container .product .content-img > img {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    max-width: 72rem;
    height: 100%;
    max-height: 95%;
    object-fit: contain;
    z-index: 0;
    transform: translate(-50%, -50%);
}

.product-container .product .content-img:after {
    content: '';
    display: block;
    /* padding-top: 60%; */
}

.product-container .product .content-img .content-fields {
    /* position: absolute; */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 4rem 2rem 2rem;
    background-color: var(--grey);
    opacity: 0;
    z-index: 1;
    position: relative;
}

@media screen and (min-width: 769px) {
    .product-container .product .content-img .content-fields {
        height: 100%;
    }
}

.product-container .product .content-img .content-fields button {
    margin: 3rem auto 0;
    display: block;
    width: auto;
    color: var(--menucolor);
}

.product-container .product .content-img .content-fields button:hover {
    background-color: var(--grey);
    color: var(--secondary);
}

.content-fields > p {
    display: flex;
    width: 100%;
    justify-content: flex-start;
    margin-top: 0.5rem;
}

.content-fields > p b {
    display: inline-block;
    width: 50%;
}

.content-fields .download-section {
    margin-top: 5rem;
    position: relative;
    padding: 0 7rem 0 0;

    display: inline-block;
    margin-left: auto;
    width: 100%;
}

.content-fields a.download-section {
    pointer-events: none;
}

.content-fields a.download-section > * {
    pointer-events: all;
}

.content-fields .download-section:hover p:first-child {
    color: var(--secondary);
}

.content-fields .download-section:after :not(.product-container) {
    position: absolute;
    content: url(img/download.svg);
    right: 0;
    top: 50%;
    width: 7rem;
    transform: translate(25%, -50%);
    -webkit-transform: translate(25%, -50%);
    -moz-transform: translate(25%, -50%);
    -ms-transform: translate(25%, -50%);
    -o-transform: translate(25%, -50%);
    pointer-events: all;
}

.content-fields .download-section p {
    margin: 0;
    width: 33%;
    margin-left: auto;
    /* padding: 0; */
}

.product-container .product .absolute-title {
    position: absolute;
    top: -2.5rem;
    right: 0;
    width: 80%;
    z-index: 3;
}

.product-container .product .absolute-title .relative p.title {
    background-color: var(--primary);
    color: var(--menucolor);
    position: relative;
    z-index: 1;
    display: block;
    text-align: center;
    font-weight: 700;
}

.product-container .product .absolute-title .relative p.title a {
    color: inherit;
    display: block;
    padding: 1.5rem 0.5rem;
}

.product-container .product .absolute-title .relative p.title.orange {
    background-color: var(--secondary);
}

.product-container .product .absolute-title .relative p.title:before {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: top;
    background-color: inherit;
}

section#quotes {
    padding: 0;
}

.fadein {
    animation: fadeIn ease 1.5s;
    -webkit-animation: fadeIn ease 1.5s;
}

.fadeout {
    animation: fadeOut ease 1, 5s;
    -webkit-animation: fadeOut ease 1, 5s;
}

/* //animation */

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeOut {
    100% {
        opacity: 1;
    }

    0% {
        opacity: 0;
    }
}

/* quote slider */
section#quotes {
    padding: 5rem 0 5rem 20%;
    position: relative;
}

section#quotes:before {
    content: '';
    position: absolute;
    background-image: url(img/arrows.svg);
    background-size: contain;
    width: 20%;
    height: 80%;
    top: 0;
    left: 0;
    transform: translateX(-20%);
    -webkit-transform: translateX(-20%);
    -moz-transform: translateX(-20%);
    -ms-transform: translateX(-20%);
    -o-transform: translateX(-20%);
    cursor: pointer;
}

#quotes .swiper-slide {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

#quotes .swiper-slide .img img {
    height: 100%;
}

#quotes .quote-content {
    width: calc(80% - 2rem);
}

#quotes .quote-content .author-container {
    font-size: 2rem;
    display: flex;
    justify-content: flex-end;
    margin-top: 3rem;
}

#quotes .quote-content .author-container .author {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: calc(100% / 12 * 4);
}

#quotes .quote-content .author .customer {
    font-weight: 700;
}

#quotes .quote-content p {
    font-size: 2.5rem;
    text-indent: -5rem;
    padding-left: 5rem;
}

.footer-wrapper .lg_12:first-child {
    justify-content: flex-end;
}

.footer-wrapper .lg_12 {
    justify-content: space-between;
}

.footer-wrapper .lg_12 > * {
    padding: 2rem 3rem;
}

.footer-wrapper .col.top {
    align-items: flex-start;
    flex-grow: 1;
    justify-content: space-between;
    flex-wrap: nowrap;
}

.footer-wrapper {
    background-color: var(--primary);
    padding: 2rem 5rem;
    position: relative;
}

.footer-wrapper:before {
    content: '';
    background-color: var(--menucolor);
    height: 100%;
    width: 10rem;
    left: 0;
    top: 0;
    position: absolute;
    transform-origin: bottom;
    transform: translateX(-100%) skewX(-11.5deg);
    -webkit-transform: translateX(-100%) skewX(-11.5deg);
    -moz-transform: translateX(-100%) skewX(-11.5deg);
    -ms-transform: translateX(-100%) skewX(-11.5deg);
    -o-transform: translateX(-100%) skewX(-11.5deg);
}

form.search {
    width: 50rem;
    max-width: 100%;
    display: flex;
    margin-top: 0;
    /* margin-right: 5rem; */
    align-items: stretch;
}

form.search input {
    margin: 0;
}

.search > section > h2,
.search > section > p.h2 {
    font-weight: 300;
    margin-bottom: 5rem;
}

.search > section > h2 span,
.search > section > p.h2 span {
    font-weight: 700;
}

.pagination {
    position: relative;
    padding: 0 calc(100% / 12);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.page-numbers {
    text-align: center;
    font-size: 2rem;
    padding: 0 0.2rem;
}

.page-numbers.current {
    font-size: 3rem;
    font-weight: 700;
}

.page-numbers {
    text-align: center;
    font-size: 2rem;
    padding: 0 0.2rem;
}

.page-numbers.prev {
    left: calc(100% / 12);
    position: absolute;
}

.page-numbers.next {
    right: calc(100% / 12);
    position: absolute;
}

/* Produkt-Unterseiten */

.produkt_overview {
    display: flex;
    justify-content: flex-start;
}

.produkt_overview .thumbnail {
    flex-basis: 33%;
    padding-right: 3rem;
    flex-grow: 0;
}

.produkt_overview > * {
    flex-grow: 1;
}

.produkt_overview h1 + span,
.produkt_overview p.h1 + span {
    color: rgb(211, 97, 27);
    font-size: 2em;
    font-weight: 700;
}

.highlights {
    margin: 1rem 0 2rem;
}

.highlight {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 1rem 0 0;
}

.highlight .thumb_wrapper {
    width: 150px;
    flex-shrink: 0;
}

.highlight img {
    max-width: 120px;
    max-height: 80px;
}

.highlight span {
    display: block;
    flex-grow: 1;
    font-size: 2em;
}

.type-products .product_details > :not(:last-child) {
    margin-bottom: 3rem;
}

.product-accordion p + p {
    margin-top: 1rem;
}

.categories {
    column-count: 2;
    column-gap: 5rem;
}

.category {
    display: inline-block;
    width: 100%;
    padding: 0 0 3rem;

    display: block;
    break-inside: avoid;
}

.category h3,
.category p.h3 {
    margin-top: 0;
}

.category .row {
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.category .row > * {
    /* min-width: 25%; */
    display: inline-block;
    text-align: right;
}

.category .row:not(:last-child) {
    border-bottom: 2px solid var(--grey);
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
}

.category .row .label {
    font-weight: 700;
    padding-right: 1rem;
}

/* Produkte & Kategorien */
.subpage_container h3,
.subpage_container p.h3 {
    margin: 1rem 0 0;
    text-align: center;
    font-size: 1.3em;
}

.subpage_container .content-img {
    width: calc(100vw / 12);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: calc(100vw / 12);
    margin-right: 3rem;
}

@media screen and (max-width: 600px) {
    .subpage_container .content-img {
        width: calc(40vw);
        height: calc(40vw);
    }
}

.tag-wrapper.subpage_container {
    justify-content: center;
    position: relative;
}

.tag-wrapper.subpage_container .single-tag {
    margin: 1rem;
    width: calc(100% - 3rem);
}

.tag-wrapper.subpage_container .tag {
    min-width: 40rem;
    max-width: 100%;
    width: auto;
}

.product-accordion > h3,
.product-accordion > p.h3 {
    color: var(--menucolor);
    background-color: var(--primary);
    padding: 1rem 5rem;
    transform: translateX(calc(100vw / 12));
    cursor: pointer;
}

/* product_details table */

.product_details > .table {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 3rem;
}

.product_details table {
    min-width: 100%;
}

.product_details th {
    background-color: #98b8df;
}

.product_details td {
    background-color: var(--menucolor);
}

.product_details tr:nth-last-child(odd) td {
    background-color: var(--focus);
}

.product_details tr:first-child th,
.product_details .border {
    border-left: 1px solid;
}

.product_details tr > :first-child,
.product_details tr .first + * {
    border: none !important;
}

.product_details tr:not(:first-child) th {
    font-weight: normal;
}

.product_details tr .first {
    font-weight: 700 !important;
    border: none !important;
    position: sticky;
    left: 0;
}

.product_details th,
.product_details td {
    padding: 0.25rem 1rem;
    text-align: center;
}

.product_details ul {
    margin-left: 2rem;
}

.page-template > .wrapper {
    overflow-x: hidden;
}

/* Überschriften */
.page-headline {
    padding: 3rem calc(100vw / 12) 0;
    width: 100%;
}

.page-headline > * {
    margin: 0 calc(100vw / 12);
    max-width: calc(100% - (100vw / 12 * 2));
}

.page-headline h1,
.ddm-intro h1,
.ddm-intro p.h1,
.page-headline p.h1,
.page-headline .h1 strong {
    font-size: 2.25em;
}

.page-headline span {
    font-size: 2.25em;
    display: inline-block;
    line-height: 1.2;
}

.page-headline h1 span {
    font-size: 1em;
    font-weight: 300;
}

.entry-content p.catchy-headline::before,
.page-headline .catchy-headline::before {
    display: inline-block;
    content: url(img/arrows.svg);
    width: 3rem;
    height: 3rem;
    margin-left: 0.5rem;
    margin-right: 1rem;
    opacity: 1;
}

.entry-content p.catchy-headline,
.page-headline .catchy-headline {
    font-size: 3rem;
    font-weight: 300;
    margin-bottom: 0;
    margin-top: 0;
}

/* Zitate */

blockquote {
    margin: 5rem -5rem;
    background-color: var(--grey);
    width: calc(100% + 10rem);
    padding: 2rem 5rem;
    transform: skewX(-11.5deg);
}

blockquote > * {
    transform: skewX(11.5deg);
}

blockquote.custom_quote {
    display: flex;
}

blockquote.custom_quote img {
    width: calc(100vw / 12 * 2.5);
    height: auto;
    transform: skewX(11.5deg);
    max-width: none;
}

blockquote.custom_quote .image {
    margin-left: calc(100vw / 24);
    min-width: calc(100vw / 12 * 2);
    min-height: calc(100vw / 12 * 2);
    overflow: hidden;
    transform: translateX(2.5rem);
    display: flex;
}

blockquote p:first-of-type:before {
    content: '„';
    display: inline;
}

blockquote p:last-of-type:after {
    content: '“';
    display: inline;
}

blockquote cite {
    margin-top: 1rem;
    display: block;
    text-align: right;
}

/* subpages with excerpt */

body:not(.single-products) article.has-post-thumbnail {
    margin-top: 2rem;
    flex-wrap: nowrap;
}

body.single-products .produkt_overview {
    align-items: flex-start;
    flex-direction: row-reverse;
}

article > .post-edit-link,
article > .comments {
    display: none;
}

body.single-products .produkt_overview .thumbnail {
    margin-top: 3rem;
}

.entry-content h2,
.entry-content span.h2,
.entry-content p.h2 {
    font-weight: 300;
    font-size: 1.75em;
}

img + .entry-content h2,
img + .entry-content span.h2,
img + .entry-content p.h2 {
    margin-top: 0;
}

article.type-page > img + .entry-content h2:not(:first-child),
article.type-page > img + .entry-content p.h2:not(:first-child),
article.type-page > img + .entry-content span.h2:not(:first-child) {
    margin-top: 0;
}

.entry-content h2:not(:first-child),
.entry-content p.h2:not(:first-child),
.entry-content span.h2:not(:first-child) {
    margin-top: 5rem;
}

.entry-content h2 strong,
.entry-content p.h2 strong,
.entry-content span.h2 strong {
    /* display: block; */
}

.tag-wrapper.subpage_container.subpages {
    padding-top: 2rem;
}

.tag-wrapper.subpage_container.subpages.has-additional-headline {
    margin-top: 7rem;
}

.tag-wrapper.subpage_container.subpages .tag {
    width: 50%;
    padding-bottom: 1rem;
    display: flex;
    align-items: stretch;
}

.tag-wrapper.subpage_container.subpages.four_per_line .tag {
    width: 30rem;
    min-width: auto;
}

.tag-wrapper.subpage_container.subpages.three_per_line .tag {
    min-width: 40rem;
    max-width: 100%;
    width: auto;
}

.tag-wrapper.subpage_container.subpages.three_per_line .fake-h3 {
    font-size: 1.3em;
    margin: 1rem 0 0;
}

.tag-wrapper.subpage_container.subpages.four_per_line .tag h3,
.tag-wrapper.subpage_container.subpages.four_per_line .tag p.h3,
.tag-wrapper.subpage_container.subpages.four_per_line .tag span.fake-h3 {
    font-size: 2rem;
    font-weight: 700;
}

.tag-wrapper.subpage_container.subpages.four_per_line .single-tag {
    padding: 2rem 3rem;
}

.tag-wrapper.subpage_container.subpages .single-tag {
    text-decoration: none;
}

.tag-wrapper.subpage_container.subpages p {
    font-size: 2rem;
}

.tag-wrapper.subpage_container.subpages .single-tag {
    height: auto;
    min-height: 0;
}

.tag-wrapper.subpage_container.subpages .single-tag > h3,
.tag-wrapper.subpage_container.subpages .single-tag > p.h3 {
    margin: 0 0 1rem;
}

.tag-wrapper.subpage_container.subpages .excerpt {
    flex-direction: row;
    align-items: flex-start;
    display: inline-block;
}

.tag-wrapper.subpage_container.subpages .excerpt span {
    display: inline;
}

.tag-wrapper.subpage_container.subpages .excerpt:before {
    content: url('img/arrows.svg');
    width: 2rem;
    height: 2rem;
    display: inline-block;
    margin-right: 1rem;
}

/* Akkordeon */

.accordeon-wrapper {
    margin: 5rem 0;
}

.accordeon-wrapper .item {
    margin: 3rem 0 1rem;
    clear: both;
}

.accordeon-wrapper .item > h3,
.accordeon-wrapper .item > p.h3 {
    cursor: pointer;
    font-weight: 300;
    background-color: var(--grey);
    /* color: var(--menucolor); */
    padding: 0.5rem 5rem 0.5rem 3rem;
    margin: 0 0 2rem -3rem;
    width: calc(100% + 3rem);
    position: relative;
}

.accordeon-wrapper .item > h3:after,
.accordeon-wrapper .item > p.h3:after {
    content: url('img/arrows.svg');
    margin: 0 1rem;
    width: 2rem;
    height: 2rem;
    position: absolute;
    display: block;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    transition: all 0.3s ease;
}

.accordeon-wrapper .item.open > h3:after,
.accordeon-wrapper .item.open > p.h3:after {
    transform: translateY(-50%) rotate(-90deg);
}

.accordeon-wrapper .item > h3 strong,
.accordeon-wrapper .item > p.h3 strong {
    display: block;
}

.accordeon-wrapper .content a {
    text-decoration: underline;
}

/* Prozessverlauf */

h4 {
    font-size: 1.8rem;
}

.process {
    margin: 3.2rem 0;
    overflow: hidden;
}

.step {
    padding-left: 5rem;
    position: relative;
    margin-bottom: 1rem;
}

.step:first-child h4 {
    margin-top: 0.5rem;
}

.step:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: calc(100% + 1rem);
    width: 3rem;
    background-color: var(--grey);
    transform: translateY(-2rem) skewY(33.5deg);
}

/**/

.wp-block-image {
    clear: both;
    display: block;
}

.wp-block-image .size-large,
.wp-block-image .size-large video {
    margin-top: 2rem;
    margin-bottom: 2rem;
    float: none;
}

p > strong > a {
    text-decoration: underline;
}

#wpcf7-f934-p99-o2 {
    margin-top: 5rem;
    max-width: 80rem;
    display: block;
    margin: 5rem auto;
}

#wpcf7-f934-p99-o2 input[type='submit'] {
    color: var(--menucolor);
}

/*********************************/

.custom_content {
    position: relative;
}

.entry-content .custom_content h2,
.entry-content .custom_content span.h2 .entry-content .custom_content p.h2 {
    margin-bottom: 3rem;
    font-size: 1.5em;
    margin-top: 5rem;
}

.entry-content .custom_content:first-child h2,
.entry-content
    .custom_content:first-child
    span.h2
    .entry-content
    .custom_content:first-child
    p.h2 {
    margin-top: 0;
}

.custom_content:not(.link) .image-wrapper {
    position: absolute;
    top: 0;
    left: calc(-2rem - (100vw / 12));
    margin: 0 0 0 -2rem;
    background-color: var(--grey);
    width: calc(100vw / 12 * 1.5);
    padding: 1rem 5rem;
    display: flex;
    justify-content: center;
    flex-direction: center;
    transform: skewX(-11.5deg);
}

.custom_content:not(.link) .image-wrapper > * {
    transform: skewX(11.5deg);
}

.custom_content:not(.link) .image-wrapper + * {
    padding-left: calc(100vw / 24);
}
.custom_content.no_bg:not(.link) .image-wrapper {
    left: calc(-2rem - (80vw / 12));
    margin: 0;
    background-color: var(--grey);
    width: calc(80vw / 12 * 1.5);
}

.custom_content.no_bg:not(.link) .content {
    padding-left: 0;
}

.custom_content.link {
    margin-top: 5rem;
    display: flex;
    width: calc(100% + 100vw / 12 * 1.5);
    transform: translateX(calc(0px - 100vw / 12 * 1.5));
    background-color: var(--grey);
}

.custom_content.link > .image-wrapper {
    width: calc(100vw / 12 * 1.5);
    height: 100%;
}

.custom_content.link > *:not(.image-wrapper) {
    flex-grow: 1;
    padding-left: calc(100vw / 24);
}

.custom_content.link.diagonal_line:after {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: bottom;
    background-color: inherit;
}

.custom_content.link p {
    font-size: 1.5em;
    font-weight: 700;
    margin: 1rem 0;
}

.tag-wrapper .single-tag.tag-blue {
    background-color: var(--primary);
    color: var(--menucolor);
}

.tag-wrapper .single-tag.tag-blue p {
    color: var(--menucolor);
}

.contacts .single-tag p > span,
.contacts .single-tag p > span:first-child,
.contacts .single-tag p > span:last-child {
    align-self: unset;
    display: block;
}

.contacts .single-tag .content blockquote {
    margin: 0;
    padding: 2rem 0;
    transform: skewX(0deg);
    font-size: 1.5rem;
    width: 100%;
}

.contacts .single-tag .content p {
    display: block;
    text-align: left;
    padding: 0.5rem 0;
}

.contacts .single-tag .content h3,
.contacts .single-tag .content p.h3,
.contacts .single-tag .content h4 {
    margin: 0;
}

.contacts .single-tag .content .content-img {
    width: 10rem;
    height: 12rem;
}

.contacts .tag {
    display: flex;
    align-items: stretch;
}

.contacts .single-tag .content {
    /* transform: skewX(-11.5deg) */
}

.flex-contact {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.flex-contact .person-wrapper {
    padding-left: 2rem;
}

.flex-contact .img {
    width: 10%;
    max-width: 4.5rem;
    margin-right: 2rem;
    height: 100%;
}

p + .wp-block-contact-form-7-contact-form-selector,
p + .newsletter_subscribe {
    margin: 5rem 0;
}

#map.flex {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

#map .button {
    position: absolute;
    background-color: var(--primary);
    color: var(--menucolor);
    display: inline-block;
    padding: 1rem 2rem;
    margin: 0.8rem 0;
    min-width: 10rem;
    text-align: center;
    font-weight: 700;
}

.post-2330 ol {
    margin-left: 2rem;
}

img.wpcf7-captchac {
    width: auto;
}

.privacy-policy ol {
    margin-left: 1.7rem;
}

.privacy-policy ol li {
    font-size: 1.7rem;
}

#wpcf7-f5-o1 {
    color: var(--menucolor);
}

#call-to-phone-action-container form > p {
    margin-bottom: 1rem;
}

.accordeon-wrapper .item .content #attachment_1259 {
    float: left;
}

.accordeon-wrapper .item .content .clear {
    clear: both;
}

.swiper-wrapper.disabled {
    transform: translate3d(0px, 0, 0) !important;
}

.swiper-pagination.disabled {
    display: none;
}

.accordeon-wrapper .image {
    float: right;
    width: 40%;
    min-width: 30rem;
    margin: 1rem 0 2rem 4rem;
    overflow: hidden;
    position: relative;
    max-height: 25rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.accordeon-wrapper .image:before {
    content: '';
    position: absolute;
    background-color: var(--menucolor);
    height: 110%;
    transform: skewX(11.5deg);
    left: 0;
    top: -5%;
    width: 15%;
    transform-origin: bottom;
}

.tag-wrapper.contacts .tag {
    width: 100%;
}

.tag-wrapper.contacts .single-tag {
    overflow: hidden;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    min-height: 0;
}

.tag-wrapper.contacts .tag:not(.phone) .single-tag {
    min-height: 25rem;
}

.tag-wrapper.contacts .phone .single-tag .flex-contact {
    justify-content: center;
}

.tag-wrapper.contacts .single-tag .image {
    height: calc(100% + 4rem);
    /* margin-left: -5rem; */
    transform-origin: bottom;
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: auto;
    min-width: 20rem;
}

.tag-wrapper.contacts .single-tag .image > * {
    width: 100%;
    background-position: left bottom;
    background-size: contain;
}

.tag-wrapper.contacts .single-tag > * {
    max-width: none;
}

.contacts .single-tag .content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.flex-contact .person-wrapper {
    padding-left: 0;
    padding-right: 2rem;
    min-width: 25rem;
    flex-grow: 1;
}

div.captcha {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1rem;
    align-items: flex-start;
}

div.captcha img {
    margin: 0.5rem 1rem 0.5rem 0;
}

.wpcf7-captchac {
    height: 32px !important;
}

#call-to-phone-action-container form > p {
    margin-bottom: 0;
}

.captcha .wpcf7-form-control-wrap {
    width: 100%;
}

.accordeon-wrapper .fadeout-effect {
    -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
    mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
    height: auto;
    /* width: 300px; */
    overflow-y: unset;
}

.wp-block-columns {
    width: 100%;
}

.wp-block-columns .wp-block-column:only-child .wp-block-image {
    width: 50%;
}

.wp-block-image .aligncenter,
.wp-block-image .alignleft,
.wp-block-image .alignright {
    display: block;
}

.wp-block-image .alignright {
    text-align: right;
}

.wp-block-image .aligncenter {
    text-align: center;
}

.wp-block-image .aligncenter > img {
    margin-left: auto;
    margin-right: auto;
}

p:empty {
    display: none;
}

.btn-more {
    margin-top: 1rem;
}

.post-1836 #child-1986,
.post-99 #child-1576 {
    display: none !important;
}

@media only screen and (max-width: 599px) {
    .wp-block-columns .wp-block-column:only-child .wp-block-image {
        width: 100%;
    }
}

#wpcf7-f1840-o1 {
    color: var(--menucolor);
}

/* //CUSTOM STYLE */

.custom_content.no_bg:not(.link) .image-wrapper,
#post-336 .custom_content:not(.link) .image-wrapper,
#post-1941 .custom_content:not(.link) .image-wrapper,
#post-2466 .custom_content:not(.link) .image-wrapper,
#post-2505 .custom_content:not(.link) .image-wrapper {
    position: absolute;
    top: 0;
    left: calc(-2rem - (100vw / 12));
    margin: 0 0 0 -2rem;
    background-color: transparent;
    width: calc(100vw / 12 * 1.5);
    padding: 2rem 7rem;
    display: flex;
    justify-content: center;
    flex-direction: center;
    transform: skewX(0deg);
    -webkit-transform: skewX(0deg);
    -moz-transform: skewX(0deg);
    -ms-transform: skewX(0deg);
    -o-transform: skewX(0deg);
}

.custom_content.no_bg:not(.link) .image-wrapper img,
#post-336 .custom_content:not(.link) .image-wrapper img,
#post-1941 .custom_content:not(.link) .image-wrapper img,
#post-2466 .custom_content:not(.link) .image-wrapper img,
#post-2505 .custom_content:not(.link) .image-wrapper img {
    transform: skewX(0deg);
    -webkit-transform: skewX(0deg);
    -moz-transform: skewX(0deg);
    -ms-transform: skewX(0deg);
    -o-transform: skewX(0deg);
    max-width: 132px;
    min-width: 60px;
}

.custom_content.no_bg:not(.link) .content,
#post-336 .custom_content:not(.link) .content,
#post-1941 .custom_content:not(.link) .content,
#post-2466 .custom_content:not(.link) .content,
#post-2505 .custom_content:not(.link) .content {
    padding: 0;
}

#post-336 .entry-content .custom_content h2,
#post-336 .entry-content .custom_content p.h2,
#post-336 .entry-content .custom_content span.h2,
#post-1941 .entry-content .custom_content h2,
#post-1941 .entry-content .custom_content p.h2,
#post-1941 .entry-content .custom_content span.h2,
#post-2466 .entry-content .custom_content h2,
#post-2466 .entry-content .custom_content p.h2,
#post-2466 .entry-content .custom_content span.h2,
#post-2505 .entry-content .custom_content h2,
#post-2505 .entry-content .custom_content p.h2,
#post-2505 .entry-content .custom_content span.h2 {
    /* margin-bottom: 1rem; */
    margin-bottom: 1.7rem;
    font-size: 1.75em;
}

@media screen and (max-width: 1280px) {
    .custom_content.no_bg:not(.link) .image-wrapper,
    #post-336 .custom_content:not(.link) .image-wrapper,
    #post-1941 .custom_content:not(.link) .image-wrapper,
    #post-2466 .custom_content:not(.link) .image-wrapper,
    #post-2505 .custom_content:not(.link) .image-wrapper {
        /* padding: 0; */
        padding: 1rem 4rem;
    }
}

@media screen and (max-width: 1080px) {
    .custom_content.no_bg:not(.link) .image-wrapper,
    #post-336 .custom_content:not(.link) .image-wrapper,
    #post-1941 .custom_content:not(.link) .image-wrapper,
    #post-2466 .custom_content:not(.link) .image-wrapper,
    #post-2505 .custom_content:not(.link) .image-wrapper {
        /* padding: 0; */
        padding: 1rem 2rem;
    }

    .custom_content.no_bg:not(.link) .image-wrapper img,
    #post-336 .custom_content:not(.link) .image-wrapper img,
    #post-1941 .custom_content:not(.link) .image-wrapper img,
    #post-2466 .custom_content:not(.link) .image-wrapper img,
    #post-2505 .custom_content:not(.link) .image-wrapper img {
        max-width: 70px;
        /* min-width: 60px; */
    }
}

@media screen and (max-width: 768px) {
    .custom_content.no_bg:not(.link) .image-wrapper,
    #post-336 .custom_content:not(.link) .image-wrapper,
    #post-1941 .custom_content:not(.link) .image-wrapper,
    #post-2466 .custom_content:not(.link) .image-wrapper,
    #post-2505 .custom_content:not(.link) .image-wrapper {
        /* padding: 0; */
        padding: 1rem 2rem;
        display: none;
    }
}

#child-2386,
#child-2336 {
    display: none;
}
input,
select {
    border: 1px solid var(--primary);
    background-color: var(--menucolor);
}

.back-to-home {
    padding-top: 10rem;
}

.back-to-home img {
    width: 5rem;
}

.back-to-home a {
    display: flex;
}

.back-to-home p {
    font-size: 2rem;
    margin-left: 1rem;
}

.back-to-home a:hover {
    font-weight: 700;
}

.search h2,
.search span.h2,
.search p.h2 {
    max-width: 100% !important;
}

#call-to-phone-action-form {
    display: flex;
}

#call-to-phone-action-form.position_left {
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 2rem;
}

#call-to-phone-action-form.position_left:not(:last-child) {
    margin-bottom: 3rem;
}

#call-to-phone-action-form.position_left a {
    position: relative;
    padding: 2rem 2.5rem;
    width: 20.5rem;
    background-color: var(--secondary);
    z-index: 99;
    cursor: pointer;
    margin: 2rem 0 0;
    display: flex;
    text-decoration: none;
}

#call-to-phone-action-form.position_left a p {
    padding-left: 0.5rem;
}

#call-to-phone-action-form a {
    position: relative;
    padding: 1rem 1.5rem;
    width: 20rem;
    background-color: var(--secondary);
    z-index: 99;
    cursor: pointer;
    margin: 2rem 0 0;
    display: flex;
}

#post-6036 #call-to-phone-action-form a {
    width: auto;
}

#post-7586 #call-to-phone-action-form a {
    width: auto;
}

#call-to-phone-action-form a:hover {
    background-color: var(--primary);
}

#call-to-phone-action-form a img {
    margin-right: 1rem;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    max-width: 5rem;
}

#call-to-phone-action-form.diagonal_line a:before {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: top;
    background-color: inherit;
}

#call-to-phone-action-form.diagonal_line a:after {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-46%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: top;
    background-color: inherit;
}

#call-to-phone-action-form.position_left a::after {
    left: 55%;
}

#call-to-phone-action-form.diagonal_line p {
    color: var(--menucolor);
    font-size: 1.5rem;
    font-weight: 700;
}

.highlight-box {
    position: relative;
    padding: 5rem 5rem 4rem 5rem;
    background-color: var(--grey);
    margin-top: 7rem;
    margin-bottom: 4rem;
}

.highlight-box .flexbox {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 32px;
}

.page-id-3129 .highlight-box .flexbox {
    align-items: flex-start;
}

.highlight-box .blue-headline,
.entry-content .ddm-tip .blue-headline,
.subpage_container .blue-headline {
    color: var(--menucolor);
    position: absolute;
    top: -6rem;
    left: -5rem;
    background-color: var(--primary);
    padding: 1.5rem 3rem;
    padding-left: 5rem;
}

.highlight-box .blue-headline {
    margin-bottom: 2rem;
    font-size: 1.8rem;
    z-index: 1;

    position: relative;
    transform: translateX(-10rem);
    margin-top: -8rem;
    top: auto;
    left: auto;
    display: block;
    width: max-content;
    max-width: 90vw;
}

.highlight-box li {
    list-style: none;
}

.entry-content .ddm-tip .blue-headline {
    top: -3rem;
    margin-top: 0;
}

.subpage_container .blue-headline {
    top: -1rem;
    z-index: 1;
    left: 0;
}

.highlight-box .blue-headline:before,
.entry-content .ddm-tip .blue-headline:before,
.subpage_container .blue-headline:before {
    content: '';
    transform: skew(11.5deg, 0deg) translateX(-50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    transform-origin: top;
    background-color: inherit;
    -webkit-transform: skew(11.5deg, 0deg) translateX(-50%);
    -moz-transform: skew(11.5deg, 0deg) translateX(-50%);
    -ms-transform: skew(11.5deg, 0deg) translateX(-50%);
    -o-transform: skew(11.5deg, 0deg) translateX(-50%);
    height: calc(100% - 1px);
    bottom: 0;
}

.ddm-tip {
    position: relative;
    padding: 7rem 5rem 4rem 5rem;
    background-color: var(--grey);
    margin-top: 8rem;
    margin-bottom: 5rem;
    z-index: 0;
}

.wp-block-table {
    margin-top: 1.5rem;
}

.wp-block-table a {
    text-decoration: underline;
}

.wp-block-table td,
.wp-block-table th {
    padding: 2rem 4rem;
}

/* TOC */
.table-of-contents {
    margin: 2rem 0 4rem 0;
    position: relative;
    padding: 3rem 5rem;
    background-color: var(--grey);
}

p + .table-of-contents {
    margin-top: 8rem;
}

.table-of-contents ~ h1 {
    margin: 8rem 0 3rem;
    font-size: 1.75em;
}

.table-of-contents .toc-headline {
    font-size: 2.2rem;
    font-weight: 700;
    display: block;
    cursor: pointer;
}

.table-of-contents ul {
    padding: 0;
    padding-left: 1rem;
}

.table-of-contents > ul {
    margin-top: 3rem;
}

.table-of-contents li {
    position: relative;
    padding-left: 1rem;
    list-style: none;
    font-weight: 300;
    margin: 0 0 0.3rem 0;
    transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
    -moz-transition: 0.2s ease all;
    -ms-transition: 0.2s ease all;
    -o-transition: 0.2s ease all;
}

.table-of-contents li a {
    text-decoration: none;
    font-weight: 300;
}

.table-of-contents .toggle-toc {
    position: absolute;
    top: 2.5rem;
    right: 5rem;
    font-size: 30px;
    cursor: pointer;
    font-weight: 800;
    color: var(--main-color);
}

.table-of-contents li:before {
    content: '';
    -webkit-transform: translateX(-0.75em) rotate(45deg);
    transform: translateX(-0.75em) rotate(45deg);
    height: 0.5em;
    width: 0.5em;
    border-top: solid 2px var(--primary);
    border-right: solid 2px var(--primary);
    border-radius: 0;
    background: 0 0;
    position: absolute;
    display: block;
    top: 7px;
    left: 0;
}

.table-of-contents li > ul {
    padding-left: 0.7rem;
    padding-bottom: 1rem;
    margin-bottom: 0;
    padding-bottom: 0.1rem;
}

.entry-content h1 .to-toc,
.entry-content p.h1 .to-toc,
.entry-content h2 .to-toc,
.entry-content p.h2 .to-toc,
.entry-content h3 .to-toc,
.entry-content p.h3 .to-toc,
.entry-content h4 .to-toc,
.entry-content h5 .to-toc,
.entry-content h6 .to-toc {
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 14px;
    font-weight: 300;
    display: none;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    background: var(--menucolor);
    padding: 1rem;
    text-decoration: none;
}

.entry-content h1:not(.blue-headline):hover .to-toc,
.entry-content p.h1:not(.blue-headline):hover .to-toc,
.entry-content h2:not(.blue-headline):hover .to-toc,
.entry-content p.h2:not(.blue-headline):hover .to-toc,
.entry-content h3:not(.blue-headline):hover .to-toc,
.entry-content p.h3:not(.blue-headline):hover .to-toc,
.entry-content h4:not(.blue-headline):hover .to-toc,
.entry-content h5:not(.blue-headline):hover .to-toc,
.entry-content h6:not(.blue-headline):hover .to-toc,
.entry-content h1.block-hover .to-toc,
.entry-content p.h1.block-hover .to-toc,
.entry-content h2.block-hover .to-toc,
.entry-content p.h2.block-hover .to-toc,
.entry-content h3.block-hover .to-toc,
.entry-content p.h3.block-hover .to-toc,
.entry-content h4.block-hover .to-toc,
.entry-content h5.block-hover .to-toc,
.entry-content h6.block-hover .to-toc {
    display: block;
}

.to-toc:before {
    content: url(img/arrows.svg);
    position: absolute;
    top: 13px;
    width: 1rem;
    height: 1rem;
    right: -10px;
    transform: rotate(-90deg);
    text-indent: 0;
}

.to-toc:after {
    content: attr(title);
}

.entry-content h1,
.entry-content p.h1,
.entry-content h2,
.entry-content p.h2,
.entry-content span.h2,
.entry-content h3,
.entry-content p.h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    position: relative;
}

.ddm-intro .topic + .headline {
    margin-top: 0;
}

.ddm-intro .content_blocks {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 4rem;
    margin: 5rem 0 3rem 0;
}

.ddm-intro .content_blocks .icon_block {
    position: relative;
}

.ddm-intro .icon_block > :first-child {
    margin-top: 0;
}

.ddm-intro .icon_block .icon {
    position: absolute;
    left: -2rem;
    top: 0;
    transform: translateX(-100%);
    width: calc(100vw / 12 - 2rem);
    height: auto;
}

.ddm-intro .icon_block .icon img {
    max-width: 100%;
    height: auto;
    margin: auto;
    display: block;
}

.ddm-definition {
    padding: 2rem 3rem;
    background-color: var(--grey);
    float: right;
    width: calc(50% - 2rem);
    margin: 0 0 3rem 4rem;
}

.ddm-definition > :first-child {
    margin-top: 0;
}

.ddm-definition ~ h2,
.ddm-definition ~ h3,
.ddm-definition ~ div {
    clear: both;
}

.ddm-download {
    padding: 2rem 3rem;
    background-color: var(--grey);
    float: right;
    width: calc(50% - 2rem);
    margin: 0 0 3rem 4rem;
    position: relative;
}

.ddm-download > :first-child {
    margin-top: 0;
}

.ddm-download ul {
    margin: 0;
    list-style: none;
}

.ddm-download .h2 {
    display: flex;
    gap: 2rem;
    align-items: center;
}

.ddm-download .h2:after {
    content: url(//www.ddm-sensors.de/wp-content/themes/ddm/img/download.svg);
    width: 7rem;
    pointer-events: all;
    display: inline-block;
    margin: -1rem 0 -1rem auto;
}

.ddm-download ul {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: stretch;
    justify-content: flex-start;
}

.ddm-download a {
    text-decoration: none;
}

.ddm-download a .fileinfo {
    font-weight: 300;
    display: block;
}

.ddm-download ~ h2,
.ddm-download ~ h3,
.ddm-download ~ div:not(#call-to-phone-action-form),
.ddm-download + p + div + p {
    clear: both;
}

.count_headlines {
    counter-reset: h2;
}

.count_headlines.count_h1 h1,
.count_headlines h2 {
    counter-reset: h3;
}
.count_headlines.count_h1 h1:before,
.count_headlines h2:before {
    counter-increment: h2;
    content: counter(h2) '  ';
    font-weight: 700;
}

.count_headlines h3:before {
    counter-increment: h3;
    content: counter(h2) '.' counter(h3) '  ';
    font-weight: 700;
}

.wp-block-video figcaption {
    background-color: var(--grey);
    text-align: center;
    margin-top: 0.5em;
    margin-bottom: 1em;
    margin: 0;
    padding: 1rem 2rem 1.5rem;
    font-size: 2rem;
}

.footer-wrapper .lg_12:first-child {
    align-items: flex-start;
}

.footer-wrapper .lg_12 > .footer-links {
    width: 30rem;
    flex-grow: 1;
}

.widget_nav_menu ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
    font-size: 0.8em;
    justify-content: flex-start;
    margin: 0;
    padding: 0;
}

.widget_nav_menu ul li {
    margin: 0;
    padding: 0;
}

section.footer-links,
section.footer-links .entry-content {
    color: var(--primary);
    /* padding-bottom: 0; */
    /* padding-top: 0; */
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
    justify-content: flex-start;
}

section.footer-links p.h2 {
    margin-top: 0;
}

section .widget_nav_menu ul {
    color: var(--primary);
    font-size: 1em;
    gap: 1.5rem 3rem;
}

section .widget_nav_menu a {
    font-weight: 300;
    text-decoration: none;
}

section .widget_nav_menu li {
    display: flex;
    gap: 1rem;
    justify-content: flex-start;
}

section .widget_nav_menu li:before {
    content: url(img/arrows.svg);
    margin: 0;
    /* transform: rotate(90deg); */
    height: 1em;
    width: 1em;
    display: block;
}

@media screen and (max-width: 500px) {
    section .widget_nav_menu li {
        width: 100%;
    }
}

.user_benefit {
    display: flex;
    gap: 1rem;
    justify-content: flex-start;
    align-items: baseline;
    margin: 2rem 0;
    font-size: 2rem;

    padding: 1rem 2rem;
    background-color: var(--grey);
    /* float: right;
	width: calc(50% - 2rem);
	margin: 0 0 3rem 4rem;
	position: relative; */
}

.wp-block-columns {
    align-items: flex-start;
}

p + .wp-block-columns {
    margin-top: 0.8rem;
}

.wp-block-column {
    /* margin-top: -0.8rem; */
}

.wp-block-column > p:only-child {
    /* margin: .8rem 0; */
}

.user_benefit:only-child {
    margin: 0;
}

.user_benefit p.h3 {
    margin: 0;
}

.user_benefit:before {
    content: url(img/arrows.svg);
    margin: 0;
    /* transform: rotate(90deg); */
    height: 1em;
    width: 1em;
    display: block;
    flex-shrink: 0;
}

@media screen and (max-width: 600px) {
    .user_benefit:only-child {
        margin: 2rem 0;
    }

    .user_benefit {
        padding: 1rem;
    }
}

.entry-content > *:not(#toc ~ *) .to-toc {
    display: none !important;
}

.entry-content .to-toc {
    background: none !important;
}

.table_review .review {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    max-width: 100%;
}

article .table_review .review img[src*='svg'] {
    max-height: 5rem;
    height: 100%;
    width: auto;
    margin-right: 2rem;
}
article .table_review tr td {
    width: 50%;
}
article .table_review tr td p {
    margin-bottom: 2rem;
}

article .table_review tr {
    width: 100%;
}
article .table_review tr.images {
    background-color: transparent;
}

article .table_review.is-style-stripes tbody tr.images {
    background-color: transparent;
}

.highlight-box h4 {
    margin-bottom: 0;
}
.highlight-box h4:first-of-type {
    margin-top: 0;
}

.buttons-call-to-action {
    display: flex;
    flex-direction: row;
    gap: 4rem;
}
.custom_content:not(.link) .image-wrapper.no_bg {
    background-color: var(--menucolor);
    z-index: -100;
}

.style-border-td table {
    border: 3px;
    border-style: solid;
    border-color: #ddd;
}

.style-border-td thead {
    background-color: var(--grey);
    border: none;
}
.style-border-td thead tr {
    background-color: #ddd;
}

.wp-block-table.style-border-td tbody tr:nth-child(odd) {
    background-color: var(--grey);
}

@media screen and (max-width: 560px) {
    article .table_review .review img[src*='svg'] {
        max-height: 3rem;
        height: 100%;
        width: auto;
        margin-right: 2rem;
    }
}

/***************************/
/* Angepasste Kategorie-Übersichten */

.subpage_container .button,
#call-to-phone-action-form > span {
    position: relative;
    padding: 1rem 1.5rem;
    width: 20rem;
    background-color: var(--secondary);
    z-index: 99;
    cursor: pointer;
    margin: 2rem 0 0;
    display: flex;

    color: var(--menucolor);
    font-size: 1.5rem;
    font-weight: 700;
}

.subpage_container .button {
    font-weight: 300;
    max-width: 100%;
    min-width: 0;
    width: auto;
    padding-left: 3rem;
    padding-right: 3rem;
}

.subpage_container .button:hover,
#call-to-phone-action-form > span:hover {
    background-color: var(--primary);
}

#call-to-phone-action-form > span img {
    margin-right: 1rem;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    max-width: 5rem;
}

#call-to-phone-action-form.diagonal_line p {
    color: var(--menucolor);
    font-size: 1.5rem;
    font-weight: 700;
}

#call-to-phone-action-form.diagonal_line > span:before {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: top;
    background-color: inherit;
}

#call-to-phone-action-form.diagonal_line > span:after {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(-46%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    left: 50%;
    top: 0;
    transform-origin: top;
    background-color: inherit;
}

.entry-content .subpage_container a {
    font-weight: 300;
}

.subpage_container > .left {
    width: 100%;
    text-align: left;
    margin: 0 0 2rem;
    padding: 0 5rem;
}

@media screen and (max-width: 550px) {
    .subpage_container > .left {
        padding: 0 calc(100vw / 12);
    }
}

.tag-wrapper.subpage_container.subpages > .left p {
    text-align: left;
}

@media screen and (max-width: 1280px) {
    .tag-wrapper.subpage_container.subpages > .left p {
        font-size: inherit;
    }
}

.tag-wrapper.subpage_container.subpages.has-additional-headline {
    margin-top: 3rem;
    padding-bottom: 2rem;
}

.subpage_container .headline_wrapper {
    width: 100%;
    margin-bottom: -4rem;
    margin-left: 5rem;
    margin-top: 2rem;
}

.subpage_container .headline_wrapper .blue-headline {
    position: relative;
    margin-right: auto;
    display: inline-block;
}

.tag-wrapper.subpage_container.subpages.has-additional-headline .single-tag {
    padding-top: 3rem;
}

/* TOC */
.product-accordion h3 {
    /* margin: 2rem 0 4rem 0; */
    position: relative;
    padding: 2rem 5rem;
    background-color: var(--grey);

    /* font-size: 22px; */
    /* font-weight: 600; */
    /* display: block; */
    cursor: pointer;
    color: inherit;

    transform: none;
    margin-left: calc(100vw / 12);
    margin-right: calc(100vw / 12);
}

.product-accordion h3:after {
    content: '+';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 5rem;
    font-size: 30px;
    cursor: pointer;
    font-weight: 800;
    color: var(--main-color);
}
@media screen and (max-width: 768px) {
    .product-accordion h3 {
        margin-left: 0;
        margin-right: 0;
        padding-right: 5rem;
        padding-left: 3rem;
    }

    .product-accordion h3:after {
        right: 3rem;
    }

    .subpage_container > .left {
        padding: 0 calc(100vw / 12);
        align-self: flex-start;
    }
}

.tag-wrapper.subpage_container.subpages.three_per_line h3,
.tag-wrapper.subpage_container.subpages.three_per_line .fake-h3 {
    margin-top: auto;
    margin-bottom: auto;
}
.tag-wrapper.subpage_container.subpages.three_per_line .fake-h3 {
    font-weight: 700;
}

article.prod-content.has-post-thumbnail {
    display: flex;
    align-items: flex-start;
    margin-top: 0rem !important;
    margin-bottom: 0rem;
}

.products.prod-content {
    margin-bottom: 10rem;
}

[width='250'] {
    width: 250px;
}

/* search */
.search-results a {
    text-decoration: none;
}

.entry-content > .user_benefit {
    padding: 2rem;
}

.entry-content > .user_benefit a {
    font-weight: inherit;
    /* text-decoration-line: underline; */
    text-decoration-thickness: 1px;
    /* text-decoration-style: initial; */
    /* text-decoration-color: var(--secondary); */
}

.has-ddm-blue-background-color {
    background-color: var(--primary);
}

.has-ddm-orange-background-color {
    background-color: var(--secondary);
}

.has-ddm-grey-background-color {
    background-color: var(--grey);
}

.has-ddm-white-background-color {
    background-color: var(--menucolor);
}

.has-ddm-blue-text-color {
    color: var(--primary);
}

.has-ddm-orange-text-color {
    color: var(--secondary);
}

.has-ddm-grey-text-color {
    color: var(--grey);
}

.has-ddm-white-text-color {
    color: var(--menucolor);
}

.has-background {
    padding: 2rem;
    margin: 3rem 0;
}

.has-background #call-to-phone-action-form.position_left a {
    margin: auto;
}

.has-background .ddm-intro .content_blocks {
    margin-top: 3rem;
}

/* Tabellen */

.wp-block-table.is-style-ddm-table table {
    border: none;
}

.wp-block-table.is-style-ddm-table th,
.wp-block-table.is-style-ddm-table td {
    padding: 1rem 2rem;
    border-top: none;
    border-bottom: none;
}

.wp-block-table.is-style-ddm-table th,
.wp-block-table.is-style-ddm-table thead td {
    background-color: #98b8df;
}

.wp-block-table.is-style-ddm-table tr:nth-child(even) td {
    background-color: #cbdef2;
}

.wp-block-table thead {
    border-bottom: 0;
}

.wp-block-table.is-style-ddm-table table > :last-child tr:last-child td {
    border-bottom: 1px solid;
}

.wp-block-table.is-style-ddm-table table > :first-child tr:first-child td {
    border-top: 1px solid;
}

article.video_description .video-text h2:first-of-type {
    margin-top: 5rem;
}

article.video_description .video-text hr {
    display: none;
}

article.video_description .video-text hr:first-of-type + p {
    margin-top: 3rem;
}
article.video_description .video-text hr + p {
    display: flex;
    gap: 1rem;
    justify-content: flex-start;
    align-items: baseline;
    margin-top: 5rem;
    font-size: 2rem;
    padding: 1rem 2rem;
    background-color: var(--grey);
}

article.video_description .video-text hr + p::before {
    content: url(img/arrows.svg);
    margin: 0;
    height: 1em;
    width: 1em;
    display: block;
    flex-shrink: 0;
}

article.video_description .video-headline {
    margin-top: 6rem;
}

/* .woocommerce nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.woocommerce nav ul li a {
  text-decoration: none;
} */

.cart_button {
    position: fixed;
    background-color: var(--primary);
    border-radius: 50%;
    aspect-ratio: 1;
    width: 5.5rem;
    bottom: 3rem;
    right: 1.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    padding: 1rem;
    /* border: 2px solid var(--menucolor); */
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
    color: var(--menucolor);
}

.cart_button.hidden {
    display: none;
}

.cart_button:focus-visible {
    outline: 2px solid var(--secondary);
}

.cart_button:hover {
    background-color: var(--secondary);
}

.cart_button img {
    display: block;
}

.cart_button .badge {
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    border-radius: inherit;
    aspect-ratio: inherit;
    background-color: var(--secondary);
    flex: inherit;
}

@media (prefers-color-scheme: dark) {
    html {
        background-color: #fff;
        color: var(--primary);
    }

    section.footer-links,
    section.footer-links .entry-content {
        color: var(--primary);
    }
}

.product-container .product .content-img .content-fields .button {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.product-container .product .content-img .content-fields button {
    margin-top: 0;
}

.product-container .product .content-img .content-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    align-content: start;
    gap: 2rem;
}

.product-container .product .content-img .content-fields > * {
    grid-column-end: span 2;
}

.product-container .price {
    font-weight: 500;
    color: var(--secondary);
    font-size: 2rem;
    line-height: 1.4;
}

.product-container .product .content-img .content-fields > .product-info,
.product-container .product .content-img .content-fields > a.download-section {
    grid-column-end: span 1;
    width: 100%;
    margin-top: 0;
}

.product-container
    .product
    .content-img
    .content-fields
    > a.download-section
    p {
    width: 100%;
}

.wc-gzd-additional-info span,
.products .wc-gzd-additional-info span {
    display: block;
    margin: 0;
}

.wc-gzd-additional-info a {
    font-weight: 700;
}

.product-container .product .content-img .content-fields p {
    margin-top: 0.5em;
}

.content-img .product-info.only_desktop {
    position: absolute;
    bottom: 3rem;
    left: 0;
    padding: 1rem 2rem;
    z-index: 1;
    /* width: 100%; */
    background-color: var(--secondary);
}

.content-img .product-info.only_desktop:before {
    content: '';
    transform: skew(-11.5deg, 0deg) translateX(50%);
    height: 100%;
    width: 100%;
    z-index: -1;
    position: absolute;
    right: 50%;
    top: 0;
    transform-origin: bottom;
    background-color: inherit;
}

.content-img .product-info.only_desktop * {
    color: #fff;
}

body.no-scroll {
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .product-container .product .content-img > img {
        top: 0;
        position: static;
        transform: none;
        height: 30vh;
        margin-top: 5rem;
    }

    .content-img .product-info.only_desktop {
        display: none !important;
    }

    .product-container .product .content-img .content-fields {
        margin-top: 0 !important;
    }

    .product-container .price {
        font-size: inherit;
    }

    .product-container .product .content-img .content-fields {
        grid-template-columns: 1fr;
    }

    .product-container .product .content-img .content-fields > * {
        grid-column-end: span 1;
    }
}
@media screen and (max-width: 1200px) {
    .product-container .product {
        width: 45%;
    }
}
.product-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
}

/* img:is([sizes='auto' i], [sizes^='auto,' i]) {
    contain-intrinsic-size: revert;
    aspect-ratio: auto;
} */

img:is([sizes='auto' i], [sizes^='auto,' i]):not([width]) {
    object-fit: contain;
    object-position: left top;
    aspect-ratio: 1;
    width: 100%;
    height: auto;
}

/*  Tip */

.ddm-tip .post_author {
    margin-bottom: 0;
    margin-top: 2rem;
}
.ddm-tip .post_author img {
    border: 2px solid #fff;
}
.mb-0 {
    margin-bottom: 0px;
}
.mt-5 {
    margin-top: 5rem !important;
}
