/*
Theme Name: eau8
Theme URI: https://eau8.com
Author: eau8 Maison
Description: Block (FSE) theme for eau8 — luxury fragrance & skincare e-commerce. Bleu Roi on white. WooCommerce-ready, SEO/AEO optimised, clonable.
Version: 1.0.811
License: GNU General Public License v2 or later
Text Domain: eau8
*/

:root{
  --eau-blue:#1b46d6; --eau-blue-hi:#1230b0; --eau-ink:#101f4e;
  --eau-ink-soft:#586089; --eau-mute:#99a0b8; --eau-bg2:#f3f6fa;
  --eau-display:'Cormorant Garamond',Georgia,serif; --eau-body:'Jost','Helvetica Neue',sans-serif;
}

/* ===== Force the brand fonts everywhere ===== */
body, .wp-site-blocks, p, li, a, span, button, input, .wp-block-button__link,
.woocommerce, .woocommerce div.product, .woocommerce-page{
  font-family:var(--eau-body) !important;
  font-weight:300;
  color:var(--eau-ink);
  letter-spacing:0.01em;
}
h1,h2,h3,h4,h5,
.wp-block-heading,
.woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.wp-block-post-title,
.product_title,
.woocommerce-products-header__title,
.wc-block-grid__product-title{
  font-family:var(--eau-display) !important;
  font-weight:300 !important;
  color:var(--eau-ink) !important;
  letter-spacing:0.005em;
  line-height:1.04;
}
a{ color:var(--eau-ink); text-decoration:none; }
a:hover{ color:var(--eau-blue-hi); }

/* ===== Header / nav ===== */
.wp-block-site-title a{ font-family:var(--eau-body)!important; font-weight:300; font-size:25px; letter-spacing:0.2em; color:var(--eau-ink); }
.wp-block-navigation, header .wp-block-group p a{ font-size:11px; letter-spacing:0.2em; text-transform:uppercase; font-weight:300; }
header a{ color:var(--eau-ink-soft); }
header a:hover{ color:var(--eau-blue-hi); }

/* ===== Buttons (Bleu Roi, square) ===== */
.wp-block-button__link,
.woocommerce a.button, .woocommerce button.button, .woocommerce .button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt{
  background:var(--eau-blue)!important; color:#fff!important; border:none!important; border-radius:0!important;
  font-family:var(--eau-body)!important; font-size:11px!important; letter-spacing:0.24em!important;
  text-transform:uppercase!important; padding:16px 34px!important; font-weight:400!important; transition:background .3s;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce .button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover{ background:var(--eau-blue-hi)!important; }

/* ===== Product grid ===== */
.woocommerce ul.products li.product, .wc-block-grid__product{ text-align:center; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title{ font-size:21px!important; padding:14px 0 4px!important; }
.woocommerce ul.products li.product .price, .wc-block-grid__product-price,
.wp-block-woocommerce-product-price{ color:var(--eau-ink-soft)!important; font-family:var(--eau-body)!important; font-weight:300; font-size:14px; }
.woocommerce ul.products li.product img, .wc-block-grid__product-image img,
.wp-block-woocommerce-product-image img{ border:1px solid color-mix(in srgb,var(--eau-blue) 14%,transparent); }
.woocommerce span.onsale{ background:var(--eau-blue)!important; color:#fff; border-radius:0; }

/* ===== Single product ===== */
.woocommerce div.product .product_title{ font-size:clamp(40px,5vw,68px); line-height:1; }
.woocommerce div.product p.price, .woocommerce div.product span.price{ color:var(--eau-ink)!important; font-size:22px; font-weight:300; }
.woocommerce-product-details__short-description{ color:var(--eau-ink-soft); font-size:17px; line-height:1.7; }

/* ===== Shop filter bar ===== */
.eau-filterbar{ display:flex; gap:36px; justify-content:center; border-bottom:1px solid color-mix(in srgb,var(--eau-blue) 14%,transparent); margin-bottom:56px; }
.eau-filterbar a{ font-size:11px; letter-spacing:0.24em; text-transform:uppercase; color:var(--eau-mute); padding:0 2px 16px; border-bottom:2px solid transparent; transition:color .3s,border-color .3s; }
.eau-filterbar a:hover{ color:var(--eau-blue-hi); }
.eau-filterbar a.active{ color:var(--eau-blue); border-bottom-color:var(--eau-blue); }

/* ===== Footer — NO gold, use blue/mute ===== */
footer .wp-block-group, .wp-block-template-part footer{ background:var(--eau-bg2); }
footer .wp-block-site-title a{ color:var(--eau-ink); }
footer p[style*="c6a96d"], footer .has-text-color{ color:var(--eau-blue)!important; }
footer a{ color:var(--eau-ink-soft); font-size:13px; }
footer a:hover{ color:var(--eau-blue-hi); }

/* eyebrow utility */
.eau-eyebrow{ font-family:var(--eau-body); font-size:11px; letter-spacing:0.34em; text-transform:uppercase; color:var(--eau-blue); }

/* tighten default block spacing */
.wp-block-query{ margin-top:0; }
/* fullwidth-fix */
.wp-block-post-content > .wp-block-html{ max-width:none!important; }
.wp-site-blocks{ padding-left:0!important; padding-right:0!important; }
main .wp-block-html section{ width:100%; }

/* single-product-refine */
.single-product main{ padding-top:40px; }
.woocommerce div.product{ max-width:1320px; margin:0 auto; padding:20px 48px 0; }
.woocommerce .woocommerce-breadcrumb{ font-size:10px!important; letter-spacing:0.22em!important; text-transform:uppercase; color:#99a0b8!important; margin-bottom:30px; }
.woocommerce .woocommerce-breadcrumb a{ color:#99a0b8!important; }
.woocommerce .woocommerce-breadcrumb a:hover{ color:#1b46d6!important; }
.woocommerce div.product div.images img{ border:1px solid rgba(27,70,214,0.16); }
.woocommerce div.product .product_title{ margin-top:18px!important; }
.woocommerce div.product div.summary{ padding-left:20px; }
.woocommerce-product-details__short-description{ margin:18px 0 26px; }
.single-product .quantity .qty{ border:1px solid rgba(27,70,214,0.3)!important; border-radius:0; padding:14px 8px; color:#101f4e; }
.woocommerce div.product form.cart{ margin-top:10px; }
.woocommerce div.product .woocommerce-tabs ul.tabs{ border:none; padding-left:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ border-bottom:1px solid rgba(27,70,214,0.12); }
.woocommerce div.product .woocommerce-tabs ul.tabs li{ background:none; border:none; border-radius:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{ background:none; border-bottom:2px solid #1b46d6; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ color:#586089; }
.woocommerce div.product .woocommerce-tabs .panel h2{ font-family:'Cormorant Garamond',serif!important; font-weight:300; color:#101f4e; }
.woocommerce #reviews h3, .woocommerce div.product .woocommerce-tabs .panel{ color:#586089; }
.related.products > h2{ font-family:'Cormorant Garamond',serif!important; font-weight:300; font-size:38px; text-align:center; color:#101f4e; margin:80px 0 40px; }
.related.products{ max-width:1320px; margin:0 auto; padding:0 48px 100px; }

/* single-refine-2 */
.single-product .product_meta{ display:none!important; }
.single-product .woocommerce-product-rating{ display:none!important; }
.single-product table.variations, .single-product .quantity label{ }
.single-product .woocommerce-tabs{ max-width:1320px; margin:60px auto 0; padding:0 48px; }
.single-product .woocommerce-tabs ul.tabs{ text-align:left; }
.single-product .woocommerce-tabs .panel{ max-width:760px; }
.single-product .woocommerce-tabs .panel h2{ font-size:clamp(28px,3vw,40px)!important; margin-bottom:18px; }
.single-product div.product form.cart div.quantity{ margin-right:14px; }
.single-product div.product form.cart .quantity .qty{ height:54px; width:64px; }
.single-product div.product form.cart .single_add_to_cart_button{ height:54px; }
/* hide the stray dash above qty (screen-reader label leak) */
.single-product .quantity .screen-reader-text{ position:absolute!important; left:-9999px; }
.summary.entry-summary{ padding-left:10px; }
.single-product .price{ margin-bottom:24px!important; }
.posted_in, .tagged_as{ display:none!important; }

/* single-refine-3 */
/* kill stray label/dash above quantity */
.single-product div.product form.cart .quantity::before,
.single-product div.product .quantity > label{ display:none!important; }
.single-product div.product form.cart label[for]{ display:none!important; }
/* hide the big duplicate 'Description' heading inside the tab panel */
.single-product .woocommerce-Tabs-panel--description > h2:first-child{ display:none!important; }
/* tighten quantity box */
.single-product .quantity input.qty{ -moz-appearance:textfield; }
.single-product .quantity{ position:relative; }
/* make tabs nav uppercase letterspaced */
.single-product .woocommerce-tabs ul.tabs li a{ text-transform:uppercase; letter-spacing:0.14em; font-size:12px; }

/* single-refine-5 */
.single-product div.product form.cart .quantity{ border:none!important; background:none!important; box-shadow:none!important; }
.single-product div.product form.cart .quantity .qty{ border:1px solid rgba(27,70,214,0.3)!important; background:#fff; box-shadow:none; margin:0; }
.single-product div.product form.cart .quantity label.screen-reader-text{ position:absolute!important; width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0); white-space:nowrap; border:0; padding:0; margin:-1px; }
.single-product div.product form.cart{ align-items:center; }
.single-product div.product form.cart::before, .single-product div.product form.cart::after{ content:none!important; }

/* single-refine-6 — fix oversized titles on product page */
/* The duplicate 'Description' panel heading: hide entirely */
.single-product .woocommerce-Tabs-panel--description > h2:first-child,
.single-product .woocommerce-tabs .panel > h2:first-child{ display:none!important; }
/* Related products heading: small, refined, centered eyebrow style */
.single-product .related.products > h2,
.single-product .upsells.products > h2{
  font-size:30px!important; font-weight:300!important; text-align:center;
  letter-spacing:0.01em; margin:0 0 44px!important;
}
/* Tab nav: small uppercase, no boxes */
.single-product .woocommerce-tabs ul.tabs{ border-bottom:1px solid rgba(27,70,214,0.12); margin-bottom:28px; padding:0; }
.single-product .woocommerce-tabs ul.tabs li{ background:none!important; border:none!important; margin:0 28px 0 0!important; padding:0 0 14px!important; }
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{ display:none!important; }
.single-product .woocommerce-tabs ul.tabs li a{ font-size:11px!important; letter-spacing:0.22em!important; text-transform:uppercase; color:#99a0b8!important; padding:0!important; }
.single-product .woocommerce-tabs ul.tabs li.active a{ color:#1b46d6!important; }
.single-product .woocommerce-tabs ul.tabs li.active{ border-bottom:2px solid #1b46d6!important; }
/* panel body text */
.single-product .woocommerce-tabs .panel p{ font-size:16px; line-height:1.8; color:#586089; max-width:680px; }
/* Reviews heading smaller */
.single-product #reviews h2, .single-product #reviews h3{ font-size:24px!important; font-weight:300!important; }
/* ADD TO CART refined */
.single-product .single_add_to_cart_button{ padding:18px 40px!important; font-weight:400!important; }

/* HARD-OVERRIDE-TITLES */
body.single-product .woocommerce-tabs .panel h2{ display:none !important; }
body.single-product section.related.products > h2,
body.single-product section.up-sells.products > h2,
body.single-product .related.products h2{
  font-family:'Cormorant Garamond',serif !important;
  font-size:30px !important; font-weight:300 !important; text-align:center !important;
  margin:0 0 44px !important; line-height:1.2 !important;
}
body.single-product .woocommerce-tabs{ margin-top:50px; }

/* single-align-fix — center the whole single-product layout on 1320px like the rest of the site */
.single-product main.wp-block-group{ padding-left:0 !important; padding-right:0 !important; }
.single-product .woocommerce, .single-product div.product.type-product{
  max-width:1320px !important; margin-left:auto !important; margin-right:auto !important;
  padding-left:48px !important; padding-right:48px !important; box-sizing:border-box; width:100%;
}
.single-product .woocommerce-breadcrumb{ max-width:1320px; margin:0 auto 30px !important; padding:0 48px !important; box-sizing:border-box; }
/* product image + summary columns */
.single-product div.product div.images{ float:none !important; width:48% !important; margin:0 !important; }
.single-product div.product div.summary{ float:none !important; width:48% !important; margin:0 !important; padding-left:0 !important; }
.single-product div.product{ display:flex !important; flex-wrap:wrap; gap:4%; align-items:flex-start; }
/* tabs + related align to same gutter */
.single-product .woocommerce-tabs{ width:100% !important; max-width:1320px !important; margin:60px auto 0 !important; padding:0 48px !important; box-sizing:border-box; }
.single-product .related.products{ width:100%; max-width:1320px !important; margin:80px auto 0 !important; padding:0 48px 40px !important; box-sizing:border-box; clear:both; }
/* footer already constrained; ensure no negative shift */
.single-product .wp-block-group.alignfull{ margin-left:0; margin-right:0; }

/* single-align-fix-v2 — everything on one 1320px centered column, single 48px gutter */
.single-product main.wp-block-group{ padding:40px 0 60px !important; }
.single-product .woocommerce{ max-width:1320px; margin:0 auto !important; padding:0 48px !important; box-sizing:border-box; }
/* breadcrumb already inside .woocommerce; no extra padding */
.single-product .woocommerce-breadcrumb{ max-width:none; margin:0 0 30px !important; padding:0 !important; }
/* product flex row, no extra padding (parent .woocommerce has the gutter) */
.single-product div.product{ display:flex !important; flex-wrap:wrap; gap:4%; align-items:flex-start; max-width:none !important; margin:0 !important; padding:0 !important; }
.single-product div.product div.images{ float:none !important; width:48% !important; margin:0 !important; padding:0 !important; }
.single-product div.product div.summary{ float:none !important; width:48% !important; margin:0 !important; padding:0 !important; }
/* tabs + related: same column, no own padding (inside .woocommerce) */
.single-product .woocommerce-tabs{ width:100% !important; max-width:none !important; margin:60px 0 0 !important; padding:0 !important; }
.single-product .related.products{ width:100% !important; max-width:none !important; margin:80px 0 0 !important; padding:0 0 40px !important; clear:both; }
.single-product .woocommerce-tabs .panel{ padding:0 !important; }

/* single-align-fix-v3 — .content-area already centers at 1320px; remove inner paddings */
.single-product div.product{ padding:0 !important; max-width:none !important; margin:0 !important; display:flex !important; flex-wrap:wrap; gap:4%; align-items:flex-start; }
.single-product div.product div.images{ float:none !important; width:48% !important; margin:0 !important; padding:0 !important; }
.single-product div.product div.summary{ float:none !important; width:48% !important; margin:0 !important; padding:0 !important; }
.single-product .woocommerce-breadcrumb{ margin:0 0 30px !important; padding:0 !important; }
.single-product .woocommerce-tabs{ width:100% !important; max-width:none !important; margin:60px 0 0 !important; padding:0 !important; }
.single-product .woocommerce-tabs .panel{ padding:0 !important; }
.single-product .related.products{ width:100% !important; max-width:none !important; margin:80px 0 0 !important; padding:0 0 40px !important; clear:both; }
/* ensure the content-area wrapper keeps the global 1320 gutter via root padding */
