/* IDENTITÀ — impaginazione ispirata al riferimento Winner, identità e contenuti ZENIT. */
:root{--ink:#3c3c3b;--black:#3c3c3b;--yellow:#ffcd00;--muted:#626262;--paper:#f4f4f4;--line:#dedede}
html{scroll-padding-top:110px}body{max-width:none;font-family:Arial,Helvetica,sans-serif;line-height:1.7}h1,h2,h3{font-weight:750;letter-spacing:-.045em}h2{font-size:clamp(36px,4.5vw,64px)}em{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit;color:inherit}.eyebrow{font-size:12px;letter-spacing:.12em}.section{padding:110px max(6%,calc((100vw - 1180px)/2))}.button{border-radius:0;padding:18px 30px;font-size:15px;min-height:54px;justify-content:center}.text-link,.page-link,summary{font-size:15px}.brand img{width:150px;height:72px}.brand span{display:none}header{margin:0;padding:12px 5%;height:100px;border:0;background:var(--ink);color:#fff;gap:30px;position:sticky;top:0}nav{gap:25px;font-size:14px}nav a:hover,nav a[aria-current=page]{color:var(--yellow)}.nav-cta{border:1px solid #777;border-radius:0;padding:11px 19px}.nav-cta:hover{background:var(--yellow);color:var(--ink)}.identity-hero{min-height:calc(100svh - 100px);background:var(--ink);color:white;text-align:center;padding:100px 6% 44px;display:flex;align-items:center;flex-direction:column;justify-content:center}.identity-hero>.eyebrow{color:#bbb;margin-bottom:26px}.identity-hero h1{font-size:clamp(48px,6.3vw,92px);line-height:1.07;max-width:1120px}.identity-hero h1 em{color:var(--yellow)}.hero-description{font-size:clamp(16px,1.6vw,21px);line-height:1.65;margin:30px 0 36px;color:#dedede}.hero-button{background:#fff;color:var(--ink)}.hero-button:hover{background:var(--yellow)}.hero-down{margin-top:65px;font-size:28px;color:var(--yellow)}.identity-intro{display:grid;grid-template-columns:1fr 3fr;gap:50px;background:#fff}.identity-intro>.eyebrow{padding-top:14px}.identity-intro h2{margin-bottom:32px}.identity-intro h2 em{color:#857000}.identity-intro p:not(.eyebrow){font-size:21px;max-width:810px;margin-bottom:23px}.identity-intro .button{margin-top:10px}.solutions{background:#f4f4f4}.section-heading{gap:45px}.section-heading>p{max-width:430px;font-size:17px}.solution-card,.solution-card:nth-child(even){gap:65px;padding:60px 0;border-top:1px solid #d4d4d4;grid-template-columns:1fr 1fr}.card-photo{height:410px;border-radius:0;background:white}.card-body h3{font-size:clamp(32px,3.5vw,48px);font-weight:750}.card-body>.eyebrow{font-size:12px;color:#626262}.number{background:var(--yellow);border-radius:0;font-weight:bold}.brand-tags span{border-radius:0;font-size:13px;background:white}.detail-copy{font-size:16px}.materials{background:#fff;border-radius:0;padding:38px}.materials h3{font-weight:700}.materials p{font-size:16px}.method{background:var(--ink);color:white;grid-template-columns:1fr 1fr}.method h2 em{color:var(--yellow)}.method-intro>.eyebrow,.method-intro>p:not(.eyebrow){color:#c5c5c5}.pillars article{background:transparent;padding:25px 0;border-top:1px solid #555;border-radius:0}.pillars article>span{color:var(--yellow);font-size:15px}.pillars h3{font-weight:700}.pillars p{font-size:16px;color:#bbb}.pillars a{font-size:15px;border-color:#aaa}.catalog{background:var(--yellow)}.catalog-year{background:var(--ink);color:var(--yellow);box-shadow:none;transform:none}.catalog-year strong{font-weight:bold}.catalog-year>span,.catalog-year small{font-size:12px}.catalog .eyebrow,.catalog p:not(.eyebrow){color:#3c350b}.locations{background:white}.location h3{font-weight:700}.location address{font-size:16px}.location-links{font-size:14px}.location>.eyebrow{font-size:12px}.map-sidebar h3{font-weight:700}.map-sidebar>p:not(.eyebrow),#map-controls label{font-size:14px}.contact{background:var(--ink);color:#fff}.contact h2 em{color:var(--yellow)}.contact>.eyebrow{color:#bbb}.contact-arrow{border-color:#888;border-radius:0}.contact-arrow:hover{background:var(--yellow);color:var(--ink)}.contact-links{font-size:20px;flex-wrap:wrap;overflow-wrap:anywhere}footer{background:var(--ink);color:#bbb;font-size:13px;border-top:1px solid var(--ink);padding:40px 5%}footer .brand img{width:140px}.detail-hero{background:var(--ink);color:white;padding:55px 7% 0}.detail-heading{display:block;text-align:center;max-width:980px;margin:0 auto 55px}.breadcrumb{color:#aaa;font-size:12px}.detail-heading h1{font-weight:750;font-size:clamp(43px,5.5vw,76px);margin:24px 0}.detail-heading h1 em{color:var(--yellow)}.detail-heading>p{max-width:770px;margin:0 auto 27px;color:#c9c9c9;font-size:18px}.detail-hero>img{height:440px;max-width:1180px;margin:auto;object-fit:cover}.detail-topics{background:#f0f0f0;font-size:14px;color:var(--ink);flex-wrap:wrap}.editorial-block{padding:50px 0}.editorial-block>.eyebrow{font-size:12px;color:#666}.editorial-block h2{font-size:34px}.detail-cta{text-align:center;background:var(--yellow)}.detail-cta>p:not(.eyebrow){margin:auto}.detail-cta .actions{justify-content:center}.related{background:white}.about-hero{background:var(--ink);color:white;display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:center}.about-intro h1{font-size:clamp(44px,5.2vw,76px);margin:25px 0}.about-intro h1 em{color:var(--yellow)}.about-intro>p:not(.eyebrow){color:#ccc;font-size:18px;margin:25px 0}.leadership-card{margin:0;max-width:420px;justify-self:end}.leadership-photo{width:100%;height:auto;background:#efefef}.leadership-card figcaption{display:grid;padding:24px 0;gap:5px}.leadership-card figcaption span{color:#bbb;font-size:14px}.story-chapters{display:grid;gap:0}.story-chapters article{display:grid;grid-template-columns:100px 1fr;gap:25px;border-top:1px solid var(--line);padding:35px 0}.chapter-number{font-size:45px;font-weight:bold;color:#888}.story-chapters h3{font-size:30px;margin:10px 0 20px}.story-placeholder{padding:20px;background:#f3f3f3;color:#666;border-left:3px solid var(--yellow)}.about-qr{display:grid;grid-template-columns:1fr 300px;gap:80px;align-items:center;background:var(--yellow)}.about-qr h2{margin:20px 0}.about-qr p:not(.eyebrow){max-width:580px;margin-bottom:25px}.qr-card{margin:0;width:260px;background:white;padding:15px;justify-self:center}.qr-original{width:100%;height:auto}.qr-card figcaption{text-align:center;color:var(--ink);font-size:14px;margin:10px 0}.mobile-menu>summary{border-radius:0;border-color:#666;color:white}.mobile-menu nav{background:var(--ink);color:white}.skip{color:var(--ink)}a:focus-visible,summary:focus-visible{outline-color:#bc9200}
@media(max-width:1100px){header{padding:10px 4%;gap:20px}nav{gap:15px;font-size:13px}.section{padding:80px 6%}.solution-card,.solution-card:nth-child(even){gap:35px}.card-photo{height:350px}.about-hero{gap:40px}}
@media(max-width:900px){header{height:88px;margin:0}.brand img{width:130px;height:66px}header>nav{display:none}.mobile-menu{display:block;border:0}.mobile-menu>summary{padding:9px 15px;border:1px solid #666}.mobile-menu nav{display:none;position:absolute;top:88px;left:0;right:0;padding:20px 6%;box-shadow:0 10px 20px #3c3c3b44}.mobile-menu[open] nav{display:flex;flex-direction:column;align-items:stretch;gap:0}.mobile-menu nav a{padding:13px 12px}.identity-hero{min-height:calc(100svh - 88px);padding-top:70px}.identity-intro{grid-template-columns:1fr;gap:20px}.about-hero{grid-template-columns:1fr 1fr}.method{gap:35px}.eyebrow{font-size:12px}}
@media(max-width:760px){html{scroll-padding-top:88px}.section{padding:65px 6%}.identity-hero{padding:60px 6% 30px}.identity-hero h1{font-size:clamp(40px,8.6vw,62px)}.identity-hero>.eyebrow{font-size:12px;max-width:270px}.hero-description br{display:none}.hero-down{margin-top:38px}.identity-intro p:not(.eyebrow){font-size:18px}.solution-card,.solution-card:nth-child(even){grid-template-columns:1fr;gap:28px;padding:36px 0}.card-photo{height:300px}.method{grid-template-columns:1fr}.materials{padding:24px}.catalog{grid-template-columns:1fr}.section-heading>p{font-size:16px}.detail-heading>p{font-size:16px}.detail-hero>img{height:280px}.detail-topics{font-size:13px}.about-hero{grid-template-columns:1fr;gap:38px}.leadership-card{justify-self:center;max-width:340px}.about-qr{grid-template-columns:1fr;gap:35px}.story-chapters article{grid-template-columns:42px 1fr;gap:18px}.chapter-number{font-size:29px}.story-chapters h3{font-size:27px}.contact-row h2{font-size:clamp(30px,7vw,42px)}.contact-links{font-size:17px}.catalog-year strong{font-size:110px}.location-links{flex-wrap:wrap}}

/* Galleria continua: 3540px / 59s = 60px/s. I due gruppi identici evitano salti. */
.photo-strip{position:relative;background:#fff;padding:0 0 70px;--photo-width:560px;--photo-gap:30px;--photo-duration:59s}
.photo-window{overflow:hidden;width:100%}
.photo-track{display:flex;width:max-content;animation:zenit-photo-scroll var(--photo-duration) linear infinite;will-change:transform}
.photo-group{display:flex;gap:var(--photo-gap);padding-right:var(--photo-gap);flex:none}
.photo-strip-item{position:relative;width:var(--photo-width);margin:0;flex:none;background:#eee;overflow:hidden}
.photo-strip-item img{width:100%;height:350px;object-fit:cover}
.photo-strip-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:45px 24px 20px;background:linear-gradient(transparent,#3c3c3bcc);color:white;font-size:16px}
.photo-pause{position:absolute;width:1px;height:1px;clip-path:inset(50%)}
.photo-pause-label{display:block;width:max-content;margin:0 6% 20px auto;border:1px solid #aaa;padding:8px 15px;cursor:pointer;font-size:14px}
.play-text{display:none}.photo-pause:checked+.photo-pause-label .pause-text{display:none}.photo-pause:checked+.photo-pause-label .play-text{display:inline}
.photo-pause:checked~.photo-window .photo-track{animation-play-state:paused}
.photo-pause:focus-visible+.photo-pause-label{outline:3px solid #aa7900;outline-offset:4px}
@keyframes zenit-photo-scroll{to{transform:translateX(-50%)}}
@media(max-width:760px){.photo-strip{--photo-width:300px;--photo-gap:18px;--photo-duration:31.8s;padding-bottom:45px}.photo-strip-item img{height:210px}.photo-strip-item figcaption{font-size:14px;padding:35px 16px 15px}}
@media(prefers-reduced-motion:reduce){.photo-track{animation:none!important}.photo-window{overflow-x:auto}.photo-group[aria-hidden=true]{display:none}.photo-pause-label{display:none}}

/* Recensioni e documenti: spazi predisposti come nel riferimento fornito. */
.trust-section{background:#eaf0df;color:var(--ink)}
.trust-section h2{max-width:950px;margin-bottom:38px;font-size:clamp(36px,4.3vw,62px);line-height:1.1}
.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.trust-card{background:#fff;border-radius:30px;padding:40px}
.trust-card h3{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin-bottom:22px}
.trust-card>p{font-size:19px;line-height:1.65;color:#565d61;margin-bottom:28px}
.trust-note{border-left:2px solid #84af35;padding-left:18px;font-size:16px;line-height:1.65;color:#565d61}
@media(max-width:760px){.trust-grid{grid-template-columns:1fr;gap:20px}.trust-card{padding:28px;border-radius:24px}.trust-section h2 br{display:none}.trust-card>p{font-size:17px}}

/* Navigazione, pagine documenti e modulo contatti. */
.trust-card{padding:0}.trust-card-link{display:block;height:100%;padding:40px;border-radius:30px}.trust-card-link:hover{box-shadow:inset 0 0 0 2px var(--yellow)}.trust-card-link>p{font-size:19px;line-height:1.65;color:var(--muted);margin-bottom:28px}.trust-open{display:block;margin-top:24px;font-weight:700;font-size:15px}.contact-form-link{margin-top:28px}
.subpage-heading{background:var(--ink);color:white}.subpage-heading>.eyebrow{color:var(--yellow)}.subpage-heading h1{font-size:clamp(38px,5.5vw,76px);margin:22px 0;max-width:1000px}.subpage-heading>p:last-child{color:#e0e5e4;max-width:700px;font-size:18px}.resource-list h2{font-size:36px}.resource-empty{padding:32px;background:var(--paper);border-left:4px solid var(--yellow);margin:30px 0}.resource-empty h3{font-size:24px;margin-bottom:18px}.resource-empty p{max-width:780px;margin-bottom:14px;color:var(--muted)}
.form-section{display:grid;grid-template-columns:1fr 1.6fr;gap:65px}.form-intro h2{font-size:36px}.form-intro>p{margin:24px 0}.form-status{background:var(--paper);padding:22px;border-left:3px solid var(--yellow)}.form-status a{text-decoration:underline}.zenit-form{display:grid;gap:25px}.zenit-form fieldset{border:0;padding:0;margin:0;min-width:0}.zenit-form legend{font-size:23px;font-weight:700;margin-bottom:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.zenit-form label{display:grid;gap:9px;font-size:16px}.zenit-form input,.zenit-form select,.zenit-form textarea{width:100%;min-width:0;border:1px solid #a6b2a8;border-radius:0;padding:14px;background:#fff;color:var(--ink);font:inherit}.zenit-form textarea{resize:vertical}.zenit-form :is(input,select,textarea):focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.form-note{font-size:14px;color:var(--muted)}.zenit-form button{justify-self:start;border:0}.zenit-form button:disabled{opacity:.6;cursor:not-allowed}
@media(max-width:760px){.trust-card-link{padding:28px;border-radius:24px}.trust-card-link>p{font-size:17px}.form-section{grid-template-columns:1fr;gap:35px}.form-grid{grid-template-columns:1fr}.resource-empty{padding:24px}}

/* Selettori marchio indipendenti, radio nativi e immagini controllate dal CSS. */
.brand-selector{border:0;padding:0;min-width:0;gap:10px}.brand-selector legend{font-size:13px;color:var(--muted);margin-bottom:10px}.brand-option{position:relative;display:block;cursor:pointer}.brand-option input{position:absolute;opacity:0;width:100%;height:100%;margin:0;inset:0;cursor:pointer}.brand-option span{display:block;font-size:14px;padding:9px 15px;min-height:44px;border:1px solid var(--line);background:#fff;color:var(--ink)}.brand-option input:checked+span{background:var(--yellow);border-color:var(--ink);font-weight:700}.brand-option input:focus-visible+span{outline:3px solid #aa7900;outline-offset:3px}.brand-option:hover span{border-color:var(--ink)}
.solution-card .card-photo{background:#fff}.brand-photo{position:absolute;inset:0;display:none}.brand-photo img{width:100%;height:100%;object-fit:cover}.brand-photo.brand-logo-photo img{object-fit:contain;padding:25px 25px 45px}.brand-photo-caption{position:absolute;bottom:0;left:0;background:var(--ink);color:#fff;padding:8px 16px;font-size:14px}.solution-card .number{z-index:1}
.solution-card:has(.brand-option input[data-index="1"]:checked) .brand-photo-1{display:block}
.solution-card:has(.brand-option input[data-index="2"]:checked) .brand-photo-2{display:block}
.solution-card:has(.brand-option input[data-index="3"]:checked) .brand-photo-3{display:block}

.reviews-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px}.reviews-layout h2{font-size:36px;margin-bottom:24px}.review-intro{margin-bottom:25px;color:var(--muted)}.review-stars{display:flex;gap:10px;flex-wrap:wrap}.review-stars label{position:relative;display:block}.review-stars input{position:absolute;opacity:0;inset:0;cursor:pointer}.review-stars span{display:block;padding:10px 14px;border:1px solid var(--line);cursor:pointer}.review-stars input:checked+span{background:var(--yellow);border-color:var(--ink);font-weight:bold}.review-stars input:focus-visible+span{outline:3px solid #aa7900;outline-offset:3px}.zenit-form .review-consent{display:flex;align-items:flex-start;gap:12px;font-size:14px}.review-consent input{width:20px;height:20px;flex:none;margin-top:3px}.review-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.review-message{padding:20px;background:var(--paper);border-left:4px solid var(--yellow);margin-bottom:25px}.review-entry{padding:25px;background:var(--paper);margin-bottom:20px;overflow-wrap:anywhere}.review-entry h3{font-size:21px}.review-entry time{color:var(--muted);font-size:13px}.review-source{font-size:13px;color:var(--muted);margin-top:3px}.review-source a{text-decoration:underline;text-underline-offset:3px}.review-user-heading{margin:35px 0 20px}.review-rating{color:#785900;margin:8px 0;font-size:20px}.review-entry p:last-child{white-space:pre-wrap}.review-pagination{display:flex;gap:20px;margin-top:25px}.review-pagination a{text-decoration:underline}@media(max-width:800px){.reviews-layout{grid-template-columns:1fr;gap:45px}}

.reviews-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:40px}
.review-results{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}
.review-results>h2,.review-results>.review-intro,.review-results>.google-reviews,.review-results>.review-user-heading,.review-results>.review-pagination,.review-results>.resource-empty{grid-column:1/-1}
.review-results>h2{margin-bottom:8px}
.google-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.review-results .review-entry{margin-bottom:0;padding:20px}
@media(max-width:1050px){.reviews-layout{grid-template-columns:1fr}}
@media(max-width:620px){.review-results,.google-reviews{grid-template-columns:1fr}}

/* Storia ZENIT: tappe interattive tratte dal catalogo. */
.zenit-history{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;background:#fff;align-items:start}.history-copy{position:sticky;top:130px}.history-copy h2{margin:20px 0 32px}.history-copy>p:not(.eyebrow){font-size:18px;color:var(--muted);margin-bottom:23px}.history-copy strong{color:var(--ink)}.history-copy .button{margin-top:10px}.history-timeline{position:relative;padding-left:12px}.history-timeline:before{content:'';position:absolute;top:60px;bottom:30px;left:49px;width:4px;background:var(--yellow)}.timeline-instruction{margin-bottom:30px;font-size:12px;color:var(--muted)}.history-step{position:relative;border:0;margin-bottom:18px}.history-step>summary{display:flex;align-items:center;gap:20px;padding:0;list-style:none;min-height:76px}.history-year{display:grid;place-items:center;flex:0 0 76px;height:76px;background:#fff;border:2px solid var(--yellow);border-radius:50%;font-size:20px;font-weight:700;color:var(--ink)}.history-step-title{font-size:20px;font-weight:700;line-height:1.3;flex:1}.history-toggle{font-size:27px;color:var(--ink);padding:10px}.history-step[open] .history-year{background:var(--yellow)}.history-step[open] summary .history-year,.history-step[open] summary .history-step-title{transform:none}.history-step[open] .history-toggle{transform:rotate(45deg)}.history-step>summary:hover .history-step-title{text-decoration:underline;text-decoration-color:var(--yellow);text-underline-offset:6px}.history-events{margin:15px 0 30px 96px;padding:22px;background:var(--paper);border-radius:8px}.history-event{padding:15px 0;border-bottom:1px solid var(--line)}.history-event:first-child{padding-top:0}.history-event:last-child{padding-bottom:0;border-bottom:0}.history-event img{width:100%;max-width:336px;height:auto;margin-bottom:15px;border-radius:4px}.history-event p{font-size:16px;line-height:1.65}.history-step>summary:focus-visible{outline:3px solid #aa7900;outline-offset:5px}
@media(max-width:1000px){.zenit-history{gap:40px}.history-copy{position:static}.history-step-title{font-size:18px}.history-events{margin-left:70px}.history-year{flex-basis:58px;height:58px;font-size:18px}.history-timeline:before{left:39px}.history-step>summary{gap:14px}}
@media(max-width:760px){.zenit-history{grid-template-columns:1fr;gap:45px}.history-copy>p:not(.eyebrow){font-size:17px}.history-timeline{padding-left:0}.history-timeline:before{left:27px}.history-year{flex-basis:58px;height:58px}.history-events{margin-left:40px;padding:20px}.history-toggle{padding:5px}.history-step-title{font-size:18px}.timeline-instruction{font-size:12px}}

/* Percorso a onda: ogni curva segue l'altezza della tappa, anche quando è aperta. */
.zenit-history{grid-template-columns:.9fr 1.25fr;gap:65px}.history-timeline{--year-size:72px;--wave-width:82px;--wave-gutter:178px;--step-gap:34px;padding-left:0;isolation:isolate}.history-timeline:before{display:none}.timeline-instruction{margin-bottom:40px}.history-step{min-height:112px;margin:0 0 var(--step-gap);padding:0;border:0}.history-step>summary{min-height:var(--year-size);display:grid;grid-template-columns:var(--wave-gutter) 1fr 30px;gap:0;align-items:center;padding:0;border-radius:12px}.history-wave{position:absolute;left:calc(var(--year-size)/2);top:calc(var(--year-size)/2);width:var(--wave-width);height:calc(100% + var(--step-gap));overflow:visible;color:var(--yellow);z-index:-1;pointer-events:none}.history-step .history-year{width:var(--year-size);height:var(--year-size);border:3px solid var(--yellow);background:#fff;box-shadow:0 0 0 7px #fff;font-size:20px;position:relative;grid-column:1;justify-self:start;transition:background .2s,box-shadow .2s}.history-step.wave-right .history-year{margin-left:var(--wave-width)}.history-step-title{grid-column:2;padding:10px 15px 10px 0;font-size:21px}.history-toggle{grid-column:3;padding:0;text-align:center;font-size:27px}.history-step[open] .history-year{background:var(--yellow);box-shadow:0 0 0 7px #fff,0 7px 20px #3c3c3b15}.history-step>summary:hover .history-year{background:#fff0be}.history-step[open]>summary:hover .history-year{background:var(--yellow)}.history-events{margin:14px 0 0 var(--wave-gutter);border:1px solid var(--line);background:#f7f9f7;border-radius:18px;padding:24px;box-shadow:0 8px 25px #3c3c3b06}.history-event img{max-width:none;border-radius:10px}.history-event p{font-size:16px}.history-step:last-child{margin-bottom:0}.history-step:last-child .history-year{background:var(--ink);color:var(--yellow);border-color:var(--ink)}
@media(max-width:1100px){.zenit-history{grid-template-columns:1fr;gap:50px}.history-copy{max-width:850px;position:static}.history-timeline{max-width:850px;width:100%;justify-self:center;--wave-width:120px;--wave-gutter:220px}.history-events{max-width:560px}.history-event img{max-width:336px}}
@media(max-width:600px){.history-timeline{--year-size:52px;--wave-width:44px;--wave-gutter:112px;--step-gap:28px}.history-step{min-height:90px}.history-step .history-year{font-size:15px;border-width:2px;box-shadow:0 0 0 5px #fff}.history-step-title{font-size:17px;padding-right:8px}.history-step>summary{grid-template-columns:var(--wave-gutter) 1fr 24px}.history-events{padding:16px;border-radius:12px}.history-event p{font-size:15px}.history-step[open] .history-year{box-shadow:0 0 0 5px #fff}.timeline-instruction{max-width:280px;line-height:1.7}}

.leadership-card{width:100%}.leadership-video{display:block;background:#fff;overflow:hidden}.leadership-video:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}.leadership-video .leadership-photo{display:block;width:100%;height:auto;object-fit:contain;background:#fff}.leadership-watch{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--yellow);color:var(--ink);padding:14px 18px;font-size:15px;font-weight:700;line-height:1.3;text-align:center}.leadership-video:hover .leadership-watch{background:#ffe067}

/* Foto iniziale fissa, sostituita solo alla selezione di un marchio. */
.solution-card .brand-photo-default{display:block}
.solution-card:has(.brand-option input:checked) .brand-photo-default{display:none}

.photo-placeholder{display:grid;place-items:center;width:100%;height:100%;background:#f1f3f1;color:var(--ink);font-size:clamp(24px,3vw,40px);font-weight:700;letter-spacing:.06em;text-align:center;padding:24px}

/* Pagine interne: tre colonne affiancate, ciascuna con titolo e testo verticali. */
.vertical-editorial .editorial{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 36px;align-items:start}
.vertical-editorial .editorial-block{display:flex;flex-direction:column;gap:20px;min-width:0;padding:30px 0 0;margin:0}
.vertical-editorial .editorial-block>.eyebrow{margin:0}
.vertical-editorial .editorial-block>h2{font-size:clamp(26px,2.3vw,34px);line-height:1.15;margin:0;overflow-wrap:break-word}
.vertical-editorial .editorial-block>div{width:100%;min-width:0}
.vertical-editorial .editorial-block>div p:last-child{margin-bottom:0}
@media(max-width:1000px){.vertical-editorial .editorial{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}}
@media(max-width:640px){.vertical-editorial .editorial{grid-template-columns:minmax(0,1fr);gap:32px}}

.vertical-editorial .editorial-block.project-support{grid-column:1/-1;max-width:none}
.vertical-editorial .editorial.project-editorial{display:block;padding-top:70px}
.vertical-editorial .editorial-block.project-support{background:#f4f4f4;border-top:4px solid var(--yellow);padding:clamp(28px,4vw,56px);gap:20px}
.vertical-editorial .project-support>h2{font-size:clamp(34px,4vw,58px);max-width:920px;line-height:1.08}
.project-support .project-lead{max-width:1040px;font-size:clamp(18px,1.7vw,21px);line-height:1.65;color:#4e5655;margin:0 0 14px}
.project-support .project-lead strong{color:var(--ink)}
.project-coherence{border-block:1px solid #d2d9d2;padding:32px 0}
.project-support h3{font-size:23px;line-height:1.25;margin:0 0 14px}
.project-coherence p{font-size:16px;line-height:1.7;color:#565e5d;margin:0;max-width:1000px}
.project-alignment{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.project-alignment li{border-left:3px solid var(--yellow);padding:5px 0 5px 14px;font-weight:700;font-size:15px}
.project-support .project-small{font-size:13px;line-height:1.6;color:#626a69;margin:0}
.project-support .project-legal{max-width:930px}
.project-support>.button{align-self:flex-start;margin-top:8px}
@media(max-width:760px){.vertical-editorial .editorial.project-editorial{padding-top:50px}.project-alignment{grid-template-columns:1fr;gap:7px}}

/* Immagini delle gamme: proporzioni uniformi, prodotto sempre visibile. */
.vertical-editorial .editorial-block>.editorial-photo{display:block;width:100%;aspect-ratio:16/10;height:auto;object-fit:contain;background:#f3f4f5;margin:0 0 6px}
.materials>.materials-photo{width:100%;height:180px;object-fit:cover;display:block;grid-column:1/-1;margin-bottom:24px}
.brand-photo img[src*="inim-previdia"],.brand-photo img[src*="ajax-en54"]{object-fit:contain;background:#f3f4f5}
.materials:has(.materials-photo){grid-template-columns:1fr 1.2fr}.materials:has(.materials-photo)>.text-link{grid-column:2}.materials:has(.materials-photo)>.materials-photo{height:240px}
@media(max-width:760px){.materials:has(.materials-photo){grid-template-columns:1fr}.materials:has(.materials-photo)>.text-link{grid-column:1}.materials:has(.materials-photo)>.materials-photo{height:180px}}

/* Foto originali San Zeno: preservare inquadratura e insegne. */
.photo-strip-item img[src*="san-zeno-"]{height:auto;aspect-ratio:2048/921;object-fit:contain}
.detail-hero>img.branch-photo{height:auto;aspect-ratio:2048/921;object-fit:contain;align-self:center;background:#f4f4f4}
.materials>.materials-photo[src*="san-zeno-"]{height:auto;aspect-ratio:2048/921;object-fit:contain}

/* Selezione fotografica originale: formati misti nello scorrimento. */
.photo-strip-item img[src*="san-zeno-"],.photo-strip-item img[src*="zenit-reale-"]{height:350px;aspect-ratio:auto;object-fit:contain;background:var(--ink)}
.detail-hero>img.original-photo{height:auto;aspect-ratio:2048/1365;object-fit:contain;align-self:center}
.materials>.materials-photo[src*="zenit-reale-"]{height:280px;object-fit:cover}
@media(max-width:760px){.photo-strip-item img[src*="san-zeno-"],.photo-strip-item img[src*="zenit-reale-"]{height:210px}.materials>.materials-photo[src*="zenit-reale-"]{height:200px}}
/* Foto dei marchi nella home: prodotto leggibile anche su sfondo chiaro. */
.solution-card .brand-photo:not(.brand-photo-default) img{object-fit:contain;background:#f3f4f5;padding:18px 18px 36px}
.solution-card .brand-photo img[src*="magos-radar"],.solution-card .brand-photo img[src*="inim-antintrusione.webp"]{object-fit:cover;padding:0}
.solution-card .brand-photo-default img[src*="base-antintrusione"]{object-position:25% center}
/* Griglia marchi: link diretti ai siti ufficiali. */
.supplier-brands{background:#fff}
.supplier-brands .section-heading{margin-bottom:34px}
.supplier-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.supplier-link{position:relative;display:grid;place-items:center;min-width:0;min-height:128px;padding:20px;background:#fff;border:1px solid var(--line);transition:transform .2s,box-shadow .2s,border-color .2s}
.supplier-link img,.elementor .supplier-link img{display:block;width:100%;height:72px;object-fit:contain}
.supplier-link-arrow{position:absolute;top:9px;right:13px;color:var(--ink);font-size:17px;line-height:1;opacity:.55}
.supplier-link:hover{transform:translateY(-3px);border-color:var(--ink);box-shadow:0 10px 24px #3c3c3b18}
.supplier-link:hover .supplier-link-arrow{opacity:1}
.supplier-link:focus-visible{outline:3px solid #aa7900;outline-offset:3px}
.supplier-link--fadini{background:var(--ink)}
.supplier-link--fadini .supplier-link-arrow{color:#fff}
@media(max-width:1100px){.supplier-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.supplier-link{min-height:108px;padding:15px}.supplier-link img,.elementor .supplier-link img{height:62px}}

.history-event .history-illustration{margin:0 0 14px}.history-event .history-illustration img{display:block;width:100%;height:185px;max-width:none;object-fit:contain;background:#fff;margin:0;border-radius:10px}.history-event .history-illustration.photo img{object-fit:cover}.history-event .history-illustration figcaption{font-size:12px;line-height:1.4;color:var(--muted);margin-top:6px}

.history-event .history-illustration.logo img{padding:22px;box-sizing:border-box}.history-event .history-brand-pair{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px;height:185px;padding:20px;background:#fff;border-radius:10px}.history-event .history-brand-pair img{width:100%;height:100px;max-width:none;object-fit:contain;margin:0;padding:0}

.vertical-editorial .project-designer{max-width:780px;padding:20px 24px;border-left:5px solid var(--yellow);background:#f4f4f4;color:var(--ink)}

.solution-card .page-link{min-height:60px;margin-top:22px;padding:16px 20px;border:0;background:var(--yellow);color:var(--ink);font-size:16px}
.solution-card .page-link span{font-size:22px;line-height:1}
.solution-card .page-link:hover{background:var(--ink);color:#fff}
.solution-card:has(.brand-option input[data-index="4"]:checked) .brand-photo-4{display:block}
.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.trust-grid{grid-template-columns:1fr}}
.detail-hero>img.topic-hero{object-position:center 10%}
.solution-card .brand-photo img[src*="videotecnologie-studio"]{object-fit:contain;object-position:center;padding:0;background:#e4e1de}
.vertical-editorial .editorial-block>.editorial-photo[src*="videotecnologie-studio"]{object-fit:cover;object-position:center}

.detail-hero>img.concept-hero{object-position:center center}
.detail-hero>img.concept-video-art{height:auto;aspect-ratio:3/2;object-fit:contain}
.location-contact{display:grid;gap:5px;margin-top:14px;font-size:14px}
.location-contact strong{font-size:16px}
.location-contact a{width:fit-content;max-width:100%;overflow-wrap:anywhere}
.location-contact a:hover,.sales-contact a:hover{text-decoration:underline}
.location-links{justify-content:flex-start;margin-top:14px}
.locations-action{margin-top:32px}
.sales-contacts{background:var(--paper)}
.sales-contacts h2{margin:10px 0 36px}
.sales-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sales-contact{min-width:0;padding:24px;background:#fff;border-top:4px solid var(--yellow)}
.sales-zone{min-height:48px;color:var(--muted);font-size:14px}
.sales-contact h3{font-size:22px;line-height:1.2;margin:12px 0}
.sales-contact a{display:inline-block;margin-top:12px;font-weight:700}
@media(max-width:1000px){.sales-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sales-grid{grid-template-columns:1fr}.sales-zone{min-height:0}}

/* Moduli ufficiali Zoho. */
.review-form-panel{align-self:start;min-width:0;background:var(--paper);border-top:4px solid var(--yellow);padding:28px}
.review-form-panel>.eyebrow{font-size:11px;margin-bottom:16px}
.review-form-panel h2{font-size:32px;line-height:1.2;margin-bottom:18px}
.zenit-zoho-frame{display:block;width:100%;height:840px;border:0;background:#fff}
.zenit-zoho-frame[inert]{opacity:.55}
.zenit-zoho-contact{min-width:0}
.zenit-zoho-contact .zenit-zoho-frame{height:940px}
.zoho-privacy-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;color:var(--muted)}
.zoho-privacy-consent input{width:18px;height:18px;flex:none;margin-top:3px;accent-color:var(--ink)}
.zoho-privacy-consent a,.zoho-policy-note a{text-decoration:underline;text-underline-offset:3px}
.zoho-privacy-consent a:focus-visible,.zoho-privacy-consent input:focus-visible,.zoho-policy-note a:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.zoho-policy-note{font-size:13px;line-height:1.6;color:var(--muted);margin:12px 0 18px}
.review-form-panel:has(#review-privacy:checked) #review-privacy-hint{display:none}
.review-rating{display:flex;align-items:center;gap:10px}
.review-rating-number{color:var(--ink);font-size:16px;letter-spacing:0}
@media(max-width:620px){.review-form-panel{padding:24px 20px}.review-form-panel .zenit-zoho-frame{width:calc(100% + 40px);margin-left:-20px;height:940px}.zenit-zoho-contact .zenit-zoho-frame{height:1100px}}

/* Informative legali nel footer. */
footer{flex-wrap:wrap}footer>a{white-space:nowrap}
.footer-policy-links{grid-column:1/-1;flex-basis:100%;display:flex;flex-wrap:wrap;gap:16px 28px;justify-content:flex-start;border-top:1px solid #777;padding-top:20px;width:100%;font-size:14px}
.footer-policy-links a{color:#fff;text-decoration:underline;text-underline-offset:4px;padding:7px 0}
.footer-policy-links a:hover{color:var(--yellow)}
.footer-policy-links a:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.footer-policy-bar{background:var(--ink);padding:20px 5%;margin:0}

/* Moduli Contatti e Recensioni: grafica ZENIT, campi originali Zoho. */
:is(.zenit-contact-form,.zenit-review-form){background:var(--paper);border-top:4px solid var(--yellow);padding:32px;gap:22px}
:is(.zenit-contact-form,.zenit-review-form) label{font-weight:700;color:var(--ink)}
:is(.zenit-contact-form,.zenit-review-form) legend{font-size:16px;font-weight:700;margin-bottom:9px}
:is(.zenit-contact-form,.zenit-review-form) input,:is(.zenit-contact-form,.zenit-review-form) textarea,:is(.zenit-contact-form,.zenit-review-form) select{font-weight:400;border-color:var(--line)}
:is(.zenit-contact-form,.zenit-review-form) select{padding:8px}
:is(.zenit-contact-form,.zenit-review-form) select option{padding:6px 8px}
:is(.zenit-contact-form,.zenit-review-form) select option:checked{background:var(--yellow);color:var(--ink)}
:is(.zenit-contact-form,.zenit-review-form) .form-note{font-size:13px}
:is(.zenit-contact-form,.zenit-review-form) #contact-interests-help{margin-top:-14px}
:is(.zenit-contact-form,.zenit-review-form) .review-consent{font-size:14px;font-weight:400}
:is(.zenit-contact-form,.zenit-review-form) .zoho-policy-note{margin:8px 0 0 32px}
:is(.zenit-contact-form,.zenit-review-form) .hero-button{display:inline-flex;background:var(--yellow);color:var(--ink);font:700 16px/1.5 Arial,Helvetica,sans-serif;border-radius:0;cursor:pointer}
:is(.zenit-contact-form,.zenit-review-form) .hero-button:hover{background:var(--ink);color:#fff}
@media(max-width:620px){:is(.zenit-contact-form,.zenit-review-form){padding:24px 20px}:is(.zenit-contact-form,.zenit-review-form) .hero-button{width:100%}}

/* Voto a stelle: radio nativi, voto obbligatorio e selezione da tastiera. */
.zenit-review-form{padding:0;border-top:0}
.review-vote-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.review-vote-row output{font-size:18px;font-weight:700;color:var(--ink)}
.zenit-form .review-star-choices{display:flex;gap:4px}
.zenit-form .review-star-choices label{position:relative;display:block;width:38px;height:44px;cursor:pointer}
.zenit-form .review-star-choices input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}
.review-star-choices span{display:block;font-size:40px;line-height:44px;color:var(--yellow)}
.review-star-choices span::before{content:'☆'}
.review-star-choices label:has(input:checked) span::before,.review-star-choices label:has(~label input:checked) span::before,.review-star-choices label:hover span::before,.review-star-choices label:has(~label:hover) span::before{content:'★';color:var(--yellow)}
.review-star-choices input:focus-visible+span{outline:3px solid var(--yellow);outline-offset:2px}

/* Conferma di invio: stessa identità visiva ZENIT. */
.thank-you{background:var(--paper);min-height:70vh;display:grid;place-items:center}
.thank-you-card{background:#fff;border-top:4px solid var(--yellow);padding:54px;width:100%;max-width:900px;text-align:center}
.thank-you-mark{display:grid;place-items:center;margin:0 auto 24px;width:64px;height:64px;border-radius:50%;background:var(--yellow);color:var(--ink);font-size:36px;font-weight:700}
.thank-you h1{font-size:clamp(48px,6vw,82px);line-height:1.05;margin:18px 0 26px;letter-spacing:-.045em}
.thank-you h1 em{font-style:normal;color:var(--ink)}
.thank-you-lead{font-size:22px;font-weight:700;color:var(--ink)}
.thank-you-card p{max-width:640px;margin-left:auto;margin-right:auto}
.thank-you-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:34px}
@media(max-width:620px){.thank-you-card{padding:36px 22px}.thank-you-actions{flex-direction:column}.thank-you-actions .button{width:100%}}
