/* Feltiland brand layer. Mirrors feltiland-website.html. */
:root{
  --fl-cream:#FFF6EC; --fl-band:#FBEFDF; --fl-surface:#FFFFFF;
  --fl-ink:#241C16; --fl-soft:#5B4A3F; --fl-coral:#E8635B;
  --fl-gold:#F2B134; --fl-teal:#3AA6A0;
}

/* ---------- HEADER ---------- */
header.xpro-theme-builder-header{
  position:sticky; top:0; z-index:200;
  background:rgba(255,246,236,.92);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
}
header.xpro-theme-builder-header .elementor-widget-image img{
  max-width:190px; width:100%; height:auto; display:block;
}
/* Astra injects a second dropdown arrow inside the Xpro menu */
.xpro-elementor-horizontal-navbar .ast-header-navigation-arrow{display:none !important;}

/* keep the whole nav, including the language switcher, on one line */
@media (min-width:1025px){
  .xpro-elementor-horizontal-navbar-nav{
    flex-wrap:nowrap !important;
    align-items:center;
  }
  .xpro-elementor-horizontal-navbar-nav > li{white-space:nowrap;}
  header.xpro-theme-builder-header .e-con-inner{flex-wrap:nowrap !important;}
}

.xpro-elementor-horizontal-navbar-nav > li > a{
  padding:10px 16px !important;
  border-radius:10px;
  font-size:15px; font-weight:600;
  color:var(--fl-ink) !important;
  transition:background .15s ease,color .15s ease;
}
.xpro-elementor-horizontal-navbar-nav > li > a:hover,
.xpro-elementor-horizontal-navbar-nav > li.current-menu-item > a{
  background:var(--fl-band); color:var(--fl-coral) !important;
}

/* dropdown panels */
ul.xpro-elementor-dropdown-menu{
  background:var(--fl-surface) !important;
  border:0 !important;
  border-radius:18px !important;
  box-shadow:0 10px 30px rgba(36,28,22,.12) !important;
  padding:14px !important;
}
a.xpro-elementor-dropdown-item{
  color:var(--fl-soft) !important;
  font-size:14px; font-weight:500;
  padding:9px 12px !important;
  border:0 !important; border-radius:10px;
  background:transparent !important;
}
a.xpro-elementor-dropdown-item:hover{
  color:var(--fl-coral) !important;
  background:var(--fl-band) !important;
}

/* ---------- MEGA PANEL (Categories) ---------- */
@media (min-width:1025px){
  li.fl-mega > ul.xpro-elementor-dropdown-menu{
    width:min(880px,92vw) !important;
    padding:30px !important;
    font-size:0;
  }
  li.fl-mega > ul.xpro-elementor-dropdown-menu > li{
    display:inline-block !important;
    vertical-align:top;
    width:24%; margin:0 1% 0 0;
    position:static !important;
    font-size:14px;
  }
  li.fl-mega > ul.xpro-elementor-dropdown-menu > li > a{
    font-size:13px !important; font-weight:800 !important;
    text-transform:uppercase; letter-spacing:1px;
    color:var(--fl-coral) !important;
    padding:0 0 12px 0 !important;
    background:transparent !important;
  }
  li.fl-mega > ul.xpro-elementor-dropdown-menu > li > a:hover{background:transparent !important;}
  li.fl-mega > ul.xpro-elementor-dropdown-menu > li > a .xpro-dropdown-menu-toggle{display:none !important;}
  /* second level shown inline as a static column */
  li.fl-mega > ul.xpro-elementor-dropdown-menu > li > ul.xpro-elementor-dropdown-menu{
    display:block !important;
    position:static !important;
    opacity:1 !important; visibility:visible !important;
    transform:none !important;
    width:auto !important; min-width:0 !important;
    background:transparent !important;
    box-shadow:none !important; border-radius:0 !important;
    padding:0 !important; margin:0 !important;
  }
  li.fl-mega > ul.xpro-elementor-dropdown-menu > li > ul > li > a{
    padding:7px 0 !important;
  }
}

/* ---------- LANGUAGE SWITCHER (Polylang menu item) ---------- */
.xpro-elementor-horizontal-navbar-nav > li.pll-parent-menu-item > a{
  border:2px solid rgba(36,28,22,.25);
  border-radius:999px;
  padding:7px 14px !important;
  font-size:13px !important;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.xpro-elementor-horizontal-navbar-nav > li.pll-parent-menu-item > a:hover{
  border-color:var(--fl-coral);
  background:transparent;
}
li.pll-parent-menu-item ul.xpro-elementor-dropdown-menu{min-width:150px;}
@media (max-width:767px){
  .xpro-elementor-horizontal-navbar-nav > li.pll-parent-menu-item > a{
    padding:6px 11px !important; font-size:12px !important;
  }
}

/* ---------- FOOTER ---------- */
footer.xpro-theme-builder-footer{background:var(--fl-ink);}
footer.xpro-theme-builder-footer .elementor-icon-list-item a{
  transition:color .15s ease;
}
footer.xpro-theme-builder-footer .elementor-widget-image img{
  max-width:180px; height:auto;
}

/* ---------- PRODUCT CARD BUTTON ---------- */
.elementor-widget-xpro-woo-product-grid a.button,
.elementor-widget-xpro-woo-product-grid a.add_to_cart_button,
.elementor-widget-xpro-woo-product-grid a.product_type_variable,
.elementor-widget-xpro-woo-product-grid a.product_type_simple{
  display:inline-block;
  background:var(--fl-ink) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:999px !important;
  padding:10px 20px !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  transition:background .15s ease;
}
.elementor-widget-xpro-woo-product-grid a.button:hover,
.elementor-widget-xpro-woo-product-grid a.add_to_cart_button:hover,
.elementor-widget-xpro-woo-product-grid a.product_type_variable:hover,
.elementor-widget-xpro-woo-product-grid a.product_type_simple:hover{
  background:var(--fl-coral) !important;
  color:#fff !important;
}

/* ---------- PRODUCT CARDS ---------- */
.xpro-woo-product-grid .xpro-product-item,
.xpro-elementor-product-item{
  background:var(--fl-surface);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(36,28,22,.08);
}
.woocommerce ul.products li.product .price,
.xpro-product-price{ color:var(--fl-coral) !important; }

/* ---------- GLOBAL TYPE ---------- */
body{background:var(--fl-cream);}
.elementor-widget-heading .elementor-heading-title{
  font-family:Georgia,'Times New Roman',serif;
}

/* ---------- MOBILE ---------- */
@media (max-width:1024px){
  header.xpro-theme-builder-header .e-con-inner{
    flex-wrap:nowrap !important;
    align-items:center;
  }
  li.fl-mega > ul.xpro-elementor-dropdown-menu{width:auto !important;}
}
@media (max-width:767px){
  /* keep the header on one row: logo left, menu toggle + CTA right */
  header.xpro-theme-builder-header .e-con-inner{
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:10px !important;
  }
  header.xpro-theme-builder-header .e-con-inner > .e-con{
    width:auto !important; flex:0 0 auto !important;
  }
  header.xpro-theme-builder-header .elementor-widget-image img{max-width:140px;}
  header.xpro-theme-builder-header .elementor-widget-button .elementor-button{
    padding:9px 15px !important; font-size:13px !important;
  }
}


/* ================= TYPOGRAPHY, mirrors feltiland-website.html ================= */
:root{--fl-serif:Georgia,'Times New Roman',serif;--fl-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
body,p,li,a,button,input,textarea,select,label,
.elementor-widget-text-editor,.elementor-widget-icon-list,.elementor-button,
.elementor-icon-box-description,
.xpro-elementor-horizontal-navbar-nav a,
.wpforms-container,.wpforms-container input,.wpforms-container textarea,.wpforms-container button,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-xpro-woo-product-grid a.button{font-family:var(--fl-sans);}

h1,h2,h3,h4,h5,h6,.elementor-heading-title,
.elementor-widget-icon-box .elementor-icon-box-title{font-family:var(--fl-serif);}

/* the two sans exceptions the HTML file declares */
li.fl-mega > ul.xpro-elementor-dropdown-menu > li > a{font-family:var(--fl-sans) !important;}
.elementor-widget-xpro-woo-product-grid .xpro-product-title,
.elementor-widget-xpro-woo-product-grid .xpro-product-title a,
.elementor-widget-xpro-woo-product-grid h2,
.elementor-widget-xpro-woo-product-grid h3{font-family:var(--fl-sans) !important;font-weight:700;}

/* footer column headings stay serif, as in the HTML */
footer.xpro-theme-builder-footer .elementor-heading-title{font-family:var(--fl-serif) !important;}

/* ================= HEADER ALIGNMENT ================= */
@media (min-width:1025px){
  header.xpro-theme-builder-header .e-con-inner{
    display:flex !important;align-items:center !important;
    justify-content:space-between !important;flex-wrap:nowrap !important;gap:24px !important;}
  header.xpro-theme-builder-header .e-con-inner > .e-con{width:auto !important;}
  header.xpro-theme-builder-header .e-con-inner > .e-con:nth-child(1){flex:0 0 auto !important;}
  header.xpro-theme-builder-header .e-con-inner > .e-con:nth-child(2){flex:1 1 auto !important;justify-content:center !important;}
  header.xpro-theme-builder-header .e-con-inner > .e-con:nth-child(3){flex:0 0 auto !important;justify-content:flex-end !important;}
}
header.xpro-theme-builder-header .elementor-button{
  padding:11px 22px !important;font-size:14px !important;line-height:1.2 !important;letter-spacing:0;}


/* ---------- PRODUCT CARD CATEGORY LABEL (matches .ptag in the HTML) ---------- */
h4.xpro-woo-product-grid-category-wrapper{
  font-family:var(--fl-sans) !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:1px;
  text-transform:uppercase;
  margin:0 0 6px !important;
  line-height:1.3 !important;
}
h4.xpro-woo-product-grid-category-wrapper a{color:var(--fl-teal) !important;text-decoration:none;}
/* show only the primary category, the HTML card shows one */
h4.xpro-woo-product-grid-category-wrapper a:not(:first-of-type){display:none !important;}


/* ---------- DROPDOWN HOVER TIMING ---------- */
@media (min-width:1025px){
  /* invisible bridge so the cursor can travel from the link into the panel */
  .xpro-elementor-horizontal-navbar-nav > li.dropdown > a::after{
    content:''; position:absolute; left:0; right:0; top:100%; height:22px; background:transparent;
  }
  .xpro-elementor-horizontal-navbar-nav > li.dropdown{position:relative;}
  li.fl-mega{position:static;}
  /* hold the panel open briefly after the pointer leaves */
  ul.xpro-elementor-dropdown-menu{
    transition:opacity .18s ease .35s, visibility 0s linear .35s, transform .18s ease .35s !important;
  }
  li.dropdown:hover > ul.xpro-elementor-dropdown-menu,
  li.dropdown:focus-within > ul.xpro-elementor-dropdown-menu{
    transition-delay:.06s, 0s, .06s !important;
  }
}
