/*
Theme Name: Astra Child FilyForma
Template: astra
Version: 1.2.0
Text Domain: astra-child-filyforma
*/
:root{
  --ff-base:"Segoe UI",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",system-ui,sans-serif;
  --ff-heading:var(--ff-base);
  --bleu-nuit:#2B354F;--bleu-inter:#415371;--beige-clair:#EEECE1;--creme:#FDF6EF;--sauge:#B7D2C5;--gris-clair:#DADADA;--gris-moderne:#9CA3AF;--marron-grise:#8C7875;--marron-latte:#D7C4B7;--taupe:#A39382;
  --txt:var(--bleu-nuit);--txt-inv:#fff;
  --space-1:6px;--space-2:10px;--space-3:14px;--space-4:18px;--space-5:24px;--space-6:clamp(48px,6vw,80px);
  --radius-s:10px;--radius-m:16px;--radius-l:999px;
  --shadow-s:0 4px 12px rgba(0,0,0,.06);--shadow-m:0 8px 20px rgba(0,0,0,.08);--shadow-l:0 10px 28px rgba(0,0,0,.10);
  --container:1180px;
--vspace:clamp(36px,6vw,72px);
--nav-hover-text: var(--bleu-nuit);
--nav-hover-bg:   var(--beige-clair);
--nav-hover-bd:   rgba(0,0,0,.08);
}
html,body{font-family:var(--ff-base);color:var(--txt);background:var(--creme);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4,h5,h6{font-family:var(--ff-heading);color:var(--txt);line-height:1.2}
a{color:var(--bleu-inter);text-underline-offset:2px}
a:hover{filter:brightness(1.08)}
:focus-visible{outline:3px solid rgba(253,246,239,.9);outline-offset:3px}
.ast-container,.site-content .ast-container{max-width:var(--container)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.section-beige{background:var(--beige-clair)}
.section-sauge{background:var(--sauge)}
.section-gris{background:var(--creme);border:1px solid var(--gris-clair)}
.fily-card{background:var(--creme);border:1px solid var(--gris-clair);border-radius:var(--radius-m);padding:var(--space-5);box-shadow:0 6px 24px rgba(0,0,0,.04)}

.fily-gammes :where(.wp-block-button__link,.wp-element-button){width:auto}

.fily-hero{position:relative;padding:var(--space-6) 24px;background:linear-gradient(135deg,var(--bleu-nuit) 0%,var(--bleu-inter) 65%);color:var(--txt-inv);text-align:center;min-height:clamp(360px,55vh,600px);display:grid;place-items:center;gap:var(--space-2);background-size:200% 200%;animation:gradientShift 22s ease infinite}
.fily-hero>*{margin:0}
.fily-hero h1{color:var(--creme);text-shadow:0 1px 0 rgba(0,0,0,.18);margin-bottom:var(--space-3);font-size:clamp(28px,5vw,44px);font-weight:800}
.fily-hero p{color:var(--creme);opacity:.95;max-width:70ch;margin:0 auto var(--space-3)}
.fily-hero .wp-block-buttons{display:flex;justify-content:center;gap:var(--space-3);flex-wrap:wrap}
.fily-hero .site-logo{display:block;max-width:160px;width:28%;height:auto;margin:0 auto var(--space-4)}
.fily-hero .site-logo--corner{position:absolute;left:24px;top:18px;max-width:120px}
.fily-hero .custom-logo,.fily-hero .site-logo img{animation:logoFloat 9s ease-in-out infinite}
@keyframes gradientShift{0%{background-position:0 0}50%{background-position:100% 50%}100%{background-position:0 0}}
@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.fily-hero,.fily-hero .custom-logo{animation:none!important}}

.fily-gammes{padding:var(--space-6) 24px;background:var(--creme);text-align:center}
.fily-gammes .wp-block-columns{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:stretch;margin:0!important}
@media (max-width:900px){.fily-gammes .wp-block-columns{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.fily-gammes .wp-block-columns{grid-template-columns:1fr}}
.fily-gammes .wp-block-column{background:var(--creme)!important;border:1px solid var(--gris-clair)!important;border-radius:var(--radius-m)!important;padding:24px!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center;gap:16px!important;box-shadow:0 6px 20px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s,border-color .2s}
.fily-gammes .wp-block-column:hover{transform:translateY(-6px);box-shadow:var(--shadow-l);border-color:var(--gris-moderne)}
.fily-gammes .wp-block-image{margin:0 0 12px!important}
.fily-gammes :where(h3,.wp-block-heading){color:var(--bleu-nuit);margin:var(--space-2) 0 var(--space-1);font-weight:700;font-size:clamp(20px,2.4vw,28px);white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
.fily-gammes p{color:var(--gris-moderne);font-size:.95rem;font-style:italic;margin:0 0 12px}
.fily-gammes .wp-block-buttons{margin-top:auto;justify-content:center}

.badge{display:inline-block;padding:6px 10px;border-radius:var(--radius-l);font-size:.85rem}
.badge-sauge{background:var(--sauge)}
.badge-taupe{background:var(--taupe);color:#fff}
.site-footer{background:var(--taupe);color:#fff}
.site-footer a{color:#fff;text-decoration:underline;text-underline-offset:2px}

.woocommerce ul.products{gap:18px!important}
.woocommerce ul.products li.product{background:var(--creme);border:1px solid var(--gris-clair);border-radius:var(--radius-m);padding:16px;box-shadow:0 6px 16px rgba(0,0,0,.05);transition:transform .2s,box-shadow .2s,border-color .2s}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:var(--shadow-l);border-color:var(--gris-moderne)}
.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:contain}
.woocommerce ul.products li.product h2.woocommerce-loop-product__title{font-size:1.05rem;line-height:1.3;min-height:3.2em;margin:var(--space-2) 0}
.woocommerce ul.products li.product .price{font-weight:700;color:var(--bleu-nuit)}

.u-center{display:grid;place-items:center}.u-shadow-s{box-shadow:var(--shadow-s)}.u-shadow-m{box-shadow:var(--shadow-m)}.u-shadow-l{box-shadow:var(--shadow-l)}

.reveal{opacity:0;--tx:0;--ty:16px;--sc:1;transform:translate(var(--tx),var(--ty)) scale(var(--sc));transition:opacity .6s,transform .6s;transition-delay:var(--reveal-delay,0ms);will-change:transform,opacity}
.reveal.is-in{opacity:1;transform:none}
.reveal-left{--tx:-16px;--ty:0}.reveal-right{--tx:16px;--ty:0}.reveal-zoom{--ty:0;--sc:.96}
.delay-1{--reveal-delay:80ms}.delay-2{--reveal-delay:160ms}.delay-3{--reveal-delay:240ms}.delay-4{--reveal-delay:320ms}
@media (prefers-reduced-motion:reduce){.reveal{transition:none!important;opacity:1!important;transform:none!important}}

.section-inner{max-width:var(--container);margin-inline:auto;padding-inline:24px}
.wp-block-group.alignfull > .wp-block-group__inner-container{
  padding-left: 0;
  padding-right: 0;
}
.wp-block-group.alignfull:not(.fily-hero){
  padding: var(--vspace) 0;
}
:is(.home, .page-id-352, .page-id-471, .page-id-511)
  :is(.site-header, .main-header-bar){
  border-bottom: 0;
  box-shadow: none;
}
:is(.home, .page-id-352, .page-id-511)
  .site-header + .site-content{
  position: relative;
  margin-top: 0;
  padding-top: 0;
}

:is(.home, .page-id-352, .page-id-511)
  .site-header + .site-content::before{
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 2px;
  background: var(--bleu-nuit);
  z-index: 1;
}
:is(.home, .page-id-352, .page-id-511)
  .entry-content > .wp-block-group.alignfull:first-child{
  margin-top: -1px;
  position: relative;
  z-index: 2;
}
.ast-theme-transparent-header .site-content{
  padding-top: clamp(56px, 8vh, 92px);
}
.faq-list .wp-block-details{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;margin:12px 0;padding:0;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.faq-list .wp-block-details>summary{list-style:none;cursor:pointer;font-weight:700;padding:14px 18px;position:relative}
.faq-list .wp-block-details>summary::-webkit-details-marker{display:none}
.faq-list .wp-block-details>summary::after{content:"+";position:absolute;right:18px;top:14px;font-weight:800;opacity:.65;transition:.18s}
.faq-list .wp-block-details[open]>summary::after{content:"–";opacity:1}
.faq-list .wp-block-details>*:not(summary){padding:0 18px 16px;color:var(--gris-moderne)}
.ff-faq h2{margin:28px 0 10px}
.ff-faq h2:not(:first-child){padding-top:6px;border-top:1px solid rgba(0,0,0,.06)}
.ff-toc{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}
.ff-toc a{display:inline-block;padding:6px 10px;border:1px solid var(--gris-clair);border-radius:999px;text-decoration:none;color:var(--bleu-nuit);background:#fff;transition:transform .15s,box-shadow .15s,border-color .15s}
.ff-toc a:hover{transform:translateY(-1px);border-color:var(--bleu-nuit);box-shadow:0 6px 14px rgba(43,53,79,.1)}
.ff-quicklinks{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 18px}
.ff-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px dashed var(--bleu-nuit);border-radius:12px;color:var(--bleu-nuit);background:#fff;text-decoration:none;transition:transform .15s,box-shadow .15s,border-style .15s}
.ff-ghost:hover{background:var(--creme);border-style:solid;transform:translateY(-1px);box-shadow:0 6px 12px rgba(43,53,79,.1)}

.page-id-471 .entry-title,.page-id-471 .ast-breadcrumbs{display:none}

.ff-card{
  position:relative;background:var(--creme);border:1px solid #E8E3DE;border-radius:var(--radius-m);
  padding:16px;box-shadow:0 2px 10px rgba(0,0,0,.04);
  transition:transform .18s,box-shadow .18s,border-color .18s,background-color .18s;
}
.ff-card:hover,.ff-card:focus-within{transform:translateY(-4px);box-shadow:0 12px 26px rgba(43,53,79,.14);border-color:#d7d2cd}
.ff-card-title{margin:0 0 6px;color:var(--bleu-nuit);font-size:18px}
.ff-card-badge{display:inline-block;font-size:12px;padding:4px 8px;border-radius:999px;border:1px solid #DADADA;background:var(--creme);margin-bottom:8px}
.ff-card.is-clickable{cursor:pointer}
.ff-card.is-clickable .ff-card-link{position:absolute;inset:0;z-index:1;border-radius: var(--radius-m);}
.ff-card.is-clickable .ff-card-link:focus-visible{outline:2px solid var(--bleu-nuit);outline-offset:3px;border-radius: var(--radius-m);}

@media (hover: none) {
  .ff-card:active,
  .compare-grid .compare-card:active,
  .fily-gammes .wp-block-column:active{
    transform: translateY(-2px);
    box-shadow: var(--shadow-m);
  }
}
.ff-exemples{margin:24px 0 8px}
.ff-exemples-title{margin:0 0 14px}
.ff-exemples-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:768px){.ff-exemples-grid{grid-template-columns:repeat(3,1fr);gap:16px}}

.ff-exemples .ff-card-text{margin:0 0 10px;color:var(--gris-moderne)}
.ff-exemples .ff-card-bullets{margin:0;padding-left:18px;line-height:1.45}
.ff-exemples .ff-card-bullets li{margin:2px 0}

.pricing .wp-block-columns{gap:24px}
.pricing .pricing-card{
  background: var(--creme);border:1px solid var(--gris-clair);border-radius: var(--radius-m);
  padding:22px;box-shadow:0 6px 20px rgba(0,0,0,.06);
  transition:transform .18s,box-shadow .18s,border-color .18s
}
.pricing .pricing-card.featured{border:2px solid var(--taupe);box-shadow:0 14px 30px rgba(0,0,0,.08)}
.pricing .pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-l);border-color:var(--gris-moderne)}
.pricing .price{font-size:2rem;font-weight:800;margin:8px 0}

.fily-gammes .is-clickable{cursor:pointer}
.fily-gammes .is-clickable .ff-card-link{
  position:absolute; inset:0; z-index:1;
  border-radius: var(--radius-m);
}
@media (min-width:700px){ .fily-gammes .wp-block-column{ min-height: 360px } } 

.entry-content>*:last-child{margin-bottom:28px!important}
.site-content .ast-container{padding-bottom:22px}

.ff-exemples .ff-card{position:relative;padding:64px 18px 16px 18px} 
.ff-exemples .wp-block-image{
  position:absolute; top:12px; right:12px; margin:0!important;
  width:70px; height:70px; border:1px solid var(--gris-clair); border-radius:12px;
  background:var(--creme); display:grid; place-items:center; padding:8px;
  box-shadow:0 2px 6px rgba(0,0,0,.04);
}
.ff-exemples .wp-block-image img{width:100%;height:auto;object-fit:contain;display:block}
@media (max-width:560px){
  .ff-exemples .ff-card{padding-top:56px}
  .ff-exemples .wp-block-image{width:56px;height:56px;padding:6px;top:10px;right:10px}
}

.ff-exemples .ff-card-title{font-size:17px;margin:0 0 8px}
.ff-exemples .ff-card-text{margin:0 0 10px;color:var(--gris-moderne)}
.ff-exemples .ff-card-bullets{margin:0;padding-left:18px;line-height:1.45}
.fily-gammes .wp-block-column{padding:20px!important;gap:12px!important}
.fily-gammes .wp-block-image img{width:84px}
@media (max-width:560px){.fily-gammes .wp-block-image img{width:68px}}

.compare-grid{ gap:24px; }
.compare-grid .compare-card{
  position:relative;
  background:var(--creme);
  border:1px solid var(--gris-clair);
  border-radius:var(--radius-m);
  padding:18px 20px;
  box-shadow:var(--shadow-s);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.compare-grid .compare-card:hover,
.compare-grid .compare-card:focus-within{
  transform:translateY(-4px) rotate(.3deg);
  box-shadow:var(--shadow-l);
  border-color:var(--gris-moderne);
  background:var(--creme);
}
.compare-grid .compare-card.positive{ border-color:#cfe4d8; }
.compare-grid .compare-card.negative{ border-color:#f0d1d1; }

@media (prefers-reduced-motion:reduce){
  .compare-grid .compare-card{ transition:none !important; }
}
.fily-hero .btn-primary .wp-block-button__link,
.fily-hero .wp-element-button.btn-primary{
  background:rgba(255,255,255,.12);
  color:#fff;
  border:1px solid rgba(255,255,255,.38);
 backdrop-filter:saturate(120%) blur(2px);
-webkit-backdrop-filter:saturate(120%) blur(2px); 
}
.fily-hero .btn-primary .wp-block-button__link:hover,
.fily-hero .wp-element-button.btn-primary:hover{
  background:rgba(255,255,255,.18);
  box-shadow:0 10px 22px rgba(0,0,0,.18);
}
.fily-hero .btn-outline-taupe .wp-block-button__link,
.fily-hero .wp-element-button.btn-outline-taupe{
  border-color:rgba(255,255,255,.70);
  color:#fff;
  background:transparent;
}
.fily-hero .btn-outline-taupe .wp-block-button__link:hover,
.fily-hero .wp-element-button.btn-outline-taupe:hover{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.85);
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}
.ff-ico-corner{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center}
.ff-ico-mini{width:28px;height:28px;border-radius:8px;border:1px solid var(--gris-clair); background:var(--creme);color:var(--bleu-nuit);opacity:.95;transition:transform .18s,opacity .18s,box-shadow .18s}
.compare-card:hover .ff-ico-mini{transform:translate(1px,-1px) rotate(3deg);opacity:1;box-shadow:0 6px 14px rgba(43,53,79,.12)}
.ff-ico-positive{background:#EAF6EF;border-color:#d7eadf;color:#1f5132}
.ff-ico-negative{background:#FBE9E9;border-color:#f2d2d2;color:#7a1a1a}
.how-cards{ background:var(--beige-clair); padding: clamp(28px,4vw,44px) 0; }
.how-cards .wp-block-columns{ gap:24px; align-items:stretch; }
.how-cards .wp-block-column{
  position:relative;
  background:var(--creme);
  border:1px solid var(--gris-clair);
  border-radius:var(--radius-m);
  padding:18px 20px;
  text-align:center;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.how-cards .wp-block-column:hover{
  transform: translateY(-4px);
  box-shadow: var(--shadow-l);
  border-color: var(--gris-moderne);
}
.how-cards .wp-block-image{ margin: 4px 0 10px !important; }
.how-cards .wp-block-image img{ width:48px; height:auto; display:block; margin:0 auto; opacity:.95; }
.how-cards h3, .how-cards .wp-block-heading{ margin:6px 0 2px; font-weight:800; }
.how-cards p{ margin:0; color:var(--gris-moderne); }
.ff-how .ff-card h3{ margin: 6px 0 4px; }
.ff-how .ff-card p{ margin: 0; color: var(--gris-moderne); }

.main-header-menu > .menu-item > a{ padding:10px 12px; font-weight:500; }
.main-header-menu .menu-item.ff-cta > a{
  background:#2B354F; color:#fff; border-radius:10px; padding:10px 14px;
  border:1px solid transparent; box-shadow:0 2px 10px rgba(43,53,79,.08);
  transition:transform .15s, box-shadow .15s, filter .15s;
}
.main-header-menu .menu-item.ff-cta > a:hover{
  filter:brightness(1.05); box-shadow:0 10px 22px rgba(43,53,79,.18);
}

.ff-chip--shop .menu-link,
.ff-chip--subs .menu-link{
  background: var(--beige-clair);
  border:1px solid var(--marron-latte);
  color: var(--bleu-nuit);
}
.ff-chip--club .menu-link{
  background:var(--creme);
  border:1px solid #fff;
  color: var(--bleu-nuit);
}
.menu-item.ff-chip.current-menu-item .menu-link{
  background:#fff !important;
  border-color:#fff !important;
}
.menu-item.ff-chip .menu-link:hover,
.menu-item.ff-chip .menu-link:focus{
  transform: translateY(-1px);
  box-shadow:0 4px 12px rgba(0,0,0,.10);
  filter:brightness(1.02);
}
.ast-mobile-header-wrap .main-header-menu .menu-item.ff-chip .menu-link{
  display:inline-flex !important;
  line-height:1 !important;
  padding:8px 12px !important;
  height:auto !important;
  margin:4px 0 !important;
 border-radius:var(--radius-l);
}
.ast-desktop .main-header-menu > .menu-item.ff-chip{ margin: 0 4px !important; }
.ast-desktop .main-header-menu .menu-item.ff-chip .menu-link{ padding: 5px 12px !important; height: 28px !important; }
.main-header-menu > .menu-item.ff-minichip .menu-link{
  padding: 4px 8px;
  border-radius: 999px;
  line-height: 1;
  border: 1px solid transparent;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
@media (max-width: 921px){
  .main-header-menu > .menu-item.ff-minichip .menu-link{
    padding: 6px 12px;
  }
}
.main-header-menu > .menu-item.ff-minichip .menu-link:hover,
.main-header-menu > .menu-item.ff-minichip .menu-link:focus{
  color: var(--nav-hover-text) !important;
  background: var(--nav-hover-bg);
  border-color: var(--nav-hover-bd);
}
@media (max-width: 921px){
  .ast-mobile-header .main-header-menu .menu-link{ font-size: 16px; }
}
.section-inner article p{ line-height:1.7; }
.section-inner article img{ max-width:100%; height:auto; border-radius:var(--radius-s); }
.section-inner article blockquote{
  border-left:4px solid var(--marron-latte); padding:10px 14px; background:var(--beige-clair);
  border-radius:var(--radius-s); color:var(--bleu-nuit);
}
.section-inner .u-muted{ color: var(--gris-moderne); font-size:.92rem; }

/* ====== BLOC FINAL A CONSERVER (BOUTONS + HEADER) ====== */
.trademark-note .tm{
  font-size: .7em;
  vertical-align: super;
  margin-left: 2px;
  letter-spacing: 0;
}
:where(
  .btn,
  .btn-primary,
  .btn-outline,
  .wp-block-button__link,
  .wp-element-button,
  .ast-button,
  .button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
){
  border-radius: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  padding: 12px 18px !important;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease, background-color .14s ease, border-color .14s ease;
  box-shadow: none !important;
}

:where(
  .btn,
  .btn-primary,
  .btn-outline,
  .wp-block-button__link,
  .wp-element-button,
  .ast-button,
  .button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
):hover,
:where(
  .btn,
  .btn-primary,
  .btn-outline,
  .wp-block-button__link,
  .wp-element-button,
  .ast-button,
  .button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
):focus-visible{
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(43,53,79,.12) !important;
  filter: brightness(1.04);
}

:where(
  .btn-primary,
  .wp-block-button__link.btn-primary,
  .wp-element-button.btn-primary,
  .ast-button.btn-primary,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
){
  background: var(--bleu-inter) !important;
  color: var(--creme) !important;
  border: 1px solid transparent !important;
}

:where(
  .btn-outline,
  .btn-outline-taupe,
  .wp-block-button__link.btn-outline-taupe,
  .wp-element-button.btn-outline-taupe
){
  background: transparent !important;
  color: var(--taupe) !important;
  border: 2px solid var(--taupe) !important;
}

:where(
  .btn-outline,
  .btn-outline-taupe,
  .wp-block-button__link.btn-outline-taupe,
  .wp-element-button.btn-outline-taupe
):hover{
  background: var(--taupe) !important;
  color: #fff !important;
}
	.main-header-menu > .menu-item > a{
  border-radius: 10px !important;
}
.ast-desktop .main-header-menu > .menu-item > .menu-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 12px;
  border-radius:999px;              
  transition:background-color .18s ease, color .18s ease,
             box-shadow .18s ease, transform .12s ease;
}
.ast-desktop .main-header-menu > .menu-item > .menu-link:hover,
.ast-desktop .main-header-menu > .menu-item > .menu-link:focus{
  background:var(--beige-clair);
  color:var(--bleu-nuit);
  box-shadow:0 4px 12px rgba(0,0,0,.10);
  transform:translateY(-1px);
}
.ast-desktop .main-header-menu > .menu-item.ff-chip > .menu-link{
  padding:6px 14px;
  font-weight:700;
  background:var(--beige-clair);
  border:1px solid var(--marron-latte);
}
.ast-desktop .main-header-menu > .menu-item.ff-chip > .menu-link:hover,
.ast-desktop .main-header-menu > .menu-item.ff-chip > .menu-link:focus{
  background:var(--bleu-inter);
  color:#fff;
}
@media (hover: none) {
  :where(
    .btn,
    .btn-primary,
    .btn-outline,
    .wp-block-button__link,
    .wp-element-button,
    .ast-button,
    .button,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit
  ):active{
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(43,53,79,.12) !important;
    filter: brightness(1.03);
  }
}
.main-header-menu .menu-item.menu-item-cart a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px !important;
  border-radius:999px;
  background:var(--creme);
  border:1px solid var(--gris-clair);
}
.main-header-menu .menu-item.menu-item-cart a:hover,
.main-header-menu .menu-item.menu-item-cart a:focus{
  background:var(--beige-clair);
  border-color:var(--marron-latte);
}
.site-header .wpmenucartli > a,
.ast-header-menu .wpmenucartli > a,
.main-header-menu .wpmenucartli > a{
  color: var(--creme) !important;              /* icône + texte */
  opacity: 1 !important;
}
.site-header .wpmenucartli > a i,
.site-header .wpmenucartli > a svg{
  color: var(--creme) !important;
  fill: var(--creme) !important;
}
.site-header .wpmenucart-contents .cartcontents,
.site-header .wpmenucartli .cartcontents{
  background: var(--creme) !important;
  color: var(--bleu-nuit) !important;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 999px;
  padding: 2px 6px;
  font-weight: 800;
  font-size: 12px;
  line-height: 1;
  margin-left: 6px;
}
.site-header .wpmenucartli{
  margin-left: 6px;
}
.site-header .wpmenucartli > a{
  display:inline-flex !important;
  align-items:center;
  gap:6px;
  padding:6px 10px !important;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  background: rgba(255,255,255,.06);
}
.site-header .wpmenucartli > a:hover{
  background: rgba(255,255,255,.12);
}
.ff-badge-new{
  position:absolute;
  top:10px;
  right:10px;

  background:var(--taupe);
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;

  padding:4px 8px;
  border-radius:999px;
  box-shadow:0 2px 6px rgba(0,0,0,.10);

  z-index:2;              /* IMPORTANT > .ff-card-link (z-index:1) */
  pointer-events:none;    /* laisse le clic passer à la carte */
}
.ff-card{
  position: relative;
}

.ff-card .ff-badge{
  position: absolute;
  top: 10px;
  right: 10px;
  background: #EACDA3;       
  color: #2B354F;            
  font-size: 0.7rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.ff-trust-band{
  display:grid;
  grid-template-columns: repeat(4,1fr);
  gap:12px;
  background:#EEECE1;
  border:1px solid #E6DED2;
  border-radius:14px;
  padding:14px 16px;
  margin:24px auto 10px;
  max-width:1100px;
  text-align:center;
  color:#2B354F;
  font-size:.95rem;
}
.ff-trust-item strong{font-weight:700;}
.ff-trust-item span{font-size:.85rem;opacity:.85;}

@media(max-width:900px){
  .ff-trust-band{grid-template-columns: repeat(2,1fr);}
}
@media(max-width:520px){
  .ff-trust-band{grid-template-columns:1fr;}
}
.btn-filyclub-mini a,
.btn-filyclub-mini .wp-block-button__link {
  font-size: 14px !important;
  padding: 7px 14px !important;
  border-width: 1px !important;
  opacity: 0.9;
}

.btn-filyclub-mini a:hover,
.btn-filyclub-mini .wp-block-button__link:hover {
  opacity: 1;
}
/* Accordéon FAQ FilyForma (fiche produit WooCommerce) */
.woocommerce div.product details.ff-acc{
  background:#FDF6EF;
  border:1px solid rgba(43,53,79,.12);
  border-radius:12px;
  padding:10px 12px;
  margin:10px 0;
}
.woocommerce div.product details.ff-acc > summary{
  cursor:pointer;
  font-weight:600;
  color:#2B354F;
  list-style:none;
}
.woocommerce div.product details.ff-acc > summary::-webkit-details-marker{display:none;}
.woocommerce div.product details.ff-acc > summary::after{
  content:"+";
  float:right;
  opacity:.7;
  font-weight:700;
}
.woocommerce div.product details.ff-acc[open] > summary::after{content:"–";}
.woocommerce div.product .ff-acc__content{
  margin-top:10px;
  color:rgba(43,53,79,.9);
  line-height:1.55;
}