.cart-drawer .button:hover{color:#010101!important;background:#fafafa!important}.cart-drawer .button{background:#CAF760!important;color:#010101!important}.la-section-du-texte p{text-align:center}.comparison-grid-template--20813320552701__ss_comparison_table_12_ay9QEV>.comparison-item-template--20813320552701__ss_comparison_table_12_ay9QEV:first-child{text-align:left!important}.titre-produit{font-weight:400!important}.cart-line-price--compare{text-decoration:line-through;opacity:0.7;margin-right:0.25rem}@media(max-width:768px){.section-top-ant{padding-left:30px!important;padding-right:30px!important;padding-top:60px!important;padding-bottom:60px!important}.ritual-button{padding:10px 24px!important}.hero-glow__button{padding:10px 24px!important}.ritual-carousel__cta a{padding:10px 24px!important}.price-list--product{justify-content:start!important}.cta-bar__btn{padding:10px 24px!important}}@media(min-width:968px){.section-top-ant{padding:100px}}.cart-line-price--final{font-weight:600}.cart-checkout-compare{margin-left:0.35rem;text-decoration:line-through;opacity:0.7;font-weight:400;font-size:0.9em}@media(max-width:768px){.bouton-personnalise{display:none!important}}.conteneur-large{max-width:950px;margin-left:auto;margin-right:auto}.link-faded{color:rgb(var(--text-color)/ .9)}.swiper-pagination-bullet{padding:8px!important;background-clip:content-box!important;box-sizing:content-box!important;margin:0!important}.product-card .product-title__main{display:block;font-weight:700}.product-card .product-title__sub{display:block;font-size:.85em;font-weight:400;line-height:1.35;margin-top:1px}.product-card .product-title:has(.product-title__sub){--line-clamp-count:3}[id*="__rich_text"] .prose{max-width:65ch;margin-inline:auto}.ss-text-wrapper .ss-content{max-width:65ch;margin-inline:auto}[class*="before-after-text-"]{max-width:65ch;margin-inline:auto}.la-section-du-texte{max-width:65ch;margin-inline:auto}[id*="ss_feature_15"] [class*="feature-text-"] em{font-style:normal;color:#5a5a5a}[id*="ss_feature_15"] [class*="feature-text-"] p+p{margin-top:14px}@media(max-width:768px){[id*="ss_hero_26"] [class*="hero-icons-wrap-"] [class*="hero-icons-"]{gap:12px !important;justify-content:center !important}}.testimonials-slide-text-btn{padding:6px 10px !important;margin:4px 0 0 -10px !important;min-height:24px}@media(max-width:768px){section[class*="ss-video-carousel-"]{padding:30px 24px !important}}@media(max-width:699px){.footer__block--links a{white-space:normal !important;overflow-wrap:anywhere;display:inline-block;padding:4px 6px}}@media(min-width:1024px){[id*="ss_feature_15"] [class*="feature-btn-prev-"]{left:-56px !important}[id*="ss_feature_15"] [class*="feature-btn-next-"]{right:-56px !important}}[class*="before-after-title-"],[class*="before-after-title-"] *{font-weight:800}[id*="ss_before_after"] [class*="before-after-item-title-"]{font-weight:800}[id*="ss_feature_47"] [class*="feature-title-"]{font-weight:800}[id*="image_hauteur_ajustable"] h2{font-weight:800}[id*="ss_feature_15"] [class*="feature-thumbs-slide-"].swiper-slide-thumb-active [class*="feature-thumbs-icon-"] img{filter:invert(1) brightness(1.6)}@media screen and (min-width:768px) and (max-width:999px){.footer__block-list{grid-template-columns:repeat(3,minmax(0,1fr)) !important}}@media screen and (min-width:1000px){.footer__block-list{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr)) !important;grid-template-areas:"ftext fshop fhelp fpolicies" "fnews fshop fhelp fpolicies" !important;justify-content:stretch !important}}@media (max-width:749px){.footer__aside .payment-methods{flex-wrap:wrap !important}}@media (max-width:999px){.header__primary-nav button[aria-controls="sidebar-menu"]{padding:11px;margin:-11px}}
/* FROSTEAM CTA SYSTEM v2.6 (2026-09-26, V39) - design system CTA + micro-feedback. CSS seul, 0 JS, 0 requete.
   Familles : PM (primary M, defaut sections) | PL (ATC/checkout) | PS (header, sticky, tableau, newsletter) | SEC (outline) | TXT | ICON | TABS.
   !important : UNIQUEMENT la ou un test a montre qu'une regle de section (#id ou !important) l'emporte : taille, graisse, tracking, padding, radius, display, transition, opacite hover, hauteur (PL/PS)
   car les sections custom utilisent des selecteurs #shopify-section-... et custom_css impose deja des !important. Jamais sur button/a generiques.
   Reglages Prestige (button_border_radius / button_letter_spacing) NON modifies : le radius global touche aussi Shop Pay, .input-prefix et les tooltips.
   Hero accueil : hover = inversion configuree dans la section (aucune couleur en dur).
   Exceptions voulues : newsletter (radius 5px concentrique au champ 8px), quick-add carre Prestige, play video 72px, Shop Now compact (hover d'origine),
   header sans deplacement, flip cards, animations propres aux sliders. Mouvement desactive si prefers-reduced-motion:reduce.
   Mobile : tracking .05em / padding 22px (<=359px : .03em / 18px) pour que les libelles FR/ES tiennent sur une ligne ; au-dela, retour equilibre (text-wrap:balance). */
:root{--fx-e:cubic-bezier(.2,.7,.2,1);--fx-d:.18s;--cta-ff:var(--text-font-family);--pm-h:48px;--pm-fs:13px;--pm-px:32px;--pm-ls:.08em;--pl-h:52px;--pl-fs:15px;--pl-ls:.1em;--ps-h:40px;--ps-fs:12px;--ps-px:22px;--ps-ls:.06em}
@media (max-width:767px){:root{--pm-fs:12px;--pm-px:22px;--pm-ls:.05em;--ps-h:44px;--ps-px:20px}}
@media (max-width:359px){:root{--pm-px:18px;--pm-ls:.03em}}
/* ---- Tokens communs (typo + forme) ---- */
:is(.button:not(.button--outline,.button--sm,.buy-buttons .button,.cart-drawer .button),[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,.fa-sec__fallback-btn,.button--outline:not(.cart-drawer .button)){font-family:var(--cta-ff);font-size:var(--pm-fs)!important;font-weight:600!important;letter-spacing:var(--pm-ls)!important;text-transform:uppercase;line-height:1.2;min-height:var(--pm-h);height:auto;padding:8px var(--pm-px)!important;border-radius:999px!important;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;text-wrap:balance}
:is(.buy-buttons .button:not(.product-sticky-bar .button),.cart-drawer__footer .button,.cart-recap .button.button,.product-atc__btn){font-family:var(--cta-ff);font-size:var(--pl-fs)!important;font-weight:600!important;letter-spacing:var(--pl-ls)!important;text-transform:uppercase;line-height:1.2;min-height:var(--pl-h);height:auto!important;padding:8px 28px!important;border-radius:999px!important;align-items:center;justify-content:center;box-sizing:border-box}
:is(.product-sticky-bar .button,.bouton-personnalise .btn,[class*="ai-ritual-compare-shop-btn-"],.ft2__submit,.button--sm){font-family:var(--cta-ff);font-size:var(--ps-fs)!important;font-weight:600!important;letter-spacing:var(--ps-ls)!important;text-transform:uppercase;line-height:1.2;min-height:var(--ps-h);height:auto!important;padding:6px var(--ps-px)!important;border-radius:999px!important;align-items:center;justify-content:center;box-sizing:border-box}
.ft2__submit.ft2__submit.ft2__submit{border-radius:5px!important}
/* ATC + checkout : noir/blanc aux couleurs du theme (remplace le lime force par .buy-buttons button{...!important} et .cart-drawer .button{...!important}) */
:is(.buy-buttons .button:not(.product-sticky-bar .button),.cart-drawer .cart-drawer__footer .button,.cart-recap .button.button,.empty-state .button.button){background:rgb(var(--text-color))!important;border-color:rgb(var(--text-color))!important;color:rgb(var(--background))!important}
/* header BUY IT NOW (.bouton-personnalise) : la section header le peint lime dans le <head>, le noir n'arrive qu'en fin de page (style inline) -> flash lime au chargement. Fixe le noir des le premier rendu, couleurs du theme. */
.bouton-personnalise .btn.btn{background-color:rgb(var(--text-color))!important;border-color:rgb(var(--text-color));color:rgb(var(--background))!important}
/* sticky ATC : theme.s.min.css force 10px !important via .product-sticky-bar .buy-buttons button (0,2,1) */
.product-sticky-bar .buy-buttons button.button{font-size:var(--ps-fs)!important;background:rgb(var(--button-background))!important;border-color:rgb(var(--button-background))!important;color:rgb(var(--button-text-color))!important}
@media (max-width:767px){[class*="ai-ritual-compare-shop-btn-"]{padding-inline:14px!important}}
/* display : inline-block/inline -> inline-flex, block -> flex (centrage vertical ; meme comportement exterieur) */
:is(.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="countdown-banner-button-template"],.faq-btn,.hr__btn,.cta-btn,.fa-sec__fallback-btn,[class*="ai-ritual-compare-shop-btn-"],.bouton-personnalise .btn){display:inline-flex!important}
.kc__btn{display:flex!important}
/* ---- Onglets / toggles ---- */
[class*="faq-tab-toggle-template"][class*="faq-tab-toggle-template"]{font-family:var(--cta-ff);font-size:15px;font-weight:600;letter-spacing:.01em;text-transform:none;line-height:1.25;min-height:48px;height:auto;padding:10px 20px;border-radius:999px;display:flex;align-items:center;justify-content:center;text-align:center}
@media (max-width:767px){[class*="faq-tab-toggle-template"][class*="faq-tab-toggle-template"]{padding:10px 14px;font-size:14px}}
/* ---- Text / arrow CTA ---- */
.fip__a.fip__a{font-size:14px;font-weight:600;letter-spacing:.02em}
/* ---- Icon : cible tactile 44px sans changer le visuel (fleches steps 32px) ---- */
:is([class*="steps-btn-prev-template"],[class*="steps-btn-next-template"]){position:relative}
:is([class*="steps-btn-prev-template"],[class*="steps-btn-next-template"])::after{content:"";position:absolute;inset:-6px}
/* ---- Transitions (base d'origine conservee puis alignee a 180ms) ---- */
:is(.button:not(.button--outline,.cart-drawer .button),.cart-drawer__footer .button,.btn.btn--primary,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,.fa-sec__fallback-btn,.product-atc__btn,.ft2__submit,[class*="ai-ritual-compare-shop-btn-"],.fip__a){--fx-base:opacity var(--fx-d) var(--fx-e),color var(--fx-d) var(--fx-e),background-color var(--fx-d) var(--fx-e),border-color var(--fx-d) var(--fx-e)}
.button--outline:not(.cart-drawer .button){--fx-base:background-size .3s cubic-bezier(.785,.135,.15,.86),background-position .3s step-end,color .3s cubic-bezier(.785,.135,.15,.86),border .3s cubic-bezier(.785,.135,.15,.86)}
/* hero ss_hero_26 : le texte (p interne) suit la meme transition que le fond -> plus de texte blanc sur blanc au debut du hover (couleurs = section) */
[class*="hero-button-inner-template"]{transition:color var(--fx-d) var(--fx-e)}
@media (prefers-reduced-motion:no-preference){
:is(.button:not(.cart-drawer .button),.cart-drawer__footer .button,.btn.btn--primary,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,.fa-sec__fallback-btn,.product-atc__btn,.ft2__submit,[class*="ai-ritual-compare-shop-btn-"],.fip__a){transition:var(--fx-base,opacity 0s),translate var(--fx-d) var(--fx-e),scale var(--fx-sd,var(--fx-d)) var(--fx-e),filter var(--fx-d) var(--fx-e)!important;-webkit-tap-highlight-color:transparent}
.bouton-personnalise .btn{transition:opacity var(--fx-d) var(--fx-e)!important}
[class*="faq-tab-toggle-template"][class*="faq-tab-toggle-template"]{transition:background-color var(--fx-d) var(--fx-e),color var(--fx-d) var(--fx-e),opacity var(--fx-d) var(--fx-e),scale .1s var(--fx-e);-webkit-tap-highlight-color:transparent}
}
/* ---- Hover (souris uniquement) : INVERSION + montee 1px ----
   A. Composants a variables (Prestige .button pleins, ATC, sticky, header BUY IT NOW) : echange --button-background <-> --button-text-color (dynamique, suit les reglages).
      Fond Prestige = background-image (degrade) -> remplace par background-color equivalent pour que la transition fonde reellement.
   B. CTA de sections custom (couleurs ecrites en dur par chaque section, aucune variable) : filter:invert(1) = inversion exacte noir/blanc, ignore !important/inline/p internes.
   C. Hero ss_hero_26 : inversion deja configuree dans la section (reglages Background hover / Text hover) -> inchangee.
      Contour interieur 1px (outline -1px, pas une ombre, 0 changement de taille) dans la couleur du texte au hover : garde le bord de la pilule visible quand le bouton inverse prend la couleur de sa section.
   D. ATC fiche produit + checkout panier : noir/blanc comme les autres (couleurs du theme --text-color / --background) ; le lime impose par custom_css et le CSS d'origine est remplace. */
@media (hover:hover) and (pointer:fine){
.features--button-transition .button:not(.button--outline,.cart-drawer .button){background-image:none;background-color:rgb(var(--button-background))}
.features--button-transition .button:not(.button--outline,.buy-buttons .button,.cart-drawer .button):not([disabled]):hover{background-position:var(--initial-background-position);background-size:101% 101%,0 101%}
:is(.button:not(.button--outline,.cart-drawer .button,[class*="ai-ritual-compare-shop-btn-"]),.btn.btn--primary):not([disabled],[aria-disabled="true"]):hover{background:rgb(var(--button-text-color))!important;color:rgb(var(--button-background))!important;border-color:rgb(var(--button-text-color))!important;opacity:1!important;filter:none;outline:1px solid rgb(var(--button-background));outline-offset:-1px}
.product-sticky-bar .buy-buttons button.button:not([disabled]):hover{background:rgb(var(--button-text-color))!important;color:rgb(var(--button-background))!important;border-color:rgb(var(--button-text-color))!important;outline:1px solid rgb(var(--button-background));outline-offset:-1px}
:is(.buy-buttons .button:not(.product-sticky-bar .button),.cart-drawer .cart-drawer__footer .button,.cart-recap .button.button,.empty-state .button.button):not([disabled]):hover{background:rgb(var(--background))!important;color:rgb(var(--text-color))!important;border-color:rgb(var(--text-color))!important;outline:1px solid rgb(var(--text-color));outline-offset:-1px;filter:none!important}
:is(.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,.fa-sec__fallback-btn,[class*="ai-ritual-compare-shop-btn-"],.ft2__submit):not(.button,[disabled],[aria-disabled="true"]):hover{filter:invert(1);opacity:1!important;outline:1px solid currentColor;outline-offset:-1px}
.bouton-personnalise .btn:hover{opacity:.88!important}
[class*="faq-tab-toggle-template"][class*="faq-tab-toggle-template"]:not(.active):hover{opacity:.85}
.fip__a:hover{opacity:.7}
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){
:where(.button:not(.cart-drawer .button),.cart-drawer__footer .button,.btn.btn--primary,.ft2__submit,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,[class*="ai-ritual-compare-shop-btn-"],.product-atc__btn,.fa-sec__fallback-btn):not([disabled],[aria-disabled="true"]):hover{translate:0 -1px}
/* Presence +1% au hover (hero, ATC, sticky, checkout tiroir/page, Prestige .button, temoignages, About, FAQ, header BUY IT NOW). :where() = specificite minimale pour que :active (.985) gagne toujours. */
:where([class*="hero-button-template"],.buy-buttons .button,.cart-drawer__footer .button,.button:not(.button--outline,.buy-buttons .button,.cart-drawer .button),[class*="testimonials-btn-template"],.fof__btn,.faq-btn,.bouton-personnalise .btn):not([disabled],[aria-disabled="true"]):hover{scale:1.01}
a.h-stack.link-faded>svg{transition:translate var(--fx-d) var(--fx-e)}
a.h-stack.link-faded:hover>svg.icon-chevron-left{translate:-3px 0}
a.h-stack.link-faded:hover>svg.icon-chevron-right{translate:3px 0}
}
/* ---- Active / touch ---- */
@media (prefers-reduced-motion:no-preference){
:is(.button,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,[class*="ai-ritual-compare-shop-btn-"],.product-atc__btn,.ft2__submit,.fa-sec__fallback-btn,.btn.btn--primary):not([disabled],[aria-disabled="true"]):active{translate:0 0;scale:.985;--fx-sd:.1s}
.bouton-personnalise .btn:active{opacity:.75}
.testimonials-slide-text-btn:active{opacity:.6}
.fep__card:active{scale:.99}
:is([class*="faq-tab-toggle-template"],[class*="steps-step-template"],[class*="feature-thumbs-slide-template"],.collection-toolbar__button,.main-search__tabs button):active{scale:.98}
:is(.circle-button,.product-card__quick-add-button,[class*="feature-btn-prev-template"],[class*="feature-btn-next-template"],[class*="steps-btn-prev-template"],[class*="steps-btn-next-template"],[class*="testimonials-btn-prev-template"],[class*="testimonials-btn-next-template"],.ss-video-play,.play-button,.ss-arrow,[class*="featured-play-template"],[class*="featured-sound-template"],.swiper-pagination-bullet,.fsq__mdot,.tap-area,.social-media__item a,.header__secondary-nav a:not(.btn),.header__primary-nav button[aria-controls="sidebar-menu"],.quantity-selector__button,.product-gallery__thumbnail,.pagination__link):not([disabled]):active{scale:.96}
:where(.modal,.drawer,.popover,.header-search)::part(close-button):active{scale:.96}
:is(.circle-button,.product-card__quick-add-button,.ss-video-play,.ss-arrow,.swiper-pagination-bullet,.fsq__mdot,.tap-area,.quantity-selector__button,.product-gallery__thumbnail,.pagination__link,.fep__card,.collection-toolbar__button){-webkit-tap-highlight-color:transparent}
}
:is(.faq-question,[class*="faq-toggle-template"],.accordion__disclosure>summary,.ffq__item>summary,.ipr__notes>summary,summary.ft2__col-title,.header-sidebar__linklist-button,.header-sidebar__back-button,.localization-toggle,.popover__value-option,.fep__close,.share-buttons--native,.fip__a):active{opacity:.7}
/* ---- Mobile / tactile (hover:none) : feedback PENDANT le toucher = inversion + enfoncement + 1px vers le bas, transitions 90ms, retour au relachement.
   Memes mecanismes que le desktop (variables du composant / filter:invert). Hero ss_hero_26 exclu de l'inversion : sa section l'inverse deja au tap (voir rapport). */
@media (hover:none){
:is(.button:not(.cart-drawer .button),.cart-drawer__footer .button,.btn.btn--primary,.ft2__submit,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,[class*="ai-ritual-compare-shop-btn-"],.product-atc__btn,.fa-sec__fallback-btn){--fx-d:.09s}
:is(.button:not(.button--outline,.cart-drawer .button,[class*="ai-ritual-compare-shop-btn-"]),.btn.btn--primary):not([disabled],[aria-disabled="true"]):active{background:rgb(var(--button-text-color))!important;color:rgb(var(--button-background))!important;border-color:rgb(var(--button-text-color))!important;outline:1px solid rgb(var(--button-background));outline-offset:-1px}
:is(.buy-buttons .button:not(.product-sticky-bar .button),.cart-drawer .cart-drawer__footer .button,.cart-recap .button.button,.empty-state .button.button):not([disabled]):active{background:rgb(var(--background))!important;color:rgb(var(--text-color))!important;border-color:rgb(var(--text-color))!important;outline:1px solid rgb(var(--text-color));outline-offset:-1px;filter:none!important}
:is(.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,.fa-sec__fallback-btn,[class*="ai-ritual-compare-shop-btn-"],.ft2__submit):not(.button,[disabled],[aria-disabled="true"]):active{filter:invert(1);opacity:1!important;outline:1px solid currentColor;outline-offset:-1px}
}
@media (hover:none) and (prefers-reduced-motion:no-preference){
:is(.button:not(.cart-drawer .button),.cart-drawer__footer .button,.btn.btn--primary,.ft2__submit,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,[class*="ai-ritual-compare-shop-btn-"],.product-atc__btn,.fa-sec__fallback-btn):not([disabled],[aria-disabled="true"]):active{translate:0 1px;scale:.985}
}
@media (hover:none){:is(.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],.kc__btn,.hr__btn,.fof__btn,.faq-btn,.cta-btn,.ft2__submit):hover{opacity:1!important}}
/* ---- Pastilles ss_feature_15 (Nano-Ionic Steam / Cryotherapy / Oil Diffuser) : forme inchangee ---- */
@media (prefers-reduced-motion:no-preference){[class*="feature-thumbs-slide-template"][class*="feature-thumbs-slide-template"]{transition:transform .25s,background-color var(--fx-d) var(--fx-e),opacity var(--fx-d) var(--fx-e),box-shadow var(--fx-d) var(--fx-e),scale .1s var(--fx-e)}[class*="feature-thumbs-slide-template"]>*{transition:translate var(--fx-d) var(--fx-e)}}
@media (hover:hover) and (pointer:fine){[class*="feature-thumbs-slide-template"][class*="feature-thumbs-slide-template"]:not(.swiper-slide-thumb-active):hover{box-shadow:inset 0 0 0 100vmax rgb(0 0 0/.07)}}
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){[class*="feature-thumbs-slide-template"]:not(.swiper-slide-thumb-active):hover>*{translate:0 -1px}}
/* ---- Boutons de paiement acceleres Shopify (Shop / PayPal / Google Pay / Apple Pay) ----
   DOM ferme (closed shadow DOM + iframes des wallets) : seules les proprietes officielles Shopify sont utilisees
   (hauteur 25-55px, rayon, espacement). Couleurs, logos, typo et contenu = ceux des services, non modifies.
   PDP : 1 seul bouton -> micro-feedback physique sur l'hote (pas de couleur). Panier : bloc de plusieurs wallets -> immobile. */
.shopify-payment-button shopify-accelerated-checkout,.dynamic-checkout__content shopify-accelerated-checkout-cart{--shopify-accelerated-checkout-button-block-size:52px!important;--shopify-accelerated-checkout-button-border-radius:999px!important;--shopify-accelerated-checkout-button-box-shadow:none!important}
.dynamic-checkout__content shopify-accelerated-checkout-cart{--shopify-accelerated-checkout-row-gap:12px!important}
/* PDP : le CSS de la section produit fige l'hote a 50px (#shopify-section-...__main .buy-buttons shopify-accelerated-checkout{height:50px!important}) -> aligne sur ATC 52px. :is(#x,...) = meme poids d'ID, +1 classe pour passer devant. */
:is(#fx-id,[id^="shopify-section-"]) .buy-buttons .shopify-payment-button shopify-accelerated-checkout{height:52px!important;border-radius:999px!important}
@media (prefers-reduced-motion:no-preference){
.buy-buttons:not(.product-sticky-bar .buy-buttons) shopify-accelerated-checkout{display:block;transition:translate var(--fx-d) var(--fx-e),scale var(--fx-sd,var(--fx-d)) var(--fx-e)}
.buy-buttons:not(.product-sticky-bar .buy-buttons) shopify-accelerated-checkout:active{translate:0 0;scale:.985;--fx-sd:.1s}
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){
.buy-buttons:not(.product-sticky-bar .buy-buttons) shopify-accelerated-checkout:hover:not(:active){translate:0 -1px;scale:1.01}
}
@media (prefers-reduced-motion:no-preference) and (hover:none){
.buy-buttons:not(.product-sticky-bar .buy-buttons) shopify-accelerated-checkout{--fx-d:.09s}
.buy-buttons:not(.product-sticky-bar .buy-buttons) shopify-accelerated-checkout:active{translate:0 1px}
}
/* ---- Focus clavier unifie ---- */
:is(.button,[class*="hero-button-template"],.hero-btn,.ritual-button,.cta-bar__btn,[class*="before-after-cta-btn-template"],[class*="comparison-cta-template"] a,[class*="comparison-button-template"],[class*="testimonials-btn-template"],[class*="countdown-banner-button-template"],.fof__btn,.faq-btn,.kc__btn,.hr__btn,.cta-btn,[class*="ai-ritual-compare-shop-btn-"],.product-atc__btn,.ft2__submit,.fa-sec__fallback-btn,.bouton-personnalise .btn,[class*="faq-tab-toggle-template"],.fip__a):focus-visible{outline:2px solid rgb(var(--text-color,1 1 1));outline-offset:3px}
/* /FROSTEAM CTA SYSTEM v2.6 */
