/* Tablouk Home */
:root{--tbk-accent:#1F4D45;--tbk-ink:#1b1b1b;--tbk-muted:#6b6b6b;--tbk-cream:#F7F3EC;--tbk-line:#e7e1d6;--tbk-serif:"Fraunces",Georgia,serif;--tbk-sans:"Manrope",system-ui,sans-serif}

/* Barre d'annonce */
.tbk-announce{background:var(--tbk-accent);color:#fff;font:500 13px/1 var(--tbk-sans);overflow:hidden;white-space:nowrap;padding:10px 0}
.tbk-announce__track{display:inline-flex;gap:56px;animation:tbk-scroll 28s linear infinite;padding-left:56px}
.tbk-announce__track span::before{content:"✦";margin-right:12px;opacity:.6}
@keyframes tbk-scroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tbk-announce__track{animation:none}.tbk-dup{display:none}}

/* Conteneur : sortir du conteneur étroit du thème */
.tbk-home{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);font-family:var(--tbk-sans);color:var(--tbk-ink);background:#fff;overflow-x:hidden}
.tbk-home *{box-sizing:border-box}
.tbk-wrap{max-width:1280px;margin:0 auto;padding:0 20px}
.tbk-section{padding-top:64px;padding-bottom:8px}
.tbk-band{padding:64px 0;margin-top:56px}
.tbk-band--white{background:var(--tbk-cream)}
.tbk-band--dark{background:var(--tbk-accent);color:#fff}
.tbk-band--dark .tbk-sub{color:rgba(255,255,255,.75)}

.tbk-kicker{font:600 12px/1.2 var(--tbk-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--tbk-accent);margin:0 0 14px}
.tbk-h1{font:500 clamp(36px,5.5vw,64px)/1.05 var(--tbk-serif);letter-spacing:-.02em;margin:0 0 18px}
.tbk-h2{font:500 clamp(26px,3vw,36px)/1.15 var(--tbk-serif);letter-spacing:-.01em;margin:0}
.tbk-sub{color:var(--tbk-muted);margin:6px 0 0;font-size:15px}
.tbk-lead{font-size:18px;line-height:1.6;color:#444;max-width:520px;margin:0 0 28px}
.tbk-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}
.tbk-link{font-weight:600;font-size:14px;color:inherit;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}

.tbk-btn{display:inline-flex;align-items:center;gap:10px;background:var(--tbk-accent);color:#fff!important;padding:15px 28px;border-radius:2px;font:600 15px/1 var(--tbk-sans);text-decoration:none!important;border:1px solid var(--tbk-accent);transition:opacity .2s,background .2s}
.tbk-btn:hover{opacity:.88}
.tbk-btn--outline{background:transparent;color:var(--tbk-ink)!important;border-color:var(--tbk-ink)}
.tbk-btn--outline:hover{background:var(--tbk-ink);color:#fff!important;opacity:1}
.tbk-btn--wa{background:#25D366;border-color:#25D366;color:#0b2e17!important}
.tbk-actions{display:flex;flex-wrap:wrap;gap:12px}

/* Hero */
.tbk-hero{background:var(--tbk-cream);padding:56px 0}
.tbk-hero__inner{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.tbk-hero__media{position:relative}
.tbk-hero__media img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block;box-shadow:0 30px 60px -30px rgba(0,0,0,.35)}
.tbk-hero__badge{position:absolute;left:-18px;bottom:28px;background:#fff;padding:14px 18px;font-size:13px;line-height:1.35;box-shadow:0 10px 30px -10px rgba(0,0,0,.25)}
.tbk-hero__badge strong{display:block;font:600 22px/1 var(--tbk-serif);color:var(--tbk-accent);margin-bottom:4px}

/* Bannières univers */
.tbk-banners{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.tbk-banner{position:relative;min-height:380px;background:var(--tbk-cream);display:flex;flex-direction:column;justify-content:flex-end;padding:32px;color:#fff!important;text-decoration:none!important;overflow:hidden}
.tbk-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),rgba(0,0,0,.05) 60%);transition:background .3s}
.tbk-banner:hover::before{background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,.15) 60%)}
.tbk-banner__img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:16px 16px 120px}
.tbk-banner::before{z-index:1}
.tbk-banner>span{position:relative;z-index:2}
.tbk-banner__kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.tbk-banner__title{font:500 clamp(28px,3vw,40px)/1.1 var(--tbk-serif);margin:8px 0 14px}
.tbk-banner__cta{font-weight:600;font-size:14px;text-decoration:underline;text-underline-offset:4px}

/* Tuiles catégories */
.tbk-tiles{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.tbk-tile{text-decoration:none!important;color:inherit!important;display:block}
.tbk-tile__media{aspect-ratio:4/5;overflow:hidden;background:var(--tbk-cream)}
.tbk-tile__media{display:grid;place-items:center;padding:8px}
.tbk-tile__media img{width:100%;height:100%;object-fit:contain;transition:transform .5s}
.tbk-tile:hover img{transform:scale(1.05)}
.tbk-tile__name{display:block;font-weight:600;font-size:15px;margin-top:12px}
.tbk-tile__count{display:block;font-size:13px;color:var(--tbk-muted);margin-top:2px}

/* Produits WooCommerce */
.tbk-home ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:28px 20px;margin:0!important;padding:0!important}
.tbk-home ul.products::before,.tbk-home ul.products::after{display:none!important}
.tbk-home ul.products li.product{width:auto!important;margin:0!important;float:none!important;text-align:left;list-style:none}
.tbk-home ul.products li.product img{aspect-ratio:1/1;object-fit:contain;background:var(--tbk-cream);padding:8px;width:100%;height:auto!important;margin-bottom:12px!important}
.tbk-home ul.products li.product .woocommerce-loop-product__title{font:600 15px/1.35 var(--tbk-sans)!important;padding:0!important;margin:0 0 6px!important}
.tbk-home ul.products li.product .price{color:var(--tbk-muted)!important;font-size:14px!important}
.tbk-home ul.products li.product .button{background:transparent!important;color:var(--tbk-ink)!important;border:1px solid var(--tbk-ink)!important;border-radius:2px!important;font-size:13px!important;padding:10px 14px!important;margin-top:10px!important}
.tbk-home ul.products li.product .button:hover{background:var(--tbk-ink)!important;color:#fff!important}

/* Étapes personnalisation */
.tbk-steps{display:grid;grid-template-columns:1fr 1.4fr;gap:48px;align-items:start;border-top:1px solid var(--tbk-line);padding-top:48px}
.tbk-steps__intro .tbk-h2{margin-bottom:24px}
.tbk-steps__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:28px}
.tbk-steps__list li{display:flex;gap:16px}
.tbk-steps__list li>span{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--tbk-accent);color:var(--tbk-accent);display:grid;place-items:center;font:600 17px/1 var(--tbk-serif)}
.tbk-steps__list h3{font:600 16px/1.3 var(--tbk-sans);margin:6px 0 4px}
.tbk-steps__list p{margin:0;color:var(--tbk-muted);font-size:14px;line-height:1.5}

/* Pilules */
.tbk-pills{display:flex;flex-wrap:wrap;gap:10px}
.tbk-pill{border:1px solid rgba(255,255,255,.45);color:#fff!important;text-decoration:none!important;padding:11px 20px;border-radius:999px;font-size:14px;transition:background .2s,color .2s}
.tbk-pill:hover{background:#fff;color:var(--tbk-accent)!important}

/* Mission */
.tbk-mission{text-align:center;max-width:820px}
.tbk-mission__text{font:500 clamp(22px,2.6vw,32px)/1.35 var(--tbk-serif);margin:0}

/* Confiance */
.tbk-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.tbk-trust>div{color:var(--tbk-accent)}
.tbk-trust h3{color:var(--tbk-ink);font:600 16px/1.3 var(--tbk-sans);margin:14px 0 6px}
.tbk-trust a{color:var(--tbk-accent)}
.tbk-trust p{color:var(--tbk-muted);font-size:14px;line-height:1.5;margin:0}

/* CTA WhatsApp */
.tbk-cta{background:var(--tbk-ink);color:#fff;padding:56px 0;margin-top:64px}
.tbk-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:28px}
.tbk-cta p{color:rgba(255,255,255,.75);margin:10px 0 0;max-width:560px}

/* Bouton flottant */
.tbk-wa-float{position:fixed;right:18px;bottom:18px;z-index:9999;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff!important;display:grid;place-items:center;box-shadow:0 10px 25px -8px rgba(0,0,0,.4)}

/* Responsive */
@media (max-width:1024px){
	.tbk-tiles{grid-template-columns:repeat(3,1fr)}
	.tbk-home ul.products{grid-template-columns:repeat(3,1fr)}
	.tbk-trust{grid-template-columns:repeat(2,1fr)}
	.tbk-steps{grid-template-columns:1fr}
}
@media (max-width:760px){
	.tbk-wrap{padding:0 14px}
	.tbk-hero{padding:16px 0 28px}
	.tbk-hero__inner{grid-template-columns:1fr;gap:18px}
	.tbk-hero__media{order:-1}
	.tbk-hero__media img{max-height:none;box-shadow:none}
	.tbk-hero__badge{left:10px;bottom:10px;padding:8px 12px;font-size:12px}
	.tbk-hero__badge strong{font-size:18px}
	.tbk-h1{font-size:32px;margin-bottom:12px}
	.tbk-lead{font-size:16px;margin-bottom:20px}
	.tbk-actions .tbk-btn{flex:1 1 100%;justify-content:center}
	.tbk-banners{grid-template-columns:1fr;gap:14px}
	.tbk-banner{min-height:0;padding:0;display:block}
	.tbk-banner__img{position:static;display:block;width:100%;height:auto;padding:0}
	.tbk-banner>span{position:absolute;left:18px;right:18px}
	.tbk-banner__kicker{bottom:92px}
	.tbk-banner__title{bottom:34px;margin:0;font-size:26px}
	.tbk-banner__cta{bottom:14px}
	.tbk-tiles{grid-template-columns:repeat(2,1fr);gap:12px}
	.tbk-tile__media{aspect-ratio:auto;padding:0;background:none}
	.tbk-tile__media img{aspect-ratio:auto 1/1!important;height:auto!important}
	.tbk-tile__media img{height:auto}
	.tbk-tile__name{margin-top:8px;font-size:14px}
	.tbk-home ul.products{grid-template-columns:repeat(2,1fr);gap:18px 12px}
	.tbk-home ul.products li.product img{aspect-ratio:auto 1/1!important;height:auto!important;padding:0;background:none;margin-bottom:8px!important}
	.tbk-home ul.products li.product .woocommerce-loop-product__title{font-size:14px!important}
	.tbk-home ul.products li.product .button{width:100%;text-align:center;padding:9px 8px!important}
	.tbk-steps{padding-top:32px;gap:24px}
	.tbk-steps__list{grid-template-columns:1fr;gap:18px}
	.tbk-head{flex-wrap:wrap;margin-bottom:16px;gap:6px}
	.tbk-cta{padding:36px 0;margin-top:40px}
	.tbk-cta__inner{flex-direction:column;align-items:stretch;gap:18px}
	.tbk-cta .tbk-btn{justify-content:center}
	.tbk-section{padding-top:32px;padding-bottom:0}
	.tbk-band{padding:32px 0;margin-top:32px}
	.tbk-trust{gap:20px 14px}
	.tbk-trust h3{font-size:15px;margin-top:8px}
	.tbk-pills{gap:8px}
	.tbk-pill{padding:9px 14px;font-size:13px}
	.tbk-announce{font-size:12px;padding:8px 0}
	.tbk-wa-float{width:50px;height:50px;right:12px;bottom:12px}
}

/* ---------- Images entières dans toute la boutique ---------- */
.tbk-nocrop ul.products li.product img,.tbk-nocrop .wc-block-grid__product-image img,.tbk-nocrop .wc-block-components-product-image img{aspect-ratio:1/1!important;object-fit:contain!important;height:auto!important;background:var(--tbk-cream);padding:6px}
.tbk-nocrop .woocommerce-product-gallery__image img,.tbk-nocrop .woocommerce-product-gallery img.wp-post-image{object-fit:contain!important;height:auto!important;max-height:80vh;width:100%!important;background:var(--tbk-cream)}
.tbk-nocrop .flex-control-thumbs li img,.tbk-nocrop .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:not(:first-child) img{aspect-ratio:1/1;object-fit:contain!important;background:var(--tbk-cream)}

/* ---------- Téléphone : images sans espaces vides ---------- */
@media (max-width:760px){
	.tbk-nocrop ul.products li.product img,.tbk-nocrop .wc-block-grid__product-image img,.tbk-nocrop .wc-block-components-product-image img{aspect-ratio:auto 1/1!important;height:auto!important;max-height:none!important;padding:0;background:none}
	.tbk-nocrop .woocommerce-product-gallery__image img,.tbk-nocrop .woocommerce-product-gallery img.wp-post-image{max-height:none;background:none}
	.tbk-nocrop .woocommerce-product-gallery{margin-bottom:12px!important}
}

/* ---------- Filigrane Tablouk ---------- */
.tbk-wm-on .tbk-wm{position:relative;display:block;line-height:0}
.tbk-wm-on .tbk-wm::after,
.tbk-wm-on .woocommerce-product-gallery__image::after,
.tbk-wm-on .tbk-tile__media::after,
.tbk-wm-on .tbk-hero__media::after,
.tbk-wm-on .tbk-story-view__img::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:3;background-image:var(--tbk-wm);background-repeat:repeat;background-size:var(--tbk-wm-size);opacity:var(--tbk-wm-op)}
.tbk-wm-on .woocommerce-product-gallery__image,.tbk-wm-on .tbk-tile__media{position:relative}
.tbk-wm-on .tbk-hero__badge{z-index:4}

/* ---------- Badge « HD Impression premium » de l'accueil : masqué ---------- */
.dk-hero2-badge,.tbk-hero__badge{display:none!important}

/* ---------- Téléphone : tsawer produits carrées, jamais étirées ----------
   (WordPress ajoute sizes="auto" + contain-intrinsic-size 3000x1500 ; Tablouk Boost force aspect-ratio:auto) */
html body.tbk-nocrop.tbk-nocrop ul.products li.product a img,html body.tbk-nocrop.tbk-nocrop ul.products li.product img,html body.tbk-nocrop.tbk-nocrop .tbk-tile__media img,html body.tbk-nocrop.tbk-nocrop .tbk-card__img img{aspect-ratio:1/1!important;height:auto!important;object-fit:contain!important;contain-intrinsic-size:none!important}

/* ---------- Checkout : ordre des champs ---------- */
.woocommerce-billing-fields__field-wrapper{display:flex;flex-direction:column}
.woocommerce-billing-fields__field-wrapper>.form-row{width:100%}
#billing_first_name_field{order:1}#billing_phone_field{order:2}#billing_phone_confirm_field{order:3}#billing_city_field{order:4}#billing_address_1_field{order:5}#billing_email_field{order:6}


/* Tablouk fix: bouton "Valider la commande" lisible (panier) */
.wc-block-cart__submit-button,
.wc-block-cart__submit-button:visited,
.wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button:focus,
.wc-block-cart__submit-button .wc-block-components-button__text{
  color:#fff !important;
  text-decoration:none !important;
}
.wc-block-cart__submit-button{
  background:#2B2118 !important;
  border-radius:999px !important;
  font-weight:700 !important;
}
.wc-block-cart__submit-button:hover{ background:#C8873A !important; }
