/* Fire & Outdoor Living — mapping Flatsome -> charte (chargé après les tokens) */

/* Base */
body, p, .is-small, li, td { font-family: var(--fol-font-body); }
body { background: var(--fol-bg) !important; color: var(--fol-ink); font-weight: 300; }
h1,h2,h3,h4,h5,h6,.heading-font,.is-title,.entry-title,.product-title,.widget-title {
  font-family: var(--fol-font-display) !important; font-weight: 400 !important; letter-spacing: 0 !important; color: var(--fol-ink);
}
.entry-content a, .is-continue { color: var(--fol-primary); }

/* En-tête crème sticky */
#header .header-main, #header .header-wrapper, .header-bg-color { background-color: rgba(246,242,234,.96) !important; }
#header { border-bottom: 1px solid var(--fol-border); }
#top-bar, .header-top { background-color: var(--fol-bg-alt) !important; }
#top-bar, #top-bar a, .header-top a { color: var(--fol-text-muted) !important; }
.header-nav a, .header-nav-main a, .nav-line > li > a { font-family: var(--fol-font-body); font-weight: 500; letter-spacing: .05em; color: var(--fol-ink); }
.header-nav a:hover, .nav > li > a:hover, .nav > li.active > a { color: var(--fol-primary); }
.header-main .logo img, .header-main .logo a img { max-height: 46px; width: auto; }

/* Boutons */
.button, button, input[type=submit], .add_to_cart_button, .single_add_to_cart_button, .checkout-button {
  font-family: var(--fol-font-body) !important; font-weight: 500 !important; text-transform: uppercase !important;
  letter-spacing: .12em !important; border-radius: 0 !important; box-shadow: none !important;
}
.button.primary, button.primary, [type=submit].primary, .add_to_cart_button, .single_add_to_cart_button, .checkout-button {
  background-color: var(--fol-primary) !important; border-color: var(--fol-primary) !important; color: #fff !important;
}
.button.primary:hover, .add_to_cart_button:hover, .single_add_to_cart_button:hover, .checkout-button:hover {
  background-color: var(--fol-primary-dark) !important; border-color: var(--fol-primary-dark) !important;
}
.button.secondary { background-color: var(--fol-olive) !important; border-color: var(--fol-olive) !important; color:#fff !important; }
.button.is-outline { color: var(--fol-ink) !important; border: 1px solid var(--fol-ink) !important; background: transparent !important; }
.button.is-outline:hover { background: var(--fol-ink) !important; color: #fff !important; }
.dark .button.is-outline, .section-dark .button.is-outline, [data-dark] .button.is-outline {
  color: #fff !important; border-color: rgba(255,255,255,.7) !important;
}

/* Angles francs + aucune ombre au repos */
.box-image, .box-text, img, .col-inner, .badge-inner, .ux-menu-link, .is-outline,
.product-small, .product-small .box-image, input:not([type=submit]), textarea, select { border-radius: 0 !important; }
.box-shadow, .shadow, .box.has-hover:hover, .product-small.box { box-shadow: none !important; }

/* Prix + solde */
.woocommerce-Price-amount, .price, .price ins { color: var(--fol-ink); font-family: var(--fol-font-body); }
.onsale, span.onsale, .badge-inner.on-sale { background-color: var(--fol-primary) !important; color: #fff !important; border-radius: 0 !important; }

/* Cartes produit */
ul.products li.product .box, .product-small.box, .col .box.box-vertical {
  border: 1px solid var(--fol-border); background: var(--fol-surface); transition: box-shadow .25s ease;
}
ul.products li.product:hover .box, .product-small.box:hover { box-shadow: var(--fol-shadow-hover); }
.product-small .box-text { padding: 16px; }
.badge.category-badge, .cat-label { font-family: var(--fol-font-body); text-transform: uppercase; letter-spacing: .14em; }

/* Panier */
.cart-icon strong, .header-main .cart-icon strong { background-color: var(--fol-primary) !important; color: #fff !important; }
.cart-icon strong:after { border-color: var(--fol-primary) !important; }

/* Pied de page sombre */
#footer, .footer-wrapper, .footer-1, .absolute-footer { background-color: var(--fol-ink) !important; color: var(--fol-beige) !important; }
#footer a, .absolute-footer a { color: var(--fol-beige) !important; }
#footer a:hover { color: var(--fol-bg) !important; }
#footer h1, #footer h2, #footer h3, #footer h4 { color: #fff !important; }
.absolute-footer { color: var(--fol-text-muted) !important; }

/* Champs */
input:not([type=submit]), textarea, select { border: 1px solid var(--fol-border) !important; background: var(--fol-bg) !important; box-shadow: none !important; }

/* utilitaires images cartes */
.fol-uimg{width:100%;height:210px;object-fit:cover;display:block}
.fol-cimg{width:100%;height:190px;object-fit:cover;display:block}
.fol-configimg{width:100%;height:380px;object-fit:cover;display:block}

/* Mega-menu Produits */
.header-nav li .nav-dropdown:has(.fol-megamenu__label){width:720px!important;padding:22px 4px!important;background:#fff!important;border:1px solid #E2D8C6!important;}
.nav-dropdown .fol-megamenu__label{padding:2px 20px 10px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#B0A490;}
.nav-dropdown a.fol-megamenu__item{padding:8px 20px;color:#221C14;font-size:14px;line-height:1.4;}
.nav-dropdown a.fol-megamenu__item:hover{background:#F6F2EA;color:#B4501E;}

/* Cartes communauté (posts) */
.fol-post{position:relative;display:block}
.fol-post__img{width:100%;height:210px;object-fit:cover;display:block}
.fol-post__badge{position:absolute;top:12px;left:12px;background:rgba(34,28,20,.82);color:#F0C9A8;font-size:11px;letter-spacing:.15em;text-transform:uppercase;padding:5px 11px}
.fol-post__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(246,242,234,.92);display:flex;align-items:center;justify-content:center;color:#221C14;font-size:20px;padding-left:3px}
.fol-post__dur{position:absolute;right:10px;bottom:10px;background:rgba(34,28,20,.8);color:#fff;font-size:11px;letter-spacing:.05em;padding:3px 8px}
.fol-post__title{font-family:"Marcellus",serif;color:#F6F2EA;font-size:1.12em;line-height:1.25;margin:14px 0 6px}
.fol-post__meta{color:#B8AC98;font-size:.88em;line-height:1.5;margin:0 0 10px}
.fol-post__foot{display:flex;justify-content:space-between;color:#B8AC98;font-size:.82em}

/* Forminator — style de secours des champs */
.forminator-ui .forminator-field{margin-bottom:16px}
.forminator-ui .forminator-label{display:block;margin-bottom:6px;font-size:13px;color:#6E6353}
.forminator-ui input,.forminator-ui select,.forminator-ui textarea{width:100%!important;padding:13px 14px!important;border:1px solid #E2D8C6!important;background:#F6F2EA!important;height:auto!important;min-height:50px!important;border-radius:0!important;font-family:"Jost",sans-serif!important;font-size:15px!important;box-shadow:none!important;color:#221C14}
.forminator-ui .forminator-row{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 8px}
.forminator-ui .forminator-col{flex:1 1 220px;min-width:200px}
.forminator-ui button.forminator-button,.forminator-ui .forminator-button-submit{background:#B4501E!important;color:#fff!important;border:none!important;padding:14px 28px!important;text-transform:uppercase;letter-spacing:.12em;font-family:"Jost",sans-serif!important;font-weight:500;min-height:50px;cursor:pointer}
.forminator-ui button.forminator-button:hover{background:#8A3A12!important}

.forminator-ui.forminator-custom-form,.forminator-custom-form{display:block!important;visibility:visible!important;opacity:1!important}
.forminator-ui .forminator-field,.forminator-ui .forminator-col{display:block!important}
.forminator-ui .forminator-button-submit{display:inline-block!important}

.forminator-ui button.forminator-button span,.forminator-ui .forminator-button-submit span,.forminator-ui button.forminator-button *{display:inline!important;visibility:visible!important;color:#fff!important}
.forminator-ui .forminator-button-submit{min-width:220px}

.forminator-ui .forminator-button-submit::after{content:"Envoyer ma candidature";color:#fff;font-family:"Jost",sans-serif;font-weight:500;letter-spacing:.12em}
