/* Historia is intentionally a page-specific visual system. It recreates the
   original archival timeline without Elementor or its layer-animation plugin. */
body.page-template-page-historia { background: #fff; }
.page-template-page-historia .site-colorbar--history { position: absolute; z-index: 80; top: 0; right: 0; left: 0; }
.page-template-page-historia .utility-navigation--history { position: absolute; z-index: 75; top: 10px; right: 0; left: 0; background: rgb(1 39 25 / 20%); color: #fff; }
.page-template-page-historia .utility-navigation--history a { color: rgb(255 255 255 / 90%); text-shadow: 0 1px 8px rgb(0 0 0 / 20%); }
.page-template-page-historia .site-header--history { position: absolute; z-index: 70; top: 60px; right: 0; left: 0; background: rgb(3 42 29 / 31%); color: #fff; border-bottom: 1px solid rgb(255 255 255 / 11%); }
.page-template-page-historia .site-header--history .site-header__inner { min-height: 102px; }
.page-template-page-historia .site-header--history .site-branding__fallback--history img { display: block; width: 126px; height: auto; }
.page-template-page-historia .site-header--history .primary-navigation a { color: #fff; text-shadow: 0 1px 7px rgb(0 0 0 / 25%); }
.page-template-page-historia .site-header--history .primary-navigation > ul > li > a::before { background: #fff; }
.page-template-page-historia .site-header--history .primary-navigation .sub-menu { background: #fff; }
.page-template-page-historia .site-header--history .primary-navigation .sub-menu a { color: var(--ccu-green); text-shadow: none; }
.page-template-page-historia .site-header--history .primary-navigation .sub-menu a:hover, .page-template-page-historia .site-header--history .primary-navigation .sub-menu a:focus-visible { color: var(--ccu-green-bright); }
.page-template-page-historia .site-header--history .site-menu-toggle span:not(.screen-reader-text) { background: #fff; }

.history-hero { position: relative; display: grid; min-height: 790px; overflow: hidden; color: #fff; background: center / cover no-repeat var(--history-hero); }
.history-hero::before { position: absolute; inset: 0; background: rgb(0 25 16 / 28%); content: ''; }
.history-hero__content { position: relative; z-index: 1; display: grid; min-height: 790px; place-items: center; padding-top: 116px; }
.history-hero h1 { max-width: 850px; margin: 0; color: #fff; font-family: var(--font-display); font-size: clamp(2.2rem, 3.15vw, 40px); font-weight: 400; line-height: 1.125; text-align: center; text-shadow: 0 1px 16px rgb(0 0 0 / 26%); }

.history-timeline { overflow: clip; }
.history-entry { position: relative; min-height: 680px; padding: 120px 0; overflow: hidden; background: #fff; }
.history-entry:nth-child(even) { background: #f8f8f8; }
.history-entry__inner { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(55px, 9vw, 160px); align-items: center; min-height: 440px; }
.history-entry--copy-right .history-entry__copy { order: 2; }
.history-entry--copy-right .history-entry__visual { order: 1; }
.history-entry__copy { position: relative; z-index: 2; max-width: 470px; }
.history-entry--copy-right .history-entry__copy { justify-self: end; }
.history-entry__category { display: block; margin-bottom: 20px; color: var(--ccu-green-bright); font-family: var(--font-display); font-size: 12px; font-weight: 700; letter-spacing: 2.88px; line-height: 1.2; text-transform: uppercase; }
.history-entry h2 { position: relative; z-index: 1; margin: 0; color: var(--ccu-green); font-family: var(--font-display); font-size: clamp(5.2rem, 8.55vw, 110px); font-weight: 600; letter-spacing: -.07em; line-height: .8; }
.history-entry p { position: relative; z-index: 1; max-width: 470px; margin: 40px 0 0; color: #a0a0a0; font-family: var(--font-body); font-size: 17px; font-weight: 400; line-height: 1.6; }
.history-entry__watermark { position: absolute; z-index: 0; top: 56px; left: -164px; color: rgb(87 184 71 / 8%); font-family: var(--font-display); font-size: clamp(13rem, 23vw, 300px); font-weight: 600; letter-spacing: -.08em; line-height: .8; pointer-events: none; }
.history-entry--copy-right .history-entry__watermark { right: -164px; left: auto; }
.history-entry__visual { position: relative; min-height: 420px; isolation: isolate; }
.history-entry__image { position: absolute; display: block; max-width: none; object-fit: cover; box-shadow: 0 16px 34px rgb(0 0 0 / 7%); transition: transform 850ms cubic-bezier(.2,.7,.2,1), opacity 650ms ease; }
.history-entry__image--1 { z-index: 1; top: 20px; right: 2%; width: min(100%, 520px); max-height: 440px; object-fit: cover; }
.history-entry__image--2 { z-index: 2; top: -38px; left: 4%; width: min(52%, 300px); max-height: 238px; opacity: .88; }
.history-entry__image--3 { z-index: 3; right: 5%; bottom: -18px; width: min(42%, 235px); max-height: 300px; object-fit: contain; box-shadow: none; }
.history-entry--copy-right .history-entry__image--1 { right: auto; left: 2%; }
.history-entry--copy-right .history-entry__image--2 { right: 4%; left: auto; }
.history-entry--copy-right .history-entry__image--3 { right: auto; left: 5%; }
.ccu-motion-enabled .history-entry__copy[data-reveal], .ccu-motion-enabled .history-entry__visual[data-reveal] { opacity: 0; transform: translateY(25px); transition: opacity 650ms ease, transform 750ms cubic-bezier(.2,.7,.2,1); }
.ccu-motion-enabled .history-entry__copy[data-reveal].is-revealed, .ccu-motion-enabled .history-entry__visual[data-reveal].is-revealed { opacity: 1; transform: none; }
.ccu-motion-enabled .history-entry__visual[data-reveal].is-revealed .history-entry__image--2 { transform: translate(9px, -7px); }
.ccu-motion-enabled .history-entry__visual[data-reveal].is-revealed .history-entry__image--3 { transform: translate(-10px, 8px); }

@media (max-width: 900px) {
  .history-entry { min-height: 0; padding: 82px 0; }
  .history-entry__inner { gap: 42px; }
  .history-entry__visual { min-height: 345px; }
  .history-entry__image--1 { max-height: 340px; }
}
@media (max-width: 700px) {
  .page-template-page-historia .utility-navigation--history { display: none; }
  .page-template-page-historia .site-header--history { top: 10px; background: transparent; border: 0; }
  .page-template-page-historia .site-header--history .site-header__inner { min-height: 82px; padding: 0; }
  .page-template-page-historia .site-header--history .site-branding__fallback--history img { width: 98px; }
  .page-template-page-historia .site-header--history .primary-navigation { background: #232323; }
  .page-template-page-historia .site-header--history .site-menu-toggle span[aria-hidden] { background: #fff; }
  .history-hero { min-height: 590px; background-image: var(--history-hero-mobile); background-position: top center; }
  .history-hero__content { min-height: 590px; padding: 92px 0 0; }
  .history-hero h1 { font-size: clamp(2rem, 8.4vw, 2.4rem); }
  .history-entry { padding: 56px 0; }
  .history-entry__inner { display: flex; flex-direction: column; gap: 28px; align-items: stretch; }
  .history-entry--copy-right .history-entry__copy, .history-entry--copy-right .history-entry__visual { order: initial; }
  .history-entry__copy { max-width: none; }
  .history-entry--copy-right .history-entry__copy { justify-self: auto; }
  .history-entry h2 { font-size: clamp(3.4rem, 16vw, 5rem); }
  .history-entry p { margin-top: 18px; font-size: 16px; }
  .history-entry__watermark { top: 36px; left: 0; font-size: 6.5rem; }
  .history-entry--copy-right .history-entry__watermark { right: 0; }
  .history-entry__visual { min-height: 280px; }
  .history-entry__image--1 { top: 12px; right: 0; width: 90%; max-height: 280px; }
  .history-entry__image--2 { top: -8px; left: 0; width: 48%; max-height: 160px; }
  .history-entry__image--3 { right: 0; bottom: -8px; width: 37%; max-height: 180px; }
}
@media (prefers-reduced-motion: reduce) { .history-entry__image { transition: none; } }
