/* Approved event-first layout. Only the landing page uses these rules. */
body.landing-refined header#portada.nav {
  width:min(860px,calc(100% - 32px));
  max-width:calc(100% - 32px);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
  margin:0 auto;
  padding:12px 0 8px;
  border:0;
  text-transform:none;
  letter-spacing:normal;
}
#portada .landing-language-slot {
  position:relative;
  display:flex;
  justify-content:flex-end;
  width:100%;
  min-height:44px;
  margin-bottom:2px;
}
#portada .entry-logo {width:min(390px,78%);margin:0 auto 12px}
#portada .landing-intro {width:100%;text-align:center;margin:0 0 18px}
#portada .landing-intro h1 {
  font:700 clamp(21px,4.7vw,34px)/1.12 'Bitter',Georgia,serif;
  color:#203e32;
  margin:0 0 10px;
  text-transform:none;
  letter-spacing:-.025em;
  text-wrap:balance;
}
#portada .landing-intro h1 span {display:block}
#portada .landing-date {
  margin:0;
  color:#8d303b;
  font:800 clamp(24px,5.7vw,42px)/1.15 'League Spartan',sans-serif;
  text-transform:uppercase;
  letter-spacing:.015em;
  text-wrap:balance;
}
#portada .landing-art {
  width:100%;
  margin:0 0 24px;
  box-sizing:border-box;
  padding:clamp(3px,.7vw,6px);
  background:#7b8268;
  border:1px solid #b5a17b;
  box-shadow:0 3px 10px #665a3e14;
  animation:none;
}
/* Only the shadow changes; the artwork and its frame stay still. */
@keyframes autumn-shadow-breathe {
  0%,100% {box-shadow:3px 4px 0 #8d303b44,0 5px 10px #203e3233}
  50% {box-shadow:5px 6px 0 #8d303b66,0 8px 14px #203e3247}
}
#portada .landing-art img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  object-fit:contain;
  outline:1px solid #f2e7cf;
}
#portada.nav .navlinks {
  width:100%;
  max-width:none;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:minmax(48px,auto);
  gap:12px;
}
#portada.nav .navlinks a[href] {
  --nav-shadow:#294b3d;
  --nav-glow:#294b3d33;
  box-sizing:border-box;
  min-height:48px;
  min-width:0;
  padding:10px 8px;
  border:1px solid #294b3d!important;
  border-radius:6px;
  background:#f4ead2!important;
  color:#203e32!important;
  font:700 .9rem/1.15 'League Spartan',sans-serif;
  text-transform:uppercase;
  letter-spacing:.015em;
  text-align:center;
  box-shadow:3px 4px 0 var(--nav-shadow),0 7px 12px var(--nav-glow);
  transform:none;
  translate:none;
  scale:none;
  animation:none!important;
  transition:box-shadow .18s ease,transform .18s ease,background-color .18s ease;
}
/* Color belongs to the shadows; every button keeps its cream face. */
#portada.nav .navlinks a[href]:nth-child(even) {
  --nav-shadow:#8d303b;
  --nav-glow:#8d303b33;
}
#portada.nav .navlinks a::before,#portada.nav .navlinks a::after {content:none}
#portada.nav .navlinks a.magazine-nav {
  flex-direction:column;
  gap:2px;
  padding-block:5px;
}
#portada.nav .navlinks .magazine-release {
  display:inline-block;
  padding:2px 6px;
  border-radius:3px;
  background:#832c39;
  color:#fff4dc;
  font:700 11px/1.1 'League Spartan',sans-serif;
  letter-spacing:.025em;
  white-space:nowrap;
  text-transform:none;
}
@media(prefers-reduced-motion:no-preference) {
  #portada.nav .navlinks .magazine-release {
    animation:magazine-release-pulse 1.8s ease-in-out 2;
  }
  @keyframes magazine-release-pulse {
    0%,100% {transform:scale(1)}
    50% {transform:translateY(-1px) scale(1.07)}
  }
}
#portada.nav .navlinks a.catalog-nav {flex-direction:row;flex-wrap:wrap;gap:5px}
#portada.nav .navlinks .catalog-new {
  display:inline-block;
  margin:0;
  padding:3px 4px 2px;
  font-size:9px;
  line-height:1;
  letter-spacing:.025em;
}
#portada.nav .navlinks a.gestoria-nav {gap:3px;grid-column:auto}
#portada.nav .navlinks a.gestoria-nav small {font-size:10px;line-height:1.15}
#portada.nav .navlinks a:focus-visible {outline:3px solid #8d303b;outline-offset:3px}
@media(hover:hover) {
  #portada.nav .navlinks a[href]:hover {
    background:#fff3dc!important;
    box-shadow:3px 5px 0 var(--nav-shadow),0 9px 15px var(--nav-glow);
    transform:translateY(-1px);
    translate:none;
    scale:none;
    filter:none;
  }
}
#portada.nav .navlinks a[href]:active {
  transform:translate(2px,3px);
  translate:none;
  scale:none;
  box-shadow:1px 1px 0 var(--nav-shadow),0 2px 3px var(--nav-glow);
}
#portada .landing-tools {display:flex;justify-content:flex-end;width:100%;min-height:44px;margin-top:12px}
body.landing-refined #portada .language-menu {
  position:relative;
  inset:auto;
  width:auto;
  height:auto;
  gap:0;
  transform:none;
}
body.landing-refined #portada .language-menu .language-trigger,
#portada .landing-tools .language-top-fixed {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:auto;
  min-width:44px;
  height:44px;
  padding:8px 10px;
  border:1px solid #294b3d;
  border-radius:6px;
  background:var(--cream,#f4ead2);
  color:#203e32;
  box-shadow:0 2px 4px #203e3210;
  font:700 14px/1 'League Spartan',sans-serif;
  animation:none!important;
  transform:none;
  translate:none;
  scale:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
#portada .landing-tools .language-top-fixed svg {width:22px;height:22px}
body.landing-refined #portada .language-menu .language-flags {
  top:calc(100% + 6px);
  right:0;
  left:auto;
  bottom:auto;
  transform:none;
  grid-template-columns:44px;
  grid-auto-flow:row;
  grid-auto-rows:44px;
  max-height:calc(100dvh - 80px);
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
body.landing-refined #portada .language-menu.open .language-flags {transform:none}
body.landing-refined #portada .language-menu .language-flags button {
  animation:none!important;
  translate:none;
  scale:none;
  background:transparent;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
body.landing-refined>.supplier-call {
  grid-template-columns:minmax(0,1fr);
  width:min(860px,calc(100% - 32px));
  margin:20px auto 28px;
}
body.landing-refined>.supplier-call .supplier-copy {width:100%;box-sizing:border-box;padding:24px}
@media(max-width:680px) {
  #portada .entry-logo {width:min(300px,78%);margin-bottom:12px}
  #portada.nav .navlinks {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  #portada.nav .navlinks a:last-child:nth-child(odd) {grid-column:1 / -1}
  #portada.nav .navlinks a[href] {font-size:.82rem;padding:9px 6px}
}
@media(max-width:360px) {
  #portada.nav .navlinks a[href] {font-size:.76rem}
  #portada.nav .navlinks .catalog-new {font-size:8px;padding:2px 3px}
}
@media(prefers-reduced-motion:reduce) {
  #portada .landing-art {animation:none}
  #portada.nav .navlinks a[href] {transition:none}
  #portada.nav .navlinks a[href]:hover,#portada.nav .navlinks a[href]:active {transform:none}
}

/* Compact enamel directory, with one icon and one readable label per destination. */
#portada.nav .navlinks {gap:9px;grid-auto-rows:minmax(52px,auto)}
#portada.nav .navlinks a[href] {display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;gap:10px;padding:8px 12px;min-height:52px;background:#faf3e1!important;border-color:#817e62!important;border-radius:5px;box-shadow:0 2px 0 #8a896d;text-align:start;font-size:.88rem}
#portada.nav .navlinks .nav-symbol {width:20px;height:20px;flex:none;color:#48614d}
#portada.nav .navlinks .nav-caption {display:flex;align-items:flex-start;flex-direction:column;gap:3px;min-width:0}
#portada.nav .navlinks a[href="noticias.html"] {background:#244739!important;color:#fff5db!important}
#portada.nav .navlinks a[href="noticias.html"] .nav-symbol {color:#ebcb82}
#portada.nav .navlinks .nav-caption :is(.catalog-new,.magazine-release) {position:static;align-self:flex-start;margin:0;padding:2px 5px;background:#873642;color:#fff7e6;border:0;border-radius:3px;font:700 10px/1 'League Spartan',sans-serif;letter-spacing:.04em;animation:none;text-transform:uppercase}
@media(hover:hover){#portada.nav .navlinks a[href]:hover {box-shadow:0 3px 0 #666b52;transform:translateY(-1px)}}
@media(max-width:420px){#portada.nav .navlinks a[href]{gap:7px;padding:7px 8px;font-size:.79rem}#portada.nav .navlinks .nav-symbol{width:17px;height:17px}}
@media(prefers-reduced-motion:reduce){#portada.nav .navlinks a[href]:hover{transform:none}}
