/*
Theme Name: Centrifugeuse Labo
Description: Thème block custom pour la qualification technique des besoins en centrifugation.
Version: 0.2.0
Requires PHP: 8.2
Text Domain: centrifugeuse-labo
*/
:root{--cl-ink:#171410;--cl-paper:#f4f1ea;--cl-accent:#c2410c;--cl-line:#e4ddd2}
*{box-sizing:border-box}body{background:var(--cl-paper);color:var(--cl-ink);font-family:system-ui,sans-serif;font-size:1rem;line-height:1.7;margin:0}a{color:#005b61}a:focus-visible,button:focus-visible{outline:3px solid #d36b00;outline-offset:3px}.cl-shell{margin:auto;max-width:72rem;padding:1rem}main.cl-shell{max-width:72rem;padding-block:2rem}.cl-header{min-height:4.5rem}.cl-brand{font-size:1.1rem;font-weight:750;margin:0}.cl-brand a{color:var(--cl-ink);text-decoration:none}.cl-hero{background:#fff7f2;border-left:.5rem solid var(--cl-accent);margin-bottom:1.25rem;padding:clamp(1.25rem,4vw,3rem)}.cl-hero h1{font-size:clamp(2rem,5vw,3.25rem);line-height:1.14;margin:0}.cartes-familles{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.cl-card,.cl-note{background:#fff;border:1px solid var(--cl-line);padding:1rem}.cl-status{font-weight:700}.cl-editorial-media{margin-block:2rem}.cl-editorial-media img{border:1px solid var(--cl-line);display:block;height:auto;width:100%}.cl-media-mobile{display:none!important}.table-responsive{border-right:.25rem solid var(--cl-accent);max-width:100%;overflow-x:auto}.table-responsive table{border-collapse:collapse;min-width:42rem;width:100%}th,td{border:1px solid var(--cl-line);padding:.75rem;text-align:left}.wp-block-button__link{background:var(--cl-accent);color:#fff}.cl-closed{background:#fff4dc;border:2px solid #8a5700;padding:1rem}
@media(max-width:48rem){.cartes-familles{grid-template-columns:1fr}.cl-media-desktop{display:none!important}.cl-media-mobile{display:block!important}.table-responsive::before{background:#fff7f2;content:"Tableau défilable horizontalement";display:block;font-size:.875rem;font-weight:700;padding:.4rem .65rem}.cl-hero h1{font-size:clamp(1.9rem,9vw,2.55rem)}main.cl-shell{padding-top:1rem}}
@media (max-width: 320px){.cl-shell{padding:.75rem}.cl-hero{padding:1rem}.wp-block-button__link{display:block;text-align:center;width:100%}}

.cl-front-page{max-width:72rem}.cl-lead{font-size:clamp(1.125rem,2.5vw,1.45rem);max-width:52rem}.cl-home-grid,.cl-selection,.cl-choice-help,.cl-facts,.cl-guides,.cl-final-cta{margin-block:clamp(1.5rem,4vw,3rem)}.cl-card-grid{align-items:stretch}.cl-card-grid .wp-block-column,.cl-card{background:#fff;border:1px solid var(--cl-line);border-radius:.75rem;padding:1rem}.cl-card h3{margin-top:0}.cl-planned-link{font-weight:700}.cl-checklist li{margin-block:.45rem}.cl-facts,.cl-final-cta{background:#fff;border:1px solid var(--cl-line);border-radius:1rem;padding:clamp(1rem,3vw,2rem)}.cl-guides .wp-block-post-title{font-size:1.15rem}.wp-block-navigation a:focus-visible,.cl-planned-link:focus-visible,.wp-block-button__link:focus-visible{outline:3px solid #d36b00;outline-offset:4px}
@media (min-width: 72rem){.cl-front-page{padding-inline:1.25rem}.cl-home-hero{padding-block:4rem}}
@media (max-width: 40rem){.cl-card-grid{gap:.75rem}.cl-home-grid,.cl-selection,.cl-choice-help,.cl-facts,.cl-guides,.cl-final-cta{margin-block:1.25rem}.cl-front-page{padding-inline:.75rem}}

/* Blog archive and article */
.cl-blog-archive{max-width:72rem}.cl-blog-intro{background:#fff7f2;border-left:.5rem solid var(--cl-accent);padding:clamp(1.25rem,4vw,3rem)}.cl-blog-intro h1,.cl-article-title{font-size:clamp(2rem,5vw,3.25rem);line-height:1.14}.cl-blog-tools{align-items:end;display:grid;gap:1rem;grid-template-columns:minmax(12rem,1fr) minmax(16rem,1fr);margin-block:2rem}.cl-blog-tools h2{grid-column:1/-1}.cl-blog-categories{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.cl-blog-categories a{background:#fff;border:1px solid var(--cl-line);border-radius:999px;display:inline-block;padding:.35rem .75rem}.cl-blog-search .wp-block-search__inside-wrapper{min-width:0}.cl-blog-grid .wp-block-post-template{align-items:stretch;gap:1rem}.cl-blog-card{background:#fff;border:1px solid var(--cl-line);border-radius:.75rem;height:100%;min-width:0;overflow:hidden;padding:1rem}.cl-blog-card .wp-block-post-featured-image{margin:-1rem -1rem 1rem}.cl-blog-card .wp-block-post-featured-image img{height:auto;width:100%}.cl-blog-card .wp-block-post-title{font-size:1.3rem;line-height:1.3}.cl-blog-grid .wp-block-query-pagination{margin-block:2rem}.cl-blog-cta,.cl-article-cta{background:#10242c;border-radius:1rem;color:#fff;margin-block:clamp(2rem,5vw,4rem);padding:clamp(1.25rem,4vw,2.5rem)}.cl-blog-cta a:not(.wp-block-button__link),.cl-article-cta a:not(.wp-block-button__link){color:#fff}.cl-article{max-width:72rem}.cl-article-header{max-width:54rem;padding-block:clamp(1.5rem,4vw,3rem)}.cl-article-lead{font-size:clamp(1.125rem,2.5vw,1.4rem);max-width:48rem}.cl-article-meta{color:#38535b;font-size:.95rem}.cl-article-layout{align-items:flex-start;gap:clamp(1.5rem,4vw,3.5rem)}.cl-article-main{min-width:0}.cl-article-toc{background:#fff;border:1px solid var(--cl-line);border-radius:.75rem;max-height:calc(100vh - 2rem);overflow:auto;padding:1rem;position:sticky;top:1rem}.cl-article-toc ul{margin-bottom:0;padding-left:1.2rem}.cl-article-toc a{display:inline-block;padding-block:.25rem}.cl-article-body{font-size:1.0625rem;min-width:0}.cl-article-body :is(h2,h3){scroll-margin-top:2rem}.cl-article-body .wp-block-table{max-width:100%;overflow-x:auto}.cl-article-body .wp-block-table table{min-width:38rem}.cl-callout,.cl-article-body .is-style-cl-callout{background:#e7f3f3;border-left:.35rem solid var(--cl-accent);padding:1rem}.cl-faq,.cl-article-body details{background:#fff;border:1px solid var(--cl-line);border-radius:.5rem;margin-block:.75rem;padding:.75rem 1rem}.cl-faq summary,.cl-article-body details summary{cursor:pointer;font-weight:700}.cl-related-products,.cl-related-articles{border-top:1px solid var(--cl-line);margin-top:2.5rem;padding-top:1.5rem}.cl-related-articles .wp-block-post-template{gap:1rem}.cl-related-articles .wp-block-post{background:#fff;border:1px solid var(--cl-line);border-radius:.75rem;min-width:0;padding:1rem}
@media (max-width: 48rem){.cl-blog-tools{display:block}.cl-blog-tools>*+*{margin-top:1rem}.cl-blog-grid .wp-block-post-template,.cl-related-articles .wp-block-post-template{display:grid;grid-template-columns:1fr}.cl-article-layout{display:block}.cl-article-sidebar{width:auto!important}.cl-article-toc{max-height:none;position:static}.cl-article-body .wp-block-table::before{background:#fff7f2;content:"Tableau défilable horizontalement";display:block;font-size:.875rem;font-weight:700;padding:.4rem .65rem}}

.cl-hero{background:#fff7f2}
.cl-product-grid{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-block:1.5rem}
.cl-product{background:#fff;border:1px solid var(--cl-line);border-radius:10px;display:flex;flex-direction:column;gap:.55rem;padding:12px}
.cl-product-media{aspect-ratio:4/3;background:#f7f4ef;display:block;overflow:hidden;position:relative}
.cl-product-media img{height:100%;inset:0;object-fit:contain;position:absolute;width:100%}
.cl-product-brand{color:#6b645c;font-size:.75rem;letter-spacing:.04em;margin:0;text-transform:uppercase}
.cl-product h3{font-size:1rem;line-height:1.3;margin:0}
.cl-product ul{font-size:.9rem;margin:0;padding-left:1.1rem}
.cl-product-sur{color:#6b645c;font-size:.85rem;margin:0}
.cl-product-cta{background:var(--cl-accent);border-radius:6px;color:#fff;display:inline-block;font-size:.9rem;margin-top:auto;padding:.55rem .8rem;text-align:center;text-decoration:none}
.cl-family-links{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-block:1.5rem}
.cl-family-links a{background:#fff;border:1px solid var(--cl-line);border-radius:10px;display:flex;flex-direction:column;gap:.35rem;padding:1rem;text-decoration:none}
.cl-family-links span{color:#6b645c}
@media(max-width:900px){.cl-product-grid,.cl-family-links{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cl-product-grid,.cl-family-links{grid-template-columns:1fr}}

.cl-devis{max-width:52rem}
.cl-quote-form{background:#fff;border:1px solid var(--cl-line);border-radius:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:1rem;padding:16px}
.cl-field{margin:0}
.cl-field label{display:flex;flex-direction:column;font-size:.92rem;gap:4px}
.cl-field input,.cl-field select,.cl-field textarea{border:1px solid var(--cl-line);border-radius:6px;font:inherit;padding:8px 10px;width:100%}
.cl-field-usage,.cl-field-comment,.cl-consent,.cl-quote-form button{grid-column:1 / -1}
.cl-quote-form button{background:var(--cl-accent);border:0;border-radius:6px;color:#fff;cursor:pointer;font:inherit;padding:12px 16px}
.cl-honeypot{left:-9999px;position:absolute}
.cl-fiche{display:grid;gap:24px;grid-template-columns:minmax(220px,360px) 1fr}
.cl-fiche img{background:#f7f4ef;border:1px solid var(--cl-line);border-radius:12px;height:auto;width:100%}
.cl-price{font-size:1.35rem;margin:.2rem 0}
.cl-fiche table{border-collapse:collapse;width:100%}
.cl-fiche th,.cl-fiche td{border-bottom:1px solid var(--cl-line);padding:.45rem 0;text-align:left}
.cl-procon{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.cl-procon div{background:#fff;border:1px solid var(--cl-line);border-radius:10px;padding:12px}
@media(max-width:700px){.cl-quote-form,.cl-fiche,.cl-procon{grid-template-columns:1fr}}

.cl-shell{padding-inline:1.5rem}
.cl-header{align-items:center;gap:1rem;padding-block:1rem;padding-inline:1.5rem}
.cl-header .wp-block-navigation{margin-left:auto}
.cl-header .wp-block-navigation-item__content{padding:.45rem .75rem}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding:1.25rem}
.cl-hero.cl-home-hero{align-items:center;background:#fff;border:1px solid var(--cl-line);border-left:.5rem solid var(--cl-accent);border-radius:16px;display:grid;gap:1.5rem;grid-template-columns:1.1fr .9fr;overflow:hidden;padding:0}
.cl-hero-copy{padding:clamp(1.25rem,3vw,2.5rem)}
.cl-hero-photo{margin:0}
.cl-hero-photo img{border:0;border-radius:0;display:block;height:100%;max-height:420px;object-fit:cover;width:100%}
.cl-hero-photo figcaption,.cl-cat-hero figcaption{color:#6b645c;font-size:.75rem;margin:.35rem 0 0}
.cl-kicker{color:#9a3412;font-size:.78rem;font-weight:700;letter-spacing:.04em;margin:0 0 .4rem;text-transform:uppercase}
.cartes-familles{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}
.cl-card{border-radius:12px;color:inherit;display:block;text-decoration:none}
.cl-card h2{font-size:1.15rem;margin:0 0 .35rem}
.cl-choose{background:#fff;border:1px solid var(--cl-line);border-radius:12px;margin-top:1.5rem;padding:1.25rem}
.cl-cat-hero{align-items:center;background:#fff;border:1px solid var(--cl-line);border-radius:16px;display:grid;gap:1.25rem;grid-template-columns:1.3fr .7fr;margin-bottom:1.25rem;padding:1.25rem}
.cl-cat-hero img{border-radius:12px;display:block;height:220px;object-fit:cover;width:100%}
.cl-filters{align-items:end;background:#fff;border:1px solid var(--cl-line);border-radius:12px;display:grid;gap:12px;grid-template-columns:1.4fr .8fr .8fr auto;margin-bottom:1rem;padding:12px}
.cl-filters label{display:flex;flex-direction:column;font-size:.85rem;gap:4px}
.cl-filters input,.cl-filters select{border:1px solid var(--cl-line);border-radius:8px;font:inherit;padding:8px 10px}
.cl-filter-count{margin:0;font-weight:700}
.cl-btn{background:var(--cl-accent);border-radius:8px;color:#fff;display:inline-block;padding:.6rem .9rem;text-align:center;text-decoration:none}
.cl-btn-ghost{background:#fff;border:1px solid var(--cl-line);color:var(--cl-ink)}
.cl-card-actions,.cl-fiche-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.cl-price{font-weight:750}
.cl-price-note{color:#6b645c;font-size:.8rem;margin:0}
.cl-fiche{display:block}
.cl-fiche-layout{align-items:start;display:grid;gap:1.5rem;grid-template-columns:minmax(240px,420px) 1fr}
.cl-fiche-media{margin:0}
.cl-fiche-media img{background:#fff;object-fit:contain}
.cl-points{margin:.4rem 0 1rem;padding-left:1.1rem}
.cl-specs{margin-top:2rem}
.cl-bottom-cta{background:#171410;border-radius:16px;color:#fff;margin-top:2rem;padding:1.5rem}
.cl-bottom-cta h2,.cl-bottom-cta p{color:#fff}
.cl-bottom-cta .cl-btn{background:#fff;color:#171410}
.cl-crumb{color:#6b645c;font-size:.85rem;margin-bottom:1rem}
.cl-crumb a{color:#005b61}
@media(max-width:900px){.cartes-familles,.cl-hero.cl-home-hero,.cl-cat-hero,.cl-filters,.cl-fiche-layout{grid-template-columns:1fr}.cl-header{padding-inline:1.15rem}.cl-shell{padding-inline:1.15rem}}
@media(max-width:782px){
.wp-block-navigation__responsive-container-open{padding:.85rem}
.wp-block-navigation__responsive-container-open svg{height:32px;width:32px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:stretch;justify-content:flex-start;width:100%}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding:4.5rem 1.35rem 2rem}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:block;font-size:1.45rem;font-weight:650;justify-content:flex-start;line-height:1.25;padding:1.15rem .2rem;text-align:left;width:100%}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{border-bottom:1px solid var(--cl-line)}
.wp-block-navigation__responsive-container-close{height:48px;width:48px}
}
.cl-band{margin-top:2.5rem}
.cl-band h2,.cl-choose h2,.cl-faq h2,.cl-contact h2{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.2;margin:0 0 .6rem}
.cl-family-card img{background:#f7f4ef;border-radius:10px;display:block;height:160px;object-fit:contain;width:100%}
.cl-family-card span{color:#9a3412;font-weight:700}
.cl-needs{display:grid;gap:10px;margin:1rem 0 0;padding:0;list-style:none}
.cl-needs li{background:#fff;border:1px solid var(--cl-line);border-radius:12px;padding:1rem 1.1rem}
.cl-faq details{background:#fff;border:1px solid var(--cl-line);border-radius:12px;margin-top:.7rem;padding:1rem 1.1rem}
.cl-faq summary{cursor:pointer;font-weight:700}
.cl-contact{background:#fff;border:1px solid var(--cl-line);border-radius:16px;margin-top:1.5rem;padding:1.25rem}



/* devis button forward, form without holes */
.cl-honeypot { display: none !important; }
.cl-quote-form { grid-template-columns: 1fr; }
.cl-field label { font-weight: 650; }
.cl-header a[href*="devis"] {
  background: var(--cl-accent);
  color: #fff !important;
  border-radius: 6px;
  padding: 8px 14px;
  font-weight: 700;
  text-decoration: none;
}
