/* Etech CSS-only crossfade slideshow (replaces DJ-ImageSlider). 5s per slide, 1s fade. */
.etslide{position:relative;width:100%;aspect-ratio:var(--ar,4/3);overflow:hidden}
.etslide figure{position:absolute;inset:0;margin:0;opacity:0;animation-iteration-count:infinite;animation-timing-function:linear;animation-delay:calc(var(--i,0)*5s)}
.etslide img{display:block;width:100%;height:100%;object-fit:cover}
.etslide figure>a{display:block;width:100%;height:100%}
.etslide figcaption{position:absolute;left:0;right:0;bottom:0;padding:.6em .9em;background:rgba(0,0,0,.6);color:#fff;font-size:.95em;line-height:1.35;text-align:left}
.etslide figcaption strong{display:block;font-size:1.05em}
.etslide figcaption p{margin:.2em 0 0;color:#fff}
.etslide:hover figure{animation-play-state:paused}
.etgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.etgrid a{display:block;aspect-ratio:4/3;overflow:hidden}
.etgrid img{display:block;width:100%;height:100%;object-fit:cover}
@keyframes etfade2{0%{opacity:0}10%{opacity:1}50%{opacity:1}60%{opacity:0}100%{opacity:0}}
@keyframes etfirst2{0%{opacity:1}50%{opacity:1}60%{opacity:0}90%{opacity:0}100%{opacity:1}}
.etslide.n2 figure{animation-name:etfade2;animation-duration:10s}
.etslide.n2 figure:first-child{animation-name:etfirst2}
@keyframes etfade3{0%{opacity:0}6.667%{opacity:1}33.333%{opacity:1}40%{opacity:0}100%{opacity:0}}
@keyframes etfirst3{0%{opacity:1}33.333%{opacity:1}40%{opacity:0}93.333%{opacity:0}100%{opacity:1}}
.etslide.n3 figure{animation-name:etfade3;animation-duration:15s}
.etslide.n3 figure:first-child{animation-name:etfirst3}
@keyframes etfade4{0%{opacity:0}5%{opacity:1}25%{opacity:1}30%{opacity:0}100%{opacity:0}}
@keyframes etfirst4{0%{opacity:1}25%{opacity:1}30%{opacity:0}95%{opacity:0}100%{opacity:1}}
.etslide.n4 figure{animation-name:etfade4;animation-duration:20s}
.etslide.n4 figure:first-child{animation-name:etfirst4}
@keyframes etfade5{0%{opacity:0}4%{opacity:1}20%{opacity:1}24%{opacity:0}100%{opacity:0}}
@keyframes etfirst5{0%{opacity:1}20%{opacity:1}24%{opacity:0}96%{opacity:0}100%{opacity:1}}
.etslide.n5 figure{animation-name:etfade5;animation-duration:25s}
.etslide.n5 figure:first-child{animation-name:etfirst5}
@keyframes etfade6{0%{opacity:0}3.333%{opacity:1}16.667%{opacity:1}20%{opacity:0}100%{opacity:0}}
@keyframes etfirst6{0%{opacity:1}16.667%{opacity:1}20%{opacity:0}96.667%{opacity:0}100%{opacity:1}}
.etslide.n6 figure{animation-name:etfade6;animation-duration:30s}
.etslide.n6 figure:first-child{animation-name:etfirst6}
@keyframes etfade7{0%{opacity:0}2.857%{opacity:1}14.286%{opacity:1}17.143%{opacity:0}100%{opacity:0}}
@keyframes etfirst7{0%{opacity:1}14.286%{opacity:1}17.143%{opacity:0}97.143%{opacity:0}100%{opacity:1}}
.etslide.n7 figure{animation-name:etfade7;animation-duration:35s}
.etslide.n7 figure:first-child{animation-name:etfirst7}
@keyframes etfade8{0%{opacity:0}2.5%{opacity:1}12.5%{opacity:1}15%{opacity:0}100%{opacity:0}}
@keyframes etfirst8{0%{opacity:1}12.5%{opacity:1}15%{opacity:0}97.5%{opacity:0}100%{opacity:1}}
.etslide.n8 figure{animation-name:etfade8;animation-duration:40s}
.etslide.n8 figure:first-child{animation-name:etfirst8}
@keyframes etfade9{0%{opacity:0}2.222%{opacity:1}11.111%{opacity:1}13.333%{opacity:0}100%{opacity:0}}
@keyframes etfirst9{0%{opacity:1}11.111%{opacity:1}13.333%{opacity:0}97.778%{opacity:0}100%{opacity:1}}
.etslide.n9 figure{animation-name:etfade9;animation-duration:45s}
.etslide.n9 figure:first-child{animation-name:etfirst9}
@keyframes etfade10{0%{opacity:0}2%{opacity:1}10%{opacity:1}12%{opacity:0}100%{opacity:0}}
@keyframes etfirst10{0%{opacity:1}10%{opacity:1}12%{opacity:0}98%{opacity:0}100%{opacity:1}}
.etslide.n10 figure{animation-name:etfade10;animation-duration:50s}
.etslide.n10 figure:first-child{animation-name:etfirst10}
@keyframes etfade11{0%{opacity:0}1.818%{opacity:1}9.091%{opacity:1}10.909%{opacity:0}100%{opacity:0}}
@keyframes etfirst11{0%{opacity:1}9.091%{opacity:1}10.909%{opacity:0}98.182%{opacity:0}100%{opacity:1}}
.etslide.n11 figure{animation-name:etfade11;animation-duration:55s}
.etslide.n11 figure:first-child{animation-name:etfirst11}
@keyframes etfade12{0%{opacity:0}1.667%{opacity:1}8.333%{opacity:1}10%{opacity:0}100%{opacity:0}}
@keyframes etfirst12{0%{opacity:1}8.333%{opacity:1}10%{opacity:0}98.333%{opacity:0}100%{opacity:1}}
.etslide.n12 figure{animation-name:etfade12;animation-duration:60s}
.etslide.n12 figure:first-child{animation-name:etfirst12}
@keyframes etfade13{0%{opacity:0}1.538%{opacity:1}7.692%{opacity:1}9.23%{opacity:0}100%{opacity:0}}
@keyframes etfirst13{0%{opacity:1}7.692%{opacity:1}9.23%{opacity:0}98.462%{opacity:0}100%{opacity:1}}
.etslide.n13 figure{animation-name:etfade13;animation-duration:65s}
.etslide.n13 figure:first-child{animation-name:etfirst13}
@keyframes etfade14{0%{opacity:0}1.429%{opacity:1}7.143%{opacity:1}8.572%{opacity:0}100%{opacity:0}}
@keyframes etfirst14{0%{opacity:1}7.143%{opacity:1}8.572%{opacity:0}98.571%{opacity:0}100%{opacity:1}}
.etslide.n14 figure{animation-name:etfade14;animation-duration:70s}
.etslide.n14 figure:first-child{animation-name:etfirst14}
@keyframes etfade15{0%{opacity:0}1.333%{opacity:1}6.667%{opacity:1}8%{opacity:0}100%{opacity:0}}
@keyframes etfirst15{0%{opacity:1}6.667%{opacity:1}8%{opacity:0}98.667%{opacity:0}100%{opacity:1}}
.etslide.n15 figure{animation-name:etfade15;animation-duration:75s}
.etslide.n15 figure:first-child{animation-name:etfirst15}
@keyframes etfade16{0%{opacity:0}1.25%{opacity:1}6.25%{opacity:1}7.5%{opacity:0}100%{opacity:0}}
@keyframes etfirst16{0%{opacity:1}6.25%{opacity:1}7.5%{opacity:0}98.75%{opacity:0}100%{opacity:1}}
.etslide.n16 figure{animation-name:etfade16;animation-duration:80s}
.etslide.n16 figure:first-child{animation-name:etfirst16}
@keyframes etfade17{0%{opacity:0}1.176%{opacity:1}5.882%{opacity:1}7.058%{opacity:0}100%{opacity:0}}
@keyframes etfirst17{0%{opacity:1}5.882%{opacity:1}7.058%{opacity:0}98.824%{opacity:0}100%{opacity:1}}
.etslide.n17 figure{animation-name:etfade17;animation-duration:85s}
.etslide.n17 figure:first-child{animation-name:etfirst17}
@keyframes etfade18{0%{opacity:0}1.111%{opacity:1}5.556%{opacity:1}6.667%{opacity:0}100%{opacity:0}}
@keyframes etfirst18{0%{opacity:1}5.556%{opacity:1}6.667%{opacity:0}98.889%{opacity:0}100%{opacity:1}}
.etslide.n18 figure{animation-name:etfade18;animation-duration:90s}
.etslide.n18 figure:first-child{animation-name:etfirst18}
@keyframes etfade19{0%{opacity:0}1.053%{opacity:1}5.263%{opacity:1}6.316%{opacity:0}100%{opacity:0}}
@keyframes etfirst19{0%{opacity:1}5.263%{opacity:1}6.316%{opacity:0}98.947%{opacity:0}100%{opacity:1}}
.etslide.n19 figure{animation-name:etfade19;animation-duration:95s}
.etslide.n19 figure:first-child{animation-name:etfirst19}
@keyframes etfade20{0%{opacity:0}1%{opacity:1}5%{opacity:1}6%{opacity:0}100%{opacity:0}}
@keyframes etfirst20{0%{opacity:1}5%{opacity:1}6%{opacity:0}99%{opacity:0}100%{opacity:1}}
.etslide.n20 figure{animation-name:etfade20;animation-duration:100s}
.etslide.n20 figure:first-child{animation-name:etfirst20}
@keyframes etfade21{0%{opacity:0}0.952%{opacity:1}4.762%{opacity:1}5.714%{opacity:0}100%{opacity:0}}
@keyframes etfirst21{0%{opacity:1}4.762%{opacity:1}5.714%{opacity:0}99.048%{opacity:0}100%{opacity:1}}
.etslide.n21 figure{animation-name:etfade21;animation-duration:105s}
.etslide.n21 figure:first-child{animation-name:etfirst21}
@keyframes etfade22{0%{opacity:0}0.909%{opacity:1}4.545%{opacity:1}5.454%{opacity:0}100%{opacity:0}}
@keyframes etfirst22{0%{opacity:1}4.545%{opacity:1}5.454%{opacity:0}99.091%{opacity:0}100%{opacity:1}}
.etslide.n22 figure{animation-name:etfade22;animation-duration:110s}
.etslide.n22 figure:first-child{animation-name:etfirst22}
@keyframes etfade23{0%{opacity:0}0.87%{opacity:1}4.348%{opacity:1}5.218%{opacity:0}100%{opacity:0}}
@keyframes etfirst23{0%{opacity:1}4.348%{opacity:1}5.218%{opacity:0}99.13%{opacity:0}100%{opacity:1}}
.etslide.n23 figure{animation-name:etfade23;animation-duration:115s}
.etslide.n23 figure:first-child{animation-name:etfirst23}
@keyframes etfade24{0%{opacity:0}0.833%{opacity:1}4.167%{opacity:1}5%{opacity:0}100%{opacity:0}}
@keyframes etfirst24{0%{opacity:1}4.167%{opacity:1}5%{opacity:0}99.167%{opacity:0}100%{opacity:1}}
.etslide.n24 figure{animation-name:etfade24;animation-duration:120s}
.etslide.n24 figure:first-child{animation-name:etfirst24}
@keyframes etfade25{0%{opacity:0}0.8%{opacity:1}4%{opacity:1}4.8%{opacity:0}100%{opacity:0}}
@keyframes etfirst25{0%{opacity:1}4%{opacity:1}4.8%{opacity:0}99.2%{opacity:0}100%{opacity:1}}
.etslide.n25 figure{animation-name:etfade25;animation-duration:125s}
.etslide.n25 figure:first-child{animation-name:etfirst25}
@keyframes etfade26{0%{opacity:0}0.769%{opacity:1}3.846%{opacity:1}4.615%{opacity:0}100%{opacity:0}}
@keyframes etfirst26{0%{opacity:1}3.846%{opacity:1}4.615%{opacity:0}99.231%{opacity:0}100%{opacity:1}}
.etslide.n26 figure{animation-name:etfade26;animation-duration:130s}
.etslide.n26 figure:first-child{animation-name:etfirst26}
@keyframes etfade27{0%{opacity:0}0.741%{opacity:1}3.704%{opacity:1}4.445%{opacity:0}100%{opacity:0}}
@keyframes etfirst27{0%{opacity:1}3.704%{opacity:1}4.445%{opacity:0}99.259%{opacity:0}100%{opacity:1}}
.etslide.n27 figure{animation-name:etfade27;animation-duration:135s}
.etslide.n27 figure:first-child{animation-name:etfirst27}
@keyframes etfade28{0%{opacity:0}0.714%{opacity:1}3.571%{opacity:1}4.285%{opacity:0}100%{opacity:0}}
@keyframes etfirst28{0%{opacity:1}3.571%{opacity:1}4.285%{opacity:0}99.286%{opacity:0}100%{opacity:1}}
.etslide.n28 figure{animation-name:etfade28;animation-duration:140s}
.etslide.n28 figure:first-child{animation-name:etfirst28}
@keyframes etfade29{0%{opacity:0}0.69%{opacity:1}3.448%{opacity:1}4.138%{opacity:0}100%{opacity:0}}
@keyframes etfirst29{0%{opacity:1}3.448%{opacity:1}4.138%{opacity:0}99.31%{opacity:0}100%{opacity:1}}
.etslide.n29 figure{animation-name:etfade29;animation-duration:145s}
.etslide.n29 figure:first-child{animation-name:etfirst29}
@keyframes etfade30{0%{opacity:0}0.667%{opacity:1}3.333%{opacity:1}4%{opacity:0}100%{opacity:0}}
@keyframes etfirst30{0%{opacity:1}3.333%{opacity:1}4%{opacity:0}99.333%{opacity:0}100%{opacity:1}}
.etslide.n30 figure{animation-name:etfade30;animation-duration:150s}
.etslide.n30 figure:first-child{animation-name:etfirst30}
@media (prefers-reduced-motion:reduce){.etslide figure{animation:none}.etslide figure:first-child{opacity:1}}
