/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/
Author: Your Name
Author URI:
Description: Child theme for Hello Elementor
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hello-elementor-child
Domain Path: /languages
Template: hello-elementor
Requires at least: 5.0
Requires PHP: 7.2
*/

/* ==========================================================================
   Font Face Definitions - Manrope  Greek & Latin
   ========================================================================== */

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 200;
    src: url('fonts/Manrope-ExtraLight.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 300;
    src: url('fonts/Manrope-Light.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/Manrope-Regular.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 500;
    src: url('fonts/Manrope-Medium.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 600;
    src: url('fonts/Manrope-SemiBold.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 700;
    src: url('fonts/Manrope-Bold.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 800;
    src: url('fonts/Manrope-ExtraBold.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'GFS Didot';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/gfs-didot-v18-greek_latin-regular.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'GFS Neohellenic';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/gfs-neohellenic-v27-greek_latin-regular.woff2') format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'GFS Neohellenic';
    font-style: normal;
    font-weight: 700;
    src: url('fonts/gfs-neohellenic-v27-greek_latin-700.woff2') format('woff2');
}

/* ==========================================================================
   Font Weight Utility Classes
   ========================================================================== */

.manrope-extralight {
    font-family: 'Manrope', sans-serif;
    font-weight: 200;
}

.manrope-light {
    font-weight: 300;
}

.manrope-regular {
    font-weight: 400;
}

.manrope-medium {
    font-weight: 500;
}

.manrope-semibold {
    font-weight: 600;
}

.manrope-bold {
    font-weight: 700;
}

.manrope-extrabold {
    font-weight: 800;
}

body,
button,
input,
select,
textarea {
    font-family: 'Manrope', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.entry-title,
.widget-title {
    font-family: 'Manrope', sans-serif;
}

/*** Site ***/
#coming-soon-footer-banner {
    display: none;
}

/* ==========================================================================
   Custom Styles
   ========================================================================== */

/**********************************/
/* Filter Everything global style */
/**********************************/

/* Widget titles */

/* Space between each section */
.wpc-filters-section {
    margin-bottom: 35px !important;
}

body .wpc-filters-main-wrap li.wpc-term-item {
    margin-bottom: 0px !important;
}

.wpc-filters-main-wrap li.wpc-term-item input[type="checkbox"] {
    margin-left: 10px !important;
}

/* Header */
.wpc-filters-main-wrap .widget-title.wpc-filter-title {
    font-family: 'GFS Didot', sans-serif !important;
    font-size: 1.5rem;
    font-weight: 800;
    border-bottom: 1px solid #e2e1db;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

.wpc-filter-content input[type="radio"] {
    display: none !important;
}

.wpc-edit-filter-set {
    display: none !important;
}

/* links */
/* Base styling for all filter link text */
.wpc-filters-main-wrap .wpc-filter-link {
    font-family: 'GFS Neohellenic', sans-serif !important;
    font-size: 1.4rem;
    color: #323537 !important;
    font-weight: 400;
    margin-left: 0px;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    line-height: 24px;
}

/* Boxed filters */
/* Outer box around each selectable term */
.wpc-filters-main-wrap .wpc-filters-labels li.wpc-term-item label {
    border: 1px solid #cbb88c !important;
    border-radius: 4px !important;
    margin-top: 2px;
    margin-left: 2px !important;
    margin-right: 1px !important;
    margin-bottom: 2px !important;
    background-color: #ffffff !important;
}

/* Remove any rounding from the inner wrapper as well */
.wpc-filters-main-wrap .wpc-filters-labels li.wpc-term-item label span.wpc-filter-label-wrapper {
    border-radius: 0 !important;
}

/* Add left padding so text does not touch the border */
.wpc-filters-main-wrap .wpc-filters-labels li.wpc-term-item label .wpc-filter-link {
    padding-left: 6px !important;
}

/* Hover state for boxed filters */
.wpc-filters-main-wrap .wpc-filters-labels li.wpc-term-item label:hover {
    border: 1px solid #cbb88c !important;
}

/* Hover state for the inner box wrapper */
body .wpc-filters-main-wrap input.wpc-label-input+label:hover span.wpc-filter-label-wrapper {
    background-color: #cbb88c !important;
    border: 1px solid #cbb88c !important;
}

/* Hover state for the text inside a boxed filter */
body .wpc-filters-main-wrap input.wpc-label-input+label:hover a.wpc-filter-link,
body .wpc-filters-main-wrap input.wpc-label-input+label:hover .wpc-filter-link {
    color: #ffffff !important;
}

/* Checked state for the outer box */
body .wpc-filters-main-wrap input.wpc-label-input:checked+label {
    border: 1px solid #cbb88c !important;
}

/* Checked state for the inner box wrapper */
body .wpc-filters-main-wrap input.wpc-label-input:checked+label span.wpc-filter-label-wrapper {
    background-color: #cbb88c !important;
    border: 1px solid #cbb88c !important;

}

/* Checked state for the text inside a selected boxed filter */
body .wpc-filters-main-wrap .wpc-filters-labels li.wpc-term-item input:checked+label a,
body .wpc-filters-main-wrap .wpc-filters-labels li.wpc-term-item input:checked+label .wpc-filter-link,
body .wpc-filters-main-wrap .wpc-term-item.wpc-term-selected .wpc-filter-link {
    color: #ffffff !important;
    font-weight: 700 !important;
}

/* Hover state while the box is already selected */
body .wpc-filters-main-wrap input.wpc-label-input:checked+label:hover span.wpc-filter-label-wrapper {
    background-color: #A8893F !important;
    border: 1px solid #A8893F !important;
    /* border-radius: 1px !important; */
}

/* Keep selected hover text white for contrast */
body .wpc-filters-main-wrap input.wpc-label-input:checked+label:hover a.wpc-filter-link {
    color: #ffffff !important;
}

/* Normal text links: hover/selected gold */
/* Styles for non-boxed filter links */
.wpc-filters-main-wrap .wpc-term-item:not(.wpc-label-item) .wpc-filter-link:hover,
.wpc-filters-main-wrap .wpc-term-item:not(.wpc-label-item).wpc-term-selected .wpc-filter-link,
.wpc-filters-main-wrap .wpc-term-item:not(.wpc-label-item) a.wpc-filter-link:hover {
    color: #A8893F !important;
    font-weight: 700 !important;
}

/* Apply button removed */
.wpc-apply-button {
    display: none !important;
}

/****************/
/* Clear filter */
/****************/

/* Hide filter chips except for "Reset All" */
.wpc-filter-chip:not(.wpc-chip-reset-all) {
    display: none !important;
}

/* Letters */
.wpc-filter-chip-name {
    color: #ffffff !important;
    font: 400 16px 'GFS Didot', sans-serif;
}

/* border */
.wpc-filter-chips-list a,
body .wpc-filter-chips-list li.wpc-filter-chip a {
    border-radius: 5px !important;
    border: 1px solid #976464 !important;
    background-color: #976464;
}

/* border hover */
body .wpc-filter-chips-list li.wpc-filter-chip a:hover {
    background-color: #90243f;
    border: 1px solid #90243f !important;

}

/* ==========================================================================
   =                Product Page styles                                     =
   ========================================================================== */

/*****************************
 * Item Images - Static Size *
 *****************************/

/* Container: fixed dimensions */
.product-item-images .woocommerce-product-gallery,
.product-item-images .woocommerce-product-gallery .flex-viewport,
.product-item-images .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
    width: 100%;
    /* change this to a fixed value (e.g. 500px) if needed */
    height: 650px !important;
}

/* Main image: fill the fixed container without cropping */
.product-item-images .woocommerce-product-gallery .woocommerce-product-gallery__image img,
.woocommerce div.product div.images.product-item-images img {
    width: 100%;
    /* change this to a fixed value (e.g. 500px) if needed */
    height: 650px !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Disable hover zoom/movement effect */
.product-item-images .woocommerce-product-gallery .zoomImg {
    display: none !important;
}

.product-item-images .woocommerce-product-gallery__image img,
.woocommerce div.product div.images.product-item-images img {
    pointer-events: none;
    /* Prevents the zoom script from interacting with the image */
}

/* If you need the image to remain clickable (e.g. for a lightbox wrapper) */
.product-item-images .woocommerce-product-gallery__image a,
.woocommerce div.product div.images.product-item-images a {
    pointer-events: auto;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    z-index: 1 !important;
}


/*************************************************************
 * Add to Basket Section
 * Selectors map:
 *   Attribute rows outer wrapper ......... table.variations
 *   One attribute row ................... table.variations tr
 *   Label + ? button wrapper ............ .custom-label-wrapper
 *   Attribute title (label text) ........ .custom-label-wrapper label
 *   "?" information link/button ......... .custom-label-wrapper .information-btn
 *   Attribute options wrapper (value) ... table.variations td.value
 *   Attribute option boxes (select) ..... table.variations td.value select
 *   Add to Basket + Special Order row ... .woocommerce-variation-add-to-cart
 *   Add to Basket button ................ .single_add_to_cart_button
 *   Special Order button ................ .special-order-btn
 *   Variation price (shown on select) ... .woocommerce-variation-price .price
 *************************************************************/

/* ── Force table rows/cells to stack vertically ── */
table.variations tbody,
table.variations tr,
table.variations th,
table.variations td {
    display: block;
    width: 100%;
    text-align: left;
    border: none;
    padding: 0;
    background-color: transparent;
}

/* ── Spacing between each attribute group (e.g. Dimensions / Material) ── */
table.variations tr {
    margin-bottom: 0px;
}

/* ── The outer wrapper that holds ALL attribute rows ── */
table.variations {
    background-color: transparent;
}

table.variations :hover {
    background-color: transparent;
}

/* ── The row that holds the label + "?" button side-by-side ── */
.custom-label-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: white;
    padding-bottom: 5px !important;
}

/* hover */
.custom-label-wrapper :hover {
    background-color: transparent !important;
}

/* ── The attribute title (e.g. "Dimensions", "Material") ── */
.custom-label-wrapper label {
    font-family: 'GFS Neohellenic', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
}

/* ── The "?" information link/button ── */
.custom-label-wrapper .information-btn {
    color: #A8893F !important;
    padding-right: 300px !important;
}

/* ── The wrapper that contains the attribute option boxes (select/swatches) ── */
table.variations td.value {
    background-color: transparent;
}

/* ── The attribute option boxes (select elements) ── */
.variable-item.button-variable-item {
    width: 100%;
    padding: 10px 15px !important;
    border: 1px solid #BC9C4E;
    box-shadow: none !important;
    border-radius: 0px !important;
    background-color: transparent !important;
    font-family: 'GFS Neohellenic', sans-serif;
    font-size: 14px;
    color: #323537;
    transform: none !important;
    position: relative;
    opacity: 1 !important;
}

/* hover */
.variable-item.button-variable-item:hover {
    background-color: #DDCEA6 !important;
    border: 1px solid #DDCEA6 !important;
    color: white !important;
}

/* active state */
.variable-item.button-variable-item:active,
.variable-item.button-variable-item.selected {
    background-color: #BC9C4E !important;
    border: 1px solid #BC9C4E !important;
    color: white !important;
}

/* Hide WooCommerce attribute tooltip */
.variable-item.button-variable-item[title] {
    pointer-events: auto;
}

.variable-item.button-variable-item::before,
.variable-item.button-variable-item::after {
    display: none !important;
}

.variable-item.button-variable-item {
    pointer-events: none !important;
}

.variable-item.button-variable-item>* {
    pointer-events: auto !important;
}

/* ── Row wrapper: Quantity + Add to Basket + Special Order ── */
.woocommerce-variation-add-to-cart.variations_button {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* ── Add to Basket button ── */
.woocommerce-variation-add-to-cart .single_add_to_cart_button {
    /* Box stuling */
    background-color: #A8893F !important;
    color: white;
    border: 1px solid #A8893F !important;
    padding: 20px 100px !important;
    border-radius: 0px !important;
    transform: scale(1.0) !important;

    /* Font styling */
    font-family: 'GFS Neohellenic', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    word-spacing: 2px !important;
    white-space: nowrap !important;
    text-align: center !important;
    line-height: 15px !important;
    -webkit-text-stroke: 0.1px white !important;
}

/* hover */
.woocommerce-variation-add-to-cart .single_add_to_cart_button:hover {
    /* Box stuling */
    background-color: #A8893F !important;
    color: white !important;
    border: 1px solid #A8893F !important;
    transition: all 0.2s !important;
}


/* ── Special Order button (styled as a link-button) ── */
.woocommerce-variation-add-to-cart .special-order-btn {
    /* Box stuling */
    background-color: white;
    color: #A8893F;
    border: 1px solid #A8893F;
    padding: 20px 100px;

    /* Font styling */
    font-family: 'GFS Neohellenic', sans-serif;
    letter-spacing: 0.05em;
    white-space: nowrap;
    text-align: center;
    line-height: 15px;
    -webkit-text-stroke: 0.1px white !important;
}

/* hover */
.woocommerce-variation-add-to-cart .special-order-btn:hover {
    background-color: #A8893F;
    color: white;
    border: 1px solid #A8893F;
    transition: all 0.2s;

}

/* ── The variation price that appears after selecting options ── */
.woocommerce-variation-price .price {
    color: #886e32 !important;
    font-family: 'GFS Neohellenic', sans-serif !important;
}


/* ── "Reset All" link/button that appears after selecting filters ── */
.reset_variations {
    /* color: #A8893F;
    font-family: 'GFS Neohellenic', sans-serif;
    font-weight: 400;
    font-size: 16px !important;
    text-transform: uppercase !important; */
    display: none !important;
}

/* hover */
.reset_variations:hover {
    /* text-shadow: 0 0 1px #A8893F, 0 0 2px #A8893F !important; */
}