/*
Theme Name:     Neve Child
Theme URI:      https://themeisle.com/themes/neve/
Template: neve
Author:         ThemeIsle
Author URI:     https://themeisle.com
Description:    Neve is a super fast, easily customizable, multi-purpose theme. It’s perfect for blogs, small business, startups, agencies, firms, e-commerce shops (WooCommerce storefront) as well as personal portfolio sites and most types of projects. A fully AMP optimized and responsive theme, Neve will load in mere seconds and adapt perfectly on any viewing device. While it is lightweight and has a minimalist design, the theme is highly extendable, it has a highly SEO optimized code, resulting in top rankings in Google search results. Neve works perfectly with Gutenberg and the most popular page builders (Elementor, Brizy, Beaver Builder, Visual Composer, SiteOrigin, Divi). Neve is also WooCommerce ready, responsive, RTL & translation ready. Look no further. Neve is the perfect theme for you!
Version:        1.0.0
License:        GNU General Public License v2 or later
License URI:    http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:    neve
Tags: blog, custom-logo, e-commerce, rtl-language-support, post-formats, grid-layout, one-column, two-columns, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, flexible-header, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, accessibility-ready, wide-blocks, block-styles
*/

/* COLORS*/

:root {
    --color-primary: #4a5e35;
    --color-secondary: #f2a902;
    --color-light: #ece8dc;
    --color-text: #1d1d1b;
}

/* browser */

html:not(:has(.logged-in)),
body:not(.logged-in) {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased; /* für WebKit (Chrome, Safari) */
    -moz-osx-font-smoothing: grayscale; /* für macOS / Firefox */
}

::selection {
    background: #4a5e35; /* z. B. Gelb */
    color: white; /* z. B. Schwarz */
}

/* Für Firefox */
::-moz-selection {
    background: #f2a900;
    color: black;
}
:is(.is-style-primary, .has-dark-bg) ::selection {
    background: #f2a900; /* z. B. Gelb */
    color: black; /* z. B. Schwarz */
}

:is(.is-style-primary, .has-dark-bg) ::-moz-selection {
    background: #f2a900; /* z. B. Gelb */
    color: black; /* z. B. Schwarz */
}

/* typgoraphy */

body > .wrapper * {
    font-family: "Inter", Arial, sans-serif !important;
}

.has-dark-bg a {
    color: white !important;
}

/* logo */

.nv-title-tagline-wrap {
    display: none;
}

.site-logo {
    transition: all 0.5s;
}

.site-logo {
    position: absolute;
    background: white;
    padding: 20px;
    box-sizing: border-box;
    top: -30px;
    box-shadow: 0px 2px 5px 0px #00000038;
}

body.state--scrolled .site-logo {
    padding: 10px;
}

body.state--scrolled .builder-item--logo {
    --maxwidth: 105px;
}

.site-logo img {
    transition: all 0.4s;
}

.site-logo:hover img {
    transform: scale(0.95);
}

.builder-item:has(> .builder-item--logo) {
    padding: 0;
}

/* dsgvo */

.el-dsgvo-body {
    :is(h1, h2, h3, h4, h5, h6, p) {
        margin-bottom: 0;
    }

    main > div > div {
        margin-bottom: 20px;
    }

    a:hover {
        text-decoration: none;
    }
}

/*

.site-logo {
    position: absolute;
    background: #ece8dc;
    background: white;
    padding: 20px;
    top: -30px;
    left: -10px;
    box-shadow: 0px 0px 2px 1px #00000036;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.builder-item--logo {
    --maxwidth: 120px;
}

.nav-ul li a {
    color: white;
}*/

.nav-ul li.nv-active > .wrap .caret,
.nav-ul li.nv-active > .wrap > a {
    font-weight: bold;
}

/* top header */

.header {
    position: sticky;
    top: 0;
    z-index: 500;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

body.logged-in .header {
    top: 32px;
}

body > .wrapper:not(.et-fb-iframe-ancestor) {
    overflow: unset;
}

body > .wrapper:not(.et-fb-iframe-ancestor) > *:not(.header) {
    overflow-x: hidden;
    max-width: 100vw;
}

.header-block {
    min-height: calc(100vh - 80px) !important;
    min-height: calc(100svh - 80px) !important;

    .wp-block-themeisle-blocks-advanced-column {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: stretch;
    }
}

p:last-child {
    margin-bottom: 0;
}

#fb-placeholder .button {
    display: block;
    text-transform: uppercase;
}

.rcb-content-blocker {
    * {
        font-size: 1rem !important;
    }

    div:has(> [role="presentation"]) {
        display: none !important;
    }

    a[role="button"] {
        font-size: 1rem !important;
        border-radius: 0 !important;
    }
}

.wp-block-group :has(.rcb-content-blocker) .fb-page {
    display: none;
}

/* weather */

#meteoprovbz_container {
    border: 0 !important;
    max-width: 300px;
    margin: 0 auto !important;

    * {
        text-align: center !important;
        font-family: var(--fontfamily, var(--bodyfontfamily)) !important;
        border: 0 !important;
    }
    th {
    }
    td {
        border-bottom: 0 !important;
    }

    tfoot td {
        padding-top: 7px !important;
    }
}

/* buttons */

.wp-element-button {
    text-transform: uppercase !important;
}

/* footer menu */

#footer-menu li {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

#footer-menu li:not(:last-child)::after {
    content: "|";
    margin: 0px calc(var(--spacing) / 2);
}

.site-footer .footer-bottom .container .left > .builder-item:last-child {
    display: none !important;
}

.site-footer .item--inner {
    padding: 0;
}

.site-footer .widget {
    margin-bottom: 0;
}

.site-footer .wp-block-social-links {
    margin: 0;
    margin-top: 10px;
}

.site-footer p:has(+ .wp-block-social-links) {
    margin-bottom: 0;
}

.site-footer .wp-block-image a {
    display: block;
    transition: transform 0.4s;
}

.site-footer .wp-block-image a:hover {
    transform: scale(0.95);
}

.site-footer .wp-block-themeisle-blocks-advanced-heading {
    margin-bottom: 0;
}

.site-footer p a:not(:hover) {
    text-decoration: underline;
}

:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link {
    background: #4a5e35;
}

.footer-main iframe {
    max-width: 100%;
    position: relative !important;
}

/* SINGLE */

.single .neve-breadcrumbs-wrapper {
    display: none !important;
}

.nv-single-post-wrap > div:first-child {
    margin-top: 120px;
}

.nv-index-posts,
.nv-single-post-wrap {
    margin-bottom: 100px;
}

/* pre footer */

.pre-footer {
    --rowbwidth: 0px;
    --rowbcolor: var(--nv-light-bg);
    --color: var(--nv-text-color);
    --bgcolor: #ece8dc;

    position: relative;
    background: var(--bgimage, var(--bgcolor, #fff));
    background-position: var(--bgposition, center);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: var(--bgattachment);
}

.pre-footer .container {
    border-bottom: 1px solid #ffffff;
}

.partner {
    transition: transform 0.5s;
}

.partner:hover {
    transform: scale(0.95);
}

/* BLOG LIST */

body .wp-block-post-excerpt__more-link {
    cursor: pointer;
    box-sizing: border-box;
    background-color: var(--secondarybtnbg);
    color: var(--secondarybtncolor) !important;
    border-style: solid;
    border-color: currentColor;
    fill: currentColor;
    border-width: var(--secondarybtnborderwidth, 0);
    border-radius: var(--secondarybtnborderradius, 3px);
    padding: var(--secondarybtnpadding, 7px 12px);
    font-weight: var(--btnfontweight, 700);
    font-size: var(--btnfs, var(--bodyfontsize));
    line-height: var(--btnlineheight, 1.6);
    letter-spacing: var(--btnletterspacing);
    text-transform: var(--btntexttransform, none);
    text-transform: uppercase;
    margin-top: 30px;
    cursor: pointer;
}

.blog-item .innerblocks-wrap .wp-block-themeisle-blocks-advanced-column:first-child:not(:has(img)) {
    display: none;
}

.blog-item .innerblocks-wrap:not(:has(.wp-block-themeisle-blocks-advanced-column:first-child img)) .wp-block-themeisle-blocks-advanced-column {
    flex-basis: 100% !important;
    width: 100%;
}

.blog-item {
    border-bottom: 1px solid;
    margin-bottom: 0 !important;
}

.wp-block-post:first-child:has(> .blog-item) .blog-item {
    padding-top: 0 !important;
}

.wp-block-post:last-child:has(> .blog-item) .blog-item {
    border-bottom: 0;
    padding-bottom: 0 !important;
}

.wp-block-post-template:has(.blog-item) {
    gap: 0;
}

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

.wp-block-query-pagination a:hover {
    text-decoration: none;
}
.wp-block-post-title a {
    text-decoration: none;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-top: -0.2lh;
}

.wp-block-post-excerpt__excerpt {
    text-decoration: none;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
}

.wp-block-post-title a:hover {
    text-decoration-line: underline;
}

.entry-header {
    text-align: center !important;
}

/* blog categories*/

.wp-block-categories-dropdown {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
    margin-bottom: 80px;

    select {
        border: 0;
        background-color: var(--color-light);
        color: var(--color-text);
        padding: 18px 40px !important;
        font-size: 1rem;
        background-position: 95%;
        cursor: pointer;
    }
}

/* CUSTOM 404 */

.custom-404 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

:is(.archive-container .nv-index-posts, .custom-404) {
    padding-top: 120px;
    padding-bottom: 120px;
}

.neve-main:has(.custom-404) > .container:last-child {
    display: none;
}

body.archive .posts-wrapper,
.archive-container .nv-index-posts {
    margin: 0 !important;
}

body.archive .article-content-col {
    background: var(--color-primary);
    padding: 40px;
    box-sizing: border-box;
    align-items: center;
    justify-content: flex-start;

    * {
        color: white;
    }

    .excerpt-wrap p {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .excerpt-wrap a {
        cursor: pointer;
        box-sizing: border-box;
        background-color: var(--secondarybtnbg);
        color: var(--secondarybtncolor) !important;
        border-style: solid;
        border-color: currentColor;
        fill: currentColor;
        border-width: var(--secondarybtnborderwidth, 0);
        border-radius: var(--secondarybtnborderradius, 3px);
        padding: var(--secondarybtnpadding, 7px 12px);
        font-weight: var(--btnfontweight, 700);
        font-size: var(--btnfs, var(--bodyfontsize));
        line-height: var(--btnlineheight, 1.6);
        letter-spacing: var(--btnletterspacing);
        text-transform: var(--btntexttransform, none);
        text-transform: uppercase;
        margin-top: 30px;
        cursor: pointer;
        display: block;
    }

    .excerpt-wrap a:hover {
        text-decoration: none;
    }

    .entry-title a:hover {
        text-decoration: underline;
    }

    .nv-post-thumbnail-wrap {
        margin-top: 40px;
        margin-bottom: 30px;

        a {
            display: block;
            height: 270px;
        }

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
}

body.archive .posts-wrapper {
    margin-left: -30px !important;
    min-width: calc(100% + 60px);
}

body.archive .back-button {
    display: flex;
    align-items: center;
    justify-content: center;
}

body.archive .back-button a {
    display: inline-block;
    margin-bottom: 40px;
}

body.archive .nv-page-title {
    text-align: center;
}

@media screen and (max-width: 959px) {
    :is(.archive-container .nv-index-posts, .custom-404) {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    body:not(:has(.header-small)):not(:has(.header-block)) main.neve-main {
        padding-top: 70px;
    }

    .nv-single-post-wrap > div:first-child {
        margin-top: 60px;
    }

    .nv-index-posts,
    .nv-single-post-wrap {
        margin-bottom: 40px;
        padding-left: 40px;
        padding-right: 40px;
        img {
            display: block;
        }
    }
    .nv-meta-list {
        display: none;
    }
    .nv-single-post-wrap > div:not(:last-child) {
        margin-bottom: 40px;
    }

    body.state--scrolled .builder-item--logo {
        --maxwidth: 80px;
    }

    .site-logo {
        padding: 10px;
        top: -12px;
    }

    .header-block {
        min-height: calc(100vh - 42px) !important;
        min-height: calc(100svh - 42px) !important;
    }

    .footer-main {
        padding: 50px 20px;

        * {
            text-align: center !important;
        }

        .widget.widget_block {
            display: flex;
            justify-content: center;
        }

        .widget_block:has(> .wp-block-spacer) {
            display: none;
        }

        .hfg-grid {
            display: block;
        }

        .builder-item {
            padding: 0 !important;
        }

        .wp-block-social-links {
            margin-bottom: 40px;
        }

        .widget_media_image {
            margin-bottom: 30px;
        }
    }

    .footer-bottom {
        padding: 20px 0px;

        .innerblocks-wrap {
            flex-direction: column;
            gap: 15px;
        }

        * {
            text-align: center;
        }

        .builder-item--footer-menu {
            display: flex;
            justify-content: center;
        }
    }

    .widget_media_image {
        display: flex;
        justify-content: center;
    }

    .navbar-toggle {
        border-radius: 0px;
    }

    body.archive .article-content-col {
        padding: 30px 20px;

        .nv-post-thumbnail-wrap a {
            height: 220px;
        }
    }
}

@media screen and (max-width: 600px) {
    body.archive .posts-wrapper {
        margin-left: -15px !important;
        min-width: calc(100% + 30px);
    }

    .wp-block-categories-dropdown {
        margin-bottom: 50px;

        select {
        }
    }

    :is(.archive-container .nv-index-posts, .custom-404) {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    body:not(:has(.header-small)):not(:has(.header-block)) main.neve-main {
        padding-top: 40px;
    }

    body.state--scrolled .builder-item--logo {
        --maxwidth: 70px;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        &:not(:last-child) {
            margin-bottom: 15px !important;
        }
    }

    .nv-single-post-wrap > div:first-child {
        margin-top: 50px;
    }

    .nv-index-posts,
    .nv-single-post-wrap {
        margin-bottom: 30px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .nv-single-post-wrap > div:not(:last-child) {
        margin-bottom: 30px;
    }

    .footer-main {
        padding: 40px 20px;
        padding-bottom: 50px;

        .fb-page > span,
        .fb-page iframe {
            width: 300px !important;
        }
    }

    .site-footer .wp-block-image a {
        max-width: 150px;
    }

    .header-main .left .builder-item {
        padding-left: 20px;
    }

    .header-main .right .builder-item {
        padding-right: 20px;
    }

    body .wp-block-post-excerpt__more-link {
        margin-top: 20px;
    }
}
