/* AIRRA Média — site 2026 */
:root {
  /* Surfaces */
  --cream:        #EFEDE9;
  --cream-2:      #F7F5F2;
  --cream-3:      #E9E5E2;
  --cream-sunk:   rgba(233, 229, 226, .45);

  /* Encre */
  --ink:          #0A0A0A;
  --ink-2:        #3B3936;
  --ink-3:        #6B6862;
  --ink-4:        #9A968F;
  --on-dark:      #F7F5F2;

  /* Traits */
  --line:         rgba(10, 10, 10, .10);
  --line-2:       rgba(10, 10, 10, .06);
  --line-strong:  rgba(10, 10, 10, .18);

  /* Verre dépoli posé sur les médias (pastilles, badges) */
  --glass:        rgba(247, 245, 242, .92);

  /* Accent (héritage AIRRA, employé avec parcimonie) */
  --accent:       #C8641A;

  /* Rayons */
  --r-sm: 8px;
  --r-md: 16px;
  --r-lg: 24px;
  --r-xl: 32px;
  --r-pill: 100px;

  /* Rythme */
  --gap:      24px;
  --pad-x:    clamp(20px, 4vw, 56px);
  --section:  clamp(80px, 10vw, 152px);
  --maxw:     1240px;

  /* Typo */
  --sans:  "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --mono:  "Fragment Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  /* Mouvement */
  --ease: cubic-bezier(.22, .61, .36, 1);
}


body{margin:0;background:#EFEDE9;color:#0A0A0A;font-family:'Inter',system-ui,sans-serif;letter-spacing:-.02em;-webkit-font-smoothing:antialiased}
a{color:#0A0A0A;text-decoration:none}a:hover{color:#3B3936}
@keyframes agMarquee{to{transform:translateX(-50%)}}
@keyframes agFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.ag-testi:hover [role=tab] span{animation-play-state:paused !important}
@keyframes agRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes agPulse{0%,100%{box-shadow:0 0 0 0 rgba(86,180,110,.5)}50%{box-shadow:0 0 0 6px rgba(86,180,110,0)}}
.ag-marquee{animation:agMarquee 38s linear infinite}
.ag-rise{animation:agRise 1s cubic-bezier(.22,.61,.36,1) both}
.ag-rise-2{animation:agRise 1s .12s cubic-bezier(.22,.61,.36,1) both}
.ag-rise-3{animation:agRise 1s .24s cubic-bezier(.22,.61,.36,1) both}
.ag-pulse{animation:agPulse 2s infinite}
.ag-link{transition:background .25s,color .25s}
.ag-lang{transition:background .2s,color .2s}
.ag-lang:hover{background:rgba(10,10,10,.08);color:#0A0A0A}
.ag-link:hover{background:rgba(10,10,10,.05);color:#0A0A0A}
.ag-btn{transition:background .28s,transform .28s,border-color .28s}
.ag-btn:hover{transform:translateY(-1px)}
.ag-card{transition:transform .4s cubic-bezier(.22,.61,.36,1),box-shadow .4s,border-color .4s}
.ag-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(10,10,10,.12)}
.ag-card img{transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.ag-card:hover img{transform:scale(1.03)}
.ag-clip{transition:background .3s,color .3s,border-color .3s,transform .3s}
.ag-clip:hover{filter:brightness(1.15)}
.ag-step{transition:background .4s,padding .4s}
.ag-post{transition:background .3s,transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s}
.ag-post:hover{background:#FFFFFF !important;transform:translateX(6px);box-shadow:0 14px 34px rgba(10,10,10,.08)}
.ag-post img{transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.ag-post:hover img{transform:scale(1.06)}
.ag-post-more{opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .3s}
.ag-post:hover .ag-post-more{opacity:1;transform:none}
.ag-faq:hover{background:#F7F5F2 !important;border-radius:20px !important;padding:0 20px !important}
.ag-faq:hover .ag-faq-num{color:#0A0A0A !important}
.ag-faq:hover .ag-faq-dot{transform:scale(1)}
.ag-step:hover{background:#F7F5F2;padding-left:20px;padding-right:20px}
input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #0A0A0A;outline-offset:3px}
@media (max-width:999px){.ag-desk{display:none !important}}
@media (max-width:699px){.ag-tl-h{display:none !important}}
@media (min-width:700px){.ag-tl-v{display:none !important}}
@media (min-width:1000px){.ag-mob{display:none !important}}
@media (max-width:620px){.ag-cta-top{display:none !important}}
@media (max-width:640px){.ag-foot-top{justify-content:center !important;text-align:center}.ag-foot-top>div{align-items:center !important}}
@media (max-width:640px){.ag-wide{grid-column:auto !important;aspect-ratio:16 / 10 !important;min-height:0 !important}}
@media (hover:none){.ag-post-more{opacity:1 !important;transform:none !important}}
@media (prefers-reduced-motion:reduce){.ag-marquee,.ag-rise,.ag-rise-2,.ag-rise-3,.ag-pulse{animation:none}}

html{scroll-behavior:smooth}
[id]{scroll-margin-top:110px}
img,video{max-width:100%}
::selection{background:#0A0A0A;color:#F7F5F2}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Messages des formulaires */
.form-msg{font-size:14px;line-height:1.5;padding:12px 14px;border-radius:12px;display:none;margin:0;text-align:left}
.form-msg.is-visible{display:block}
.form-msg--ok{background:rgba(28,110,60,.09);color:#1C6E3C;border:1px solid rgba(28,110,60,.2)}
.form-msg--err{background:rgba(160,40,30,.08);color:#A0281E;border:1px solid rgba(160,40,30,.2)}
.form-msg--dark.form-msg--ok{background:rgba(80,200,130,.10);color:#6FD79B;border-color:rgba(80,200,130,.26)}
.form-msg--dark.form-msg--err{background:rgba(240,110,95,.10);color:#F0897A;border-color:rgba(240,110,95,.26)}
#newsletterMsg{width:min(580px,100%);box-sizing:border-box}
button[disabled]{opacity:.6;cursor:progress}
@keyframes agShake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}
.shake{animation:agShake .45s cubic-bezier(.36,.07,.19,.97) both}

/* Bandeau cookies (Loi 25), repris de airra-bloom.css */
/* ---------- 23. BANDEAU COOKIES (Loi 25) ---------- */
.cookie-banner {
  position: fixed;
  left: 50%; bottom: 20px;
  transform: translate(-50%, 16px);
  z-index: 150;
  width: min(560px, calc(100vw - 2 * var(--pad-x)));
  background: var(--cream-2);
  border: 1px solid var(--line-strong);
  border-radius: var(--r-md);
  box-shadow: 0 22px 56px rgba(10, 10, 10, .16);
  opacity: 0;
  visibility: hidden;
  transition: opacity .35s var(--ease), transform .35s var(--ease), visibility .35s;
}
.cookie-banner.is-visible { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.cookie-banner__inner { display: grid; gap: 16px; padding: 22px; }
.cookie-banner__title { display: block; font-size: 15px; font-weight: 600; letter-spacing: -.03em; margin-bottom: 6px; }
.cookie-banner__text { font-size: 14px; line-height: 1.55; color: var(--ink-3); margin: 0; }
.cookie-banner__link { border-bottom: 1px solid var(--line-strong); color: var(--ink-2); }
.cookie-banner__link:hover { color: var(--ink); }
.cookie-banner__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.cookie-banner__btn {
  flex: 1 1 auto;
  padding: 11px 20px;
  border-radius: var(--r-pill);
  border: 1px solid var(--line-strong);
  background: transparent;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -.02em;
  cursor: pointer;
  transition: background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.cookie-banner__btn--decline:hover { background: var(--cream-3); }
.cookie-banner__btn--accept { background: var(--ink); color: var(--on-dark); border-color: var(--ink); }
.cookie-banner__btn--accept:hover { background: #262421; }

.cookie-prefs-btn {
  position: fixed;
  left: 18px; bottom: 18px;
  z-index: 140;
  width: 44px; height: 44px;
  display: grid; place-items: center;
  border-radius: 50%;
  border: 1px solid var(--line-strong);
  background: var(--cream-2);
  color: var(--ink-2);
  cursor: pointer;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .35s var(--ease), transform .35s var(--ease), background .25s var(--ease);
}
.cookie-prefs-btn.is-visible { opacity: .65; transform: none; }
.cookie-prefs-btn:hover { opacity: 1; background: #fff; }

/* Bouton « Refuser » aussi visible que « Accepter » (Loi 25) */
.cookie-banner__btn{font-family:inherit}
.cookie-banner__btn--decline{background:#E9E5E2;color:#0A0A0A;border-color:rgba(10,10,10,.28);font-weight:500}
.cookie-banner__btn--decline:hover{background:#DEDAD4;border-color:#0A0A0A}
