/*
 * Theme Name:   MEWIGO
 * Theme URI:    https://www.mewigo.de
 * Description:  Bricks Child Theme
 * Author:       MEWIGO
 * Author URI:   https://www.mewigo.de
 * Template:     bricks
 * Version:      1.0
 * Text Domain:  mewigo
 */

/* ==========================================================================
   VARIABLES
   ========================================================================== */

/* Responsive Variables
   ========================================================================== */
@media (max-width: 768px) {
    :root {
        --container-padding-x: 15px !important;
    }
}

/* ==========================================================================
   FONTS
   ========================================================================== */
@font-face {
    font-display: swap;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url('/wp-content/themes/bricks-core/css/fonts/open-sans-v40-latin-regular.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: url('/wp-content/themes/bricks-core/css/fonts/open-sans-v40-latin-700.woff2') format('woff2');
}

/* ==========================================================================
   HELPER CLASSES
   ========================================================================== */

/* Responsive Display Classes */
@media (min-width: 769px) {
    :root body.brx-body .display-only-mobile {
        display: none;
    }
}

@media (max-width: 768px) {
    :root body.brx-body .display-only-desktop {
        display: none;
    }
}

/* ==========================================================================
   TYPOGRAPHY
   ========================================================================== */

/* Text Wrapping */
body {
    hyphens: auto;
}

p, 
span {
    word-wrap: break-word;
    hyphens: auto;
}

/* Headings & Pseudo-Headings */
h1, h2, h3, h4, h5,
.style-h1, .style-h2, .style-h3, .style-h4, .style-h5 {
    display: block;
    text-wrap: balance;
    hyphens: none;
}

/* ==========================================================================
   LAYOUT & STRUCTURE
   ========================================================================== */

/* Anchor Link Scroll Padding */
html {
    scroll-padding-top: calc(var(--header-height-full) + 20px);
}

/* Remove Focus Outlines 
body.bricks-is-frontend :focus-visible {
    outline: none;
}
*/

/* Disable SVG Minimum Sizes 
svg:not([height]) {
    min-height: unset;
}

svg:not([width]) {
    min-width: unset;
}
*/

/* Standard Spacing, Padding, Margins */
:is(.brxe-text, .brxe-text-basic) > :not(a):first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

:is(.brxe-text, .brxe-text-basic) :not(:is(a, li)):last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* First Section Padding */
html > body > main section:first-child:not(.section-hero) {
    padding-top: var(--section-first-padding-top);
}

/* Last Section Padding */
html > body > main section:last-child {
    padding-bottom: var(--section-last-padding-bottom);
}

/* ==========================================================================
   LINKS & BUTTONS
   ========================================================================== */

/* Menu Item Links */
.bricks-nav-menu a:hover, 
nav .current-menu-item > a, 
nav .current-menu-item > div > a {
    font-weight: bold;
}

/* Regular Links - Hover */
main a:not(.brxe-button):hover {
    text-decoration: underline;
}

/* Buttons - Hover */
body a.bricks-button:hover, 
body li.bricks-button a:hover {
    /*font-weight: initial;*/
    text-decoration: none;
}

/* Empty Links - Hover */
a[href="#"]:hover {
    cursor: default;
}

/* Links in Shortcode Elements */
:where(.brxe-shortcode) a {
    font-weight: 400 !important;
}

/* Links on Background */
.background-black p a {
    border-bottom: 1px solid var(--bricks-color-fccfjr);
}

.background-black p a:hover {
    border-bottom: 1px solid var(--bricks-color-smxxaq);
}

.background-black .style-h3 a,
.background-black .style-h2 a {
    border-bottom: 0;
}

section:not(.background-black) .bricks-background-dark {
    border-color: black !important;
}

/* ==========================================================================
   NAVIGATION & MENUS
   ========================================================================== */

/* Menu Items Layout
@media (min-width: 769px) {
    .menu-item {
        display: inline-flex;
        align-items: center;
    }
    
    .menu-item.bricks-button {
        min-width: 180px;
    }
    
    .menu-item.bricks-button > ul.sub-menu {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .menu-item {
        display: block;
    }
}
*/

/* Trick to prevent jumping on hover 
.bricks-nav-menu li a[title] {
    display: inline-block !important;
}

.bricks-nav-menu li a[title]:before {
    display: block;
    content: attr(title);
    font-weight: bold;
    height: 0;
    overflow: hidden;
    visibility: hidden;
}
*/

/* Submenu Items 
li.menu-item li.menu-item {
    display: block;
}
*/

/* Submenu Spacing 
.bricks-nav-menu ul.sub-menu {
    margin-top: 15px;
    padding-top: 10px;
}

.bricks-mobile-menu-wrapper.left {
    padding-top: 65px;
}
*/

/* Submenu Item Dividers */
.bricks-nav-menu ul.sub-menu > li {
    position: relative;
}

.bricks-nav-menu ul.sub-menu > li:not(:last-child):before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 8%;
    width: 84%;
    border-bottom: 1px solid var(--bricks-color-ojyfvt);
}

/* Hide Submenu when Bricks Mega Menu is used */
.bricks-menu-item.brx-has-megamenu ul.sub-menu {
    display: none;
}

.bricks-nav-menu.brx-has-megamenu > li > a > span {
    display: none;
}

/* Mobile Menu Styles */
.bricks-mobile-menu {
    padding-top: 50px;
}

/* Make submenu toggle take full width of parent */
.bricks-mobile-menu div.brx-submenu-toggle.icon-right {
    position: relative;
}

.bricks-mobile-menu div.brx-submenu-toggle.icon-right button {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    justify-content: end;
}

/* Mobile Submenu Animation */
.brxe-nav-menu .bricks-mobile-menu-wrapper .sub-menu {
    display: block;
    max-height: 0;
    transition: 0.1s linear;
    overflow: hidden;
}

.brxe-nav-menu .bricks-mobile-menu-wrapper li.open > .sub-menu {
    max-height: 500px;
}

/* Rotate submenu indicator when open */
nav.bricks-mobile-menu-wrapper li.menu-item-has-children .open {
    transition: rotate 50ms linear;
}

nav.bricks-mobile-menu-wrapper li.menu-item-has-children [aria-expanded="true"] .open {
    display: initial;
    rotate: 180deg;
}

/* Color submenu indicator white */
nav li.bricks-button div.brx-submenu-toggle.icon-right > button svg {
    fill: white !important;
    stroke: white !important;
}

/* Remove button styling from mobile menu buttons 
@media (max-width: 768px) {
    :root .menu-item.bricks-button[class*="primary"]:not(.outline) {
        background-color: unset;
        border: unset;
        color: unset;
        font-size: unset !important;
        padding: unset !important;
        border-radius: unset;
        transition: unset;
        display: unset;
        justify-content: unset !important;
        letter-spacing: unset;
        padding: unset;
        text-align: unset;
    }
}
*/

/* ==========================================================================
   SPECIAL ELEMENTS
   ========================================================================== */

/* Filter Buttons */
.brxe-filter-radio.filter-button-style span.bricks-button:hover,
.brxe-pricing-tables .tabs li.tab:hover {
    background-color: rgba(94, 94, 94, 0.33) !important;
}

/* Highlight Active Menu Items */
body.single-referenz .nav-link-projekte {
    border-bottom: 2px solid var(--bricks-color-fccfjr);
}

body.single-post .nav-link-magazin {
    border-bottom: 2px solid var(--bricks-color-fccfjr);
}

/* Carousel Arrows */
.swiper-button.swiper-button-disabled {
    opacity: 0 !important;
    pointer-events: none;
}