/* Agricola Canavesana: solo frecce su desktop, tutte le tappe verticali su mobile. */
.actl{--actl-yellow:#f5d900;--actl-dark:#303a3b;--actl-line:#d5dbd4;position:relative;width:100%;max-width:1240px;margin:0 auto;padding:22px 56px;background:transparent!important;color:var(--actl-dark);font-family:inherit;text-align:left}
.actl,.actl *{box-sizing:border-box}
.actl .actl-radio{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.actl .actl-viewport{width:100%;overflow:hidden;touch-action:pan-y}
.actl .actl-track{display:flex;width:100%;margin:0;padding:0;transition:transform .45s ease;align-items:stretch}
.actl .actl-page{display:flex;flex:0 0 100%;width:100%;min-width:0;gap:24px;margin:0;padding:0;align-items:stretch}
.actl .actl-item{position:relative;display:flex;flex-direction:column;flex:0 0 calc((100% - 48px)/3);min-width:0;margin:0;padding:0}
.actl .actl-year{margin:0;padding:0 0 14px;font-size:42px;font-weight:800;line-height:1.15;letter-spacing:-.04em;color:var(--actl-dark)}
.actl .actl-node{position:relative;height:30px;flex-shrink:0}
.actl .actl-node::before{content:"";position:absolute;top:9px;left:0;width:calc(100% + 24px);height:2px;background:var(--actl-line)}
.actl .actl-item:last-child .actl-node::before{width:100%}
.actl .actl-node span{position:absolute;top:1px;left:0;width:18px;height:18px;border:5px solid var(--actl-yellow);border-radius:50%;background:var(--actl-dark)}
.actl .actl-card{position:relative;flex:1;min-width:0;margin:0;padding:24px;border:1px solid #d7ddd5;border-radius:12px;background:white}
.actl .actl-card::before{content:"";position:absolute;left:28px;top:-7px;width:12px;height:12px;border-left:1px solid #d7ddd5;border-top:1px solid #d7ddd5;transform:rotate(45deg);background:white}
.actl h3{margin:0 0 14px;padding:0;font-family:inherit;font-size:22px;font-weight:700;line-height:1.25;letter-spacing:-.025em;color:var(--actl-dark)}
.actl .actl-card p{margin:0;padding:0;font-size:15px;line-height:1.7;color:#596164}
.actl figure{margin:24px 0 0;padding:0;border-radius:8px;overflow:hidden}
.actl img{display:block;width:100%;max-width:100%;height:auto;margin:0;padding:0;border:0;border-radius:8px}
.actl [data-year="1984"] img{clip-path:inset(1.5% 2.2% 4.3% 1.1% round 8px)}
.actl [data-year="1991"] img{transform:rotate(180deg)}
.actl [data-year="2025"] .actl-card,.actl [data-year="2025"] .actl-card::before{background:var(--actl-dark);border-color:var(--actl-dark)}
.actl [data-year="2025"] h3{color:var(--actl-yellow)}
.actl [data-year="2025"] p{color:#eef1ed}
.actl .actl-arrows{position:absolute;top:76px;left:0;right:0;display:none;align-items:center;justify-content:space-between;pointer-events:none}
.actl .actl-arrow{display:flex;align-items:center;justify-content:center;pointer-events:auto;cursor:pointer;width:42px;height:42px;margin:0;padding:0;border:1px solid #c8cfc7;border-radius:50%;background:white;color:var(--actl-dark);font-size:25px;font-weight:400;line-height:1;user-select:none}
.actl .actl-arrow:hover{background:var(--actl-yellow);border-color:var(--actl-yellow)}
.actl .actl-arrow-disabled{opacity:.3;pointer-events:none;cursor:default}
.actl .actl-radio:focus-visible~.actl-viewport{outline:3px solid #657563;outline-offset:4px}
@media(min-width:768px) and (max-width:999px){.actl{padding:20px 48px}.actl .actl-page{gap:14px}.actl .actl-item{flex-basis:calc((100% - 28px)/3)}.actl .actl-card{padding:16px}.actl h3{font-size:19px}.actl .actl-card p{font-size:14px}}
@media(max-width:767px){
 .actl{padding:20px 0}
 .actl .actl-viewport{overflow:visible}
 .actl .actl-track{display:block;position:relative;width:100%;transform:none!important;transition:none}
 .actl .actl-track::before{content:"";position:absolute;top:17px;bottom:30px;left:9px;width:2px;background:var(--actl-line)}
 .actl .actl-page{display:contents}
 .actl .actl-item{display:block;width:100%;padding:0 0 28px 40px}
 .actl .actl-year{font-size:35px}
 .actl .actl-node{position:absolute;left:1px;top:11px;width:18px;height:18px}
 .actl .actl-node::before{display:none}.actl .actl-node span{top:0}
 .actl .actl-card{padding:20px}.actl .actl-card::before{display:none}
 .actl h3{font-size:21px}
 .actl .actl-arrows,.actl .actl-radio{display:none!important}
}
@media(prefers-reduced-motion:reduce){.actl .actl-track{transition:none}}
