/* Home v2 - same language as the shop */
body.hm-page{background:#fff}
.hm .sh-wrap{box-sizing:border-box}
/* Hero: full-screen video, giant AEDB in white */
.hm-hero{position:relative;height:calc(100vh - var(--nav-height) - var(--safe-top,0px));height:calc(100dvh - var(--nav-height) - var(--safe-top,0px));min-height:520px;overflow:hidden;background:#123b66;padding:0!important;display:flex;align-items:flex-end}
.hm-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hm-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(18,59,102,.78) 0%,rgba(18,59,102,.25) 45%,rgba(18,59,102,.1) 100%)}
.hm-hero__in{position:relative;z-index:1;width:100%;padding-bottom:clamp(18px,2.6vw,36px)}
.hm-hero *{color:#fff}
.hm-giant{color:#fff}
.hm-info{border-top-color:#fff!important}
.hm-info a{display:inline-flex;align-items:center;gap:.4em;color:#fff!important}
.hm-info .sh-arr{width:1em;height:1em;stroke-width:3.2}
/* Sections */
.hm-sec{padding-block:clamp(90px,11vw,170px)}
.hm-sec--b{background:#123b66}
.hm-sec--b,.hm-sec--b *{color:#fff}
.hm-sec--b a,.hm-sec--b a:hover{color:#fff}
.hm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;border-bottom:3px solid currentColor;padding-bottom:14px;margin-bottom:clamp(16px,1.8vw,28px)}
.hm-h2{font-weight:700;font-size:clamp(2.8rem,8.4vw,8.6rem);line-height:.84;letter-spacing:-.045em;text-transform:uppercase}
.hm-head a{display:inline-flex;align-items:center;gap:.45em}
.hm-head .sh-arr,.hm-foot .sh-arr{width:.95em;height:.95em;stroke-width:3.2}
.hm-head a:hover .sh-arr,.hm-foot a:hover .sh-arr{transform:translate(2px,-2px)}
/* Manifesto */
.hm-manifesto{padding-block:clamp(110px,14vw,220px)}
.hm-manifesto>.sh-lab{display:block;border-top:3px solid var(--n);padding-top:16px;margin-bottom:clamp(24px,3vw,48px)}
.hm-quote{font-weight:500;font-size:clamp(2.4rem,6.6vw,7rem);line-height:.98;letter-spacing:-.035em;max-width:16ch}
.hm-l{display:inline}
.hm-l.sh-rv{display:inline-block}
.hm-l:nth-child(2){transition-delay:120ms}.hm-l:nth-child(3){transition-delay:240ms}
/* Dal campo */
.hm-match{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,24px)}
.hm-fig{margin:0}
.hm-fig__ph{background:rgba(255,255,255,.06);overflow:hidden}
.hm-fig__ph img{display:block;width:100%;height:auto;transition:transform 1000ms cubic-bezier(.22,1,.36,1)}
.hm-fig:hover img{transform:scale(1.02)}
.hm-sec--b .sh-cat::before{background:#fff}
.hm-fig .sh-cat{margin-top:12px}
/* Social */
.hm-ig{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(8px,1vw,14px)!important;width:auto!important;margin:0!important;padding:0!important}
.hm-ig .ig-tile{aspect-ratio:1;background:var(--g)!important;border-radius:0!important;width:auto;height:auto;box-shadow:none!important;border:0!important;padding:0!important;outline:0!important}
.hm-ig .ig-tile::before,.hm-ig .ig-tile::after{display:none!important}
.hm-ig .ig-tile>*{box-shadow:none!important;border-radius:0!important}
.hm-ig .ig-tile__ph{color:rgba(18,59,102,.3)!important;font-family:"Inter Tight",sans-serif!important;font-weight:700}
.hm-ig .ig-tile__overlay{background:linear-gradient(180deg,rgba(18,59,102,0) 45%,rgba(18,59,102,.85))!important}
.hm-ig .ig-tile__overlay span{font-family:"Inter Tight",sans-serif!important}
.hm-foot{display:flex;justify-content:flex-end;gap:clamp(18px,2.4vw,36px);margin-top:clamp(16px,1.8vw,24px)}
.hm-foot a{display:inline-flex;align-items:center;gap:.45em}
/* Shop teaser */
.hm-shop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,24px)}
.hm-sec--b .sh-card__ph{background:#eeeff1}
.hm-cta{margin-top:clamp(40px,5vw,72px);background:#fff!important}
.hm-cta,.hm-cta *{color:#123b66!important}
/* Squadre */
.hm-teams .sh-card__ph img{object-fit:cover}
.hm-soon{display:grid;place-items:center;background:#123b66!important}
.hm-soon .sh-lab{color:#fff!important}
.hm-teams .sh-cat{font-size:12px;font-weight:500}
/* Sponsor marquee */
.hm-mq{overflow:hidden;margin-top:clamp(10px,1.4vw,20px)}
.hm-mq .marquee__track{display:flex;gap:clamp(10px,1.2vw,18px);width:max-content;animation:hmMq 48s linear infinite;padding-inline:clamp(10px,1.2vw,18px)}
.hm-mq:hover .marquee__track{animation-play-state:paused}
.hm-mq .sponsor{flex:none;width:clamp(150px,15vw,220px);aspect-ratio:3/2;background:#fff!important;display:grid;place-items:center;padding:clamp(14px,1.6vw,24px);border:0!important;border-radius:0!important;box-shadow:none!important}
.hm-mq .sponsor img{max-width:100%;max-height:100%;object-fit:contain;display:block}
@keyframes hmMq{to{transform:translateX(-50%)}}
@media (max-width:900px){
.hm-match{grid-template-columns:1fr}
.hm-ig{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.hm-ig .ig-tile:nth-child(n+5){display:none!important}
.hm-shop{grid-template-columns:repeat(2,minmax(0,1fr))}
.hm-info{gap:10px 20px}
}
@media (prefers-reduced-motion:reduce){.hm-mq .marquee__track{animation:none;flex-wrap:wrap;width:auto}.hm-hero__video{display:none}}

/* v2 tweaks */
.hm-hov{padding:.5em .7em;margin:-.5em -.7em;transition:background 200ms,color 200ms}
.hm-hov:hover{background:#123b66;color:#fff!important;text-decoration:none!important}
.hm-foot{gap:clamp(24px,3vw,44px)}
/* Sponsor: original pinned 3-row animation, new cards */
.hm-sp{background:#123b66!important}
.hm-sp .sponsor-pin__sticky{background:#123b66!important}
.hm-sp,.hm-sp *{color:#fff}
.hm-sp .sponsor-head{width:100%;text-align:left!important;padding-inline:clamp(18px,2.6vw,40px)!important}
.hm-sp .hm-head{border-bottom-color:#fff}
.hm-sp .sponsor{background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.hm-sp .sponsor img{filter:none!important}
/* Footer on home: white with blue graphics */
body.hm-page .footer{background:#fff!important;border-top:3px solid #123b66!important}
body.hm-page .footer__circle{color:#123b66!important;border-color:#123b66!important}
body.hm-page .footer__circle:hover{background:#123b66!important;color:#fff!important}
body.hm-page .footer__logo{filter:none!important}
body.hm-page .footer__word,body.hm-page .footer__legal,body.hm-page .footer__legal a{color:#123b66!important}
body.hm-page .footer__circle.sh-foot-rlz,body.hm-page .footer__circle.sh-foot-rlz:hover{background:none!important;border:0!important}
body.hm-page .footer__circle.sh-foot-rlz img{filter:none!important}

/* Hero v3: clean video, small logo + labels at the bottom */
.hm-hero::after{background:linear-gradient(to top,rgba(18,59,102,.7) 0%,rgba(18,59,102,0) 38%)!important}
.hm-hero__logo{display:block;height:clamp(48px,5vw,72px);width:auto;margin-bottom:clamp(14px,1.6vw,22px);opacity:0;transform:translateY(16px);transition:opacity 800ms ease,transform 900ms cubic-bezier(.22,1,.36,1)}
.hm-hero.is-in .hm-hero__logo{opacity:1;transform:none}
.hm-info{margin-top:0!important;opacity:0;transition:opacity 800ms ease 200ms}
.hm-hero.is-in .hm-info{opacity:1}
/* Squadre: landscape 3:2 cards, 3 columns */
.hm-teams{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.hm-teams .sh-card__ph{aspect-ratio:3/2}
.hm-teams .sh-cat{font-size:13px}
@media (max-width:900px){.hm-teams{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:560px){.hm-teams{grid-template-columns:1fr!important}}
/* Sponsor head always visible, same as other sections */
.hm-sp .sponsor-head{opacity:1!important;transform:none!important;position:relative}
@media (prefers-reduced-motion:reduce){.hm-hero__logo,.hm-info{opacity:1;transform:none}}

.hm-hero__word{height:auto!important;font-weight:700;font-size:clamp(2.6rem,6vw,6rem);line-height:.86;letter-spacing:-.045em;text-transform:uppercase;color:#fff;margin:0 0 clamp(14px,1.6vw,22px)}

/* v4: no seam under the nav, contact section + panel */
body.hm-page .nav,body.hm-page .nav__inner{border:0!important;box-shadow:none!important}
body.hm-page .nav::before,body.hm-page .nav::after{display:none!important}
.hm-hero{margin-top:-1px}
.hm-ct{position:relative;overflow:hidden;background:#123b66;min-height:min(100vh,980px);display:flex}
.hm-ct__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.2;pointer-events:none}
.hm-ct__in{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(60px,10vh,160px);padding-top:clamp(28px,3vw,44px)!important;padding-bottom:clamp(28px,3vw,44px)!important}
.hm-ct,.hm-ct *{color:#fff}
.hm-ct__top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;border-top:3px solid #fff;padding-top:clamp(18px,2vw,30px)}
.hm-ct__t{font-weight:700;font-size:clamp(3.2rem,9vw,9.6rem);line-height:.86;letter-spacing:-.05em;margin:0}
.hm-ct__logos{display:flex;align-items:center;gap:clamp(16px,2vw,32px)}
.hm-ct__logos img{display:block;width:auto}
.hm-ct__aedb{height:clamp(84px,11vw,190px)}
.hm-ct__rlz{height:clamp(104px,13.6vw,236px)}
.hm-ct__sub{font-weight:500;font-size:clamp(1.3rem,2.4vw,2.4rem);letter-spacing:-.03em;line-height:1.05;margin:0 0 clamp(14px,1.6vw,24px)}
.hm-ct__btn{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;cursor:pointer;background:#fff;color:#123b66!important;padding:clamp(22px,2.6vw,40px) clamp(20px,2.4vw,40px);font-family:inherit;font-weight:700;font-size:clamp(1.4rem,2.6vw,2.6rem);letter-spacing:-.03em;transition:background 200ms,color 200ms;outline:3px solid transparent;outline-offset:-3px}
.hm-ct__btn *{color:inherit!important}
.hm-ct__btn .sh-arr{width:.9em;height:.9em;stroke-width:3.4}
.hm-ct__btn:hover,.hm-ct__btn:focus-visible{background:#123b66;color:#fff!important;outline-color:#fff}
.hm-ct__btn:hover .sh-arr{transform:translate(3px,-3px)}
/* Contact panel */
.ct{position:fixed;inset:0;z-index:7000;visibility:hidden;pointer-events:none}
.ct.is-open{visibility:visible;pointer-events:auto}
.ct__bg{position:absolute;inset:0;background:rgba(10,34,60,.6);opacity:0;transition:opacity 500ms ease}
.ct.is-open .ct__bg{opacity:1}
.ct__p{position:absolute;top:clamp(10px,3vh,32px);left:clamp(48px,9vw,240px);right:0;bottom:0;background:#fff;color:#123b66;overflow-y:auto;padding:clamp(22px,3vw,48px) clamp(20px,3vw,48px) 0;transform:translate(14%,104%);transition:transform 780ms cubic-bezier(.76,0,.24,1);overscroll-behavior:contain}
.ct.is-open .ct__p{transform:none}
.ct__p *{color:#123b66}
.ct__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) auto;gap:24px;align-items:start;border-top:1px solid #123b66;padding-top:clamp(14px,1.6vw,22px)}
.ct__t{font-weight:700;font-size:clamp(2.6rem,5.4vw,5.4rem);line-height:.88;letter-spacing:-.05em;margin:0}
.ct__info{display:flex;gap:clamp(18px,2.6vw,44px);flex-wrap:wrap;margin:0;font-size:13px;line-height:1.35}
.ct__info dt{font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:4px}
.ct__info dd{margin:0}
.ct__info a{text-decoration:underline!important;text-underline-offset:3px}
.ct__x{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-weight:700;font-size:clamp(1rem,1.4vw,1.4rem)}
.ct__x:hover{text-decoration:underline;text-underline-offset:4px}
.ct__lead{font-weight:700;font-size:clamp(1.8rem,3.9vw,4.4rem);line-height:.98;letter-spacing:-.04em;margin:clamp(36px,6vh,80px) 0 clamp(36px,6vh,72px);text-indent:calc((100% - 24px)/2.6 + 24px);text-wrap:pretty}
.ct__mute{color:rgba(18,59,102,.42)!important}
.ct__form{display:grid}
.ct__r{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:24px;align-items:end}
.ct__n{font-weight:700;font-size:clamp(1rem,1.3vw,1.3rem);padding:18px 0 16px}
.ct__f{position:relative;display:grid;grid-template-columns:clamp(110px,11vw,180px) minmax(0,1fr);align-items:baseline;gap:12px;border-bottom:1px solid #123b66;cursor:text}
.ct__f::after{content:"";position:absolute;left:0;bottom:-1px;height:3px;width:0;background:#123b66;transition:width 420ms cubic-bezier(.22,1,.36,1)}
.ct__r:hover .ct__f::after,.ct__f:focus-within::after{width:100%}
.ct__l{display:grid;font-size:clamp(1rem,1.3vw,1.3rem);padding:18px 0 16px}
.ct__l>i,.ct__l::after{grid-area:1/1;font-style:normal;transition:clip-path 420ms cubic-bezier(.22,1,.36,1)}
.ct__l>i{font-weight:500;clip-path:inset(0 0 0 0)}
.ct__l::after{content:attr(data-t);font-weight:700;clip-path:inset(0 100% 0 0)}
.ct__r:hover .ct__l>i,.ct__f:focus-within .ct__l>i{clip-path:inset(0 0 0 100%)}
.ct__r:hover .ct__l::after,.ct__f:focus-within .ct__l::after{clip-path:inset(0 0 0 0)}
.ct__f input,.ct__f textarea,.ct__f select{width:100%;min-width:0;border:0;background:none;font:inherit;font-weight:500;font-size:clamp(1rem,1.3vw,1.3rem);color:#123b66;padding:18px 0 16px;outline:0;border-radius:0;resize:none;line-height:1.3;-webkit-appearance:none;appearance:none}
.ct__f input::placeholder,.ct__f textarea::placeholder{color:rgba(18,59,102,.45)}
.ct__sel{position:relative;display:block}
.ct__sel select{cursor:pointer;color:rgba(18,59,102,.45);padding-right:28px}
.ct__sel select.has-val{color:#123b66}
.ct__sel select option{color:#123b66}
.ct__sel b{position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.4em;font-weight:500;pointer-events:none}
.ct__r.is-err .ct__f{border-bottom-width:3px}
.ct__send{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:clamp(32px,5vh,56px);border:0;cursor:pointer;background:#123b66;padding:clamp(22px,2.4vw,36px) clamp(20px,2.4vw,40px);font-family:inherit;font-weight:700;font-size:clamp(1.2rem,1.8vw,1.8rem);letter-spacing:-.02em}
.ct__send,.ct__send *{color:#fff!important}
.ct__send-l{display:inline-block;transition:transform 320ms cubic-bezier(.22,1,.36,1);transform-origin:left center}
.ct__send:hover .ct__send-l,.ct__send:focus-visible .ct__send-l{transform:scale(1.06)}
.ct__send .sh-arr{width:1em;height:1em;transition:transform 320ms cubic-bezier(.22,1,.36,1)}
.ct__send:hover .sh-arr{transform:rotate(45deg) translateX(3px)}
.ct__send:focus-visible{outline:3px solid #123b66;outline-offset:3px}
.ct__note{min-height:1.4em;font-size:14px;margin:12px 0 clamp(24px,4vh,40px)}
@media (max-width:900px){
.ct__p{left:0;top:0}
.ct__top{grid-template-columns:1fr auto}.ct__info{grid-column:1/-1;grid-row:2}
.ct__lead{text-indent:0}
.ct__r{grid-template-columns:44px minmax(0,1fr);gap:10px}
.ct__f{grid-template-columns:minmax(0,1fr)}
.ct__l{padding-bottom:0}
.ct__f input,.ct__f textarea,.ct__f select{padding-top:4px}
.hm-ct__logos{width:100%}
}
@media (prefers-reduced-motion:reduce){.ct__p,.ct__bg,.ct__l>i,.ct__l::after,.ct__f::after{transition:none}}

.hm-hero__video,.hm-ct__video{inset:auto!important;left:0!important;top:-7%!important;width:100%!important;height:107%!important}
.ct .ct__f input:focus-visible,.ct .ct__f textarea:focus-visible,.ct .ct__f select:focus-visible{outline:0!important;box-shadow:none!important}

/* v5 */
.hm-ct{min-height:0!important;height:calc(100vh - var(--nav-height) - var(--safe-top,0px));height:calc(100svh - var(--nav-height) - var(--safe-top,0px));max-height:1000px}
.hm-ct__in{gap:clamp(24px,4vh,80px)!important}
.hm-ct__t{font-size:clamp(3rem,min(9vw,15vh),9.6rem)!important}
.hm-ct__aedb{height:clamp(70px,min(11vw,19vh),190px)!important}
.hm-ct__rlz{height:clamp(86px,min(13.6vw,23.5vh),236px)!important}
.hm-ct__sub{font-size:clamp(1.2rem,min(2.4vw,4vh),2.4rem)!important}
.hm-ct__btn{padding:clamp(18px,min(2.6vw,4vh),40px) clamp(20px,2.4vw,40px)!important}
.hm-ct__btn:hover,.hm-ct__btn:focus-visible{background:#bea151!important;color:#fff!important;outline-color:transparent!important}
.ct__send{transition:background 200ms}
.ct__send:hover,.ct__send:focus-visible{background:#bea151!important}
.ct__lead{font-size:clamp(1.7rem,3.55vw,4rem)!important}
.ct{transition:visibility 0s linear 800ms}
.ct.is-open{transition-delay:0s}
