/* Version 32.4 – Image-led infrastructure cockpit */
body:has(.infra321-page){background:#f4f7f5}
.infra321-page{max-width:1540px!important}
.infra321-hero{min-height:235px!important;background-image:linear-gradient(90deg,rgba(7,25,19,.94) 0%,rgba(7,25,19,.68) 43%,rgba(7,25,19,.20) 72%),url('../img/v324/infrastructure-hero.webp')!important;background-position:center 54%!important;background-size:cover!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 16px 36px rgba(15,35,27,.13)!important}
.infra321-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 35%,rgba(4,18,13,.14));pointer-events:none}
.infra321-hero>*{position:relative;z-index:2}
.infra321-hero-copy span{color:#c9ee1b!important}.infra321-hero-copy h2{font-size:2.45rem!important}.infra321-hero-copy p{max-width:470px;color:#eef5f0!important}
.infra322-hero-tags{display:flex!important;gap:7px!important;flex-wrap:wrap}.infra322-hero-tags b{padding:6px 9px!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:999px!important;background:rgba(6,26,19,.62)!important;color:#fff!important;font-size:.58rem!important;backdrop-filter:blur(7px)}
.infra321-hero-stats article{background:rgba(8,29,22,.86)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.infra322-campus{grid-template-columns:300px 1fr!important;border:1px solid #dfe7e1!important;border-radius:16px!important;overflow:hidden!important;box-shadow:0 8px 22px rgba(20,37,31,.05)!important}
.infra322-campus figure{height:148px!important;min-height:148px!important;overflow:hidden;position:relative}.infra322-campus figure:after{content:"VEREINSCAMPUS";position:absolute;left:13px;bottom:11px;padding:5px 8px;border-radius:999px;background:rgba(7,27,20,.82);color:#d0f01b;font-size:.53rem;font-weight:900;letter-spacing:.07em}.infra322-campus img{width:100%;height:100%;object-fit:cover;display:block;transition:.25s}.infra322-campus:hover img{transform:scale(1.025)}
.infra322-campus>div{padding:15px 18px!important}.infra322-campus nav{margin-top:9px!important}.infra322-campus a{background:#f5f8f6!important;border:1px solid #e5ebe7!important;border-radius:9px!important;transition:.18s}.infra322-campus a:hover{background:#153127!important;color:#fff!important;border-color:#153127!important;transform:translateY(-1px)}.infra322-campus a:hover small{color:#c9ee1b!important}
.infra321-summary{background:#fff!important}.infra321-summary article{position:relative}.infra321-summary article:before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:2px;background:#edf1ee}.infra321-summary article:first-child:before{display:none}
.infra321-facilities{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important}
.infra321-facility{min-width:0!important;background:#fff!important;border-color:#dde6df!important;box-shadow:0 7px 20px rgba(20,37,31,.055)!important}
.infra321-facility figure{height:120px!important;background-position:center!important}.infra321-facility figure:after{background:linear-gradient(180deg,transparent 42%,rgba(4,19,14,.68))!important}.infra321-facility figure>span{left:9px!important;bottom:8px!important;padding:4px 7px!important;font-size:.47rem!important}
.infra321-facility-body{padding:10px 11px 11px!important}.infra321-facility h3{font-size:.84rem!important;line-height:1.15!important;min-height:1.95em}.infra321-facility header small{font-size:.54rem!important}.infra321-facility header span{width:47px!important;height:47px!important;flex-basis:47px!important;margin-top:-34px!important;border-width:4px!important;font-size:.46rem!important}.infra321-facility header span b{font-size:.76rem!important}.infra321-metrics{grid-template-columns:1fr!important;gap:4px!important}.infra321-metrics p{display:flex;justify-content:space-between;gap:6px}.infra321-metrics small,.infra321-facility footer small{font-size:.5rem!important}.infra321-metrics b,.infra321-facility footer b{font-size:.59rem!important}.infra321-facility footer{grid-template-columns:1fr 1fr 28px!important;gap:5px!important}.infra322-next,.infra321-running{font-size:.53rem!important}.infra321-running{display:block!important}.infra321-running span{display:block;margin-top:2px}.infra321-facility:hover{transform:translateY(-3px)!important}.infra321-facility:hover figure{filter:saturate(1.08) contrast(1.03)!important}
.infra321-lower{grid-template-columns:1.55fr 1fr!important;gap:10px!important}.infra321-lower>.card{position:relative!important;background:#fff!important}.infra321-projects:before,.infra321-history:before{content:"";display:block;height:72px;background-position:center;background-size:cover}.infra321-projects:before{background-image:linear-gradient(90deg,rgba(8,29,22,.35),rgba(8,29,22,.05)),url('../img/v324/campus-construction.webp')}.infra321-history:before{background-image:linear-gradient(90deg,rgba(8,29,22,.26),rgba(8,29,22,.04)),url('../img/v324/arena-expansion.webp')}.infra321-projects>header,.infra321-history>header{margin-top:-1px!important}.infra321-projects>header span,.infra321-history>header span{color:#294b3a!important}.infra321-table>div{grid-template-columns:1.35fr .75fr 1fr .7fr .75fr .55fr!important}.infra321-history li{grid-template-columns:38px 12px 1fr auto!important}
@media(max-width:1380px){.infra321-facilities{grid-template-columns:repeat(3,1fr)!important}.infra321-facility figure{height:126px!important}.infra321-metrics{grid-template-columns:1fr 1fr!important}.infra321-facility h3{min-height:auto}}
@media(max-width:1000px){.infra322-campus{grid-template-columns:230px 1fr!important}.infra321-lower{grid-template-columns:1fr!important}}
@media(max-width:760px){.infra321-hero{min-height:430px!important}.infra322-campus{grid-template-columns:1fr!important}.infra321-facilities{grid-template-columns:1fr!important}.infra321-facility figure{height:180px!important}.infra321-metrics{grid-template-columns:1fr 1fr!important}.infra321-projects:before,.infra321-history:before{height:100px}}


/* v46.0.0 - visually distinct infrastructure progression */
.infra-level-visual{position:relative;overflow:hidden;isolation:isolate}
.infra-level-visual:before,.infra-level-visual:after,.infra-building-layer{content:"";position:absolute;pointer-events:none;z-index:1;transition:.3s ease}
.infra-level-visual:before{inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.36))}
.infra-visual-badge{position:absolute;right:12px;bottom:12px;z-index:3;padding:6px 10px;border-radius:999px;background:rgba(8,22,20,.86);color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.infra-visual-basis .infra-level-visual{filter:saturate(.82) brightness(.92)}
.infra-visual-expanded .infra-level-visual{filter:saturate(.98) brightness(1.00);background-size:112% auto}
.infra-visual-expanded .infra-building-layer{right:8%;bottom:0;width:24%;height:36%;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(20,55,48,.65));clip-path:polygon(20% 25%,80% 25%,100% 100%,0 100%)}
.infra-visual-modern .infra-level-visual{filter:saturate(1.08) contrast(1.04);background-size:118% auto}
.infra-visual-modern .infra-building-layer{right:5%;bottom:0;width:34%;height:48%;background:linear-gradient(135deg,rgba(217,245,28,.42),rgba(8,45,40,.78));clip-path:polygon(15% 20%,72% 10%,100% 100%,0 100%);box-shadow:-30px 0 45px rgba(0,0,0,.18)}
.infra-visual-pro .infra-level-visual{filter:saturate(1.14) contrast(1.08);background-size:124% auto}
.infra-visual-pro .infra-level-visual:after{right:5%;top:14%;width:16%;height:16%;border:2px solid rgba(217,245,28,.8);border-radius:50%;box-shadow:0 0 0 8px rgba(217,245,28,.10)}
.infra-visual-pro .infra-building-layer{right:2%;bottom:0;width:42%;height:58%;background:linear-gradient(135deg,rgba(238,255,143,.44),rgba(5,42,38,.84));clip-path:polygon(18% 8%,75% 0,100% 100%,0 100%)}
.infra-visual-elite .infra-level-visual{filter:saturate(1.22) contrast(1.1) brightness(1.05);background-size:130% auto}
.infra-visual-elite .infra-level-visual:after{inset:0;background:linear-gradient(120deg,transparent 18%,rgba(217,245,28,.18) 48%,transparent 72%);transform:translateX(-20%)}
.infra-visual-elite .infra-building-layer{right:0;bottom:0;width:50%;height:70%;background:linear-gradient(135deg,rgba(247,255,194,.55),rgba(4,35,32,.9));clip-path:polygon(12% 12%,72% 0,100% 100%,0 100%);box-shadow:-35px 0 60px rgba(0,0,0,.25)}
