/* if-ui2026-v11531.css · Instafood · Finition 2026 : CTA affinés + échelle typographique contextuelle.
   Chargé EN DERNIER sur tout le parc. Ne touche ni au contenu ni aux composants signature.
   Principe : moins d'épaisseur, plus de matière — ombres diffuses, filets fins, cibles tactiles conservées. */

/* ── 1. CTA : fin de l'ombre pleine (relief 2019) au profit d'une élévation diffuse ── */
.btn,.btn--primary,.btn--ghost,.platform,.ifp-cta{
  border-radius:999px;
  font-size:clamp(.86rem,1.6vw,.95rem);letter-spacing:.01em;font-weight:600;
  transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease,background-color .35s ease,border-color .35s ease}
.btn{min-height:46px;padding:12px 22px}
.btn--primary{
  box-shadow:0 10px 26px -12px rgba(245,166,35,.55),inset 0 1px 0 rgba(255,255,255,.24);
  border:1px solid rgba(255,255,255,.14)}
.btn--primary:hover,.btn--primary:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 16px 34px -14px rgba(245,166,35,.7),inset 0 1px 0 rgba(255,255,255,.3)}
.btn--primary:active{transform:translateY(0);box-shadow:0 6px 16px -10px rgba(245,166,35,.5)}
.btn--ghost{
  background:rgba(255,255,255,.04);border:1px solid rgba(214,177,88,.34);color:#f7efe3;box-shadow:none}
.btn--ghost:hover,.btn--ghost:focus-visible{
  background:rgba(214,177,88,.10);border-color:rgba(214,177,88,.55);transform:translateY(-1px)}
.ifp-cta{padding:12px 24px;min-height:46px;display:inline-flex;align-items:center}

/* Cible tactile conservée sans grossir le bouton visuellement. */
@media (pointer:coarse){
  .btn,.ifp-cta{min-height:48px}
}

/* ── 2. Échelle typographique contextuelle (pages internes ; les accueils gardent leurs rangs ifh-*) ── */
main h1{text-wrap:balance}
main h2,main h3{text-wrap:pretty}
body:not(:has(.ifh-r1)) main>section>h2,
body:not(:has(.ifh-r1)) main>section>div>h2{font-size:clamp(1.55rem,3.4vw,2.45rem);line-height:1.06}
body:not(:has(.ifh-r1)) main>section h3{font-size:clamp(1.02rem,2vw,1.28rem);line-height:1.24}
main>section>p,main>section>div>p{max-width:72ch}

/* Le poster et le hero typographique gardent leurs propres tailles. */
.if-poster h1,.if-hero-typo h1,.ifu-h2,.ifz-price *{font-size:revert-layer}

/* ── 3. Filets et surfaces : uniformisation discrète ── */
.if-card,.card,.info-card,.ifa-toc,.ifg-nu{border-radius:18px}
hr,.sep{border:0;border-top:1px solid rgba(214,177,88,.18)}

@media (prefers-reduced-motion: reduce){
  .btn,.btn--primary,.btn--ghost,.platform,.ifp-cta{transition:none!important;transform:none!important}
}
