
:root{
  --link-color:#8b695a;
  --link-color-hover:#684d41;
  --button-fill:#d8c3a8;
  --button-fill-hover:#d1baa0;
  --button-text:#4a3429;
  --button-outline-border:rgba(93,77,67,0.12);
  --button-outline-border-hover:rgba(93,77,67,0.18);
  --button-outline-bg:rgba(255,255,255,0.08);
  --button-outline-bg-hover:rgba(255,255,255,0.18);
  --button-outline-text:#6a5a4f;
}

.home-affiche-button,
.contact-button,
.concert-cta,
.prochains-concerts-linkline a,
.prochains-concerts-subtle-link,
.mini-bio-link,
.detail-link a,
.agenda-more-link,
.album-action-inline,
.regards-footer-link,
.direction-text-link,
.main-nav a,
.menu-toggle,
.link-arrow-inline,
.link-arrow-inline--internal,
.link-arrow-inline--external,
.prochains-concerts-arrow{
  -webkit-tap-highlight-color:transparent;
}

.home-affiche-button:focus-visible,
.contact-button:focus-visible,
.concert-cta:focus-visible,
.prochains-concerts-linkline a:focus-visible,
.prochains-concerts-subtle-link:focus-visible,
.mini-bio-link:focus-visible,
.detail-link a:focus-visible,
.agenda-more-link:focus-visible,
.album-action-inline:focus-visible,
.regards-footer-link:focus-visible,
.direction-text-link:focus-visible,
.main-nav a:focus-visible,
.menu-toggle:focus-visible,
.link-arrow-inline:focus-visible,
.link-arrow-inline--internal:focus-visible,
.link-arrow-inline--external:focus-visible,
.prochains-concerts-arrow:focus-visible{
  outline:1px solid rgba(159,94,71,0.38);
  outline-offset:3px;
}

/* Unified text links based on the “À propos” arrow behaviour */
.home-affiche-button--light,
.mini-bio-link,
.detail-link a,
.agenda-more-link,
.prochains-concerts-subtle-link,
.regards-footer-link,
.link-arrow-inline,
.link-arrow-inline--internal,
.album-action-inline--primary,
.direction-text-link,
.prochains-concerts-arrow,
.link-arrow-inline--external{
  display:inline-flex;
  align-items:center;
  gap:0.46rem;
  font-family:"Cormorant Garamond", serif;
  line-height:1;
  font-weight:600;
  color:var(--link-color);
  text-decoration:none;
  transition:color 140ms ease-out;
}

.home-affiche-button--light::after,
.mini-bio-link::after,
.detail-link a::after,
.agenda-more-link::after,
.prochains-concerts-subtle-link::after,
.link-arrow-inline::after,
.link-arrow-inline--internal::after,
.album-action-inline--primary::after{
  content:"";
  display:inline-block;
  width:1.02rem;
  height:0.52rem;
  flex:0 0 auto;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 10'%3E%3Cpath d='M1 5 H22.5 M18.4 1.4 L22.9 5 L18.4 8.6' fill='none' stroke='black' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 10'%3E%3Cpath d='M1 5 H22.5 M18.4 1.4 L22.9 5 L18.4 8.6' fill='none' stroke='black' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  transform:translate3d(0, -0.01em, 0);
  will-change:transform;
  backface-visibility:hidden;
  transition:transform 120ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.direction-text-link::after,
.link-arrow-inline--external::after,
.prochains-concerts-arrow--external::after{
  content:"";
  display:inline-block;
  width:0.86rem;
  height:0.86rem;
  flex:0 0 auto;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.3 10.7 L10.7 3.3 M5.6 3.3 H10.7 V8.4' fill='none' stroke='black' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.3 10.7 L10.7 3.3 M5.6 3.3 H10.7 V8.4' fill='none' stroke='black' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  transform:translate3d(0, -0.05em, 0);
  will-change:transform;
  backface-visibility:hidden;
  transition:transform 120ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.home-affiche-button--light:hover,
.home-affiche-button--light:focus-visible,
.mini-bio-link:hover,
.mini-bio-link:focus-visible,
.detail-link a:hover,
.detail-link a:focus-visible,
.agenda-more-link:hover,
.agenda-more-link:focus-visible,
.prochains-concerts-subtle-link:hover,
.prochains-concerts-subtle-link:focus-visible,
.regards-footer-link:hover,
.regards-footer-link:focus-visible,
.link-arrow-inline:hover,
.link-arrow-inline:focus-visible,
.link-arrow-inline--internal:hover,
.link-arrow-inline--internal:focus-visible,
.album-action-inline--primary:hover,
.album-action-inline--primary:focus-visible,
.direction-text-link:hover,
.direction-text-link:focus-visible,
.link-arrow-inline--external:hover,
.link-arrow-inline--external:focus-visible,
.prochains-concerts-arrow:hover,
.prochains-concerts-arrow:focus-visible{
  color:var(--link-color-hover);
}

.home-affiche-button--light:hover::after,
.home-affiche-button--light:focus-visible::after,
.mini-bio-link:hover::after,
.mini-bio-link:focus-visible::after,
.detail-link a:hover::after,
.detail-link a:focus-visible::after,
.agenda-more-link:hover::after,
.agenda-more-link:focus-visible::after,
.prochains-concerts-subtle-link:hover::after,
.prochains-concerts-subtle-link:focus-visible::after,
.link-arrow-inline:hover::after,
.link-arrow-inline:focus-visible::after,
.link-arrow-inline--internal:hover::after,
.link-arrow-inline--internal:focus-visible::after,
.album-action-inline--primary:hover::after,
.album-action-inline--primary:focus-visible::after{
  transform:translate3d(3px, -0.01em, 0);
}

.direction-text-link:hover::after,
.direction-text-link:focus-visible::after,
.link-arrow-inline--external:hover::after,
.link-arrow-inline--external:focus-visible::after,
.prochains-concerts-arrow--external:hover::after,
.prochains-concerts-arrow--external:focus-visible::after{
  transform:translate3d(3px, -3px, 0);
}

.home-affiche-button--light{
  min-width:0;
  min-height:auto;
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.album-action-inline--listen{
  position:relative;
}

.album-action-inline--listen::after{
  content:none;
}

.regards-footer-link{
  border-bottom:none;
}

.regards-footer-arrow{
  display:none;
}
@media (max-width:760px){
  .home-affiche-button--light,
  .mini-bio-link,
  .detail-link a,
  .agenda-more-link,
  .album-action-inline--primary,
  .prochains-concerts-subtle-link,
  .regards-footer-link,
  .direction-text-link,
  .link-arrow-inline,
  .link-arrow-inline--internal,
  .link-arrow-inline--external,
  .prochains-concerts-arrow{
    gap:0.42rem;
  }

  .home-affiche-button--light::after,
  .mini-bio-link::after,
  .detail-link a::after,
  .agenda-more-link::after,
  .album-action-inline--primary::after,
  .prochains-concerts-subtle-link::after,
  .link-arrow-inline::after,
  .link-arrow-inline--internal::after{
    font-size:0.9em;
  }

  .direction-text-link::after,
  .link-arrow-inline--external::after,
  .prochains-concerts-arrow--external::after{
    font-size:0.82em;
  }
}

/* Unified filled buttons */
.home-affiche-button--filled,
.contact-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:11px 26px;
  border-radius:999px;
  border:1px solid transparent;
  background:var(--button-fill);
  color:var(--button-text);
  font-family:"Cormorant Garamond", serif;
  font-size:1.18rem;
  line-height:1;
  font-weight:600;
  letter-spacing:0.004em;
  cursor:pointer;
  transition:
    color var(--transition-base),
    background-color var(--transition-base),
    border-color var(--transition-base),
    box-shadow var(--transition-base),
    transform var(--transition-base);
  box-shadow:0 10px 24px rgba(63,42,28,0.05);
}

.home-affiche-button--filled:hover,
.home-affiche-button--filled:focus-visible,
.contact-button:hover,
.contact-button:focus-visible{
  background:var(--button-fill-hover);
  color:#3d2a20;
  transform:translateY(-0.5px);
  box-shadow:0 14px 28px rgba(63,42,28,0.08);
}

.contact-button:active,
.home-affiche-button--filled:active{
  transform:none;
}

.home-affiche-button--filled{ min-width:166px; }
.contact-button{ min-width:142px; }

/* Refined secondary buttons */
.concert-cta,
.prochains-concerts-linkline a,
.button-light{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid var(--button-outline-border);
  background:var(--button-outline-bg);
  color:var(--button-outline-text);
  font-family:"Cormorant Garamond", serif;
  font-size:1rem;
  line-height:1;
  font-weight:500;
  letter-spacing:0.01em;
  text-decoration:none;
  transition:
    color var(--transition-base),
    background-color var(--transition-base),
    border-color var(--transition-base),
    box-shadow var(--transition-base),
    transform var(--transition-base);
  box-shadow:none;
}

.concert-cta:hover,
.concert-cta:focus-visible,
.prochains-concerts-linkline a:hover,
.prochains-concerts-linkline a:focus-visible,
.button-light:hover,
.button-light:focus-visible{
  background:var(--button-outline-bg-hover);
  border-color:var(--button-outline-border-hover);
  color:#5f5048;
  box-shadow:0 8px 18px rgba(63,42,28,0.035);
  transform:translateY(-0.5px);
}

.button-light{
  min-height:44px;
  padding:10px 20px;
}

/* Global interaction smoothing */
a,
button,
[role="button"]{
  transition-timing-function:var(--ease-soft);
}

@media (max-width:760px){
  .home-affiche-button--light,
  .mini-bio-link,
  .detail-link a,
  .agenda-more-link,
  .album-action-inline--primary,
  .prochains-concerts-subtle-link,
  .regards-footer-link,
  .direction-text-link,
  .link-arrow-inline,
  .link-arrow-inline--internal,
  .link-arrow-inline--external,
  .prochains-concerts-arrow{
    font-size:1.03rem;
    gap:0.42rem;
  }

  .home-affiche-button--filled,
  .contact-button{
    min-height:48px;
    font-size:1.12rem;
  }

  .concert-cta,
  .prochains-concerts-linkline a,
  .button-light{
    min-height:38px;
    padding:0 14px;
    font-size:0.96rem;
  }
}
