/* Enval: presentation shared by the Spanish and English pages. */
:root {
  color-scheme: light;
  --enval-ink: #263238;
  --enval-muted: #5c696c;
  --enval-dark: #424242;
  --enval-accent: #bd5727;
  --enval-background: #f4f4f1;
  --enval-border: #dfe4e1;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html body {
  margin: 0;
  background: var(--enval-background);
  color: var(--enval-ink);
  font: 16px/1.65 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  text-align: left;
}
a, a:visited, a:link, a:active { color: #a6461b; }
a:hover { color: #773112; }
a:focus-visible { outline: 3px solid #dd7a46; outline-offset: 4px; }
img { max-width: 100%; height: auto; }
.skip-link {
  position: absolute;
  z-index: 100;
  left: 12px;
  top: -100px;
  padding: 8px 14px;
  background: white;
  color: #172126;
}
.skip-link:focus { top: 12px; }

.Wrapper { display: flex; flex-direction: column; min-height: 100vh; width: 100%; margin: 0; }
.HeaderContainer {
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
  min-height: 102px;
  padding: 10px max(24px, calc((100vw - 1200px) / 2));
  background: var(--enval-dark);
}
.MainHeaderLogo {
  display: block;
  flex: 0 0 165px;
  width: 165px;
  height: 82px;
  background: url('/_envalsa/DesktopLayouts/Images/topbannerlogo4.gif') no-repeat left center / 521px auto;
}
.navigationbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  flex: 1;
  height: auto;
  min-width: 0;
  overflow: visible;
  padding: 0;
  background: transparent;
  font-size: .94rem;
  line-height: 1.3;
}
.navigationbar .wp-module-subtabs, .navigationbar .wp-module-languagefilter { float: none; }
.navigationbar .wp-subtabs { display: flex; flex-wrap: wrap; gap: 4px 22px; font-weight: 600; }
.navigationbar .wp-subtabs li { display: block; }
.navigationbar .wp-subtabs li a {
  display: block;
  float: none;
  padding: 11px 0;
  color: #f6f7f6;
  text-decoration: none;
  transition: color .15s ease;
}
.navigationbar .wp-subtabs li.selected a, .navigationbar .wp-subtabs li a:hover { color: #ffb479; }
.wp-lang-selector { display: flex; align-items: center; gap: 4px; padding-left: 18px; border-left: 1px solid #686868; white-space: nowrap; }
.wp-lang-selector > span { display: none; }
.navigationbar .wp-lang-selector a {
  padding: 7px 9px;
  border-radius: 6px;
  color: #ddd;
  font-size: .78rem;
  text-decoration: none;
}
.navigationbar .wp-lang-selector a.wp-lang-current { background: #f4f3ef; color: #303638; font-weight: 700; }
.navigationbar .wp-lang-selector a:hover { color: #ffb479; }
.navigationbar .wp-lang-selector a.wp-lang-current:hover { color: #303638; }

.MainContainer { flex: 1; width: 100%; }
html body .MainContainerContent {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
  padding: 40px 0 76px;
  font: inherit;
}
.wp-module-location { margin-bottom: 10px; color: #798382; font-size: .82rem; }
.wp-module-location a { color: #6a7877; text-decoration: none; }
.wp-module-location a:hover { text-decoration: underline; }
.wp-module-pagetitle {
  margin: 0 0 30px;
  color: #202e32;
  font: 700 clamp(2.15rem, 4vw, 3.35rem)/1.1 system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  letter-spacing: -.04em;
}
.enval-page-intro { max-width: 65ch; margin: -14px 0 30px; color: var(--enval-muted); }
html .wp-base.wp-item-container .wp-item-pane .p-middle { float: none; width: 100%; }
html .wp-base.wp-item-container .wp-item-pane .p-float { float: right; margin: 4px 0 20px 32px; }
.wp-field-contenido { max-width: 78ch; }
.wp-field-contenido p { margin-top: 0; }
.wp-field-contenido [align="justify"] { text-align: left; }
.page-history .wp-module-name-historia, .page-quality .wp-module-name-historia {
  max-width: 980px;
  padding: clamp(26px, 4vw, 46px);
  border: 1px solid var(--enval-border);
  border-radius: 14px;
  background: #fff;
}
.page-quality .wp-field-images img { display: block; border: 1px solid #e3e5e0; border-radius: 4px; }

/* The home page uses the existing product photograph and certification content. */
.page-home .MainContainerContent { padding-top: 36px; }
.enval-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  min-height: 380px;
  overflow: hidden;
  border-radius: 18px;
  background: #e4e9e6;
}
.enval-hero-copy { align-self: center; padding: clamp(30px, 5vw, 68px); }
.enval-eyebrow { margin: 0 0 14px; color: #a74b22; font-size: .73rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.enval-hero h1 { max-width: 13ch; margin: 0 0 18px; color: #1e3033; font-size: clamp(2.6rem, 4.7vw, 4.45rem); line-height: 1.04; letter-spacing: -.055em; }
.enval-hero-copy > p:not(.enval-eyebrow) { max-width: 48ch; margin: 0; color: #526564; font-size: clamp(1rem, 1.4vw, 1.12rem); }
.enval-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 29px; }
.enval-actions a, .enval-actions a:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 20px;
  border: 1px solid #283c3d;
  border-radius: 7px;
  color: #263b3b;
  font-size: .9rem;
  font-weight: 700;
  text-decoration: none;
}
.enval-actions a.enval-primary { border-color: #ad4d21; background: #ad4d21; color: #fff; }
.enval-actions a:hover { background: #263b3b; border-color: #263b3b; color: #fff; }
.enval-hero-visual { display: flex; flex-direction: column; justify-content: space-between; gap: 24px; padding: 35px; background: #304142; color: white; }
.enval-hero-visual-top { display: flex; justify-content: space-between; gap: 12px; color: #d2ddda; font-size: .69rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.enval-hero-image { min-height: 240px; border: 1px solid #778683; border-radius: 8px; background: #b8b5b1 url('/_envalsa/media/productos/envases-aluminio.jpg') no-repeat center / cover; }
.enval-hero-visual p { max-width: 26ch; margin: 0; color: #e8efec; font-size: .95rem; line-height: 1.45; }
.enval-home-content { max-width: 1050px; margin: 68px auto 0; }
.enval-home-content h2 { margin: 0 0 22px; font-size: clamp(1.75rem, 3vw, 2.5rem); line-height: 1.16; letter-spacing: -.035em; }
.enval-home-content table { width: 100%; }
.enval-home-content td { vertical-align: top; }
.enval-home-content .wp-field-contenido { max-width: 72ch; }
.enval-home-content .wp-item-images { display: grid; gap: 12px; justify-items: center; }
.enval-home-content .wp-item-images img { display: block; }
.enval-home-content .wp-item-images .wp-image-item { padding: 10px; border: 1px solid #e5e8e4; border-radius: 8px; background: white; }

/* Catalogue cards retain the original product descriptions and images. */
.wp-module-producto .wp-data-items-list.wp-base { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 18px; overflow: visible; }
.wp-module-producto .wp-data-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--enval-border);
  border-radius: 12px;
  background: #fff;
}
.wp-base.wp-data-items-list .wp-img-container, .wp-base.wp-data-items-list .wp-data-container { float: none; }
.wp-module-producto .wp-img-container { display: grid; place-items: center; min-height: 142px; padding: 20px; background: #efefeb; }
.wp-module-producto .wp-img-container img { display: block; max-width: 100%; height: auto; mix-blend-mode: multiply; }
.wp-module-producto .wp-data-container { padding: 21px 23px 25px; }
.wp-module-producto .wp-data-container h3 { margin: 0 0 6px; color: #25383a; font-size: 1.16rem; line-height: 1.3; }
.wp-module-producto .wp-item-lead { margin-bottom: 7px; color: #526562; font-size: .9rem; }
.wp-module-producto .wp-item-summary { color: #687575; font-size: .82rem; line-height: 1.6; overflow-wrap: anywhere; }
.wp-module-producto .wp-item-clearfix { display: none; }

.enval-contact-details { max-width: 760px; margin: 28px 0 0; padding: 26px 30px; border: 1px solid var(--enval-border); border-left: 4px solid var(--enval-accent); border-radius: 12px; background: #fff; }
.enval-contact-details p { margin: 0 0 16px; }
.enval-contact-details p:last-child { margin: 0; }
.enval-contact-details a { font-weight: 650; }
.enval-contact-location { padding-top: 8px; }
.page-location .MainContainerContent { display: grid; grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr); column-gap: 35px; align-items: start; }
.page-location .wp-module-location, .page-location .wp-module-pagetitle { grid-column: 1 / -1; }
.page-location .wp-module-name-historia { padding: 24px 28px; border: 1px solid var(--enval-border); border-radius: 12px; background: #fff; }
.page-location .wp-module-name-historia .wp-field-value > br:first-child { display: none; }
.enval-map { min-width: 0; padding-top: 0; }
.enval-map iframe { display: block; width: 100%; height: 380px; border: 0; border-radius: 12px; }
.enval-map p { margin: 12px 0 0; font-size: .9rem; font-weight: 700; }

.FooterContainer { width: 100%; padding: 42px max(24px, calc((100vw - 1200px) / 2)) 20px; background: #293637; color: #e5eeeb; text-align: left; }
.FooterContainer .enval-footer-inner { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 32px; width: 100%; margin: 0; padding-bottom: 32px; border: 0; }
.FooterContainer .enval-footer-inner > div { width: auto; margin: 0; border: 0; }
.FooterContainer .enval-footer-brand { margin: 0 0 8px; color: white; font-size: 1.16rem; font-weight: 800; letter-spacing: .04em; }
.FooterContainer p { max-width: 30ch; margin: 0; color: #c6d4d0; font-size: .89rem; }
.FooterContainer h2 { margin: 0 0 9px; color: #fff; font-size: .82rem; letter-spacing: .04em; text-transform: uppercase; }
.FooterContainer a, .FooterContainer a:visited { color: #f4f5f2; text-decoration: none; }
.FooterContainer a:hover { color: #ffb479; text-decoration: underline; }
.FooterContainer .enval-footer-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; width: 100%; margin: 0; padding-top: 17px; border-top: 1px solid #576664; color: #b9c8c3; font-size: .8rem; }

@media (max-width: 930px) {
  .HeaderContainer { display: block; padding: 8px 24px 15px; }
  .MainHeaderLogo { margin: 0 0 4px; }
  .navigationbar { justify-content: space-between; gap: 12px 20px; }
}
@media (max-width: 700px) {
  html body .MainContainerContent { width: calc(100% - 36px); padding: 30px 0 54px; }
  .HeaderContainer { position: relative; padding: 8px 18px 15px; }
  .navigationbar { display: block; }
  .navigationbar .wp-module-languagefilter { position: absolute; top: 28px; right: 18px; }
  .wp-lang-selector { padding-left: 0; border-left: 0; }
  .wp-lang-selector a span { display: none; }
  .wp-lang-selector .wp-lang-es::after { content: 'ES'; }
  .wp-lang-selector .wp-lang-en::after { content: 'EN'; }
  .navigationbar .wp-subtabs { gap: 0 10px; font-size: .87rem; }
  .navigationbar .wp-subtabs li a { padding: 10px 0; }
  .enval-hero { grid-template-columns: 1fr; }
  .enval-hero-copy { padding: 34px 25px 38px; }
  .enval-hero h1 { max-width: none; font-size: clamp(2.45rem, 10vw, 3.5rem); }
  .enval-hero-visual { min-height: 245px; padding: 24px; }
  .enval-hero-image { min-height: 200px; }
  .enval-home-content { margin-top: 48px; }
  .page-location .MainContainerContent { display: block; }
  .page-location .wp-module-name-historia { margin-bottom: 20px; }
  .enval-map iframe { height: 320px; }
  .FooterContainer .enval-footer-inner { grid-template-columns: 1fr 1fr; gap: 28px; }
  .FooterContainer .enval-footer-inner > div:first-child { grid-column: 1 / -1; }
}
@media (max-width: 430px) {
  html .wp-base.wp-item-container .wp-item-pane .p-float { float: none; margin: 0 0 25px; }
  .enval-home-content .wp-item-images { display: flex; flex-wrap: wrap; justify-content: flex-start; }
  .enval-contact-details { padding: 22px; }
  .enval-contact-details strong { display: block; min-width: 0; }
  .FooterContainer .enval-footer-inner { grid-template-columns: 1fr; }
  .FooterContainer .enval-footer-inner > div:first-child { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
