

.fmlal-nav{--nav-fs:min(clamp(1.5rem, 1.1rem + 1.05vw, 2.15rem), 4.2vh);}
.fmlal-nav ol{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:clamp(2px,.55vh,8px);}
.fmlal-nav__li{position:relative; display:grid; grid-template-columns:auto; justify-content:start;}
.fmlal .fmlal-nav__item{
  display:grid; grid-template-columns:1.15em auto; column-gap:.3em; align-items:baseline; justify-content:start;
  font-family:var(--font-text); font-weight:400; font-size:var(--nav-fs);
  line-height:1.02; letter-spacing:-.012em; color:rgba(255,255,255,.76);
  text-decoration:none; padding:.14em 0;
  transition:color .4s var(--ease);
}
.fmlal-nav__item .n{
  font-family:var(--font-display); font-size:.46em; line-height:1; color:var(--oro);
  letter-spacing:0; transform:translateY(-.55em); transition:color .4s var(--ease);
}
.fmlal-nav__item .t{position:relative; display:inline-block; transition:transform .55s var(--ease);}
.fmlal-nav__item .t::after{
  content:""; position:absolute; left:0; right:0; bottom:.02em; height:1px;
  background:var(--oro); transform:scaleX(0); transform-origin:left center;
  transition:transform .6s var(--ease);
}
.fmlal .fmlal-nav__item:hover,
.fmlal .fmlal-nav__item:focus-visible{color:#fff; text-decoration:none;}
.fmlal-nav__item:hover .t,
.fmlal-nav__item:focus-visible .t{transform:translateX(.22em);}
.fmlal-nav__item:hover .t::after,
.fmlal-nav__item:focus-visible .t::after{transform:scaleX(1);}
.fmlal .fmlal-nav__item.is-current{color:#fff;}
.fmlal-nav__item.is-current .n{color:var(--oro-soft);}
.fmlal .fmlal-nav__item:focus-visible{outline:0;}
.fmlal-nav__item:focus-visible .n{color:#fff;}

.fmlal-nav .fmlal-nav__sub{grid-column:1 / -1; margin:.02em 0 .3em; padding-left:calc(var(--nav-fs) * 1.45); gap:.08em;}
.fmlal .fmlal-nav__sub .fmlal-nav__item{grid-template-columns:auto; font-size:calc(var(--nav-fs) * .6); color:rgba(255,255,255,.62); padding:.06em 0;}
.fmlal-nav__sub .fmlal-nav__item .t{padding-left:1.05em;}
.fmlal-nav__sub .fmlal-nav__item .t::before{
  content:""; position:absolute; left:0; top:50%; width:.55em; height:1px; background:var(--oro);
}
.fmlal-nav__sub .fmlal-nav__item .t::after{left:1.05em;}

.fmlal-nav__item .o{
  display:inline-block; width:.3em; height:.3em; margin-left:.5em; vertical-align:.35em;
  border-top:1px solid var(--oro); border-right:1px solid var(--oro);
  transition:transform .4s var(--ease);
}
.fmlal-nav__item:hover .o{transform:translate(.1em,-.1em);}

.fmlal-nav .fmlal-nav__extra{position:relative; margin-top:clamp(26px,4.6vh,52px); padding-top:clamp(22px,3.8vh,40px); gap:clamp(6px,1.2vh,14px);}
.fmlal-nav__extra::before{
  content:""; position:absolute; top:0; left:0; width:64px; height:1px;
  background:linear-gradient(90deg, var(--oro), rgba(196,136,46,0));
}
.fmlal .fmlal-nav__extra .fmlal-nav__item{color:var(--oro-soft);}
.fmlal .fmlal-nav__extra .fmlal-nav__item:hover{color:#fff;}
.fmlal-nav__extra .n{transform:none; align-self:center;}
.fmlal-nav__extra .n::before{content:""; display:block; width:.62em; height:1px; background:var(--oro); transform:translateY(-.1em);}

.fmlal .fmlal-nav__mail{padding:.1em 0;}
.fmlal-nav__mail .n::before{display:none;}
.fmlal-nav__mail .t{display:block; line-height:0;}
.fmlal-nav__mail .t::after{display:none;}
.fmlal-nav__ico{width:calc(var(--nav-fs) * .6); height:auto; fill:none; stroke:var(--oro); stroke-width:1.2; stroke-linejoin:round; stroke-linecap:round;
  transition:stroke .3s var(--ease), transform .5s var(--ease);}
.fmlal-nav__mail:hover .fmlal-nav__ico{stroke:#fff; transform:translateY(-2px);}

:root{--cab-x:clamp(20px,3.4vw,52px); --cab-logo:84px;}

.fmlal{--fs-body:1.25rem;}
.fmlal-cab{
  position:fixed; top:0; left:0; right:0; z-index:1000;
  display:flex; align-items:center; justify-content:space-between;
  padding:clamp(14px,2.4vh,26px) var(--cab-x);
  pointer-events:none;
}
.fmlal-cab > *{pointer-events:auto;}

.fmlal .fmlal-cab__logo{
  display:block; line-height:0; border-radius:2px;
  opacity:0; transform:translateY(-14px); visibility:hidden;
  transition:opacity .5s var(--ease), transform .6s var(--ease), visibility .5s;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.28));
}
.fmlal .fmlal-cab__logo img{width:var(--cab-logo) !important; height:var(--cab-logo) !important; max-width:none !important;}

.fmlal .fmlal-cab__toggle{
  position:relative; width:52px !important; height:52px !important; padding:0 !important;
  border:1px solid rgba(196,136,46,.34) !important; border-radius:50% !important;
  background:rgba(20,26,31,.58) !important; cursor:pointer;
  -webkit-backdrop-filter:blur(12px) saturate(1.2); backdrop-filter:blur(12px) saturate(1.2);
  box-shadow:0 10px 30px rgba(0,0,0,.22) !important;
  display:grid; place-items:center;
  opacity:0; transform:translateY(-14px); visibility:hidden;
  transition:opacity .5s var(--ease), transform .6s var(--ease), visibility .5s,
             background .3s var(--ease), border-color .3s var(--ease);
}
.fmlal .fmlal-cab__toggle:hover{background:rgba(20,26,31,.78) !important; border-color:rgba(196,136,46,.7) !important;}
.fmlal .fmlal-cab__toggle:focus-visible{outline:2px solid var(--oro); outline-offset:3px;}
.fmlal-cab__bars{position:relative; display:block; width:22px; height:10px;}
.fmlal-cab__bars::before,
.fmlal-cab__bars::after{
  content:""; position:absolute; right:0; width:22px; height:1.5px; border-radius:2px; background:var(--oro-soft);
  transform-origin:right center;
  transition:transform .45s var(--ease), top .35s var(--ease), background .3s;
}
.fmlal-cab__bars::before{top:0;}
.fmlal-cab__bars::after{top:8.5px; transform:scaleX(.64);}
.fmlal-cab__toggle:hover .fmlal-cab__bars::after{transform:scaleX(1);}

.fmlal-cab.is-visible .fmlal-cab__logo,
.fmlal-cab.is-visible .fmlal-cab__toggle{opacity:1; transform:none; visibility:visible;}

html.fmlal-indice-open .fmlal-cab__bars::before{top:4.25px; transform-origin:center; transform:rotate(45deg); background:#fff;}
html.fmlal-indice-open .fmlal-cab__bars::after{top:4.25px; transform-origin:center; transform:rotate(-45deg); background:#fff;}

.fmlal-indice__in{
  width:100%; display:grid; grid-template-columns:auto auto; justify-content:start;
  column-gap:clamp(56px,7vw,140px); align-items:end;
}

.fmlal-indice__main{display:flex; flex-direction:column; align-items:flex-start;}
.fmlal .fmlal-indice__logo{display:block; line-height:0; margin:0 0 clamp(24px,4.4vh,48px) 4px;
  filter:drop-shadow(0 14px 34px rgba(0,0,0,.4));
  opacity:0; transform:translateY(14px); transition:opacity .6s var(--ease) .1s, transform .8s var(--ease) .1s;}
html.fmlal-indice-open .fmlal-indice__logo{opacity:1; transform:none;}
.fmlal .fmlal-indice__logo img{width:clamp(104px,15vh,150px) !important; height:clamp(104px,15vh,150px) !important; max-width:none !important;}
html.fmlal-indice-open .fmlal-cab__logo{opacity:0 !important; visibility:hidden !important;}
.fmlal-indice__aside{
  padding-left:clamp(24px,3vw,48px); border-left:1px solid rgba(196,136,46,.28);
  color:rgba(255,255,255,.62); font-family:var(--font-text);
  opacity:0; transform:translateY(14px); transition:opacity .6s var(--ease) .35s, transform .8s var(--ease) .35s;
}
html.fmlal-indice-open .fmlal-indice__aside{opacity:1; transform:none;}
.fmlal .fmlal-indice__datos p{margin:0; font-size:1rem; line-height:1.35; max-width:none; text-align:left;}
.fmlal .fmlal-indice__datos p:first-child{color:#fff; font-size:1.1rem; margin-bottom:.6em;}
.fmlal .fmlal-indice__datos p + p{margin-top:.2em;}
.fmlal .fmlal-indice__datos a{color:var(--oro-soft); text-decoration:none;}
.fmlal .fmlal-indice__datos a:hover{color:#fff;}
.fmlal-indice__legal{list-style:none; margin:clamp(20px,3.4vh,36px) 0 0; padding:clamp(18px,3vh,30px) 0 0; position:relative;
  display:flex; flex-wrap:nowrap; gap:1.4em; white-space:nowrap;}
.fmlal-indice__legal::before{content:""; position:absolute; top:0; left:0; width:44px; height:1px; background:linear-gradient(90deg,var(--oro),rgba(196,136,46,0));}
.fmlal .fmlal-indice__legal a{
  font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; font-weight:600;
  color:rgba(255,255,255,.55); text-decoration:none; transition:color .3s var(--ease);
}
.fmlal .fmlal-indice__legal a:hover{color:var(--oro-soft);}

.fmlal-indice{
  position:fixed; inset:0; z-index:999;
  display:flex; align-items:center;
  padding:clamp(40px,7vh,72px) clamp(20px,3.4vw,52px) clamp(40px,7vh,72px);
  background:rgba(18,23,27,.9);
  -webkit-backdrop-filter:blur(18px) saturate(1.1); backdrop-filter:blur(18px) saturate(1.1);
  clip-path:inset(0 0 100% 0);
  visibility:hidden;
  transition:clip-path .7s var(--ease), visibility 0s linear .7s;
}
html.fmlal-indice-open .fmlal-indice{
  clip-path:inset(0 0 0 0); visibility:visible;
  transition:clip-path .7s var(--ease), visibility 0s;
}

.fmlal-indice .fmlal-nav{--nav-fs:min(clamp(1.6rem, 1rem + 1.7vw, 2.6rem), 4.8vh); padding-left:4px;}
.fmlal-indice .fmlal-nav > ol > li{
  opacity:0; transform:translateY(18px);
  transition:opacity .45s var(--ease), transform .7s var(--ease);
}
html.fmlal-indice-open .fmlal-indice .fmlal-nav > ol > li{opacity:1; transform:none; transition-delay:calc(var(--i,0) * 35ms + 90ms);}

@media (min-width:900px){
  .fmlal-indice .fmlal-nav{--nav-fs:min(clamp(1.6rem, 1rem + 1.6vw, 2.5rem), 3.9vh);}
  .fmlal-indice .fmlal-nav .fmlal-nav__extra{margin-top:clamp(18px,3.4vh,36px); padding-top:clamp(18px,3.4vh,36px);}
}

@media (max-width:640px){
  .fmlal-cab{padding:calc(14px + env(safe-area-inset-top)) 18px 14px;}
  .fmlal .fmlal-cab__logo img{width:62px !important; height:62px !important;}
  .fmlal .fmlal-cab__toggle{width:46px !important; height:46px !important; opacity:1; transform:none; visibility:visible;}
  .fmlal-indice{padding:calc(92px + env(safe-area-inset-top)) 22px 48px; overflow-y:auto; align-items:flex-start;}
  .fmlal-indice__in{grid-template-columns:1fr; row-gap:32px; align-items:start;}
  .fmlal-indice{padding-top:calc(92px + env(safe-area-inset-top));}
  .fmlal-indice__logo{display:none !important;}
  html.fmlal-indice-open .fmlal-cab__logo{opacity:1 !important; visibility:visible !important;}
  .fmlal-indice__legal{flex-wrap:wrap; white-space:normal; gap:.5em 1.2em;}
  .fmlal-indice__aside{padding-left:0; border-left:0; padding-top:24px; border-top:1px solid rgba(196,136,46,.28);}
  .fmlal-indice .fmlal-nav{--nav-fs:clamp(1.45rem, 6.6vw, 1.8rem);}
}

@media (prefers-reduced-motion:reduce){
  .fmlal-indice{clip-path:none; opacity:0; transition:opacity .01s, visibility 0s linear .01s;}
  html.fmlal-indice-open .fmlal-indice{opacity:1;}
}
