:root {
	--color-red-500: #953E28;
	--color-red-900: #442511;
	--color-orange-500: #EE9648;
	--color-white: #FFF;

    --fs-xl: clamp(2.5rem, 0.291rem + 9.302vi, 6.5rem);
    --fs-lg: clamp(2rem, 0.674rem + 5.581vi, 5rem);
    --fs-md: clamp(1.625rem, 0.962rem + 2.791vi, 3.125rem);
}

@font-face {
    font-family: "GiuliaPlain-Regular";
    src: url("../GiuliaPlain-Regular.otf") format("opentype");
}

/* Font Secondary Class - High specificity to override Elementor */
.elementor-widget .font-secondary,
.elementor .font-secondary,
.font-secondary,
p.font-secondary, 
h1.font-secondary, 
h2.font-secondary, 
h3.font-secondary, 
h4.font-secondary, 
h5.font-secondary, 
h6.font-secondary,
span.font-secondary,
div.font-secondary,
.font-secondary *,
.elementor-widget .font-secondary *,
.elementor .font-secondary * {
    font-family: "GiuliaPlain-Regular", sans-serif !important;
}


/* Shortcode : [lcv_reviews_grid] */
#reviews-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
}

#review-item {
    background-color: var(--color-white);
    padding: 15px;
    border-radius: 20px;
    border: 1px solid var(--color-orange-500);
    box-shadow: 10px 10px 0px 0px rgba(238, 150, 72, 1);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#review-item-name {
    font-size: 24px;
    color: var(--color-red-500);
    font-family: "GiuliaPlain-Regular";
}

#review-item-age-and-location {
    font-size: 16px;
    color: var(--color-red-900);
}   

#review-item-text {
    font-size: 20px;
    color: var(--color-red-900);
}

/* Shortcode : [lcv_trajecten_grid] */
#trajecten-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
}

#traject-item {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#traject-item:not(:last-child) {
    border-right: 1px solid var(--color-red-900);
}

#traject-item-title {
    font-size: 1.75rem;
    color: var(--color-red-500);
    font-family: "GiuliaPlain-Regular";
}

#traject-item-month, #traject-item-day, #traject-item-availability {
    font-size: 1.25rem;
}

#traject-item-button, #menu-button {
    font-size: 1.25rem;
    border-radius: 10px;
    color: var(--color-white);
    background-color: var(--color-red-500);
    padding: 10px 20px;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    width: fit-content;
}


/* Shortcode : [lcv_mobile_menu] */
#button-wrapper {
    display: flex;
    justify-content: center;
}

#fullscreen-dialog {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 100vw !important;
    width: 100vw;
    max-height: 100vh !important;
    height: 100vh;
    margin: 0;
    padding: 0;
    border: none;
    background-color: var(--color-white);
}

#menu-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
}

#menu-header img {
    width: 200px;
}

#menu-items-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#menu-item {
    color: var(--color-red-900);
    font-size: 1.25rem;
}

ul {
    list-style: none;
    padding: 20px;
}

#fullscreen-dialog::backdrop {
    background-color: var(--color-white);
}

#open-dialog-btn {
    margin-top: 10px;
}
