:root{--green:#008d2b;--ink:#17251d;--muted:#626a64;--pale:#f2f5f1;--line:#dce3dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #dfac29;outline-offset:6px}.skip{position:fixed;top:-100px;left:20px;background:#fff;padding:12px;z-index:30}.skip:focus{top:10px}.topbar{background:var(--green);color:white;display:flex;justify-content:space-between;padding:9px 5%;font-size:12px;letter-spacing:1px}.topbar a{letter-spacing:0}.header{height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e9ede9}.brand{width:213px}.brand img{width:213px;height:auto}.brand>span{display:block;text-align:right;font-size:10px;letter-spacing:3.1px;font-weight:bold;line-height:1.4;padding-right:3px}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav>a:not(.nav-cta):hover{color:var(--green)}.nav-cta{padding:12px 19px;border:1px solid var(--line);display:flex;gap:24px;align-items:center}.menu-toggle{display:none}.hero{height:min(690px,76vw);min-height:560px;position:relative;color:white;background:#243c2b;isolation:isolate}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-photo{object-position:center 52%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,24,14,.87),rgba(7,24,14,.55) 45%,rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.45),transparent 35%)}.hero-content{padding:68px 7% 90px}.eyebrow{color:var(--green);font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 22px}.eyebrow.light{color:#c9efb8}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.02;letter-spacing:-2px}h1{font-size:clamp(64px,7.5vw,108px);font-weight:800;margin-bottom:26px}em{font-style:normal;color:var(--green)}h1 em,.snow em,.contact em{color:#bcebb0}.hero-content>p:not(.eyebrow){font-size:19px;line-height:1.6;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:15px 23px;min-height:55px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:22px;line-height:1}.white{background:white;color:var(--ink)}.white:hover{background:#ddf2d7}.dark{background:var(--ink);color:white}.dark:hover{background:var(--green)}.outline{border:1px solid var(--ink)}.hero-footer{position:absolute;bottom:0;left:7%;right:7%;border-top:1px solid #ffffff4a;padding:20px 0;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px}.hero-footer a{letter-spacing:0}.hero-footer a span{margin-left:18px}.values{display:flex;justify-content:space-between;padding:23px 7%;border-bottom:1px solid var(--line);font-size:14px}.values b{font-size:24px;color:var(--green);margin-right:8px}.values span{align-self:center}.section{padding:95px 7%}h2{font-size:clamp(36px,4vw,57px);font-weight:750;margin-bottom:25px;line-height:1.08}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:330px;color:var(--muted);margin-bottom:5px}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.world-card{position:relative;height:420px;color:#fff;overflow:hidden;background:var(--ink)}.world-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071b11ed,transparent 85%)}.world-card>img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.card-caption{position:absolute;bottom:27px;left:25px;right:23px;z-index:1}.number{font-size:11px;letter-spacing:1.6px;color:#d0eac8}.card-caption h3{font-size:30px;letter-spacing:-1px;margin:12px 0}.card-caption p{font-size:14px;color:#ecefeb;margin:0;padding-right:30px}.round-arrow{position:absolute;bottom:2px;right:0;border:1px solid #ffffff70;border-radius:50%;height:35px;width:35px;text-align:center;font-size:21px;line-height:32px}.story{background:var(--pale);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.story-photo{position:relative;max-width:440px;justify-self:center}.story-photo>img{width:100%;height:535px;object-fit:cover;object-position:center}.photo-note{position:absolute;bottom:-17px;left:20px;background:var(--green);color:#fff;padding:12px 17px;font-size:10px;letter-spacing:1px}.story-copy>p:not(.eyebrow){color:var(--muted)}.story-copy p.lead{color:var(--ink);font-size:21px;line-height:1.5}.signature{font-weight:700;font-size:15px;margin-top:25px}.text-link{display:inline-flex;gap:35px;align-items:center;color:var(--green);border-bottom:1px solid var(--green);padding:10px 0;font-size:14px;margin-top:13px;font-weight:bold}.brands{text-align:center}.brands h2{font-size:38px}.brand-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:20px;margin:40px 0 20px;align-items:center}.brand-grid img{width:100%;max-width:120px;height:auto;margin:auto;mix-blend-mode:multiply}.brand-note{font-size:14px;color:var(--muted);margin:0}.snow{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:#fff}.snow-image img{width:100%;height:100%;max-height:640px;object-fit:cover}.snow-copy{padding:65px 14% 65px 12%}.snow h2{font-size:clamp(45px,5vw,70px)}.snow-copy>p:not(.eyebrow){color:#edf6ea;max-width:390px;margin-bottom:30px}.team{display:flex;gap:35px;align-items:center;border-bottom:1px solid var(--line)}.team-number{color:var(--green);font-size:85px;align-self:start;line-height:1}.team h2{font-size:36px}.team p:not(.eyebrow){max-width:690px;margin:0;color:var(--muted)}.team .button{white-space:nowrap;margin-left:auto}.news{display:flex;justify-content:space-between;align-items:center;background:var(--pale);gap:40px}.news h2{font-size:48px}.news p:not(.eyebrow){color:var(--muted);margin-bottom:0}.contact{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:#fff;gap:15%}.contact h2{font-size:82px}.contact-intro>p:not(.eyebrow){color:#cad4cd;margin-bottom:30px}.contact-details{padding-top:10px}.contact-details>div{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid #ffffff29}.contact-details>div:last-child{margin:0;border:0}.contact-details h3{font-size:14px;color:#bcebb0;letter-spacing:.2px;margin-bottom:14px;line-height:1.3}.contact-details address{font-style:normal;font-size:19px}.contact-details a{display:block;font-size:19px;width:fit-content}.contact-details a:hover{text-decoration:underline}.hours{margin:0}.hours>div{display:flex;justify-content:space-between;gap:20px;padding-bottom:10px}.hours dd{margin:0;text-align:right}footer{padding:38px 7%;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:12px;background:#101c15;color:#bdc9bf}footer p{margin:0}.footer-brand{color:#fff;font-size:29px;font-weight:900;letter-spacing:-1px;line-height:1}.footer-brand span{display:block;font-size:8px;letter-spacing:2px;margin-top:9px}footer>a:hover{color:white}.legal{max-width:920px;margin:auto;padding:70px 7%}.legal h1{font-size:48px}.legal h2{font-size:25px;letter-spacing:-.5px;margin-top:35px}.legal li{margin:10px 0}.legal a{color:var(--green);text-decoration:underline}@media(min-width:1600px){.section{padding-left:max(7%,calc((100% - 1400px)/2));padding-right:max(7%,calc((100% - 1400px)/2))}}@media(max-width:1000px){nav{gap:18px;font-size:13px}.brand,.brand img{width:180px}.brand>span{font-size:9px}.header{padding:0 4%;height:92px}.section{padding:70px 5%}.hero-content{padding-left:5%}.world-card{height:340px}.card-caption{left:18px;right:18px}.card-caption h3{font-size:25px}.story{gap:6%}.story-photo>img{height:480px}.team{flex-wrap:wrap}.team>div{flex:1}.team .button{margin-left:85px}.brand-grid{gap:12px}.contact{gap:10%}}@media(max-width:720px){html{scroll-padding-top:90px}.topbar{justify-content:center;font-size:10px;padding:8px 10px}.topbar>a{display:none}.header{height:86px;padding:0 6%}.brand,.brand img{width:174px}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid var(--line);padding:8px 12px;font-size:14px}.menu-toggle span{font-size:18px}nav{display:none;position:absolute;top:86px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:18px 6% 25px;gap:0;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #0001}nav.is-open{display:flex}nav a{padding:12px 0;font-size:16px}.nav-cta{padding:12px;margin-top:8px}.hero{min-height:610px;height:calc(85svh - 115px);max-height:720px}.hero-content{padding:60px 7% 100px}.hero .eyebrow{font-size:10px;letter-spacing:1.4px}.hero h1{font-size:67px}.hero-content>p:not(.eyebrow){font-size:17px}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#071b11df,#071b1170),linear-gradient(0deg,#071b1190,transparent)}.hero-footer{left:7%;right:7%;font-size:10px;gap:15px}.hero-footer>span{max-width:150px}.hero-footer a{align-self:center}.values{padding:20px 6%;gap:15px;flex-wrap:wrap;justify-content:center;font-size:12px}.values span:first-child{width:100%;text-align:center}.values b{font-size:22px}.section{padding:62px 7%}.eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:17px}h2{font-size:39px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin:20px 0 0;max-width:100%}.world-grid{grid-template-columns:1fr;gap:18px}.world-card{height:370px}.card-caption{left:25px;right:25px}.card-caption h3{font-size:32px}.story{grid-template-columns:1fr;gap:50px}.story-photo{width:100%;max-width:360px}.story-photo>img{height:440px;object-position:center 42%}.photo-note{left:12px;font-size:8px;padding:13px}.story-copy p.lead{font-size:20px}.brands h2{font-size:34px}.brand-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:25px}.snow{grid-template-columns:1fr}.snow-image{height:330px}.snow-copy{padding:48px 7% 55px}.snow h2{font-size:56px}.team{gap:17px}.team-number{font-size:49px}.team h2{font-size:33px}.team .button{margin:10px 0 0 0}.news{display:block}.news h2{font-size:39px}.news .button{margin-top:30px}.contact{grid-template-columns:1fr;gap:45px}.contact h2{font-size:69px}.contact-details{padding:0}.contact-details address,.contact-details a{font-size:18px}footer{flex-wrap:wrap;padding:32px 7%;gap:24px}footer p{font-size:11px}.footer-brand{font-size:25px}footer>a:not(.footer-brand){font-size:12px}.back-top{margin-left:auto}.legal h1{font-size:38px}.button{gap:24px;font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media(max-width:374px){.hero h1{font-size:57px}.hero-content{padding-top:48px}.hero .button{padding:14px 15px;gap:14px;font-size:12px}.hero-footer{font-size:9px}.contact-details a{font-size:17px}.hours{font-size:14px}.photo-note{font-size:7px;left:6px;padding:12px 9px}}
/* Tutti i marchi del negozio: fascia continua, con pausa e scorrimento manuale. */
.brand-carousel{margin-top:35px}.brand-window{overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:10px 0;outline-offset:5px}.brand-track{display:flex;width:max-content}.brand-list{display:flex;flex:none;align-items:center;list-style:none;margin:0;padding:0}.brand-list li{flex:0 0 150px;width:150px;padding:0 15px}.brand-list img{width:120px;height:120px;object-fit:contain;mix-blend-mode:multiply}.brand-carousel.is-animated .brand-window{overflow-x:hidden}.brand-carousel.is-animated .brand-track{animation:brands-scroll 120s linear infinite}@keyframes brands-scroll{to{transform:translateX(-50%)}}@media(max-width:720px){.brand-list li{flex-basis:120px;width:120px;padding:0 10px}.brand-list img{width:100px;height:100px}.brand-carousel{margin-top:25px}}@media(prefers-reduced-motion:reduce){.brand-carousel.is-animated .brand-track{animation:none}.brand-carousel.is-animated .brand-window{overflow-x:auto}.brand-list[aria-hidden="true"],}
.gallery{background:#fff}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.gallery-filters[hidden]{display:none}.gallery-filters button{border:1px solid var(--line);background:white;padding:10px 17px;cursor:pointer;font-size:14px;color:var(--ink)}.gallery-filters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}.gallery-filters button span{opacity:.7;margin-left:7px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.gallery-item{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;background:var(--pale)}.gallery-item[hidden]{display:none}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.06)}.gallery-caption{position:absolute;bottom:0;left:0;right:0;padding:28px 15px 12px;background:linear-gradient(transparent,#071b11cf);color:white;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.gallery-caption>span{font-size:25px;line-height:1}.gallery-more{margin:28px auto 0;display:flex;background:#fff;cursor:pointer}.gallery-more[hidden]{display:none}.gallery-status{text-align:center;font-size:13px;color:var(--muted);margin:16px 0 0}.story-photo>.photo-open{display:block}.story-photo>.photo-open img{width:100%;height:535px;object-fit:cover;object-position:center}.photo-note{pointer-events:none}.lightbox{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:rgba(10,15,12,.98);color:white;overflow:hidden}.lightbox::backdrop{background:#0a0f0c}.lightbox[open]{display:flex;flex-direction:column}.lightbox-toolbar{height:65px;flex:none;display:flex;justify-content:space-between;align-items:center;padding:10px 24px}.lightbox-count{font-size:14px;color:#dce3dc}.lightbox button{border:0;background:#ffffff14;color:white;cursor:pointer}.lightbox button:hover{background:#ffffff2a}.lightbox-close{width:44px;height:44px;font-size:33px;line-height:1}.lightbox-stage{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-height:0;padding:0 24px;touch-action:pan-y}.lightbox-stage figure{margin:0;flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-image{width:100%;height:calc(100% - 46px);object-fit:contain;min-height:0}.lightbox-caption{height:46px;padding:10px 0;text-align:center;font-size:14px;flex:none}.lightbox-prev,.lightbox-next{flex:none;width:48px;height:56px;font-size:42px;line-height:1}.lightbox-thumbs{display:flex;gap:8px;overflow:auto;flex:none;max-width:100%;padding:12px 24px 20px;min-height:98px;scrollbar-width:thin;scrollbar-color:#ffffff60 transparent}.lightbox-thumb{padding:3px;flex:none;width:78px;height:62px;border:2px solid transparent!important}.lightbox-thumb[aria-current=true]{border-color:#bcebb0!important}.lightbox-thumb img{width:100%;height:100%;object-fit:cover}.lightbox-image.is-loading{opacity:.45}body.lightbox-open{overflow:hidden}@media(max-width:1100px) and (min-width:721px){nav{gap:13px}.nav-cta{padding:10px;gap:10px}.header{padding:0 3%}.brand,.brand img{width:155px}}@media(max-width:1000px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.story-photo>.photo-open img{height:480px}}@media(max-width:720px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-filters{gap:8px}.gallery-filters button{padding:9px 12px;font-size:13px}.gallery-caption{font-size:11px;padding:24px 10px 8px}.gallery-caption>span{font-size:22px}.story-photo>.photo-open img{height:440px;object-position:center 42%}.lightbox-toolbar{height:56px;padding:6px 14px}.lightbox-stage{padding:0 8px;gap:5px;position:relative}.lightbox-prev,.lightbox-next{position:absolute;z-index:1;width:38px;height:46px;top:calc(50% - 46px);background:#0009!important}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-caption{font-size:13px}.lightbox-thumbs{padding:10px 14px 15px;min-height:87px}.lightbox-thumb{width:68px;height:55px}}

/* Etichetta centrata rispetto alla foto di Fabio su ogni schermo. */
.story-photo .photo-note{left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);text-align:center}
/* Alternanza dei fondi con il verde del marchio. */
.story{background:var(--green);color:#fff}
.story .eyebrow{color:#c9efb8}
.story h2 em{color:#bcebb0}
.story .story-copy>p:not(.eyebrow){color:#edf6ea}
.story .story-copy p.lead{color:#fff}
.story .text-link{color:#fff;border-color:#ffffff9c}
.story .photo-note{background:#006b21;color:#fff}
.news{background:var(--green);color:#fff}
.news .eyebrow{color:#c9efb8}
.news h2 em{color:#bcebb0}
.news p:not(.eyebrow){color:#edf6ea}
.news .button{background:#fff;color:var(--ink)}
.news .button:hover{background:#ddf2d7}

/* Logo originale bianco: il fondo bianco del file diventa invisibile sul footer. */
footer .footer-brand{display:block;width:215px;flex-shrink:0}
footer .footer-brand img{width:100%;height:auto;filter:grayscale(1) invert(1) brightness(4);mix-blend-mode:screen}
footer .footer-brand span{text-align:right;font-size:9px;letter-spacing:2.5px;margin-top:7px}

footer .footer-info{font-size:13px;line-height:1.8;text-wrap:balance;max-width:680px}footer .footer-info>span{margin:0 4px}footer .footer-info a:hover{text-decoration:underline;color:#fff}
@media(max-width:720px){footer .footer-info{flex-basis:100%;font-size:12px}}

.brands-intro{max-width:720px;margin:0 auto;color:var(--muted)}

.contact-storefront{margin:20px 0 0;max-width:280px}.contact-storefront img{width:100%;height:auto}.contact-storefront figcaption{font-size:12px;color:#cad4cd;margin-top:7px}.contact-map{grid-column:1/-1;width:100%;min-width:0}.contact-map iframe{display:block;width:100%;height:360px;border:0;background:#e3e9e2}.contact{row-gap:45px}@media(max-width:720px){.contact-map iframe{height:300px}.contact-storefront{max-width:260px}}
.hero-slide{opacity:0;transition:opacity 1s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-slide:nth-of-type(5){object-position:center 58%}.hero-slider-controls{position:absolute;right:7%;bottom:92px;display:flex;align-items:center;gap:10px;z-index:2}.hero-slider-controls[hidden]{display:none}.hero-slider-controls button{color:#fff;cursor:pointer;border:1px solid #ffffff75;background:#122a1ecc;width:40px;height:40px;display:grid;place-items:center;font-size:25px;line-height:1}.hero-slider-controls button:hover{background:var(--green)}.hero-dots{display:flex;align-items:center;gap:10px}.hero-dots button{width:20px;height:40px;border:0;background:transparent;font-size:0}.hero-dots button:before{content:'';width:8px;height:8px;border:1px solid white;border-radius:50%;background:transparent}.hero-dots button[aria-pressed=true]:before{background:#fff}.hero-slider-controls .hero-play{font-size:17px}@media(max-width:1000px){.hero-slider-controls{bottom:84px}.hero .hero-content{padding-bottom:145px}.hero{min-height:660px}}@media(max-width:720px){.hero-slider-controls{left:7%;right:auto;bottom:87px;gap:8px}.hero-dots{gap:5px}.hero{min-height:670px}.hero-content{padding-top:45px}.hero-slider-controls button{width:36px;height:36px}.hero-dots button{width:18px;height:36px}}

/* Contatti compatti: informazioni e mappa affiancate. */
.contact{display:block;padding-top:60px;padding-bottom:60px}.contact-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}.contact-heading .eyebrow{margin-bottom:12px}.contact-heading h2{font-size:46px;margin:0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}.contact-info{display:grid;grid-template-columns:1.1fr 1fr;gap:24px 28px;align-content:start}.contact-info h3{font-size:14px;line-height:1.4;letter-spacing:0;color:#bcebb0;margin:0 0 10px}.contact-info address{font-style:normal;font-size:16px;line-height:1.7}.contact-reach a{display:block;width:fit-content;font-size:16px;line-height:1.7}.contact-reach a:hover{text-decoration:underline}.contact-info .hours{font-size:14px}.contact-info .hours>div{padding-bottom:7px;gap:12px}.contact-storefront{margin:0;width:100%;max-width:230px;align-self:start}.contact-storefront img{width:100%;height:145px;object-fit:cover}.contact-storefront figcaption{margin-top:5px}.contact-layout .contact-map{grid-column:auto;min-height:320px}.contact-layout .contact-map iframe{height:100%;min-height:320px}.contact-hours{min-width:0}@media(max-width:1000px){.contact-layout{gap:25px;grid-template-columns:1.15fr 1fr}.contact-info{gap:22px 18px}.contact-info address,.contact-reach a{font-size:14px}.contact-hours{max-width:330px}}@media(max-width:720px){.contact{padding-top:45px;padding-bottom:45px}.contact-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:28px}.contact-heading h2{font-size:36px}.contact-layout{grid-template-columns:1fr;gap:26px}.contact-info{grid-template-columns:1fr 1fr;gap:24px 18px}.contact-info address,.contact-reach a{font-size:14px}.contact-info .hours{font-size:13px}.contact-storefront{display:block}.contact-storefront img{height:125px}.contact-layout .contact-map,.contact-layout .contact-map iframe{min-height:250px;height:250px}}@media(max-width:374px){.contact-info{grid-template-columns:1fr}.contact-storefront{max-width:200px}.contact-hours{max-width:none}}
.contact-info .hours dd{white-space:nowrap}@media(min-width:721px) and (max-width:1000px){.contact-layout{grid-template-columns:1fr}.contact-info{grid-template-columns:1fr 1fr}.contact-storefront{max-width:230px}.contact-layout .contact-map iframe{height:280px;min-height:280px}}

/* Pulsanti senza frecce decorative. */
.button{justify-content:center;gap:0}.nav-cta{justify-content:center;gap:0}

.facebook-icon,.social-icon{display:block;width:22px;height:22px;flex-shrink:0;margin-right:12px}.social-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.social-actions .button{min-width:190px}
/* Rifiniture smartphone: spaziatura stabile e controlli touch. */
@media(max-width:720px){
 .menu-toggle{min-height:44px}
 #navigation{max-height:calc(100dvh - 86px);overflow-y:auto;overscroll-behavior:contain}
 .hero{display:flex;flex-direction:column;height:auto;min-height:620px;max-height:none}
 .hero .hero-content{padding:42px 7% 26px}
 .hero h1{font-size:clamp(48px,15vw,64px);margin-bottom:22px}
 .hero-content>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-bottom:24px}
 .hero-slider-controls{position:relative;left:auto;right:auto;bottom:auto;margin:0 7% 20px;gap:8px;align-self:flex-start}
 .hero-slider-controls button{width:40px;height:44px}
 .hero-dots{gap:0}.hero-dots button{width:20px;height:44px}
 .hero-footer{position:relative;left:auto;right:auto;bottom:auto;margin: auto 7% 0;padding:16px 0;gap:18px}
 .hero-footer a{min-height:44px;display:flex;align-items:center}
 .world-card{height:320px}
 .story-copy h2{font-size:35px}
 .gallery-filters button{min-height:44px}
 .lightbox-prev,.lightbox-next{width:44px;height:48px}
 .contact-info .hours dt{line-height:1.6}
 footer .footer-info{font-size:13px}
 footer>a:not(.footer-brand){min-height:44px;display:flex;align-items:center}
}
@media(max-width:374px){
 .hero{min-height:600px}
 .hero .hero-content{padding-top:32px}
 .hero h1{font-size:48px}
 .hero-footer{font-size:10px;gap:12px}
 .hero-footer a span{margin-left:8px}
 .hero .eyebrow{font-size:10px;letter-spacing:1px}
 .world-card{height:295px}
 .story-copy h2,.section-heading h2{font-size:33px}
}
@media(max-width:720px){.story-photo .photo-note{font-size:11px;line-height:1.5;padding:10px 14px;letter-spacing:.6px}.gallery-caption{font-size:12px}.topbar{text-align:center}}

/* Smartphone: dalla sezione neve in poi, testi e azioni più uniformi. */
@media(max-width:720px){
 .snow{display:block}
 .snow-image{height:245px;overflow:hidden}
 .snow-image img{height:100%;max-height:none;object-position:center 58%}
 .snow-copy{padding:38px 7% 44px;text-align:left}
 .snow-copy .eyebrow{max-width:260px;margin-bottom:18px;line-height:1.45}
 .snow h2{font-size:38px;line-height:1.08;letter-spacing:-.5px;margin-bottom:22px;max-width:315px}
 .snow-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;max-width:none;margin-bottom:24px}
 .snow .button,
 .team .button,
 .news .button,
 .contact-heading .button,
 .gallery-more{width:100%;min-height:52px;padding:14px 18px;text-align:center}
 .team{display:block;padding-top:48px;padding-bottom:48px}
 .team-number{display:none}
 .team .eyebrow{line-height:1.45;margin-bottom:15px}
 .team h2{font-size:34px;line-height:1.08;letter-spacing:-1px;margin-bottom:18px}
 .team p:not(.eyebrow){font-size:16px;line-height:1.65;max-width:none}
 .team .button{margin-top:24px;border-color:var(--green);color:var(--green)}
 .gallery .section-heading h2,
 .news h2,
 .contact-heading h2{font-size:34px;line-height:1.12;letter-spacing:-.5px}
 .gallery .section-heading>p,
 .news p:not(.eyebrow){font-size:16px;line-height:1.65}
 .gallery-filters{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:24px}
 .gallery-filters button{width:100%;min-height:52px;padding:10px 8px;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px}
 .gallery-filters button:first-child,
 .gallery-filters button:last-child{grid-column:auto}
 .gallery-grid{grid-template-columns:1fr;gap:12px}
 .gallery-item{aspect-ratio:4/3}
 .gallery-caption{min-height:46px;padding:18px 13px 10px;font-size:13px}
 .news{padding-top:50px;padding-bottom:50px}
 .news .eyebrow{line-height:1.45;margin-bottom:15px}
 .news h2{margin-bottom:20px}
 .news p br{display:initial}
 .news .button{margin-top:0}
 .social-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
 .social-actions .button{width:100%;min-width:0}
 .facebook-icon,.social-icon{width:20px;height:20px;margin-right:10px}
 .contact{padding-top:48px;padding-bottom:48px}
 .contact-heading{gap:18px;margin-bottom:24px}
 .contact-heading .eyebrow{line-height:1.45;margin-bottom:12px}
 .contact-info{grid-template-columns:1fr;gap:22px}
 .contact-info h3{font-size:13px;margin-bottom:8px}
 .contact-info address,
 .contact-reach a,
 .contact-info .hours{font-size:15px;line-height:1.7}
 .contact-info .hours>div{align-items:flex-start;border-bottom:1px solid #ffffff1f;padding-bottom:9px;margin-bottom:9px}
 .contact-info .hours>div:last-child{border-bottom:0;margin-bottom:0}
 .contact-storefront{max-width:none}
 .contact-storefront img{height:auto;aspect-ratio:4/3;object-fit:cover}
 .contact-layout .contact-map,
 .contact-layout .contact-map iframe{height:230px;min-height:230px}
 footer{align-items:flex-start}
 footer .footer-brand{width:190px}
 footer .footer-info{line-height:1.7}
}
@media(max-width:374px){
 .snow-image{height:220px}
 .snow h2{font-size:34px;max-width:285px}
 .team h2,
 .gallery .section-heading h2,
 .news h2,
 .contact-heading h2{font-size:30px}
 .snow .button,
 .team .button,
 .news .button,
 .contact-heading .button,
 .gallery-more{font-size:13px}
}

/* Fascia valori più ordinata, soprattutto da smartphone. */
.values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:#fff}
.values span{display:flex;align-items:center;justify-content:center;gap:12px;min-height:72px;padding:8px 14px;text-align:left;border:1px solid transparent}
.values b{display:block;margin:0;font-size:34px;line-height:1;color:var(--green)}
.values small{display:block;font-size:14px;font-weight:700;line-height:1.25;color:var(--ink)}
@media(max-width:720px){
 .values{padding:18px 7%;grid-template-columns:1fr;gap:10px;border-bottom:1px solid var(--line)}
 .values span{justify-content:flex-start;min-height:66px;padding:13px 16px;border-color:var(--line);background:#f8faf7}
 .values b{width:46px;font-size:33px;text-align:center;flex:none}
 .values small{font-size:15px}
}
@media(max-width:374px){
 .values{padding:16px 7%}
 .values span{min-height:62px;padding:12px 13px;gap:10px}
 .values b{width:40px;font-size:30px}
 .values small{font-size:14px}
}

.cookie-link{border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer}.cookie-link:hover{color:#fff;text-decoration:underline}.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:18px;background:#071b11d9;backdrop-filter:blur(8px)}.cookie-box{max-width:980px;margin:0 auto;background:#fff;color:var(--ink);padding:24px;box-shadow:0 12px 35px #0004}.cookie-box .eyebrow{margin-bottom:10px}.cookie-box h2{font-size:28px;letter-spacing:-.5px;margin-bottom:12px}.cookie-box p:not(.eyebrow){max-width:760px;margin-bottom:18px;color:var(--muted)}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions .button{min-height:48px;gap:0}.legal-nav{display:flex;gap:18px;flex-wrap:wrap;margin:26px 0 35px}.legal-nav a{font-weight:700;color:var(--green);text-decoration:none;border-bottom:1px solid currentColor}.legal table{border-collapse:collapse;width:100%;margin:18px 0 28px;font-size:15px}.legal th,.legal td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.legal th{background:#f5f8f4}
@media(max-width:720px){.cookie-banner{padding:12px}.cookie-box{padding:19px}.cookie-box h2{font-size:23px}.cookie-actions{display:grid;grid-template-columns:1fr}.cookie-actions .button{width:100%}.legal table{font-size:14px}.legal th,.legal td{padding:9px}}
