/**
 * Perroz Sea Store – feuille de style du thème enfant
 * Skill Design – https://www.skill-design.bzh
 *
 * Reprise à l'identique du CSS additionnel du customizer Botiga (20/10/2026).
 * L'ordre des règles est conservé tel quel : ne pas réordonner (cascade).
 *
 * 1. Réglages du site de démo aThemes (import Botiga)
 * 2. Sur-mesure Skill Design
 */

/* ==========================================================================
   1. Réglages du site de démo aThemes (import Botiga)
   ========================================================================== */

/* Responsive heros */
@media(max-width: 575px) {
	.custom-responsive-hero-bg .athemes-blocks-background-image {
		object-position: 0px 0px !important;
	}
}

/* Mega Menu */
.is-content-block.botiga-mega-menu-column > div {
		width: 100%;
}

/* Buttons */
a.button, .button, .checkout-button, .wp-block-button__link, .wc-block-components-button, ul.products li.product .button, .wpforms-block:not(.wpforms-render-modern) .wpforms-submit, .widget_product_search button, .search-submit, input[type=button], input[type=reset], input[type=submit] {
	border-width: 1px;
}

/* Quantity Input */
.quantity {
	border-width: 1px;
}

/* Custom Newsletter Form */
.custom-newsletter-form .wpforms-form {
	display: flex;
	flex-direction: row;
	gap: 12px;
	max-width: 495px;
	margin: 0 auto; 
}

.custom-newsletter-form  .wpforms-field-container {
	flex-basis: 100%;
}

.custom-newsletter-form  .wpforms-submit-container {
	flex-basis: auto;
	white-space: nowrap;
	margin: 0 !important;
}

.custom-newsletter-form .wpforms-submit {
	font-size: 0.9rem !important;
	height: 100% !important;
	text-transform: uppercase;
	padding: 15px 30px !important;
	letter-spacing: 2px;
	max-height: 50px;
}

.custom-newsletter-form .wpforms-field-container .wpforms-field {
	padding: 0px !important;
}

.wpforms-confirmation-container-full {
	max-width: 495px;
}

@media(max-width: 575px) {
	.custom-newsletter-form .wpforms-form {
		flex-direction: column;
		gap: 15px;
	}
	
	.custom-newsletter-form  .wpforms-submit-container {
		flex-basis: 100%;
	}
	
	.custom-newsletter-form .wpforms-submit {
		width: 100%;
	}
}

/* Custom Contact Form */
.custom-contact-form .wpforms-field-label {
	font-weight: 500;
}

.custom-contact-form .wpforms-submit {
	width: 100%;
	padding: 18px 30px !important;
	height: auto !important;
	text-transform: uppercase !important;
	letter-spacing: 2px;
}

/* Shop Catalog */
.woocommerce-page-header .category-button {
	font-family: "Playfair Display", sans-serif;
	font-size: 1.2rem;
	line-height: 2.6;
}

@media(min-width: 1025px) {
		.woocommerce-page-header.woocommerce-page-header-style3 .categories-wrapper .category-button+.category-button {
		margin-left: 50px !important;
	}	
}

/* Single Product */
body.single-product .content-wrapper {
	margin-bottom: 0;
}

.botiga-buy-now-button-single-product,
#coupon_code+.button,
.botiga-sc-apply-coupon {
	background-color: #212121 !important;
	color: #FFF !important;
}

.botiga-buy-now-button-single-product:hover,
#coupon_code+.button:hover,
.botiga-sc-apply-coupon:hover {
	background-color: #757575 !important;
	border-color: #757575 !important;
}

/* Product Filter */
.btsf-filter-type-price_slider .btsf-price-slider .range-slider__thumb {
    border-color: #212121;
}

.btsf-filter-type-price_slider .btsf-price-slider .range-slider__range {
    background-color: #212121;
}

.btsf-filter-wrapper h4 {
    border-bottom: 1px solid #ebebeb;
		line-height: 2.9;
}

@media (min-width: 991px) {
	.site-main.sidebar-left {
		padding-left: 25px;	
	}
}

/* ==========================================================================
   2. Sur-mesure Skill Design
   ========================================================================== */

/* Largeur du site alignée sur 1440px (Botiga > Layout) – Skill Design */
body { --wp--style--global--wide-size: 1440px; }
.athemes-blocks-block-container-wrapper-content { max-width: 1440px !important; }

/* Bandeaux photo (accueil, contact, boutique) : voile sombre + texte blanc pour la lisibilité – Skill Design */
#athemes-blocks-block-add14a1f > .athemes-blocks-block-container-wrapper,
#athemes-blocks-block-f283c4ef > .athemes-blocks-block-container-wrapper,
#athemes-blocks-block-7760f2e4 > .athemes-blocks-block-container-wrapper { position: relative; }
#athemes-blocks-block-add14a1f > .athemes-blocks-block-container-wrapper::before,
#athemes-blocks-block-f283c4ef > .athemes-blocks-block-container-wrapper::before,
#athemes-blocks-block-7760f2e4 > .athemes-blocks-block-container-wrapper::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.35); z-index: 1; pointer-events: none; }
#athemes-blocks-block-add14a1f .athemes-blocks-block-container-wrapper-content,
#athemes-blocks-block-f283c4ef .athemes-blocks-block-container-wrapper-content,
#athemes-blocks-block-7760f2e4 .athemes-blocks-block-container-wrapper-content { position: relative; z-index: 2; }
#athemes-blocks-block-add14a1f h1, #athemes-blocks-block-add14a1f h2, #athemes-blocks-block-add14a1f p,
#athemes-blocks-block-f283c4ef h1, #athemes-blocks-block-f283c4ef h2, #athemes-blocks-block-f283c4ef p,
#athemes-blocks-block-7760f2e4 h1, #athemes-blocks-block-7760f2e4 h2, #athemes-blocks-block-7760f2e4 p { color: #fff; }

/* Blog : vignettes au même ratio (carré) dans les listes d'articles – Skill Design */
body:not(.single) article.post .post-thumbnail { display: block; overflow: hidden; }
body:not(.single) article.post .post-thumbnail img { width: 100%; aspect-ratio: 1 / 1; height: auto; object-fit: cover; object-position: center; }

/* Blog : bouton « Lire la suite » en cartouche noir – Skill Design */
body:not(.single) article.post .entry-content > a[title] { display: inline-block; margin-top: 10px; padding: 12px 26px; background: #000; color: #fff !important; text-decoration: none !important; font-size: 13px; letter-spacing: 1px; text-transform: uppercase; line-height: 1; border: 1px solid #000; transition: background .2s, color .2s; }
body:not(.single) article.post .entry-content > a[title]:hover { background: #fff; color: #000 !important; }

/* Blog : boutons « Lire la suite » alignés en bas des cartes – Skill Design */
body:not(.single) .posts-archive .row > article.post { display: flex; flex-direction: column; align-items: stretch; }
body:not(.single) .posts-archive .row > article.post > * { width: 100%; }
body:not(.single) .posts-archive .row > article.post .entry-content { display: flex; flex-direction: column; flex: 1; }
body:not(.single) .posts-archive .row > article.post .entry-content > a[title] { margin-top: auto; align-self: flex-start; }

/* Footer noir : textes blancs + logo inversé – Skill Design */
.bhfb-footer, .bhfb-footer h1, .bhfb-footer h2, .bhfb-footer h3, .bhfb-footer h4, .bhfb-footer p, .bhfb-footer li, .bhfb-footer a { color: #fff; }
.bhfb-footer a:hover { color: #bdbdbd; }
.bhfb-footer .wp-image-614 { filter: invert(1); }

/* Page contact : coordonnées, formulaire CF7 et carte – Skill Design */
.pss-contact h4 { font-size: 13px; letter-spacing: 1.5px; margin: 0 0 12px; }
.pss-contact-infos p { margin-bottom: 28px; line-height: 1.8; }
.pss-contact-infos a { color: #000; text-decoration: underline; }
.pss-contact .wpcf7 .pss-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.pss-contact .wpcf7 p { margin-bottom: 18px; }
.pss-contact .wpcf7 label { display: block; font-size: 13px; letter-spacing: .5px; }
.pss-contact .wpcf7 input[type=text], .pss-contact .wpcf7 input[type=email], .pss-contact .wpcf7 input[type=tel], .pss-contact .wpcf7 select, .pss-contact .wpcf7 textarea { width: 100%; margin-top: 6px; padding: 12px 14px; border: 1px solid #d0d0d0; background: #fff; border-radius: 0; font-size: 15px; }
.pss-contact .wpcf7 textarea { height: 160px; }
.pss-contact .wpcf7 input:focus, .pss-contact .wpcf7 select:focus, .pss-contact .wpcf7 textarea:focus { border-color: #000; outline: none; }
.pss-contact .wpcf7-acceptance { font-size: 13px; }
.pss-contact .wpcf7-acceptance input { margin-right: 6px; }
.pss-contact .wpcf7 input[type=submit] { background: #000; color: #fff; border: 1px solid #000; padding: 14px 32px; font-size: 13px; letter-spacing: 1px; text-transform: uppercase; cursor: pointer; transition: background .2s, color .2s; }
.pss-contact .wpcf7 input[type=submit]:hover { background: #fff; color: #000; }
.pss-contact-map iframe { filter: grayscale(1); }
@media (max-width: 767px) { .pss-contact .wpcf7 .pss-form-row { grid-template-columns: 1fr; } }

/* Grilles produits (accueil, boutique, produits liés) : images au même ratio portrait – Skill Design */
.wp-block-woocommerce-product-collection .wc-block-components-product-image img,
ul.products li.product .woocommerce-loop-product__link img,
ul.products li.product .loop-image-wrap img { width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; object-position: center top; }

/* Sections « image + texte » (classe pss-split, accueil + à propos) : colonnes 50/50, image recadrée, texte centré verticalement – Skill Design */
.wp-block-columns.pss-split { align-items: center !important; }
.wp-block-columns.pss-split > .wp-block-column { flex-basis: 50% !important; flex-grow: 1; align-self: center !important; }
.wp-block-columns.pss-split > .wp-block-column:not(:has(img)) { max-width: 520px; padding: 0 20px; }
.wp-block-columns.pss-split .wp-block-image { margin: 0; }
.wp-block-columns.pss-split .wp-block-image img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; max-height: 560px; }
@media (max-width: 781px) { .wp-block-columns.pss-split > .wp-block-column:not(:has(img)) { max-width: none; padding: 0; } .wp-block-columns.pss-split .wp-block-image img { aspect-ratio: 4 / 5; } }

/* Menu header : élément actif (classe pss-actif ajoutée par snippet) + survol – Skill Design */
.main-navigation .menu > li > a { text-decoration: none; text-decoration-thickness: 1px; text-underline-offset: 7px; transition: text-decoration-color .2s; }
.main-navigation .menu > li > a:hover,
.main-navigation .menu > li.pss-actif > a { text-decoration: underline; text-decoration-color: currentColor; }
.main-navigation .menu > li.pss-actif > a { font-weight: 600; }
