/*
Theme Name: GeckoKit
Theme URI: https://geckokit.com
Description: Theme sur-mesure GeckoKit - esthetique luxe editorial minimaliste. Enfant de Kadence.
Author: GeckoKit
Template: kadence
Version: 1.4.0
*/

:root{
  --lux-ink:#15150F;
  --lux-ink-soft:#3a3a30;
  --lux-cream:#F6F3EC;
  --lux-paper:#FBFAF6;
  --lux-stone:#8d887a;
  --lux-green:#2B4B3A;
  --lux-gold:#A98B5D;
  --lux-line:#e4ded0;
}

html{ scroll-behavior:smooth; }
body, .entry-content, p, li, input, select, textarea, .woocommerce, button, .button{
  font-family:"Jost", system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color:var(--lux-ink);
}
body{ background:var(--lux-cream); line-height:1.75; font-weight:300; letter-spacing:.01em; }
::selection{ background:var(--lux-green); color:var(--lux-cream); }

h1,h2,h3,h4,h5,.entry-title,.product_title,.woocommerce-loop-product__title{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-weight:500 !important; letter-spacing:.005em; line-height:1.12;
}
h1,.entry-title{ font-size:clamp(2.4rem,5vw,4rem) !important; }
h2{ font-size:clamp(1.9rem,3.4vw,2.8rem) !important; }
a{ color:var(--lux-ink); text-decoration:none; text-underline-offset:4px; }
a:hover{ color:var(--lux-green); text-decoration:underline; }

/* Barre d'annonce */
.gk-annonce{ background:var(--lux-ink); color:var(--lux-cream); font-size:.68rem; }
.gk-annonce__track{ display:flex; gap:2.6rem; justify-content:center; align-items:center; flex-wrap:wrap; padding:.6rem 1rem; max-width:1200px; margin:0 auto; text-transform:uppercase; letter-spacing:.22em; font-weight:400; }
.gk-annonce__track span{ white-space:nowrap; }
@media(max-width:782px){ .gk-annonce__track{ gap:1.3rem; letter-spacing:.14em; } .gk-annonce__track span:nth-child(4){ display:none; } }

/* Navigation */
.header-navigation .menu-item a, .site-header .menu-link, nav.main-navigation a{ text-transform:uppercase !important; letter-spacing:.16em !important; font-size:.78rem !important; font-weight:400 !important; }
.header-navigation .menu-item > a{ position:relative; }
.header-navigation .menu-item > a::after{ content:""; position:absolute; left:0; bottom:-3px; width:0; height:1px; background:currentColor; transition:width .35s ease; }
.header-navigation .menu-item > a:hover::after{ width:100%; }
.site-title a, .site-branding .site-title a{ font-family:"Cormorant Garamond",serif !important; font-weight:600 !important; letter-spacing:.03em; }

/* Boutons rectangulaires invert */
.button, .wp-block-button__link, .kb-button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, button.single_add_to_cart_button, .gk-sticky-btn{
  border-radius:0 !important; text-transform:uppercase !important; letter-spacing:.16em !important;
  font-size:.78rem !important; font-weight:400 !important; padding:1.05em 2.4em !important;
  background:var(--lux-ink) !important; color:var(--lux-cream) !important; border:1px solid var(--lux-ink) !important;
  box-shadow:none !important; background-image:none !important; transition:background-color .3s ease, color .3s ease;
}
.button:hover, .wp-block-button__link:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:hover, button.single_add_to_cart_button:hover, .gk-sticky-btn:hover{
  background:transparent !important; color:var(--lux-ink) !important; transform:none !important;
}
.is-style-outline .wp-block-button__link{ background:transparent !important; color:var(--lux-ink) !important; }
.is-style-outline .wp-block-button__link:hover{ background:var(--lux-ink) !important; color:var(--lux-cream) !important; }

/* Cartes produits minimalistes */
ul.products li.product{ background:transparent !important; border:none !important; box-shadow:none !important; border-radius:0 !important; padding:0 0 2rem !important; text-align:center; }
ul.products li.product a img{ border-radius:0 !important; transition:opacity .5s ease, transform 1.2s ease; display:block; }
ul.products li.product:hover a img{ opacity:.82; transform:scale(1.03); }
ul.products li.product .woocommerce-loop-product__title{ font-family:"Jost",sans-serif !important; text-transform:uppercase; letter-spacing:.12em; font-size:.82rem !important; font-weight:400 !important; margin:1.1em 0 .3em; }
ul.products li.product .price{ color:var(--lux-ink) !important; font-weight:300 !important; font-size:1rem; }
ul.products li.product .button, ul.products li.product .added_to_cart{ display:inline-block; width:auto; margin-top:1em; background:transparent !important; color:var(--lux-ink) !important; border:1px solid var(--lux-ink) !important; padding:.7em 1.8em !important; opacity:0; transition:opacity .3s ease, background-color .3s ease, color .3s ease; }
ul.products li.product:hover .button, ul.products li.product:hover .added_to_cart{ opacity:1; }
@media(max-width:782px){ ul.products li.product .button{ opacity:1; } }

.woocommerce span.onsale{ background:transparent !important; color:var(--lux-ink) !important; border:1px solid var(--lux-ink); border-radius:0; box-shadow:none; text-transform:uppercase; letter-spacing:.14em; font-size:.62rem; font-weight:400; padding:.45em .8em; min-height:auto; min-width:auto; line-height:1; top:12px; left:12px; }

/* ===== Fiche produit - maison de luxe ===== */
.single-product .woocommerce-breadcrumb{ text-transform:uppercase; letter-spacing:.16em; font-size:.68rem; color:var(--lux-stone); margin-bottom:2rem; }
.woocommerce div.product .product_title{ font-size:clamp(2.2rem,4vw,3.2rem) !important; margin-bottom:.2em; }
.woocommerce div.product p.price, .woocommerce div.product span.price{ color:var(--lux-ink) !important; font-weight:300 !important; font-size:1.9rem; font-family:"Cormorant Garamond",serif !important; }
.price del{ opacity:.4; font-weight:300; }
.price ins{ text-decoration:none; }
.woocommerce-product-details__short-description{ font-size:1.05rem; color:var(--lux-ink-soft); line-height:1.85; }
.woocommerce div.product form.cart{ margin-top:1.6em; }
.woocommerce .quantity .qty{ border:1px solid var(--lux-ink) !important; border-radius:0 !important; padding:.7em !important; width:4.5em; text-align:center; background:transparent; }
.woocommerce div.product .product_meta{ text-transform:uppercase; letter-spacing:.1em; font-size:.68rem; color:var(--lux-stone); border-top:1px solid var(--lux-line); margin-top:2rem; padding-top:1.2rem; }
.woocommerce div.product .woocommerce-product-gallery__image a{ overflow:hidden; display:block; }
.woocommerce div.product .woocommerce-product-gallery__image img{ border-radius:0 !important; transition:transform 1.2s ease; }
.woocommerce div.product .woocommerce-product-gallery__image:hover img{ transform:scale(1.05); }
.woocommerce-tabs ul.tabs{ border:none !important; padding-left:0 !important; }
.woocommerce-tabs ul.tabs::before{ border:none !important; }
.woocommerce-tabs ul.tabs li{ background:transparent !important; border:none !important; border-radius:0 !important; margin:0 2rem 0 0 !important; padding:0 !important; }
.woocommerce-tabs ul.tabs li::before, .woocommerce-tabs ul.tabs li::after{ display:none !important; }
.woocommerce-tabs ul.tabs li a{ text-transform:uppercase; letter-spacing:.14em; font-size:.76rem; font-weight:400; color:var(--lux-stone) !important; padding:.4em 0 !important; }
.woocommerce-tabs ul.tabs li.active a{ color:var(--lux-ink) !important; border-bottom:1px solid var(--lux-ink); }
.related.products, .up-sells{ border-top:1px solid var(--lux-line); margin-top:4rem; padding-top:3rem; }
.related.products > h2, .up-sells > h2{ text-align:center; font-size:clamp(1.8rem,3vw,2.4rem); margin-bottom:1.8rem; }

.gk-eco{ display:block; margin:.6em 0 1.4em; padding:0 0 0 1em; font-size:.9rem; color:var(--lux-ink-soft); border-left:2px solid var(--lux-gold); }
.gk-eco span{ display:block; text-transform:uppercase; letter-spacing:.2em; font-size:.66rem; color:var(--lux-gold); margin-bottom:.25em; }

.gk-trust{ display:flex; flex-wrap:wrap; gap:1.4rem 2rem; margin:1.8rem 0 .4rem; padding:1.2rem 0; border-top:1px solid var(--lux-line); border-bottom:1px solid var(--lux-line); }
.gk-trust div{ text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; font-weight:400; color:var(--lux-ink-soft); }

/* Sticky add to cart */
.gk-sticky-cart{ position:fixed; left:0; right:0; bottom:0; z-index:9999; background:var(--lux-ink); color:var(--lux-cream); transform:translateY(120%); transition:transform .35s ease; padding:.7rem 1.2rem; }
.gk-sticky-cart.is-visible{ transform:translateY(0); }
.gk-sticky-inner{ max-width:1100px; margin:0 auto; display:flex; align-items:center; gap:1.2rem; }
.gk-sticky-info{ display:flex; flex-direction:column; line-height:1.3; min-width:0; }
.gk-sticky-title{ text-transform:uppercase; letter-spacing:.12em; font-size:.72rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.gk-sticky-price{ font-family:"Cormorant Garamond",serif; font-size:1.1rem; }
.gk-sticky-price .woocommerce-Price-amount{ color:var(--lux-cream) !important; }
.gk-sticky-btn{ margin-left:auto; background:var(--lux-cream) !important; color:var(--lux-ink) !important; border-color:var(--lux-cream) !important; white-space:nowrap; cursor:pointer; }
.gk-sticky-btn:hover{ background:transparent !important; color:var(--lux-cream) !important; }
@media(max-width:520px){ .gk-sticky-title{ max-width:42vw; } }

/* Reveal au scroll */
.gk-reveal{ opacity:0; transform:translateY(26px); transition:opacity 1s cubic-bezier(.2,.6,.2,1), transform 1s cubic-bezier(.2,.6,.2,1); will-change:opacity,transform; }
.gk-reveal.is-in{ opacity:1; transform:none; }

/* Header / footer */
.site-header, .site-main-header-wrap{ border-bottom:1px solid var(--lux-line); background:var(--lux-paper); }
.woocommerce-message, .woocommerce-info, .woocommerce-noreviews{ border-top-color:var(--lux-green) !important; }
.site-footer, .site-footer-wrap, .site-footer-row-container-inner{ background-color:var(--lux-ink) !important; color:var(--lux-cream) !important; }
.site-footer a, .site-footer .footer-html{ color:var(--lux-stone) !important; }
.site-footer a:hover{ color:var(--lux-cream) !important; }
.site-footer, .site-footer p, .site-footer span{ color:#cfcabb !important; letter-spacing:.06em; }
