/* YRALYS | mandat V2.4 | OBS-002/003/004/005 + OBS-012
   Amelioration de la lisibilite du vrai template V13. Le logo YR-02 n'est pas redessine.
   Les cinq langues ont un code visible unique et conservent leurs hreflang/URL. */
.site-header .header-inner{box-sizing:border-box!important}
.site-header .brand.approved-brand{
  display:inline-flex!important;justify-content:flex-start!important;align-items:center!important;
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;padding:0!important;margin:0!important;min-width:0!important;
}
.site-header .brand.approved-brand img{
  display:block!important;width:clamp(150px,11.2vw,192px)!important;
  max-width:100%!important;height:auto!important;object-fit:contain!important;
}
.site-header .main-nav a{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  color:#263e5d!important;font-size:17px!important;line-height:1.24!important;
  letter-spacing:-.012em!important;text-transform:none!important;font-weight:650!important;
  text-decoration:none!important;text-align:center;white-space:normal!important;text-wrap:balance;
  min-width:0;min-height:47px!important;padding:8px 7px!important;border-radius:5px;
  transition:color .2s ease,background-color .2s ease,transform .2s ease,box-shadow .2s ease!important;
  transform-origin:center center;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus-visible{
  color:#96662f!important;background:rgba(164,130,80,.16)!important;
  transform:scale(1.055);box-shadow:inset 0 -2px 0 #a48250;
}
.site-header .main-nav a[aria-current]{color:#294f83!important}
.site-header .main-nav a[aria-current]::after{background-color:#a48250!important}
.site-header a:focus-visible,.site-header button:focus-visible{
  outline:2px solid #294f83!important;outline-offset:3px!important;
}
.site-header .language-switch a{
  display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:8px!important;border-radius:5px!important;text-decoration:none!important;
  color:#263e5d!important;font-size:17px!important;font-weight:720!important;
  line-height:1.1!important;letter-spacing:.01em!important;
  text-transform:uppercase!important;white-space:nowrap!important;
  background:transparent!important;
  transition:color .2s ease,background-color .2s ease,transform .2s ease!important;
  transform-origin:center center;
}
.site-header .language-switch .locale-flag{
  display:inline-block!important;visibility:visible!important;opacity:1!important;
  width:24px!important;height:17px!important;max-width:24px!important;
  flex:0 0 24px!important;object-fit:cover!important;
  border:1px solid rgba(41,79,131,.14)!important;border-radius:2px!important;
}
.site-header .language-switch a:hover,
.site-header .language-switch a:focus-visible{
  color:#96662f!important;background:rgba(164,130,80,.16)!important;
  transform:scale(1.055);
}
.site-header .language-switch a[aria-current="page"]{
  color:#8b612f!important;background:rgba(164,130,80,.09)!important;
  text-decoration:underline!important;text-decoration-thickness:1.5px!important;
  text-underline-offset:4px!important;
}
.hero-copy .hero-yr02-logo{
  display:block;width:clamp(225px,28vw,345px);height:auto;max-width:100%;
  margin:0 0 24px;filter:none;
}
.hero-copy h1{font-size:clamp(31px,3.6vw,60px);text-wrap:balance}
/* Computer: brand left, substantial menu in center, five languages VERTICAL at right. */
@media(min-width:1024px){
  .site-header .header-inner{
    width:calc(100% - 48px)!important;max-width:1800px!important;
    display:grid!important;grid-template-columns:minmax(150px,190px) minmax(0,1fr) 118px!important;
    grid-template-rows:1fr!important;align-items:center!important;
    column-gap:clamp(12px,1.4vw,25px)!important;
    min-height:155px!important;padding:12px 0!important;margin:0 auto!important;
  }
  .site-header .header-inner>.brand{grid-column:1!important;grid-row:1!important}
  .site-header .header-inner>.nav-toggle{display:none!important}
  .site-header .header-inner>.main-nav,
  .js .site-header .header-inner>.main-nav{
    grid-column:2!important;grid-row:1!important;
    position:static!important;display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:auto auto!important;
    align-content:center!important;align-items:stretch!important;
    justify-content:stretch!important;
    gap:3px clamp(5px,.8vw,14px)!important;
    width:100%!important;min-width:0!important;margin:0!important;padding:0!important;
    background:transparent!important;border:0!important;
  }
  .site-header .header-inner>.language-switch{
    grid-column:3!important;grid-row:1!important;
    position:static!important;display:flex!important;flex-direction:column!important;
    align-items:stretch!important;justify-content:center!important;
    flex-wrap:nowrap!important;gap:2px!important;
    width:118px!important;min-width:118px!important;
    padding:0 0 0 13px!important;margin:0!important;
    border-left:1px solid rgba(164,130,80,.46)!important;
  }
  .site-header .language-switch a{
    min-height:26px!important;padding:4px 5px!important;
  }
}
@media(min-width:1760px){
  .site-header .header-inner{grid-template-columns:200px minmax(0,1fr) 122px!important;min-height:146px!important}
  .site-header .header-inner>.main-nav,
  .js .site-header .header-inner>.main-nav{
    display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
    justify-content:space-between!important;align-items:center!important;gap:clamp(5px,.7vw,16px)!important;
  }
  .site-header .main-nav a{font-size:17.5px!important;padding:9px 3px!important;white-space:nowrap!important}
  .site-header .header-inner>.language-switch{width:122px!important;min-width:122px!important}
}
/* Tablet and phone: readable compact language row; accessible expandable menu. */
@media(max-width:1023px){
  .site-header .header-inner{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:70px auto auto!important;gap:0 10px!important;
    width:calc(100% - 32px)!important;max-width:100%!important;
    padding:4px 0 6px!important;min-height:0!important;margin:0 auto!important;
  }
  .site-header .header-inner>.brand{
    grid-column:1!important;grid-row:1!important;min-height:60px!important;
  }
  .site-header .brand.approved-brand img{width:clamp(134px,21vw,170px)!important}
  .site-header .header-inner>.nav-toggle,
  .js .site-header .header-inner>.nav-toggle{
    grid-column:2!important;grid-row:1!important;display:block!important;
    align-self:center!important;min-width:74px!important;min-height:44px!important;
    font-size:14px!important;font-weight:700!important;
    letter-spacing:.05em!important;padding:10px 13px!important;
  }
  .site-header .header-inner>.language-switch{
    grid-column:1/-1!important;grid-row:2!important;
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:2px!important;align-items:center!important;justify-content:stretch!important;
    width:100%!important;max-width:100%!important;margin:0!important;
    padding:2px 0 5px!important;border:0!important;
  }
  .site-header .language-switch a{
    justify-content:center!important;gap:6px!important;min-width:0!important;
    min-height:44px!important;font-size:15px!important;padding:5px 2px!important;
  }
  .site-header .language-switch .locale-flag{
    width:22px!important;height:16px!important;max-width:22px!important;flex-basis:22px!important;
  }
  .site-header .header-inner>.main-nav{
    grid-column:1/-1!important;grid-row:3!important;
    position:static!important;flex-direction:column!important;
    justify-content:flex-start!important;align-items:stretch!important;gap:0!important;
    width:100%!important;margin:0!important;padding:4px 0 12px!important;
    background:#f4f1ea!important;border-top:1px solid rgba(41,79,131,.10)!important;
  }
  .js .site-header .header-inner>.main-nav{display:none!important}
  .js .site-header .header-inner>.main-nav.open{display:flex!important}
  .site-header .main-nav a{
    display:flex!important;justify-content:flex-start!important;
    font-size:18px!important;font-weight:650!important;line-height:1.25!important;
    text-align:left!important;min-height:49px!important;padding:12px 15px!important;
    border-radius:4px!important;transform-origin:left center;
    border-bottom:1px solid rgba(41,79,131,.12)!important;
  }
  .site-header .main-nav a:last-child{border-bottom:0!important}
  .hero-copy .hero-yr02-logo{width:clamp(195px,36vw,330px)}
}
@media(max-width:400px){
  .site-header .header-inner{width:calc(100% - 20px)!important}
  .site-header .brand.approved-brand img{width:132px!important}
  .site-header .language-switch a{font-size:14px!important;gap:4px!important;padding:5px 1px!important}
  .site-header .language-switch .locale-flag{width:20px!important;height:15px!important;max-width:20px!important;flex-basis:20px!important}
  .site-header .main-nav a{font-size:17px!important}
  .hero-copy .hero-yr02-logo{width:205px;margin-bottom:18px}
  .hero-copy h1{font-size:clamp(28px,7vw,40px)}
}
@media(prefers-reduced-motion:reduce){
  .site-header .main-nav a,.site-header .language-switch a{transition:none!important}
  .site-header .main-nav a:hover,.site-header .language-switch a:hover{transform:none!important}
}

/* Keep the active-page link gold during hover and keyboard focus. */
.site-header .main-nav a[aria-current]:hover,
.site-header .main-nav a[aria-current]:focus-visible{color:#96662f!important}
