/* Fotografia di territorio: foto singole, ognuna ritagliata a sé.
   background-size:cover le fa sempre riempire e ridimensionare correttamente
   con il loro contenitore, a qualunque larghezza di schermo. */

.m-hero,
.mc,
.m-method figure,
.m-projects article,
.m-shepherd,
.m-tomatoes,
.m-valley{
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}

.m-hero{background-image:url('assets/photos/borgo-tramonto.jpg')!important}
.mc.one{background-image:url('assets/photos/vino-tavola.jpg')!important}
.mc.two{background-image:url('assets/photos/agriturismo.jpg')!important}
.mc.three{background-image:url('assets/photos/tavola-cibo.jpg')!important}
.mc.four{background-image:url('assets/photos/vicolo-fiori.jpg')!important}
.mc.five{background-image:url('assets/photos/produttore-tablet.jpg')!important}
.mc.six{background-image:url('assets/photos/costa-borgo.jpg')!important}
.m-method figure{background-image:url('assets/photos/borgo-tramonto.jpg')!important}
.m-projects article{background-image:url('assets/photos/casaro.jpg')!important}

.m-challenge{
  background-image:linear-gradient(90deg,rgba(4,11,10,.96),rgba(4,11,10,.52)),url('assets/photos/mani-pomodori.jpg')!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}

.m-shepherd{background-image:url('assets/photos/pastore.jpg')!important}
.m-tomatoes{background-image:url('assets/photos/pomodori-mani.jpg')!important}
.m-valley{background-image:url('assets/photos/sentiero-borgo.jpg')!important}

/* Asset ad alta definizione: nessun mosaico ingrandito, nessuna deformazione. */
.m-hero,.m-method figure{background-image:url('assets/tratturo-panorama-v1.png')!important}
.mc.one,.mc.three,.mc.five,.m-projects article,.m-shepherd,.m-tomatoes{background-image:url('assets/tratturo-producer-v1.png')!important}
.mc.two,.mc.four,.mc.six,.m-valley{background-image:url('assets/tratturo-hospitality-v1.png')!important}
.m-challenge{background-image:linear-gradient(90deg,rgba(4,11,10,.96),rgba(4,11,10,.52)),url('assets/tratturo-panorama-v1.png')!important}

.m-final-cta{background:#101c22;color:#fff;padding:5rem max(6vw,2rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr);gap:4rem;align-items:center}.m-final-cta>div{max-width:35rem}.m-final-cta p{font:600 .625rem Sora,sans-serif;letter-spacing:.18em;color:#ff9063}.m-final-cta h2{font:700 clamp(2rem,3.2vw,3.5rem)/1.05 Sora,sans-serif;letter-spacing:-.04em;margin:.6rem 0 1rem}.m-final-cta>div>span{display:block;color:#d9dfdd;line-height:1.55;max-width:31rem}.m-final-cta>div>a{display:inline-block;color:#fff;font:600 .875rem Sora,sans-serif;margin-top:1.5rem}.m-contact-form{background:#fff;border-radius:1rem;padding:1.5rem;display:grid;gap:.75rem;color:#243039}.m-contact-form label{font-size:.75rem;font-weight:700}.m-contact-form input:not([type=checkbox]),.m-contact-form textarea{display:block;width:100%;margin-top:.3rem;border:1px solid #d3d9d7;border-radius:.5rem;padding:.65rem;font:400 .875rem 'DM Sans',sans-serif;resize:vertical}.m-contact-form input:focus,.m-contact-form textarea:focus{outline:2px solid #efb08f;border-color:transparent}.m-contact-form .m-consent{display:flex;gap:.5rem;align-items:flex-start;font-weight:400;font-size:.7rem;color:#5d6665}.m-contact-form .m-cta{border:0;justify-self:start;cursor:pointer}.m-contact-form small{font-size:.65rem;line-height:1.35;color:#6d7674}.m-footer{background:#fff;padding:3.5rem max(6vw,2rem);display:grid;grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:2rem;color:#45504e}.m-footer .m-logo{color:#101c22}.m-footer>div{display:flex;flex-direction:column;gap:.5rem;font-size:.75rem}.m-footer b{font:600 .8rem Sora,sans-serif;color:#101c22}.m-footer a{color:#45504e;text-decoration:none}.m-footer small{font-size:.68rem;line-height:1.5}@media (max-width:700px){.m-final-cta{grid-template-columns:1fr;gap:2rem;padding:4rem 1.25rem}.m-footer{grid-template-columns:1fr 1fr;padding:2.5rem 1.25rem}.m-footer .m-logo,.m-footer>div:last-child{grid-column:1/-1}.m-contact-form{padding:1.125rem}}
.motion-ready .m-method-copy,.motion-ready .m-method ol,.motion-ready .m-method figure,.motion-ready .m-challenge>div,.motion-ready .m-projects>div,.motion-ready .m-bottom>div,.motion-ready .m-final-cta>div,.motion-ready .m-contact-form,.motion-ready .m-footer>*,.motion-ready .mc{opacity:0;transform:translateY(18px);transition:opacity .6s ease var(--reveal-delay,0ms),transform .6s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms)}.motion-ready .is-revealed{opacity:1;transform:none}.m-hero:before{animation:tratturo-hero 15s ease-in-out infinite alternate}@keyframes tratturo-hero{to{transform:scale(1.035)}}@media (prefers-reduced-motion:reduce){.m-hero:before{animation:none}}
.motion-ready .m-method-copy,.motion-ready .m-method ol,.motion-ready .m-method figure,.motion-ready .m-challenge>div,.motion-ready .m-projects>div,.motion-ready .m-bottom>div,.motion-ready .m-final-cta>div,.motion-ready .m-contact-form,.motion-ready .m-footer>*,.motion-ready .mc{opacity:1;transform:none}

/* Chiusura editoriale: progetti, studio e storie sono ora tre blocchi leggibili. */
.m-projects{margin-top:4rem;border-top:.0625rem solid rgba(11,15,20,.09);padding-top:1.5rem}
.m-projects{display:none}
.m-bottom{margin-top:3rem;grid-template-columns:repeat(3,1fr);grid-template-areas:"shepherd about stories" "valley valley valley";min-height:0;border-top:.0625rem solid rgba(11,15,20,.09)}
.m-shepherd{grid-area:shepherd}.m-about{grid-area:about}.m-tomatoes{grid-area:tomatoes}.m-stories{grid-area:stories}.m-valley{grid-area:valley;min-height:20rem!important;margin-top:2rem}
.m-bottom>div{min-height:20rem}.m-about,.m-stories{padding:2.25rem 1.75rem;background:#fff}.m-bottom h2{font-size:1.5rem;line-height:1.1}.m-bottom span{font-size:.75rem;line-height:1.5}.m-about a,.m-stories a{font-size:.6875rem;margin-top:.75rem}
@media(max-width:1050px){.m-bottom{grid-template-columns:1fr 1fr;grid-template-areas:"shepherd about" "stories stories" "valley valley"}.m-valley{display:block!important}}
@media(max-width:680px){.m-projects{margin-top:2.5rem;padding-top:0}.m-bottom{margin-top:2rem;grid-template-columns:1fr;grid-template-areas:"shepherd" "about" "stories" "valley"}.m-bottom>div{min-height:15rem}.m-about,.m-stories{padding:2.25rem 1.25rem}.m-valley{grid-area:valley;min-height:16rem!important;margin-top:0}}
/* Una scena distinta per ogni servizio: mai una foto ripetuta nella griglia. */
.mc.one{background-image:url('assets/tratturo-wine-v1.png')!important}.mc.two{background-image:url('assets/tratturo-hospitality-v1.png')!important}.mc.three{background-image:url('assets/tratturo-artigiano-v1.png')!important}.mc.four{background-image:url('assets/tratturo-borgo-v1.png')!important}.mc.five{background-image:url('assets/tratturo-producer-v1.png')!important}.mc.six{background-image:url('assets/tratturo-panorama-v1.png')!important}
.m-projects article{background-image:url('assets/tratturo-wine-v1.png')!important}.m-shepherd{background-image:url('assets/tratturo-producer-v1.png')!important}.m-tomatoes{display:none}.m-valley{background-image:url('assets/tratturo-borgo-v1.png')!important}
.m-manifesto{position:relative;min-height:25rem;display:flex;align-items:center;padding:4rem 6%;color:#fff;isolation:isolate;overflow:hidden;background:url('assets/tratturo-panorama-v1.png') center/cover}.m-manifesto:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,14,13,.88),rgba(5,14,13,.26))}.m-manifesto>div{max-width:42rem}.m-manifesto p{font:600 .625rem Sora,sans-serif;letter-spacing:.18em;color:#ff9365}.m-manifesto blockquote{font:italic clamp(2rem,3.5vw,4rem)/1.08 'Playfair Display',serif;margin:.75rem 0 0}.m-manifesto em{color:#ffad83}.m-method-line{stroke-dasharray:900;stroke-dashoffset:900;animation:tratturo-path 3.2s ease-out forwards}@keyframes tratturo-path{to{stroke-dashoffset:0}}.m-ecosystem span{transition:transform .35s ease,color .35s ease}.m-ecosystem span:hover{transform:translateY(-.18rem);color:#ffad83}.m-manifesto:after{content:'';position:absolute;width:16rem;height:16rem;border:1px solid rgba(255,255,255,.28);border-radius:50%;right:8%;top:20%;animation:tratturo-orbit 9s linear infinite}@keyframes tratturo-orbit{to{transform:rotate(360deg) scale(1.07)}}@media(prefers-reduced-motion:reduce){.m-method-line,.m-manifesto:after{animation:none}}

/* Correzioni di leggibilità e allineamento emerse dal controllo visivo. */
@media(min-width:681px){.m-nav nav{font-size:.9rem;gap:1.6rem}.m-nav .m-cta{font-size:.8rem;padding:.76rem 1.3rem}.m-logo{font-size:.9rem}.m-ecosystem{min-height:4.6rem}.m-ecosystem span{min-width:12rem;height:2.35rem;padding:0 1.15rem}.m-ecosystem b{font-size:.75rem;line-height:1.18}.m-ecosystem svg{width:1.55rem;height:1.55rem}}
.m-method figure{margin:2rem calc(-1 * 5.8vw) 0!important;padding-left:5.8vw!important;padding-right:5.8vw!important}
.m-valley{display:none!important}.m-bottom{grid-template-columns:repeat(3,1fr)!important;grid-template-areas:"shepherd about stories"!important}.m-manifesto{margin-top:3rem}
@media(max-width:680px){.m-method figure{margin:2rem 0 0!important;padding-left:1.25rem!important;padding-right:1.25rem!important}.m-bottom{grid-template-columns:1fr!important;grid-template-areas:"shepherd" "about" "stories"!important}.m-manifesto{margin-top:2rem}}

/* Desktop medio: leggibilità prioritaria, non dimensioni da mock-up. */
@media(min-width:681px) and (max-width:1300px){.m-nav nav{font-size:15px!important;gap:1.75rem}.m-nav .m-cta{font-size:14px!important}.m-logo{font-size:14px!important}.m-ecosystem b{font-size:12px!important}.m-ecosystem span{min-width:12.8rem}.m-services>div,.m-method-copy>div{font-size:16px!important;line-height:1.58}.m-bottom span{font-size:14px!important;line-height:1.55}.m-about a,.m-stories a{font-size:13px!important}.m-final-cta>div>span{font-size:16px!important}.m-contact-form label{font-size:13px!important}}

/* Lock-up più compatto: il brand resta riconoscibile senza dominare la navigazione. */
.m-logo{width:12rem;font-size:.7rem;letter-spacing:.12em;gap:.42rem}.m-logo img{width:2.2rem;height:2.2rem}.m-logo b{font-size:.5rem;letter-spacing:.24em}.m-logo small{font-size:.34rem;margin-top:.14rem}@media(min-width:681px) and (max-width:1300px){.m-logo{font-size:12px!important}.m-logo img{width:34px;height:34px}.m-logo b{font-size:8px}.m-logo small{font-size:6px}}

/* Movimento legato al percorso: segnali, linee e materia, mai contenuti nascosti. */
@keyframes tratturo-note{0%,100%{transform:rotate(-12deg) translateY(0)}50%{transform:rotate(-10deg) translateY(-.45rem)}}
@keyframes tratturo-signal{0%,100%{transform:translateY(0);filter:drop-shadow(0 0 0 rgba(196,81,31,0))}50%{transform:translateY(-.22rem);filter:drop-shadow(0 .25rem .35rem rgba(196,81,31,.32))}}
@keyframes tratturo-card{0%,100%{transform:translateY(0)}50%{transform:translateY(-.16rem)}}
.m-note{animation:tratturo-note 5s ease-in-out infinite}.m-ecosystem span svg{animation:tratturo-signal 3.2s ease-in-out infinite}.m-ecosystem span:nth-child(2) svg{animation-delay:.25s}.m-ecosystem span:nth-child(3) svg{animation-delay:.5s}.m-ecosystem span:nth-child(4) svg{animation-delay:.75s}.m-ecosystem span:nth-child(5) svg{animation-delay:1s}.m-ecosystem span:nth-child(6) svg{animation-delay:1.25s}.mc{animation:tratturo-card 6s ease-in-out infinite}.mc:nth-child(2){animation-delay:.45s}.mc:nth-child(3){animation-delay:.9s}.mc:nth-child(4){animation-delay:1.35s}.mc:nth-child(5){animation-delay:1.8s}.mc:nth-child(6){animation-delay:2.25s}@media(prefers-reduced-motion:reduce){.m-note,.m-ecosystem span svg,.mc{animation:none}}

/* Lock-up in testata: pittogramma ufficiale colorato, trasparente e senza riquadro. */
.m-nav .m-logo{width:18.1rem!important;gap:.7rem!important;font-size:1.05rem!important;letter-spacing:.15em!important;line-height:1.03;align-items:center}
.m-nav .m-logo img{display:none!important}
.m-nav .m-logo:before{content:'';display:block;flex:0 0 4.75rem;width:4.75rem;height:4.75rem;background:url('assets/tratturo-logo-official-transparent.png') left center/auto 5rem no-repeat}
.m-nav .m-logo b{font-size:1rem!important;letter-spacing:.19em!important}
.m-nav .m-logo small{font-size:.75rem!important;letter-spacing:.055em!important;margin-top:.3rem!important;font-weight:600;white-space:nowrap}
@media(max-width:680px){.m-nav .m-logo{width:auto!important;gap:.55rem!important;font-size:1rem!important}.m-nav .m-logo:before{flex-basis:4rem;width:4rem;height:4rem;background-size:auto 4.25rem}.m-nav .m-logo b{font-size:.92rem!important}.m-nav .m-logo small{font-size:.68rem!important}}

/* Footer: il lock-up deve restare riconoscibile anche in chiusura pagina. */
.m-footer .m-logo{width:15rem!important;gap:.65rem!important;font-size:1rem!important;letter-spacing:.14em!important;line-height:1.04}
.m-footer .m-logo img{width:3.7rem!important;height:3.7rem!important;object-fit:contain!important}
.m-footer .m-logo b{font-size:.9rem!important;letter-spacing:.2em!important}
.m-footer .m-logo small{font-size:.68rem!important;letter-spacing:.055em!important;margin-top:.25rem!important}
@media(max-width:700px){.m-footer .m-logo{width:14rem!important;font-size:.94rem!important}.m-footer .m-logo img{width:3.35rem!important;height:3.35rem!important}.m-footer .m-logo b{font-size:.84rem!important}}
