/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.1.1
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
/* BASE */
.tooltipster-base {
	display: none!important;
}

/* === HOVER EFFECTS === */
.link-h a:hover {
  text-decoration: underline;
}

.clr-p-h h1 {
	color: #be683a;
}

.woocommerce-LoopProduct-link  {
	font-size: large !important;
	padding-top: 30px;
}

.price-wrapper .price {
    display: block;
    padding-top: 15px;
	padding-bottom: 20px;
}

.shop-page-title.category-page-title {
	display: none;
}

/* === BUTTON BASE STYLES === */
/* Flatsome real buttons only */
button.button.primary,
button.button.secondary,
button.button.white,
button.button.success,
a.button.primary,
a.button.secondary,
a.button.white,
a.button.success {
  border-color: transparent;
  padding-top: 1px;
  font-weight: 300 !important;
}

/* Outline buttons keep themed border */
button.button.is-outline,
a.button.is-outline {
  border: 1px solid;
  padding-top: 1px;
  font-weight: 300 !important;
}

.title-overlay {
    background-color: rgb(0 0 0 / 0%) !important;
}

.featured-title {
    background-color: #be683a !important;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 0%);
}

/* Desktop only */
.logo-center .logo img {
    transform: translateY(-18px) !important;
}

.header-top { 
    z-index: 10; 
}

/* Reset on mobile */
@media (max-width: 767px) {
    .logo-center .logo img {
        transform: none !important;
    }
}

.payment-icons .payment-icon svg {
    height: 14px;
    border: solid 0px;
	border-radius: 3px;
	padding: 1px;	
}

.payment-icons .payment-icon {
    background-color: rgb(0 0 0 / 0%) !important;
    border-radius: 3px !important;
    padding: 2px 4px 2px 4px;
    transition: opacity .3s;
    border: 1px #fff solid;
	opacity: 0.8;
	margin-bottom: 10px;
}

.nav-line-bottom>li>a:before {
    height: 1px;
	margin-bottom: 2px;
}

#main-menu {
    font-size: larger;
		color: #f9f6f5 !important;
}

#main-menu a {
		color: #f9f6f5 !important;
}

  
#main-menu .sub-menu {
    font-size: small !important;
    color: #f9f6f5 !important;
}

#main-menu .nav-vertical > li > ul li a {
    color: #f9f6f5 !important;
}

.off-canvas-left.dark .mfp-content, .off-canvas-right.dark .mfp-content {
    background-color: rgba(190,104,58,0.85);
    margin-top: 95px;
}

/* Standaard verbergen */
.off-canvas-left.dark button.mfp-close { 
  display: none !important;
}

/* === BADGES === */
.product .badge-inner {
  padding-top: 3px !important;
	font-size: small;
	font-weight: bold;
}

.product .badge {
  height: 1.6em !important;
  width: 6em !important;
	margin-left: 15px;
}

.product .badge-inner.on-sale {
    background-color: #FF7043 !important;
    color: white !important;
}

h3 {
  font-size: clamp(1.275rem, 2.55vw, 1.4875rem);
}

.box-image .out-of-stock-label {
    display: none;
}

/* === DROPDOWN ICON STYLE === */
.has-dropdown .icon-angle-down:before {
  background-color: hsl(38.82deg 58.62% 82.6% / 48%);
  padding: 0 3px;
  border-radius: 100px;
  margin-left: 5px;
  color: #000;
}

.nav-sidebar.nav-vertical>li.menu-item.active, .nav-sidebar.nav-vertical>li.menu-item:hover {
    background-color: rgb(0 0 0 / 0%);
}

/* === CLOSE BUTTON STYLING === */
button.mfp-close {
  background: #be683a;
  margin-top: 20px !important;
  margin-right: 20px !important;
  border-radius: 50px !important;
  mix-blend-mode: inherit;
}

/* === ENSURE CLOSE BUTTON IS VISIBLE WHEN READY === */
.mfp-ready .mfp-close {
  opacity: 1;
}

/* === BOX SHADOWS === */
.row-box-shadow-2 .col-inner {
  box-shadow: 0 0px 0px rgb(182 131 35 / 0%);
  overflow: hidden;
	 border: 1px solid rgba(170, 145, 89, 0.1);
	padding: 30px;
}

.row-box-shadow-5 .col-inner, .row-box-shadow-5-hover .col-inner:hover, .box-shadow-5, .box-shadow-5-hover:hover {
	box-shadow: rgba(0, 0, 0, 0.03) 0px 5px 15px 0px;
}

/* === PARALLAX === */
.parallax-active {
  opacity: 1 !important;
}

.header-top .social-icons {
    color: #be683a;
} 

.off-canvas-left .mfp-content, .off-canvas-right .mfp-content {
    box-shadow: 0 0 10px 0 rgb(0 0 0 / 0%);
}

.box-overlay.dark .box-text, .box-shade.dark .box-text {
    text-shadow: unset;
}

.sticky-shrink .stuck .header-main {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
}

/* MENUS 01*/
.mfp-bg {
    z-index: 1001 !important;
	opacity: 1 !important;
}

/* MENUS 02*/
/* Default = dark lines for light backgrounds */
.icon-menu::before,
.icon-menu::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff; /* black/dark gray for light headers */
  transition: transform 0.25s ease, top 0.25s ease;
}
.icon-menu {
  width: 32px;
  height: 38px;
  position: relative;
  display: inline-block;
  cursor: pointer;
}
.icon-menu::before {
  top: 12px;
}
.icon-menu::after {
  top: 24px;
}
body.menu-is-open .icon-menu::before {
  transform: rotate(45deg);
  top: 18px;
}
body.menu-is-open .icon-menu::after {
  transform: rotate(-45deg);
  top: 18px;
}

.off-canvas-left .mfp-content,
  .off-canvas-right .mfp-content {
    transition: transform 0ms ease 0ms;
}

/* invert mfp 2 */
.header:not(.transparent) .icon-menu::before,
.header:not(.transparent) .icon-menu::after {
  background: #be683a;
}

/* invert mfp 3 */
body:has(.mfp-wrap.mfp-ready) .header-nav.header-nav-main.nav.nav-right {
  color: #000 !important;
}

/* === READ MORE / LESS BUTTONS === */
.read-more,
.read-less {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  padding: 6px 14px;
  background-color: #dcdad9;
  color: #333;
  cursor: pointer;
  user-select: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.read-more:hover,
.read-less:hover {
  background-color: darkgray;
  color: #fff;
}

/* Icon alignment inside buttons */
.read-more .material-icons,
.read-less .material-icons {
  vertical-align: middle;
  transition: transform 0.3s ease;
}

/* === READ MORE CONTENT === */
.read-more-dots {
  display: inline !important;
}

.read_more p:last-child {
  margin-bottom: 0;
}

/* === FOOTER === */
.absolute-footer {
  color: #fff !important;
  font-size: x-small;
  padding-bottom: 40px;
  padding-top: 10px;
}

/* Footer link spacing */
.sec__footer2 .ux-menu-link__link {
  margin-bottom: -15px;
}

/* Footer menu layout gap */
.sec__footer2 .ux-menu.stack.stack-col.justify-start {
  gap: 7px;
}

.slider-style-container .flickity-slider>:not(.is-selected), .slider-style-focus .flickity-slider>:not(.is-selected), .slider-style-shadow .flickity-slider>:not(.is-selected) {
    opacity: 1;
}

/* === FLICKITY SLIDER NAVIGATION === */
/* FLICKTY CSS */
.flickity-prev-next-button {
  width: 30px;
  height: 30px;
	margin-right: 20px;
	margin-left: 20px;
	opacity: 1 !important;
	margin-top: 40px;
}

.slider-nav-circle .flickity-prev-next-button svg, .slider-nav-circle .flickity-prev-next-button .arrow  {
    border-radius: 100%;
    border:solid #e7e7e7 0px;
    color: #353535;
    background: rgb(255 255 255 / 62%);
	 box-shadow: 1px 1px 10px rgb(0 0 0 / 0%);
	opacity: 0.7;
}

/* Circular navigation buttons in 'slider-nav-circle' style */
.slider-nav-circle .flickity-prev-next-button svg,
.slider-nav-circle .flickity-prev-next-button .arrow {
  border-radius: 100%;
  border: solid 0px #e7e7e7; /* Border defined but set to 0px */
  color: #353535;
  background: rgba(255, 255, 255, 0.62); /* Semi-transparent white */
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0); /* Shadow defined but effectively disabled */
}

/* FLICKTY CSS */
.flickity-prev-next-button {
  width: 30px;
  height: 30px;
	margin-top: 0px!important;
	margin-right: -0px;
	margin-left: -0px;
	opacity: 1 !important;
}

.nav>li>a {
    color: hsl(0deg 0% 0%);
}

.acc-css {
	opacity: 0.8
}

/* === ACCORDION STYLES === */
/* Accordion title text spacing */
.acc-css .accordion_title {
  margin-left: 5px;
}

/* Accordion title panel */
.acc-css .accordion-title {
  display: block;
  position: relative;
  margin-bottom: 5px;
  padding: 0.9em 4.2em 0.9em 1.3em !important;
  border: 1px solid whitesmoke !important;
  transition: border 0.2s ease-out, background-color 0.3s;
	font-size: inherit;
	background-color: inherit;
}

/* === TOGGLE ICON STYLES === */
/* Toggle container positioning */
.acc-css .accordion .toggle {
  left: unset !important;
  right: 0 !important;
  margin-top: 0 !important;
  font-size: 15px !important;
  opacity: 1 !important;
}

.archive #main  {
	padding-bottom: 200px;
}

/* Change border color */
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table tr {
  border: 0px;
}

/* Elegant border styling for WooCommerce cart & checkout tables */
.cart_totals table,
.cart_totals table th,
.cart_totals table td,
.cart_totals table tr {
  border: 0px;
}

.shop_table thead th {
    border-width: 1px;
}

.single_add_to_cart_button {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.mfp-figure:after {
    box-shadow: 0 0 8px rgb(0 0 0 / 0%);
}

/* === HEADER SHADOW === */
.header-shadow .header-wrapper,
.header-wrapper.stuck,
.layout-shadow #wrapper {
  box-shadow: 1px 1px 10px rgb(0 0 0 / 0%);
}

/* SHOP */
.page-id-137 .has-border {
    border: 0px solid #eeeadf;
    padding: 0px 0px 0px 0px;
}

.message-container {
    font-size: 0.8em;
    padding-top: 1.75em;
}

.icon-user:before {
    content: "\e853";
    font-family: 'Material Symbols Outlined' !important; 
    font-weight: 300;
	font-size: x-large;
}

.icon-shopping-cart:before { 
    content: '\f1cc';
    font-family: 'Material Symbols Outlined' !important; 
    font-weight: 300;
	font-size: x-large;
}

.woocommerce-message:focus {
    outline: none;
}

address {
    font-style: normal;
    background-color: #fff;
    padding: 20px;
    margin-top: 5px;
    width: fit-content;
    color: #0d2c0f;
    margin-bottom: 15px;
}

.woocommerce-terms-and-conditions-checkbox-text {
    font-size: small;
}

.widget .is-divider {
    height: 1px;
	max-width: 75%;
}

.checkout-sidebar {
    margin-bottom: 40px;
    padding: 30px;
    background-color: #fff;
}

.cart-collaterals {
    padding-top: 40px !important;
    background-color: #fff;
    height: max-content;
    padding-bottom: 30px !important;
}

.dashboard-links a {
    border-radius: 0px;
}

#main>div.page-wrapper.my-account.mb>div>div>div.large-3.col.col-border>div {
    display: none;
}

.woocommerce-error {
    font-size: smaller;
    padding: 0px 20px;
    line-height: 2.2em;
    background: #fff;
}

.woocommerce-info,
.woocommerce-message {
    font-size: smaller;
    padding: 0px 0px;
    line-height: 1.6em;
    color: #006400;
    margin-bottom: 10px;
}

.woocommerce-cart a.remove {
    visibility: hidden !important;
    width: auto !important;
}

.woocommerce-cart a.remove:before {
    content: "\e5cd";
    font-family: 'Material Icons' !important;
    visibility: visible;
    font-size: 20px;
    color: #333;
    margin-left: 5px;
    background-color: white;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea {
    border: 1px solid #e6e6e6;
    width: 100%;
    box-shadow: inset 0 0px 0px rgba(0, 0, 0, .0);
    height: 50px;
    padding: 0 16px;
}

thead th,
.shop_table .order-total td,
.shop_table .order-total th {
    border-width: 1px;
}

.woocommerce .widget>ul>li ul {
    border-left: 0px solid #ddd;
}

.woocommerce .widget>ul>li+li{
    border-top: 0px solid #ececec;
}

.icon-expand:before {
    content: "\f8ce" !important;
    font-family: 'Material Icons' !important;
	margin-left: -2px;
}

/* === ICON FONT === */
.icon-envelop:before {
  content: "\e158" !important;
  font-family: 'Material Symbols Outlined', sans-serif;
  font-size: larger;
  vertical-align: middle;
}

/* === OPTIONAL ANIMATION SETUP === */
/* Pre-animation state for fadeInUp elements (before being animated) */
[data-animate="fadeInUp"]:not([data-animated="true"]) {
  transform: translate3d(0, 25px, 0) !important;
  opacity: 0 !important;
}

/* General animation transition settings */
[data-animate], 
.slider [data-animate] {
  transition: 
    filter 0.4s,
    transform 0.4s ease-out,
    opacity 0.25s ease-in,
    -webkit-filter 0.4s,
    -webkit-transform 0.4s ease-out;
}
	
/* =========================
   DARK FORM STYLE
   (for dark/colored backgrounds)
   ========================= */
.dark--form .gform_wrapper .gfield input:not([type="checkbox"]):not([type="radio"]),
.dark--form .gform_wrapper .gfield textarea {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #fff !important;
  border-radius: 0 !important;
  padding: 12px 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  color: #fff !important;
	opacity: 0.8;
}

.dark--form .gform_wrapper .gfield input::placeholder,
.dark--form .gform_wrapper .gfield textarea::placeholder {
  color: #fff !important;
  opacity: 0.8;
}

.dark--form .gform_wrapper .gfield input:focus,
.dark--form .gform_wrapper .gfield textarea:focus {
  outline: none !important;
  border-bottom: 1px solid #fff !important;
}

.dark--form .gform_wrapper .gfield label {
  color: #fff !important;
}

/* Button */
.dark--form .gform_wrapper .gform-button,
.dark--form .gform_wrapper input[type="submit"],
.dark--form .gform_wrapper button[type="submit"] {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid #fff !important;
  padding: 14px 32px !important;
  width: 100% !important;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
	border-radius: 0px !important;
	opacity: 0.8 !important;
}

.dark--form .gform_wrapper .gform-button:hover,
.dark--form .gform_wrapper input[type="submit"]:hover,
.dark--form .gform_wrapper button[type="submit"]:hover {
  background: #fff !important;
  color: #000 !important;
  cursor: pointer;
}

/* Select */
.dark--form .gform_wrapper .gfield select {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #fff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  color: #fff !important;
  min-height: 42px;
  height: 40px;
  padding: 0 !important;
  transform: translateY(-3px);
}

/* =========================
   LIGHT FORM STYLE
   (for light backgrounds)
   ========================= */
.light--form .gform_wrapper .gfield input:not([type="checkbox"]):not([type="radio"]),
.light--form .gform_wrapper .gfield textarea {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #000 !important;
  border-radius: 0 !important;
  padding: 12px 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  color: #000 !important; /* dark text */
}

.light--form .gform_wrapper .gfield input::placeholder,
.light--form .gform_wrapper .gfield textarea::placeholder {
  color: #000 !important;
  opacity: 0.6;
}

.light--form .gform_wrapper .gfield input:focus,
.light--form .gform_wrapper .gfield textarea:focus {
  outline: none !important;
  border-bottom: 1px solid #000 !important;
}

.light--form .gform_wrapper .gfield label {
  color: #000 !important;
}

/* Button */
.light--form .gform_wrapper .gform-button,
.light--form .gform_wrapper input[type="submit"],
.light--form .gform_wrapper button[type="submit"] {
  background: transparent !important;
  color: #000 !important;
  border: 1px solid #000 !important;
  padding: 14px 32px !important;
  width: 100% !important;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
	border-radius: 0px !important;
}

.light--form .gform_wrapper .gform-button:hover,
.light--form .gform_wrapper input[type="submit"]:hover,
.light--form .gform_wrapper button[type="submit"]:hover {
  background: #000 !important;
  color: #fff !important;
  cursor: pointer;
}

/* Select */
.light--form .gform_wrapper .gfield select {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  color: #000 !important;
  min-height: 42px;
  height: 40px;
  padding: 0 !important;
  transform: translateY(-3px);
}

.light--form .gform-theme--foundation .gfield textarea.small {
  --gf-ctrl-textarea-height: 60px;
  min-height: 60px !important;     
  resize: vertical !important;     
}

.sec__footer2.dark .heading-font,
.sec__footer2.dark a.lead,
.sec__footer2.dark h1,
.sec__footer2.dark h2,
.sec__footer2.dark h3,
.sec__footer2.dark h4,
.sec__footer2.dark h5,
.sec__footer2.dark h6,
.sec__footer2.dark p,
.sec__footer2.dark li,
.sec__footer2.dark span,
.sec__footer2.dark label,
.sec__footer2.dark td,
.sec__footer2.dark th,
.sec__footer2.dark button {
  color: hsl(0deg 0% 100% / 75%) !important;
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
  /* === LOGO & HEADER === */
  #logo {
    max-width: 75px;
  }

  #masthead {
    height: 95px !important;
  }
	
  /* === OFF-CANVAS PANEL === */
  .off-canvas-left .mfp-content,
  .off-canvas-right .mfp-content {
    background-color: hsl(0deg 0% 100%);
    box-shadow: 0 0 10px 0 rgb(0 0 0 / 0%);
    transition: transform 250ms ease 0ms;
  }
	
  .off-canvas-right .mfp-content,
  .off-canvas-left .mfp-content {
    width: 100% !important;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 0%);
  }
	
  /* === SIDEBAR NAVIGATION === */
  .nav-sidebar {
    padding-top: 35px;
  }
	
  .nav-sidebar.nav-vertical > li.menu-item.active,
  .nav-sidebar.nav-vertical > li.menu-item:hover {
    background-color: rgb(0 0 0 / 0%);
  }
	
  .off-canvas .nav-vertical > li > a {
    padding-top: 12px;
    padding-bottom: 12px;
  }
	
  /* === CART & CHECKOUT === */
  .cart-collaterals.large-5.col.pb-0 {
    padding: 15px;
  }
	
  .checkout-breadcrumbs {
    display: none;
  }
	
  .checkout_coupon.woocommerce-form-coupon.has-border.is-dashed {
    width: unset;
  }
	
  .checkout-button,
  .button#place_order {
    line-height: 1.0;
    font-weight: normal;
    padding: 18px 5px;
    font-size: small;
  }
	
  /* === CATEGORY / ARCHIVE === */
  .category-page-row {
    padding-top: 0px;
  }
	
  /* === TOGGLE ICON === */
  .mfp-content .toggle i {
    font-size: 1.3em;
    transition: all .3s;
  }
	
  /* === FOOTER === */
  .absolute-footer {
    font-size: xx-small;
  }
	
  /* === FLICKITY === */
  .flickity-prev-next-button {
    opacity: 1 !important;
    display: block !important;
    margin-right: 10px !important;
    margin-left: 10px !important;
  }

}