/*
Theme Name: Astra Child
Description: Child theme for Astra (Pekel custom code)
Author: Sven / Pekel
Template: astra
Version: 1.0.0
Text Domain: astra-child
*/

:root {
    --tec-font-family-base: 'Fraunces', serif !important;
    --tw-font-1: 'Fraunces', serif !important;
    --tec-font-family-sans-serif: 'Open Sans', sans-serif !important;
    --tw-font-2: 'Open Sans', sans-serif !important;
}

/* START Temp */

.woocommerce .related ul.products li.product,
.woocommerce .upsells.products ul.products li.product {
    width: 24% !important;
}
@media only screen and (max-width: 780px) {
    .order-1-mobile { order: 1; }
    .order-2-mobile { order: 2; }
}
.home .tribe-events-widget-events-list__view-more-link,
.tribe-events-visuallyhidden,
.load_more_upcoming_events {display:none !important}

#menu-item-2757 a {
    background-color: var(--ast-global-color-2);
    color: white;
    font-weight: bold;
    padding-top: 10px;
    padding-bottom: 10px;

    &:hover {
        background-color: #8e425e;
    }
}

.single-event_listing {--wp--style--global--content-size: 1080px !important;}
img {max-width:100%;height:auto;}
@media only screen and (min-width: 991px){.wp-block-getwid-custom-post-type__post {flex-basis: calc(50% - 50px);}}

.woocommerce div.product .woocommerce-product-gallery__image a::before {display: none}
.wpgs-nav .slick-current {border: 0 !important}

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

.widget_mailpoet_form .widget-title {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.tribe-events .tribe-events-calendar-month__calendar-event-title-link, .tribe-events .tribe-events-calendar-month__calendar-event-tooltip-title-link {
    overflow-wrap: normal;
    hyphens: auto;
}

.tribe-events-single-event-title,
.tribe-events-content h2, .tribe-events-content h3, .tribe-events-content h4, .tribe-events-content h5, .tribe-events-content h6 {
    font-family: var(--tw-font-1);
}

.tribe-events-content h2 {
    font-size: var(--tec-font-size-9);
}

.tribe-events-content h3 {
    font-size: var(--tec-font-size-8);
}

.tribe-events-content h4 {
    font-size: var(--tec-font-size-7);
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {padding:0 !important}

@media (max-width: 390px) {
    .woocommerce table.variations tr td select {
        max-width: calc(100% - 2.2em);
    }
}

@media (max-width: 540px) {
    .woocommerce div.product table.variations tr,
    .woocommerce div.product table.variations tr .value {
        display: flex;
        flex-direction: column;
    }
}

@media (min-width: 768px) {
    .wp-block-columns {
        flex-wrap: wrap !important;
    }
}

@media (min-width: 1100px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 0 !important;
        flex-grow: 1 !important;
        max-width: none !important;
    }

    .wp-block-columns {
        flex-wrap: nowrap !important;
    }
}

.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-datetime {
    align-items: center;
    padding: 15px 0;
    background-color: var(--ast-global-color-6);
}

.tribe-common .tribe-events-widget-events-list__event-wrapper {
    display: flex;
    align-items: center;
    padding-left: 15px;
}

.wp-element-button {
    transition: .3s;
}

/* END Temp */

a {
    font-weight: 600;
}

html {
    font-size: 18px !important;
}

.no-list {
    margin: 0;
    list-style-type: none;
}

.visually-hidden-focusable:not(:focus):not(:active),
.visually-hidden,
.sr-only {
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

h1, h2, h3, h4, h5, h6 {
    hyphens: auto;
    hyphenate-limit-chars: 5 5;
}

.tribe-common,
.tribe_events {
    h1, h2, h3, h4, h5, h6 {
        font-family: var(--tec-font-family-base) !important;
        color: var(--ast-global-color-2) !important;

        a {
            color: inherit !important;
        }
    }
}

.tribe-events-single ul.tribe-related-events li {
    background-color: unset;
}

.has-background {
    background-color: var(--ast-global-color-6);
}

.tribe-events-content a,
.tribe-events-content h2,
.tribe-events-content h3,
.tribe-events-content h4,
.tribe-events-content h5,
.tribe-events-content h6,
.entry .entry-content .event-tickets .tribe-tickets__tickets-title,
.event-tickets .tribe-tickets__tickets-title,
.tribe-events-related-events-title,
.tribe-events-single-event-title {
    color: var(--ast-global-color-2) !important;
}

.tribe-events-event-image {
    img {
        aspect-ratio: 2/1;
        object-fit: cover;
    }
}

/* Events */
#page .tribe-events section.tribe-events-l-container,
#page .tribe-common--breakpoint-medium.tribe-events section.tribe-events-l-container {
    padding-top : var(--tec-spacer-5) !important;
}

.tribe-events {
    .tribe-events-header__title h1.tribe-events-header__title-text {
        font-size: 2.125rem;
    }
}

/* Subscribe */
.tribe-events-c-subscribe-dropdown {
    position: relative;
}

.tribe-events-c-subscribe-dropdown__content {
    position: absolute;
    top: 100%;
}

/* General theming for archives */
.pekel-archive-header {
    h1 {
        margin-bottom: var(--wp--preset--spacing--50);
    }
}
.pekel-archive-description {
    margin-bottom: var(--wp--preset--spacing--70);
}

.pekel-archive-contents {
    padding: var(--wp--preset--spacing--50);
    background-color: var(--ast-global-color-primary);
}

/* Filters */
.pekel-filters {
    h2 {
        margin-bottom: var(--wp--preset--spacing--20);
    }
}

.pekel-filter {
    select {
        outline: 2px solid var(--ast-global-color-primary);
        transition: .4s;

        &:focus,
        &:focus-within {
            outline: 2px solid var(--ast-global-color-secondary);
        }
    }
}

.pekel-filter-group {
    padding: var(--wp--preset--spacing--20);

    legend {
        margin-bottom: 0;
    }
}

.pekel-filter--checkboxes {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--wp--preset--spacing--30);
}

.pekel-checkbox {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--20);

    &:focus,
    &:focus-within {
        outline: 2px solid var(--ast-global-color-secondary);
    }

    label {
        cursor: pointer;
        outline: 2px solid var(--ast-global-color-primary);
        transition: .4s;

        &:focus,
        &:focus-within {
            outline: 2px solid var(--ast-global-color-secondary);
        }
    }
}

.pekel-filter-row {
    display: flex;
    align-content: flex-end;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--30);
    margin-bottom: var(--wp--preset--spacing--70);
    padding-bottom: var(--wp--preset--spacing--50);
    border-bottom: 1px solid var(--ast-global-color-secondary);
}

.pekel-filter-actions {
    display: flex;
    align-items: center;
    flex-basis: 100%;
    gap: var(--wp--preset--spacing--50);
}

/* Grid with cards */
.pekel-grid {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0;
    padding: 0;
    gap: var(--wp--preset--spacing--50);

    .pekel-card {
        padding: 0;
        background-color: var(--ast-global-color-subtle-background);
    }
}

@media (min-width: 580px) {
    .pekel-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (min-width: 800px) {
    .pekel-grid {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.pekel-card {
    display: flex;
    flex-direction: column;

    &:focus-within .pekel-card--title a:focus {
        text-decoration: none;
    }
}

.pekel-card--img {
    order: 1;

    img {
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }
}

.pekel-card--text {
    order: 2;
    padding: var(--wp--preset--spacing--50);
}

.pekel-card--title {
    margin-bottom: var(--wp--preset--spacing--20);

    a {
        color: var(--ast-global-color-2);
    }

    a:focus {
        text-decoration: underline;
    }
}

.pekel-card--tags {
    display: flex;
    flex-wrap: wrap;
    margin-top: var(--wp--preset--spacing--20);
    margin-bottom: var(--wp--preset--spacing--30);
    gap: var(--wp--preset--spacing--30);
}

.pekel-card--tag,
.pekel-card--cta__link {
    padding: 5px;
    line-height: 1;
}

.pekel-card--tag {
    font-size: var(--wp--preset--font-size--normal);
}

.pekel-card--topic {
    color: var(--ast-global-color-4);
    background-color: var(--ast-global-color-1);
}

.pekel-card--subtype {
    color: var(--ast-global-color-4);
    background-color: var(--ast-global-color-0);
}

.pekel-card--cta__link {
    color: var(--wp--preset--color--ast-global-color-3);
    background-color: var(--ast-global-color-alternate-background);

    &:hover,
    &:focus {
        background-color: var(--ast-global-color-alternate-background);
    }
}

.ast-article-single figure,
.ast-article-single img:not(figure img) {
    box-shadow: none !important;
}

figcaption {
    font-size: var(--wp--preset--font-size--small);
}

/* Float left with text wrap and margin */
.wp-block-image.alignleft,
.wp-block-image.alignright {
    figcaption {
        margin-bottom: 0;
    }
}

@media (max-width: 700px) {
    .wp-block-image.alignleft,
    .wp-block-image.alignright {
        float: none;
        margin: 0 0 20px 0 !important;
    }
}

.wp-block-image.alignleft {
    margin: 0 1em 1em 0;
}

.wp-block-image.alignright {
    margin: 0 0 1em 1em;
}

/* Clearfix after block for safety */
.clearfix::after {
    content: '';
    display: table;
    clear: both;
}

.site-footer-primary-section-1 {
    #block-15 {
        p {
            font-size: var(--wp--preset--font-size--small);
        }
    }

    .footer-widget-area:first-child {
        p {
            margin-bottom: 0;
        }
    }
}

.site-above-footer-wrap[data-section="section-above-footer-builder"] .ast-builder-grid-row {
    max-width: 1240px;
    padding-right: 20px;
    padding-left: 20px;
}

/* Hide gift card breadcrumbs */
#product-1130 {
    .woocommerce-breadcrumb,
    .single-product-category,
    .product_meta,
    .mwb_wgm_selected_template,
    .mwb_wgm_delivery_method + p {
        display: none !important;
    }

    .entry-title {
        font-size: 45px;
    }

    .woocommerce-tabs {
        padding-top: 0;
    }

    .entry-content :where(h1,h2,h3,h4,h5,h6) {
        margin-top: 0;
    }

    .mwb_wgm_delivery_method {
        margin-bottom: 0;
    }
}

@media (max-width: 921px) {
    .stack-on-mobile {
        box-shadow: 1px 10px 10px 0px rgba(0, 0, 0, 0.3);

        .menu-item {
            a {
                color: var(--ast-global-color-3) !important;
            }
        }

        .menu-item-2757 {
            a {
                color: var(--ast-global-color-4) !important;
                background-color: var(--ast-global-color-2) !important;
            }
        }
    }
}

.newsletter-mail {
    input {
        font-family: var(--wp--preset--font-family--tw-font-2) !important;
    }
}

.woocommerce .widget_shopping_cart .cart_list li a.remove, .woocommerce.widget_shopping_cart .cart_list li a.remove {
    right: -0.8em;
    top: -0.3em;
}