/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* WooCommerce: keep notices above sticky headers / stacking contexts */
.single-product .woocommerce-notices-wrapper {
	position: fixed;
	z-index: 100000;
	top: 124px;
	left: 1rem;
	right: 1rem;
	max-width: 72rem;
	margin: 0 auto;
	pointer-events: none;
}

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper ul {
	pointer-events: auto;
    border-top-color: #c9a22e;
}

body.admin-bar .woocommerce-notices-wrapper {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar .woocommerce-notices-wrapper {
		top: 46px;
	}
}

h1 em, h2 em, h3 em, h4 em, h5 em, h6 em {
    font-family: ivyora-display, serif;
    font-style: italic;
    font-weight: 300;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
    font-family: "Urbanist", Sans-serif;
    font-style: normal;
    font-weight: 100;
}

h1 em.gold, h2 em.gold, h3 em.gold, h4 em.gold, h5 em.gold, h6 em.gold {
    color: #c9a22e;
}

h1 span.gold, h2 span.gold, h3 span.gold, h4 span.gold, h5 span.gold, h6 span.gold {
    color: #c9a22e;
}

h1 em.white, h2 em.white, h3 em.white, h4 em.white, h5 em.white, h6 em.white {
    color: #ffffff;
}

h1 span.white, h2 span.white, h3 span.white, h4 span.white, h5 span.white, h6 span.white {
    color: #ffffff;
}

h1 em.black, h2 em.black, h3 em.black, h4 em.black, h5 em.black, h6 em.black {
    color: #000000;
}

h1 span.black, h2 span.black, h3 span.black, h4 span.black, h5 span.black, h6 span.black {
    color: #000000;
}


h1 em.bigger, h2 em.bigger, h3 em.bigger, h4 em.bigger, h5 em.bigger, h6 em.bigger {
    font-size: 1.5em;
}

h1 span.bigger, h2 span.bigger, h3 span.bigger, h4 span.bigger, h5 span.bigger, h6 span.bigger {
    font-size: 1.5em;
}

/* Box only legacy/non-Elementor pages */
.not-built-with-elementor [data-widget_type="theme-post-content.default"] {
    width: 100%;
    max-width: 1300px !important;
    margin: 0 auto;
    padding: 50px 0;
}

.not-built-with-elementor.single-post hr {
    display: none;
}

@media (max-width: 1200px) {
    .not-built-with-elementor [data-widget_type="theme-post-content.default"] {
        width: 100%;
        max-width: 100% !important;
        padding: 50px;
    }
}

@media (max-width: 768px) {
    .not-built-with-elementor [data-widget_type="theme-post-content.default"] {
        padding: 30px;
    }
}

/* Events */
.pc-event-widget h3 {
    margin: 0px;
    padding: 0px;
}

/* Events grid (AJAX filter) */
#pc-events-grid {
    margin-top: 2rem;
    transition: opacity 0.3s ease;
}

.pc-events-grid-fading-out {
    opacity: 0;
}

.pc-events-grid-fading-in {
    opacity: 1;
}

.pc-events-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 3rem;
    width:60%;
}

.pc-events-filters .pc-filter-select {
    flex: 0 0 calc(33.333% - 0.75rem);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: none;
    border-radius: 0;
    background-color: #f1f2f3;
    color: #111;
    padding: 0.9rem 2.5rem 0.9rem 1.2rem;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    cursor: pointer;
    outline: none;
    width: 100%;
    /* simpler single arrow */
    background-image: linear-gradient(45deg, transparent 50%, #111 50%),
                    linear-gradient(135deg, #111 50%, transparent 50%);
    background-position: calc(100% - 1.2rem) 55%, calc(100% - 0.9rem) 55%;
    background-size: 7px 7px, 7px 7px;
    background-repeat: no-repeat;
}

.pc-events-filters .pc-filter-select:hover,
.pc-events-filters .pc-filter-select:focus {
    background-color: #e4e5e7;
}

.pc-events-grid-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 5rem 2rem;
}

.pc-event-card {
    flex: 0 0 calc(33.333% - 1.5rem);
    display: flex;
}

.pc-event-card-link {
    display: block;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

.pc-event-card-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.pc-event-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.pc-event-meta {
    margin-top: 0.75rem;
    font-family: "Gotham", Sans-serif;
    font-weight: 400;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.pc-event-title {
    margin-top: 0.35rem;
    margin-bottom: 0.75rem;
    font-family: "Gotham", Sans-serif !important;
    font-weight: 900 !important;
    font-size: 24px !important;
    margin-bottom: 18px;
}

.pc-event-button-wrap {
    margin-top: auto;
}

.pc-event-button {
    display: inline-block;
    padding: 15px 36px;
    background: #000;
    color: #fff;
    font-family: "Gotham", Sans-serif;
    font-size: 16px;
    font-weight: 900;
    text-transform: uppercase;
    border-radius: 6px;
    transition: background 0.3s ease;
}

.pc-event-button:hover {
    background: #52B3BA;
}

.pc-events-load-more-wrap {
    margin-top: 8rem;
    text-align: center;
}

.pc-load-more-button {
    display: inline-block;
    padding: 0.75rem 2.5rem;
    background: #000;
    color: #fff;
    font-family: "Gotham", Sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.pc-load-more-button:hover {
    background: #52B3BA;
}

.pc-load-more-button:disabled {
    opacity: 0.6;
    cursor: default;
}

@media (max-width: 1025px) {
    .pc-events-filters {
        width:90%;
    }
    
    .pc-events-filters .pc-filter-select {
        flex: 0 0 calc(33.333% - 0.75rem);
    }

    .pc-event-card {
        flex: 0 0 calc(50% - 1rem);
    }
}

@media (max-width: 769px) {
    .pc-events-filters {
        width:100%;
        flex-direction: column;
    }

    .pc-events-filters {
        gap: 0.75rem;
    }

    .pc-events-filters .pc-filter-select {
        flex: 0 0 100%;
    }

    .pc-event-card {
        flex: 0 0 100%;
    }
}
