/* VINILAZO home: one product, two vinyl choices, then flags/club badges. */
body.vz-catalog-mode #main,body.vz-catalog-mode #squadre,body.vz-catalog-mode .sticky,body.vz-catalog-mode #xf,body.vz-catalog-mode #team-pick{display:none!important}
body.vz-catalog-mode .foot .service-links a{display:none}
body.vz-catalog-mode .top{border-bottom:1px solid #e6eff626}
.vz-catalog{background:#071329;color:#f8fbff;min-height:100vh;overflow:hidden}
.vz-catalog-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.9fr);grid-template-rows:auto auto;grid-template-areas:"intro product" "choice product";column-gap:clamp(14px,3vw,54px);row-gap:26px;align-items:center;min-height:730px;padding:clamp(36px,5vw,72px) clamp(18px,5vw,84px) clamp(55px,7vw,95px);background:radial-gradient(ellipse at 80% 44%,#193b60 0%,#0b2344 29%,#071329 70%)}
.vz-catalog-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 76% 45%,#6bb4fb17,transparent 33%),linear-gradient(180deg,transparent 70%,#071329)}
.vz-hero-left{grid-area:intro;position:relative;z-index:2;align-self:end;max-width:720px}
.vz-kicker{font:900 13px/1.3 system-ui,sans-serif;letter-spacing:.2em;color:#98ceff;text-transform:uppercase;margin:0 0 15px}
.vz-catalog-title{font:900 clamp(52px,6.5vw,100px)/.98 var(--display),Impact,sans-serif;letter-spacing:-.015em;max-width:780px;margin:0 0 27px;text-wrap:balance}
.vz-catalog-title::after{content:"";display:block;width:min(90%,550px);height:6px;margin-top:23px;border-radius:99px;background:linear-gradient(90deg,#74acdf,#fff,#f9c631,#f04c57,#74acdf);background-size:250% 100%;animation:vz-line-travel 3.4s linear infinite}
.vz-catalog-description{font:500 clamp(17px,1.7vw,23px)/1.5 system-ui,sans-serif;color:#d2e1f4;max-width:610px;margin:0}
.vz-choose{grid-area:choice;position:relative;z-index:2;align-self:start;max-width:625px}
.vz-choose-heading{font:800 18px/1.2 system-ui,sans-serif;color:#e3eefb;margin:0 0 15px;letter-spacing:.01em}
.vz-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2vw,26px);max-width:470px}
.vz-choice{--choice-color:#74acdf;min-width:0;border:0;background:transparent;color:#fff;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;cursor:pointer;padding:0 6px 6px;outline-offset:5px}
.vz-choice[data-group="club"]{--choice-color:#fc5975}
.vz-choice-vinyl{position:relative;display:grid;place-items:center;aspect-ratio:1;width:min(100%,165px);border-radius:50%;background:repeating-radial-gradient(circle,#11151d 0 2px,#232a35 2px 3px,#141820 3px 6px);box-shadow:0 19px 25px #0009,0 0 0 1px #ffffff3b,inset 0 0 0 2px #000;transition:transform .4s,box-shadow .4s}
.vz-choice-vinyl::before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 10deg,transparent 0deg,#ffffff1c 29deg,transparent 52deg,transparent 145deg,#ffffff23 179deg,transparent 210deg);animation:vz-vinyl-light 11s linear infinite}
.vz-choice-centre{z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;width:59%;height:59%;border-radius:50%;background:radial-gradient(circle at 32% 25%,#e6f5ff,var(--choice-color) 75%);color:#071329;box-shadow:inset 0 0 0 3px #ffffff6b,0 0 20px color-mix(in srgb,var(--choice-color) 32%,transparent);font-family:var(--display),Impact,sans-serif}
.vz-choice-symbol{font:800 clamp(25px,3vw,34px)/1 system-ui,sans-serif;color:#0a2548}
.vz-choice-centre strong{font-size:clamp(16px,1.7vw,24px);line-height:1.05;text-transform:uppercase;max-width:90%;overflow-wrap:anywhere}
.vz-choice-caption{font:700 12px/1.35 system-ui,sans-serif;color:#c4d6ef;max-width:175px}
.vz-choice:hover .vz-choice-vinyl,.vz-choice:focus-visible .vz-choice-vinyl,.vz-choice.vz-active .vz-choice-vinyl{transform:scale(1.075) rotate(8deg);box-shadow:0 23px 36px #000b,0 0 0 3px var(--choice-color),0 0 33px color-mix(in srgb,var(--choice-color) 34%,transparent)}
.vz-hero-product{grid-area:product;position:relative;z-index:1;width:100%;max-width:560px;margin:auto;isolation:isolate;filter:drop-shadow(0 28px 40px #000a)}
.vz-product-frame{position:relative;z-index:2;display:block;width:100%;height:auto;animation:vz-frame-float 5.2s ease-in-out infinite}
.vz-product-aura{position:absolute;z-index:0;inset:-15%;border-radius:50%;background:conic-gradient(from 0deg,#74acdf44,#ffffff08,#f0bf3d3d,#e43e5a2b,#74acdf44);filter:blur(50px);animation:vz-aura-turn 18s linear infinite}
.vz-product-halo{position:absolute;z-index:1;inset:8%;border:1px solid #a4d8ff4a;border-radius:50%;box-shadow:0 0 36px #60b5f34a,0 0 100px #437bb724;animation:vz-light-pulse 3.3s ease-in-out infinite}
.vz-product-disc{position:absolute;z-index:3;left:50.58%;top:41.67%;width:42%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:repeating-radial-gradient(circle,#080d14 0 2px,#202730 2px 4px,#0f131b 4px 6px);border:2px solid #171e27;box-shadow:0 3px 10px #000e,inset 0 0 16px #000;animation:vz-hero-disc-turn 7s linear infinite;display:grid;place-items:center}
.vz-product-disc::before{content:"";position:absolute;inset:5px;border-radius:50%;background:conic-gradient(from 10deg,transparent 0deg,#ffffff16 38deg,transparent 60deg,transparent 160deg,#ffffff13 196deg,transparent 222deg);mix-blend-mode:screen}
.vz-product-label{width:55%;height:55%;border:3px solid #d7e4f6;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;color:#052346;background:linear-gradient(90deg,#74acdf 0 32%,#fff 32% 67%,#74acdf 67%);box-shadow:inset 0 0 6px #0004}
.vz-product-mini{font:900 clamp(6px,.8vw,11px)/1.1 system-ui,sans-serif}
.vz-product-label strong{font:900 clamp(15px,2vw,29px)/1 var(--display),Impact,sans-serif}
.vz-product-led{position:absolute;z-index:4;left:50.58%;top:41.67%;width:47%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:4px solid #fff7;pointer-events:none;box-shadow:0 0 18px #d8f2ffb0,0 0 36px #5ab9ff8a,inset 0 0 15px #94d4ff7a;animation:vz-light-pulse 2.5s ease-in-out infinite}
.vz-product-gloss{position:absolute;z-index:5;inset:12% 7%;pointer-events:none;transform:skewX(-18deg);background:linear-gradient(110deg,transparent 27%,#ffffff00 42%,#fff4 49%,#ffffff00 55%,transparent 74%);background-size:250% 100%;mix-blend-mode:screen;animation:vz-gloss-sweep 6s ease-in-out infinite}
.vz-product-tag{position:absolute;z-index:6;right:0;bottom:7%;display:inline-flex;padding:11px 16px;border-radius:99px;border:1px solid #9acaec8c;background:#081d39db;color:#e4f2ff;box-shadow:0 7px 26px #0005;font:900 clamp(12px,1vw,15px)/1.1 system-ui,sans-serif;letter-spacing:.02em}
.vz-teams-stage{position:relative;scroll-margin-top:100px;padding:clamp(48px,6vw,86px) clamp(16px,5vw,84px) clamp(64px,8vw,110px);background:radial-gradient(circle at 20% 0%,#193454,#0a1b35 48%,#071329)}
.vz-teams-stage[hidden]{display:none!important}
.vz-stage-head{max-width:900px;margin:0 auto 35px;text-align:center}
.vz-stage-back{border:1px solid #9ec4ea4a;border-radius:99px;background:#112847;color:#d4e9ff;padding:10px 17px;font:700 13px/1.1 system-ui,sans-serif;cursor:pointer;margin:0 0 23px}
.vz-stage-title{font:900 clamp(45px,7vw,82px)/1 var(--display),Impact,sans-serif;margin:0 0 12px}
.vz-stage-sub{font-size:clamp(16px,1.7vw,21px);color:#c6d8eb;margin:0}
.vz-flag-grid{max-width:1160px;margin:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,2vw,24px)}
.vz-flag-card{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;min-height:178px;padding:24px 10px 18px;border:1px solid #ffffff26;border-radius:20px;background:linear-gradient(155deg,#ffffff12,#081b35c9);color:#fff;text-decoration:none;text-align:center;transition:transform .25s,border-color .25s,box-shadow .25s}
.vz-flag-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,var(--team-one),var(--team-two),var(--team-three))}
.vz-flag-card:hover,.vz-flag-card:focus-visible{transform:translateY(-6px);border-color:var(--team-one);box-shadow:0 16px 28px #0008;outline-offset:3px}
.vz-flag-icon{font-size:clamp(48px,5.7vw,78px);line-height:1;filter:drop-shadow(0 8px 8px #0008)}
.vz-club-icon{display:grid;place-items:center;width:75px;height:83px;clip-path:polygon(6% 0,94% 0,100% 66%,50% 100%,0 66%);background:linear-gradient(120deg,var(--team-one) 0 45%,var(--team-two) 45% 70%,var(--team-three));color:#fff;text-shadow:0 2px 3px #000d;font:900 22px/1 var(--display),Impact,sans-serif;box-shadow:0 9px 18px #0008}
.vz-flag-name{font:800 clamp(19px,2vw,27px)/1.06 var(--display),Impact,sans-serif;overflow-wrap:anywhere}
.vz-flag-action{position:absolute;right:15px;bottom:12px;color:#bdd9f7;font:900 20px/1 system-ui}
.vz-flag-ready{position:absolute;top:13px;right:8px;border-radius:99px;padding:4px 7px;background:#136945;color:#e8fff3;font:800 10px/1.2 system-ui}
.vz-catalog-end{text-align:center;padding:48px 18px 70px;background:#071329}
.vz-catalog-end p{font:italic clamp(21px,2.5vw,31px)/1.5 Georgia,serif;color:#9bc9f8;margin:0}
.vz-back-teams{align-self:flex-start;display:inline-flex;align-items:center;margin-bottom:8px;color:#acd4fa;font:800 14px/1.2 system-ui,sans-serif;text-decoration:none;border-bottom:1px solid #acd4fa75;padding-bottom:6px}
.hero-copy .quote::after{content:"";display:block;position:relative;width:min(100%,680px);height:5px;margin-top:20px;border-radius:99px;background:linear-gradient(90deg,var(--c0),var(--c1),var(--c2),var(--c0));background-size:230% 100%;animation:vz-line-travel 3s linear infinite;box-shadow:0 0 20px color-mix(in srgb,var(--acc) 24%,transparent)}
.vz-about{padding:clamp(54px,7vw,90px) clamp(20px,6vw,80px)}.vz-about>*{max-width:700px}.vz-about h2{margin-bottom:20px}.vz-about-body{font-size:clamp(17px,1.8vw,22px);line-height:1.55;color:#e2eaf5;text-wrap:pretty}.vz-about-sign{font-size:clamp(19px,2.1vw,26px);margin-top:21px}
@keyframes vz-line-travel{from{background-position:100% 50%}to{background-position:0% 50%}}
@keyframes vz-vinyl-light{to{transform:rotate(360deg)}}
@keyframes vz-hero-disc-turn{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes vz-frame-float{50%{transform:translateY(-9px)}}
@keyframes vz-light-pulse{50%{opacity:.65;filter:brightness(1.6)}}
@keyframes vz-aura-turn{to{transform:rotate(360deg)}}
@keyframes vz-gloss-sweep{0%,15%{background-position:140% 0}55%,100%{background-position:-140% 0}}
@media(max-width:980px){.vz-catalog-hero{grid-template-columns:minmax(0,1fr) minmax(280px,.84fr);padding:38px 25px 65px}.vz-catalog-title{font-size:clamp(48px,6vw,72px)}.vz-choices{gap:9px}.vz-flag-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.vz-catalog-hero{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:32px 20px 48px}.vz-hero-left{align-self:auto}.vz-kicker{font-size:11px}.vz-catalog-title{font-size:clamp(47px,11.5vw,69px);margin-bottom:19px}.vz-catalog-title::after{margin-top:17px;height:5px}.vz-catalog-description{font-size:16px;line-height:1.45}.vz-hero-product{order:2;width:min(82%,345px);margin:14px auto 18px}.vz-choose{order:3;align-self:stretch;text-align:center}.vz-choose-heading{font-size:16px;margin-bottom:14px}.vz-choices{max-width:360px;margin:auto;gap:12px}.vz-choice-vinyl{width:min(100%,135px)}.vz-choice-centre strong{font-size:17px}.vz-choice-symbol{font-size:27px}.vz-choice-caption{font-size:11px}.vz-product-tag{font-size:11px;padding:7px 11px;bottom:6%}.vz-flag-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vz-flag-card{min-height:155px;padding:18px 9px}.vz-flag-icon{font-size:57px}.vz-flag-name{font-size:21px}.vz-club-icon{width:63px;height:70px;font-size:19px}.vz-teams-stage{padding:45px 14px 70px}.vz-about{padding:60px 24px}.vz-about-body{text-align:left;font-size:17px;line-height:1.6}.vz-about-sign{font-size:20px}.hero-copy .quote::after{margin-top:13px}}
@media(max-width:360px){.vz-catalog-title{font-size:42px}.vz-hero-product{width:76%}.vz-choice-vinyl{width:118px}}
@media(prefers-reduced-motion:reduce){.vz-catalog-title::after,.hero-copy .quote::after,.vz-choice-vinyl::before,.vz-product-frame,.vz-product-aura,.vz-product-halo,.vz-product-disc,.vz-product-led,.vz-product-gloss{animation:none!important}.vz-choice-vinyl,.vz-flag-card{transition:none!important}}


/* Refined icons: premium record labels with distinct national trophy and club crest. */
.vz-choice-vinyl{width:min(100%,171px);background:repeating-radial-gradient(circle,#10151e 0 1.5px,#252c37 1.5px 2.8px,#11161e 2.8px 5.8px);box-shadow:0 20px 32px #000b,0 0 0 2px #2b384b,inset 0 0 0 7px #0a0f18,inset 0 0 2px 8px #65738780}
.vz-choice-centre{width:63%;height:63%;gap:4px;background:radial-gradient(circle at 30% 17%,#ffffffee 0%,color-mix(in srgb,var(--choice-color) 62%,white) 33%,var(--choice-color) 100%);box-shadow:inset 0 0 0 3px #ffffff85,inset 0 -11px 24px #0615244d,0 0 25px color-mix(in srgb,var(--choice-color) 45%,transparent)}
.vz-choice-symbol{display:block;width:39px;height:39px;color:#08203d;filter:drop-shadow(0 2px 1px #ffffff65)}
.vz-choice-centre strong{font-size:clamp(16px,1.7vw,22px);line-height:1.08;letter-spacing:.02em}
.vz-choice[data-group="club"] .vz-choice-centre{color:#fff;background:radial-gradient(circle at 28% 17%,#ffbecc 0%,#ed5777 40%,#7e1539 100%)}
.vz-choice[data-group="club"] .vz-choice-symbol{color:#fff2e3;filter:drop-shadow(0 2px 3px #430e31)}
.vz-choice[data-group="club"] .vz-choice-centre strong{color:#fff7fa;text-shadow:0 1px 3px #430e31}
.vz-choice-vinyl::after{content:"";position:absolute;inset:4px;border-radius:50%;border:1px solid #e9f0ff22;pointer-events:none}

/* Single aligned product scene: physical frame does not float away from its disc. */
@property --edition-color{syntax:"<color>";inherits:true;initial-value:#74acdf}
@property --art-a{syntax:"<color>";inherits:true;initial-value:#74acdf}
@property --art-b{syntax:"<color>";inherits:true;initial-value:#ffffff}
@property --art-c{syntax:"<color>";inherits:true;initial-value:#74acdf}
.vz-hero-product{--edition-color:#74acdf;--art-a:#74acdf;--art-b:#fff;--art-c:#74acdf;transition:--edition-color 1.1s ease,--art-a 1.1s ease,--art-b 1.1s ease,--art-c 1.1s ease}
.vz-product-frame{animation:none!important}
.vz-product-art{position:absolute;z-index:3;left:12.5%;top:10%;width:75%;height:64.7%;overflow:hidden;border:1px solid #ffffff4a;border-radius:1px;background:linear-gradient(var(--art-angle,180deg),var(--art-a) 0 33.33%,var(--art-b) 33.33% 66.66%,var(--art-c) 66.66% 100%);box-shadow:inset 0 0 42px #07182b8f,inset 0 0 0 7px #040b192e;transition:background-color .7s}
.vz-product-art[data-kind="club"]{background:repeating-linear-gradient(90deg,var(--art-a) 0 13%,var(--art-b) 13% 26%);box-shadow:inset 0 0 45px #000a,inset 0 0 0 6px #fff2}
.vz-product-art::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 49% 39%,#fff5,transparent 48%),linear-gradient(125deg,#ffffff4a 0%,transparent 24%,transparent 72%,#06102077 100%);box-shadow:inset 0 0 30px #07172ca6}
.vz-product-disc{z-index:4;width:42.5%;border:3px solid #0d121a;box-shadow:0 5px 16px #000c,inset 0 0 0 6px #070a0e,inset 0 0 22px #000}
.vz-product-disc::before{inset:8px;background:conic-gradient(from 10deg,#ffffff05 0deg,#ffffff3d 25deg,transparent 55deg,transparent 145deg,#ffffff29 180deg,transparent 213deg,transparent 300deg,#ffffff08)}
.vz-product-label{width:54%;height:54%;border:3px solid #e4ebf6;background:linear-gradient(135deg,var(--art-a),var(--art-b) 68%,var(--art-c));gap:0;padding:6px 3px;box-shadow:inset 0 0 15px #fff5,0 0 0 3px #0a0f17}
.vz-product-emblem{display:grid;place-items:center;line-height:1;font:900 clamp(25px,3.6vw,42px)/1 system-ui,sans-serif;filter:drop-shadow(0 2px 2px #0005)}
.vz-product-shield{width:54%;height:52%;min-height:33px;margin-bottom:2px;clip-path:polygon(7% 0,93% 0,100% 68%,50% 100%,0 68%);background:linear-gradient(120deg,var(--art-a) 0 46%,var(--art-b) 46% 68%,var(--art-c));color:#fff;text-shadow:0 1px 4px #000,0 0 2px #000;font:900 clamp(13px,1.8vw,20px)/1 var(--display),Impact,sans-serif}
.vz-product-label-name{max-width:94%;font:900 clamp(12px,1.5vw,19px)/1 var(--display),Impact,sans-serif;color:#08213a;text-shadow:0 1px 2px #fff9;text-align:center;overflow-wrap:anywhere}
.vz-product-led{z-index:5;border:4px solid #e8f9ffd9;box-shadow:0 0 15px #fff,0 0 27px color-mix(in srgb,var(--edition-color) 88%,white),0 0 55px color-mix(in srgb,var(--edition-color) 60%,transparent),inset 0 0 18px color-mix(in srgb,var(--edition-color) 60%,white)}
.vz-product-gloss{z-index:6;inset:10% 10% 25%;border-radius:3px;overflow:hidden;mix-blend-mode:screen;opacity:.6}
.vz-product-halo{border-color:color-mix(in srgb,var(--edition-color) 40%,transparent);box-shadow:0 0 40px color-mix(in srgb,var(--edition-color) 40%,transparent)}
.vz-product-aura{background:radial-gradient(ellipse,color-mix(in srgb,var(--edition-color) 36%,transparent),transparent 70%);animation:vz-light-pulse 5.5s ease-in-out infinite;filter:blur(35px)}
.vz-product-tag{z-index:7;max-width:55%;line-height:1.25;white-space:normal;text-align:center;border-color:color-mix(in srgb,var(--edition-color) 65%,white);box-shadow:0 8px 26px #0006,0 0 28px color-mix(in srgb,var(--edition-color) 20%,transparent)}

/* Breathing room in every team's detail hero. */
body:not(.vz-catalog-mode) .hero-copy{gap:clamp(21px,2.3vw,31px);max-width:705px}
body:not(.vz-catalog-mode) .hero-copy .quote{line-height:1.055;letter-spacing:0;padding-top:.46em}
body:not(.vz-catalog-mode) .hero-copy .quote::after{margin-top:clamp(25px,3vw,39px)}
body:not(.vz-catalog-mode) .hero-copy .quote-by{line-height:1.48;margin-top:3px}
body:not(.vz-catalog-mode) .hero-copy .quote-tr{line-height:1.48;margin-top:-9px}
body:not(.vz-catalog-mode) .hero-copy .sub{font-size:clamp(18px,1.5vw,21px);line-height:1.66;margin-top:9px;max-width:36em}
body:not(.vz-catalog-mode) .hero-copy .edition{line-height:1.28;gap:10px 14px;margin-top:4px}
body:not(.vz-catalog-mode) .hero-copy .buy{margin-top:12px;gap:18px}
body:not(.vz-catalog-mode) .hero-copy .fine{line-height:1.58;margin-top:2px}
body:not(.vz-catalog-mode) .moment h2{line-height:1.08}
body:not(.vz-catalog-mode) .story h3{line-height:1.12}

@media(max-width:720px){
 .vz-choice-vinyl{width:min(100%,136px)}
 .vz-choice-symbol{width:31px;height:31px}
 .vz-choice-centre{gap:3px}
 .vz-choice-centre strong{font-size:17px}
 .vz-product-label-name{font-size:clamp(10px,3.4vw,15px)}
 .vz-product-emblem{font-size:clamp(22px,8vw,31px)}
 .vz-product-shield{font-size:clamp(12px,4vw,17px);min-height:22px}
 .vz-product-tag{max-width:60%;font-size:11px}
 body:not(.vz-catalog-mode) .hero-copy{gap:20px}
 body:not(.vz-catalog-mode) .hero-copy .quote{line-height:1.08}
 body:not(.vz-catalog-mode) .hero-copy .quote::after{margin-top:24px}
 body:not(.vz-catalog-mode) .hero-copy .sub{font-size:18px;line-height:1.65;margin-top:7px}
 body:not(.vz-catalog-mode) .hero-copy .quote-tr{margin-top:-5px}
}
@media(prefers-reduced-motion:reduce){.vz-hero-product,.vz-product-art{transition:none!important}}

/* Genuine club/federation badges: preserve each real emblem's contours. */
.vz-team-logo{display:grid;place-items:center;width:88px;height:88px;filter:drop-shadow(0 10px 9px #0008)}
.vz-team-logo .vz-crest-image{width:100%;height:100%;object-fit:contain;object-position:center}
.vz-team-logo.vz-crest-fallback{font:900 21px/1 var(--display),Impact,sans-serif}
.vz-product-emblem.vz-product-has-crest{width:72%;height:64%;margin-bottom:0;filter:drop-shadow(0 2px 2px #0006)}
.vz-edition-crest{width:100%;height:100%;display:grid;place-items:center}
.vz-edition-crest .vz-crest-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.vz-edition-crest.vz-crest-fallback{font-size:clamp(15px,2.6vw,27px)}
.vz-crest-source{display:block;margin:22px auto 0;font:500 11px/1.5 system-ui,sans-serif;color:#8ca9c8}
.vz-crest-source a{color:inherit;text-underline-offset:3px}
body.vz-catalog-mode #chi-siamo{background:radial-gradient(ellipse at 88% 0%,#15395e,#081c36 60%,#071329);border-top:1px solid #ffffff19;border-bottom:1px solid #ffffff17}
body.vz-catalog-mode #chi-siamo>*{margin-left:auto;margin-right:auto}
body.vz-catalog-mode #chi-siamo .vz-about-kicker{color:#9ac9f5}
body.vz-catalog-mode #chi-siamo h2{font-size:clamp(35px,5vw,65px);line-height:1.08;color:#fff}
body:not(.vz-catalog-mode) .hero-copy .sub{margin-bottom:3px}
body:not(.vz-catalog-mode) .hero-copy .vz-sub-extra[hidden]{display:none!important}
.vz-read-more{display:inline;background:none;border:0;padding:0;margin-left:5px;color:#9dd2ff;font:inherit;font-size:.84em;font-weight:800;line-height:1.5;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;cursor:pointer}
.vz-read-more:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:3px}
@media(max-width:720px){
 .vz-team-logo{width:68px;height:68px}
 .vz-product-emblem.vz-product-has-crest{width:74%;height:66%}
 body:not(.vz-catalog-mode) .hero-copy{gap:clamp(25px,6vw,33px)}
 body:not(.vz-catalog-mode) .hero-copy .sub{font-size:17px;line-height:1.65;margin-top:8px}
 body:not(.vz-catalog-mode) .hero-copy .buy{margin-top:17px}
}

/* Lock every badge into a fixed square, including tall SVG crests. */
.vz-team-logo{position:relative;flex:0 0 88px;overflow:hidden;min-width:0;min-height:0}
.vz-team-logo .vz-crest-image{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}
.vz-edition-crest{position:relative;display:block;min-width:0;min-height:0;overflow:hidden}
.vz-edition-crest .vz-crest-image{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}
.vz-flag-card[href*="team=juventus"] .vz-team-logo{background:#f1f3f5;border-radius:14px;box-shadow:0 3px 14px #0005}
.vz-flag-card[href*="team=juventus"] .vz-crest-image{inset:8px;width:calc(100% - 16px);height:calc(100% - 16px)}
@media(max-width:720px){.vz-team-logo{flex-basis:68px}}

/* Authentic crests also replace the invented mini shields in product selection. */
.vz-detail-crest{position:relative;display:block;flex:0 0 72px;width:72px;height:52px;overflow:hidden;filter:drop-shadow(0 4px 6px #0007)}
.vz-detail-crest .vz-crest-image{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}
.vz-header-crest{position:relative;display:block;flex:0 0 46px;width:46px;height:36px;overflow:hidden;filter:drop-shadow(0 2px 3px #0008)}
.vz-header-crest .vz-crest-image{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}
#squadre .team[data-team="juventus"] .vz-detail-crest,.team-pick:has(.vz-header-crest[data-team-id="juventus"]) .vz-header-crest{background:#f1f3f5;border-radius:8px}
@media(max-width:720px){.pk-grid .vz-detail-crest{flex-basis:54px;width:54px;height:39px}}


/* 2026 VINILAZO refresh — unmistakable team categories, nine records, kitchen imagery. */
.vz-choice-centre{width:66%;height:66%;gap:5px}
.vz-category-badges{display:flex;align-items:center;justify-content:center;width:95%;min-height:38px;position:relative}
.vz-category-badge{display:grid;place-items:center;width:34%;aspect-ratio:1;flex:none;margin:0 -3px;font:25px/1 system-ui,sans-serif;filter:drop-shadow(0 2px 4px #001a3699);transition:transform .3s}
.vz-category-badge:nth-child(2){width:39%;z-index:1;transform:translateY(-5px)}
.vz-category-badge .vz-category-club-mark{display:grid;place-items:center;width:100%;height:100%}
.vz-category-badge .vz-crest-image{display:block;width:100%;height:100%;object-fit:contain}
.vz-choice:hover .vz-category-badge:nth-child(2){transform:translateY(-9px) scale(1.08)}
.vz-choice-centre strong{font-size:clamp(14px,1.45vw,19px);text-wrap:balance}
.vz-choice[data-group="club"] .vz-choice-centre{background:radial-gradient(circle at 26% 13%,#fef0e6,#c63e64 54%,#4e143d 100%)}
.vz-catalog-title::after{background:linear-gradient(90deg,var(--c0),var(--c1),var(--c2),var(--c0));background-size:230% 100%}
.vz-product-label{background:linear-gradient(135deg,var(--art-a),var(--art-b) 63%,var(--art-c))}
.vz-section-eyebrow{margin:0 0 13px;color:#83c4ff;letter-spacing:.22em;font:850 12px/1.4 system-ui,sans-serif}
.vz-section-title{font:900 clamp(43px,5.6vw,76px)/1.02 var(--display),Impact,sans-serif;letter-spacing:-.014em;text-wrap:balance;margin:0 0 17px}
.vz-section-sub{color:#c7dcf0;font:500 clamp(16px,1.7vw,21px)/1.55 system-ui,sans-serif;max-width:680px;margin:0 auto}
.vz-nine-section{padding:clamp(70px,8vw,115px) clamp(17px,5vw,74px) clamp(65px,8vw,110px);background:radial-gradient(ellipse at 50% -20%,#233c5c 0%,#0b1b34 46%,#071329 90%);text-align:center;border-top:1px solid #ffffff20}
.vz-nine-text{max-width:880px;margin:0 auto 42px}
.vz-nine-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:clamp(6px,1vw,16px);max-width:1410px;margin:0 auto 34px}
.vz-nine-item{min-width:0;opacity:0;transform:translateY(25px) scale(.96);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*65ms)}
.vz-nine-item.vz-visible{opacity:1;transform:translateY(0) scale(1)}
.vz-nine-record{position:relative;width:100%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:repeating-radial-gradient(circle,#090c13 0 2px,#26313c 2px 3px,#0e131d 3px 7px);box-shadow:0 8px 18px #0008,inset 0 0 0 2px #39495b,0 0 0 1px #a8d0ef27;overflow:hidden;transition:transform .35s,box-shadow .35s}
.vz-nine-record::after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 12deg,transparent,#ffffff18,transparent 32%,#ffffff12,transparent 70%);pointer-events:none}
.vz-nine-item:hover .vz-nine-record{transform:rotate(15deg) scale(1.045);box-shadow:0 12px 23px #0009,0 0 14px color-mix(in srgb,var(--nine-color) 40%,transparent)}
.vz-nine-core{z-index:1;display:grid;place-items:center;width:53%;aspect-ratio:1;border-radius:50%;border:2px solid #eaf1f3b8;box-shadow:0 0 0 2px #080e18;position:relative}
.vz-nine-core::after{content:"";width:8px;height:8px;background:#182230;border-radius:50%;position:absolute}
.vz-nine-number{font:900 clamp(13px,1.6vw,23px)/1 var(--display),Impact,sans-serif;color:#071126;transform:translateY(-13px);text-shadow:0 1px #fff9}
.vz-nine-name{display:block;margin:13px 0 4px;color:#fff;font:800 clamp(12px,1.2vw,17px)/1.22 system-ui,sans-serif;overflow-wrap:anywhere}
.vz-nine-moment{display:block;font:500 clamp(10px,1vw,12px)/1.4 system-ui,sans-serif;color:#9eb5d1;overflow-wrap:anywhere}
.vz-nine-action{border:1px solid #8cc8ff99;background:#122c4f;color:#f4faff;border-radius:99px;padding:14px 23px;font:800 14px/1.2 system-ui,sans-serif;cursor:pointer;transition:background .2s,transform .2s}
.vz-nine-action:hover,.vz-nine-action:focus-visible{background:#254d77;transform:translateY(-3px)}
.vz-life-section{padding:clamp(63px,8vw,115px) clamp(18px,5vw,74px) clamp(65px,7vw,100px);background:linear-gradient(180deg,#071329,#112847 58%,#07192e);border-top:1px solid #ffffff1e}
.vz-life-heading{text-align:center;max-width:880px;margin:0 auto 42px}
.vz-life-photos{max-width:1120px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(13px,2.7vw,35px);margin:0 auto}
.vz-life-card{position:relative;isolation:isolate;overflow:hidden;border-radius:24px;aspect-ratio:4/5;margin:0;background:#1d344c;box-shadow:0 25px 55px #0006;border:1px solid #ffffff2e;opacity:0;transform:translateY(25px);transition:opacity .65s,transform .65s}
.vz-life-card.vz-visible{opacity:1;transform:translateY(0)}
.vz-life-card:nth-child(2){transition-delay:.18s}
.vz-life-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.vz-life-card:hover .vz-life-image{transform:scale(1.04)}
.vz-life-card::after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(transparent,#071329b8);pointer-events:none}
.vz-life-caption{position:absolute;z-index:1;bottom:25px;left:25px;right:15px;color:#fff;font:900 clamp(22px,3vw,37px)/1.04 var(--display),Impact,sans-serif;text-shadow:0 3px 13px #000b}
.vz-life-note{font:500 11px/1.4 system-ui,sans-serif;color:#8ba7c3;text-align:center;margin:16px 0 0}
.vz-catalog-end{padding:16px 20px 20px}
.vz-crest-source{margin:0 auto}
@media(max-width:1100px){
 .vz-nine-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-width:760px;gap:22px}
}
@media(max-width:720px){
 .vz-choice-centre{gap:1px}
 .vz-category-badges{min-height:30px}
 .vz-category-badge{font-size:20px}
 .vz-choice-centre strong{font-size:15px}
 .vz-nine-section{padding:62px 20px 68px}
 .vz-nine-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px;max-width:480px;margin-bottom:36px}
 .vz-nine-text{margin-bottom:29px}
 .vz-nine-name{font-size:12px;margin-top:9px}
 .vz-nine-moment{font-size:10px}
 .vz-nine-number{font-size:15px;transform:translateY(-9px)}
 .vz-nine-core::after{width:5px;height:5px}
 .vz-life-section{padding:62px 16px 64px}
 .vz-life-heading{margin-bottom:30px;padding:0 5px}
 .vz-life-photos{grid-template-columns:1fr;max-width:480px;gap:19px}
 .vz-life-card{aspect-ratio:4/5;border-radius:19px}
 .vz-life-caption{font-size:31px;bottom:19px;left:20px}
}
@media(prefers-reduced-motion:reduce){.vz-nine-item,.vz-life-card{transition:none;transform:none;opacity:1}.vz-nine-record,.vz-life-image{transition:none}}


/* Moving federation/club crests held inside two jewel-like, rotating spheres. */
@property --orb-a{syntax:"<color>";inherits:true;initial-value:#74acdf}
@property --orb-b{syntax:"<color>";inherits:true;initial-value:#ffffff}
@property --orb-c{syntax:"<color>";inherits:true;initial-value:#f6b40e}
.vz-choice{transition:--orb-a .85s ease,--orb-b .85s ease,--orb-c .85s ease}
.vz-choice[data-group="nat"] .vz-choice-centre,.vz-choice[data-group="club"] .vz-choice-centre{
 background:radial-gradient(circle at 25% 10%,color-mix(in srgb,var(--orb-b) 55%,white),var(--orb-a) 63%,var(--orb-c));
 box-shadow:inset 0 0 0 2px #ffffffac,inset 0 -12px 22px #0006,0 0 23px color-mix(in srgb,var(--orb-a) 45%,transparent)
}
.vz-choice-orb{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;position:relative;flex:none;isolation:isolate;overflow:hidden;
 background:radial-gradient(circle at 27% 21%,#ffffffdb 0%,transparent 36%),linear-gradient(145deg,var(--orb-a),var(--orb-b) 52%,var(--orb-c));
 border:2px solid #ffffffaf;box-shadow:inset -9px -9px 18px #07172c8a,inset 5px 5px 12px #ffffffa6,0 5px 12px #05152793;
 transform:perspective(240px) rotateY(-11deg)}
.vz-choice-orb::before{content:"";position:absolute;inset:-25%;border-radius:50%;pointer-events:none;z-index:3;
 background:conic-gradient(from 18deg,transparent 0 25%,#ffffff75 39%,transparent 53% 82%,#ffffff2b 93%,transparent);
 mix-blend-mode:screen;animation:vz-orb-shine 5.8s linear infinite}
.vz-choice-orb::after{content:"";position:absolute;inset:3px;border-radius:50%;box-shadow:inset 3px 4px 7px #fff7,inset -4px -6px 11px #07152a77;pointer-events:none;z-index:4}
.vz-choice-orb-mark{position:relative;z-index:2;width:78%;height:78%;display:grid;place-items:center;filter:drop-shadow(0 3px 3px #06122291)}
.vz-choice-orb-mark .vz-orb-crest{width:100%;height:100%;display:grid;place-items:center;font:900 19px/1 var(--display),Impact,sans-serif;color:#fff;text-shadow:0 1px 4px #000}
.vz-orb-crest .vz-crest-image{display:block;width:100%;height:100%;object-fit:contain}
.vz-choice-orb-mark.vz-orb-enter{animation:vz-badge-arrive .8s cubic-bezier(.2,.8,.2,1) both}
.vz-choice-centre strong,.vz-choice[data-group="club"] .vz-choice-centre strong{font-size:clamp(12px,1.35vw,17px);line-height:1.1;color:#fff;text-shadow:0 1px 3px #000;border-radius:99px;padding:4px 7px;background:#061629d9;max-width:94%}
@keyframes vz-badge-arrive{0%{opacity:0;transform:translateX(13px) rotateY(-65deg) scale(.75)}65%{opacity:1}100%{opacity:1;transform:translateX(0) rotateY(0) scale(1)}}
@keyframes vz-orb-shine{to{transform:rotate(360deg)}}
@media(max-width:720px){
 .vz-choice-orb{width:46px;height:46px}
 .vz-choice-centre strong,.vz-choice[data-group="club"] .vz-choice-centre strong{font-size:13px;padding:3px 6px}
 .vz-choice-centre{gap:3px}
}
@media(prefers-reduced-motion:reduce){
 .vz-choice-orb::before,.vz-choice-orb-mark.vz-orb-enter{animation:none!important}
 .vz-choice{transition:none!important}
}


/* VINILAZO editorial home: newspaper-to-record storytelling, no extra fridge gallery. */
.vz-product-label-name{display:none!important}
.vz-product-emblem.vz-product-has-crest{width:58%;height:58%;margin:0}
.vz-product-label{justify-content:center;align-items:center;padding:0}
.vz-choice-orb{width:56px;height:56px}
.vz-choice-orb-mark{width:61%;height:61%;overflow:visible}
.vz-choice-orb-mark .vz-orb-crest{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}
.vz-choice-orb-mark .vz-crest-image{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;display:block}
.vz-choice-centre{overflow:hidden}
.vz-press-section{padding:clamp(70px,8vw,122px) clamp(17px,5vw,80px) clamp(60px,7vw,100px);background:radial-gradient(ellipse at 50% 0%,#172d4a,#071329 66%);color:#f8fbff;border-top:1px solid #ffffff23}
.vz-press-intro{max-width:950px;margin:0 auto 43px;text-align:center}
.vz-press-stage{--press-a:#74acdf;--press-b:#fff;--press-c:#f6b40e;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(15px,3vw,60px);max-width:1130px;min-height:500px;margin:auto;padding:clamp(22px,4vw,50px);border:1px solid #ffffff28;border-radius:28px;background:radial-gradient(ellipse at 26% 38%,#254366bb,transparent 54%),linear-gradient(125deg,#10233d,#07152b 77%);box-shadow:0 30px 80px #0005;overflow:hidden}
.vz-press-paper{display:grid;place-items:center;min-width:0;min-height:410px;position:relative;perspective:900px}
.vz-press-paper::before{content:"";position:absolute;inset:12% 9% 7%;border-radius:16px;background:var(--press-a);filter:blur(60px);opacity:.25}
.vz-press-cover{position:relative;display:block;width:auto;height:clamp(300px,32vw,465px);max-width:100%;object-fit:contain;transform:rotate(-5deg);border:7px solid #f4f0e6;box-shadow:14px 24px 35px #0009,0 0 0 1px #b0a28d;filter:saturate(.87)}
.vz-press-paper.vz-press-enter{animation:vz-paper-arrive .95s cubic-bezier(.16,.9,.24,1) both}
.vz-press-artwork{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;min-width:0}
.vz-press-vinyl{position:relative;display:grid;place-items:center;width:min(78%,300px);aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,#090d14 0 2px,#27313e 2px 3px,#101620 3px 7px);border:2px solid #566271;box-shadow:0 23px 38px #000c,inset 0 0 0 8px #10151d,inset 0 0 20px #0008,0 0 0 9px color-mix(in srgb,var(--press-a) 26%,transparent);animation:vz-press-disc-spin 15s linear infinite}
.vz-press-vinyl::before{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;background:conic-gradient(from 15deg,transparent 0 10%,#ffffff24 20%,transparent 27% 55%,#ffffff19 68%,transparent 74%)}
.vz-press-vinyl.vz-press-enter{animation:vz-record-attach 1s cubic-bezier(.19,.87,.28,1) both,vz-press-disc-spin 15s linear 1s infinite}
.vz-press-vinyl-center{width:44%;aspect-ratio:1;border-radius:50%;position:relative;display:grid;place-items:center;z-index:1;border:3px solid #eaf0f5;box-shadow:inset 0 0 13px #fff7,0 0 0 3px #0b111e;background:linear-gradient(135deg,var(--press-a),var(--press-b) 62%,var(--press-c))}
.vz-press-vinyl-center::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;background:#0b1523;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #ffffffa8}
.vz-press-crest{display:grid;place-items:center;width:56%;height:56%;filter:drop-shadow(0 3px 3px #0007)}
.vz-press-crest .vz-crest-image{width:100%;height:100%;object-fit:contain}
.vz-press-meta{text-align:center;max-width:450px;display:flex;align-items:center;flex-direction:column;gap:8px}
.vz-press-team{font:800 12px/1.2 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#9bd1fd}
.vz-press-goal{font:900 clamp(35px,4vw,60px)/1 var(--display),Impact,sans-serif;letter-spacing:.01em}
.vz-press-place{font:600 13px/1.45 system-ui,sans-serif;color:#abc4df}
.vz-press-link{text-decoration:none;color:#f6fbff;font:800 12px/1.2 system-ui,sans-serif;margin-top:4px;border-bottom:1px solid #85cfff;padding-bottom:5px}
.vz-press-controls{display:flex;justify-content:center;align-items:center;gap:24px;margin:22px auto}
.vz-press-arrow{width:42px;height:42px;border-radius:50%;background:#132c4b;color:#fff;border:1px solid #a7c9ea55;font:800 23px/1 system-ui,sans-serif;cursor:pointer;transition:transform .2s,background .2s}
.vz-press-arrow:hover,.vz-press-arrow:focus-visible{background:#24527c;transform:translateY(-2px)}
.vz-press-count{font:800 13px/1.2 system-ui,sans-serif;letter-spacing:.18em;color:#9db9d7}
.vz-press-strip{display:flex;align-items:stretch;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 3px 15px;max-width:900px;margin:auto;scrollbar-width:thin;scrollbar-color:#4a6581 transparent}
.vz-press-thumb{flex:0 0 170px;min-height:125px;border:1px solid #ffffff20;border-radius:12px;background:#152a44;color:#bfd7ee;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px;text-align:left;scroll-snap-align:center;transition:background .2s,border-color .2s,transform .2s;font:700 11px/1.4 system-ui,sans-serif}
.vz-press-thumb img{width:58px;height:85px;object-fit:cover;object-position:top center;border:2px solid #e2ded4;box-shadow:0 5px 9px #0005}
.vz-press-thumb span{min-width:0;overflow-wrap:break-word}
.vz-press-thumb.vz-selected{background:#1d3d62;border-color:#92ceff;transform:translateY(-3px);color:#fff}
.vz-featured-team{border-color:#4c83ad70;box-shadow:inset 0 0 22px #3269a01a}
.vz-custom-card{border-style:dashed;background:linear-gradient(160deg,#1a2941,#0b1b33)}
.vz-custom-symbol{display:grid;place-items:center;width:85px;height:85px;color:#fff;font:900 30px/1 var(--display),Impact,sans-serif}
.vz-custom-hint{font:750 12px/1.2 system-ui,sans-serif;color:#a8d9ff}
.vz-request-other{max-width:920px;margin:42px auto 0;text-align:center;padding:28px;border-radius:24px;border:1px solid #ffffff24;background:#122b49}
.vz-request-other h3{font:900 clamp(25px,3vw,39px)/1 var(--display),Impact,sans-serif;margin:0 0 10px}
.vz-request-other p{color:#cbdbec;font:500 15px/1.5 system-ui,sans-serif;margin:0 0 19px}
.vz-request-button{display:inline-flex;padding:12px 20px;background:#0f754b;border-radius:99px;color:#fff!important;text-decoration:none;font:800 13px/1.2 system-ui,sans-serif}
.vz-gift-home{padding:clamp(70px,9vw,130px) 22px;background:radial-gradient(ellipse at 50% 50%,#2b244b 0%,#121d39 53%,#071329 100%);text-align:center;border-top:1px solid #ffffff17}
.vz-gift-home>.vz-section-title{max-width:950px;margin:0 auto 24px}
.vz-gift-home>.vz-section-sub{max-width:760px}
.vz-gift-button{margin-top:28px;display:inline-block;border:1px solid #e9d6a2;background:#dfb963;color:#161527;border-radius:99px;padding:15px 26px;font:900 14px/1.2 system-ui,sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}
.vz-gift-button:hover,.vz-gift-button:focus-visible{transform:translateY(-3px);box-shadow:0 10px 20px #0005}
@keyframes vz-paper-arrive{from{opacity:0;transform:translateX(-80px) rotate(-13deg) scale(.86)}to{opacity:1;transform:translateX(0) rotate(0) scale(1)}}
@keyframes vz-record-attach{0%{opacity:0;transform:translateX(90px) rotate(95deg) scale(.66)}65%{opacity:1;transform:translateX(-6px) rotate(-9deg) scale(1.04)}100%{transform:translateX(0) rotate(0) scale(1)}}
@keyframes vz-press-disc-spin{to{transform:rotate(360deg)}}
@media(max-width:800px){
 .vz-press-stage{grid-template-columns:1fr;gap:10px;max-width:570px;padding:23px 18px 31px}
 .vz-press-paper{min-height:0}
 .vz-press-cover{height:clamp(250px,50vw,380px);max-width:85%}
 .vz-press-artwork{margin-top:14px}
 .vz-press-vinyl{width:min(58%,220px)}
 .vz-press-goal{font-size:clamp(32px,8vw,52px)}
 .vz-press-section{padding:62px 15px 68px}
 .vz-press-intro{margin-bottom:28px}
 .vz-press-thumb{flex-basis:148px;min-height:112px;gap:9px;padding:9px}
 .vz-press-thumb img{width:48px;height:72px}
 .vz-gift-home{padding:70px 21px}
}
@media(max-width:720px){
 .vz-choice-orb{width:45px;height:45px}
 .vz-choice-orb-mark{width:62%;height:62%}
 .vz-custom-symbol{width:65px;height:70px;font-size:25px}
 .vz-request-other{margin-top:30px;padding:23px 16px}
}
@media(prefers-reduced-motion:reduce){
 .vz-press-vinyl,.vz-press-paper.vz-press-enter,.vz-press-vinyl.vz-press-enter{animation:none!important}
 .vz-press-arrow,.vz-press-thumb{transition:none}
}


/* Cinematic typography: team identity stays on the record, while words glow with varied light. */
.vz-catalog .vz-kicker{
 color:#e6f7ff;
 background:linear-gradient(105deg,#91d7ff 3%,#ffffff 22%,#ffe6a2 41%,#a6c7ff 62%,#ffffff 83%,#91d7ff);
 background-size:260% 100%;
 -webkit-background-clip:text;background-clip:text;
 -webkit-text-fill-color:transparent;
 animation:vz-cine-shimmer 8s ease-in-out infinite;
}
.vz-catalog .vz-catalog-title::after,
.hero-copy .quote::after{
 background:linear-gradient(100deg,#4acbff 0%,#e9f9ff 24%,#ffde97 48%,color-mix(in srgb,var(--acc,#79c9ff) 25%,#b2b7ff) 73%,#4acbff 100%);
 background-size:250% 100%;
 box-shadow:0 0 13px #72ceff6b,0 0 28px #ffd99238;
 animation:vz-cine-beam 7.2s ease-in-out infinite;
}
.vz-press-intro .vz-cine-title{
 color:#f5faff;
 max-width:1050px;
 margin:0 auto 18px;
 text-wrap:balance;
}
.vz-cine-highlight{
 position:relative;
 display:inline;
 color:#b9e4ff;
 background:linear-gradient(110deg,#8ad9ff 0%,#f9fdff 22%,#ffe1a3 42%,#c5baff 62%,#f3fbff 82%,#79d4ff 100%);
 background-size:250% 100%;
 -webkit-background-clip:text;background-clip:text;
 -webkit-text-fill-color:transparent;
 animation:vz-cine-shimmer 7.8s ease-in-out infinite,vz-cine-text-glow 7.8s ease-in-out infinite;
}
.vz-press-statement{
 margin:0 auto 13px;
 max-width:760px;
 font:700 clamp(17px,2vw,24px)/1.4 system-ui,sans-serif;
 letter-spacing:.005em;
 color:#ecf5ff;
 text-shadow:0 0 8px #64c8ff22;
}
.vz-press-intro .vz-section-sub{max-width:760px;color:#b8cee8}
.vz-gift-home{position:relative;isolation:isolate;overflow:hidden}
.vz-gift-home::before{
 content:"";
 position:absolute;
 z-index:-1;
 inset:0;
 pointer-events:none;
 background:radial-gradient(ellipse at 49% 48%,#6dbdff2b,transparent 40%),radial-gradient(ellipse at 62% 54%,#f6c67720,transparent 50%);
 opacity:.32;
 animation:vz-cine-halo 8.6s ease-in-out infinite;
}
.vz-gift-home>.vz-section-title{
 color:#f6f9ff;
 animation:vz-cine-text-glow 8.6s ease-in-out infinite;
}
@keyframes vz-cine-shimmer{
 0%,100%{background-position:0% 50%}
 45%{background-position:100% 50%}
 60%{background-position:90% 50%}
}
@keyframes vz-cine-beam{
 0%,100%{background-position:0% 50%;opacity:.55;filter:brightness(.85)}
 42%{background-position:100% 50%;opacity:1;filter:brightness(1.45)}
 67%{background-position:65% 50%;opacity:.72;filter:brightness(1)}
}
@keyframes vz-cine-text-glow{
 0%,100%{filter:drop-shadow(0 0 0 #72cfff00)}
 42%{filter:drop-shadow(0 0 8px #85d4ff70)}
 70%{filter:drop-shadow(0 0 4px #ffdf9c55)}
}
@keyframes vz-cine-halo{
 0%,100%{opacity:.25;transform:scale(.95)}
 43%{opacity:.8;transform:scale(1.04)}
 72%{opacity:.5;transform:scale(1)}
}
@media(max-width:720px){
 .vz-press-statement{font-size:17px;line-height:1.45;margin-bottom:11px}
 .vz-press-intro .vz-cine-title{margin-bottom:14px}
}
@media(prefers-reduced-motion:reduce){
 .vz-catalog .vz-kicker,.vz-catalog .vz-catalog-title::after,
 .hero-copy .quote::after,.vz-cine-highlight,.vz-gift-home::before,
 .vz-gift-home>.vz-section-title{animation:none!important;filter:none!important}
 .vz-catalog .vz-catalog-title::after,.hero-copy .quote::after{opacity:1}
}


/* VINILAZO editorial polish — clean spherical team emblems, separated motion and real street celebrations */
.vz-choice-orb{display:grid;place-items:center;overflow:hidden;isolation:isolate}
.vz-choice-orb-mark{width:77%!important;height:77%!important;overflow:hidden!important;border-radius:50%;display:grid;place-items:center;filter:none!important}
.vz-choice-orb-mark .vz-orb-crest{width:100%;height:100%;display:grid;place-items:center;overflow:hidden;border-radius:50%;transform:translateZ(0)}
.vz-orb-crest .vz-crest-image,.vz-choice-orb-mark .vz-crest-image{
 display:block;width:100%;height:100%;max-width:100%;max-height:100%;
 object-fit:contain;object-position:50% 50%;border-radius:50%;
 -webkit-mask-image:radial-gradient(circle at center,#000 47%,#000d 61%,transparent 79%);
 mask-image:radial-gradient(circle at center,#000 47%,#000d 61%,transparent 79%);
 transform:scale(.88);filter:contrast(1.13) saturate(1.16)
}
.vz-choice-orb-mark.vz-orb-enter{animation:vz-icon-focus .65s cubic-bezier(.18,.8,.22,1) both!important}
@keyframes vz-icon-focus{from{opacity:0;transform:scale(.84)}to{opacity:1;transform:scale(1)}}
.vz-press-stage{grid-template-columns:minmax(0,1.23fr) minmax(0,.77fr);gap:clamp(10px,2.5vw,42px);isolation:isolate}
.vz-press-paper{min-height:470px}
.vz-press-cover{height:clamp(370px,38vw,530px);max-width:100%;filter:saturate(.93) contrast(1.04)}
.vz-press-vinyl{width:min(72%,242px);animation:vz-press-disc-spin 17s linear infinite;will-change:transform}
.vz-press-vinyl.vz-press-enter{animation:vz-press-disc-spin 17s linear infinite}
.vz-press-artwork.vz-press-enter{animation:vz-record-arrive-separated .88s cubic-bezier(.16,.9,.24,1) both}
@keyframes vz-record-arrive-separated{
 from{opacity:0;transform:translateX(36px) translateY(12px) scale(.9)}
 to{opacity:1;transform:translateX(0) translateY(0) scale(1)}
}
.vz-press-paper::after{content:"";position:absolute;inset:14% 4%;pointer-events:none;z-index:-1;background:radial-gradient(circle,color-mix(in srgb,var(--press-a) 22%,transparent),transparent 65%);filter:blur(30px);animation:vz-press-aura 6s ease-in-out infinite}
@keyframes vz-press-aura{50%{opacity:.38;transform:scale(1.12)}}
.vz-fans{position:relative;padding:clamp(66px,8vw,115px) clamp(16px,5vw,76px) clamp(70px,8vw,112px);background:radial-gradient(ellipse at 50% 0%,#193451,#09172f 62%,#071329);color:#f7fbff;overflow:hidden;border-top:1px solid #ffffff18}
.vz-fans>.vz-section-eyebrow,.vz-fans>.vz-section-title,.vz-fans>.vz-section-sub{text-align:center;margin-left:auto;margin-right:auto}
.vz-fans-title{max-width:920px}
.vz-fans-intro{max-width:700px;margin-bottom:38px!important}
.vz-fans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2.2vw,26px);max-width:1190px;margin:auto}
.vz-fans-card{position:relative;margin:0;min-width:0;aspect-ratio:3/4;overflow:hidden;border-radius:19px;border:1px solid #ffffff26;background:linear-gradient(150deg,#183756,#091a35);box-shadow:0 19px 42px #0007;opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform .85s cubic-bezier(.16,.85,.22,1)}
.vz-fans-card:nth-child(2){transition-delay:.13s}
.vz-fans-card:nth-child(3){transition-delay:.26s}
.vz-fans-card.vz-fans-visible{opacity:1;transform:translateY(0)}
.vz-fans-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.93) contrast(1.08);transition:transform 7s ease}
.vz-fans-card:hover .vz-fans-photo{transform:scale(1.08)}
.vz-fans-shade{position:absolute;inset:0;background:linear-gradient(0deg,#040d1fee 0%,#061326bb 24%,transparent 61%),linear-gradient(180deg,#d1eaff15,transparent 32%);pointer-events:none}
.vz-fans-caption{position:absolute;bottom:0;left:0;right:0;padding:22px 19px 18px;display:flex;flex-direction:column;gap:11px}
.vz-fans-caption strong{font:900 clamp(23px,2.5vw,34px)/1.08 var(--display),Impact,sans-serif;text-shadow:0 2px 12px #0008}
.vz-fans-credit{font:600 11px/1.4 system-ui,sans-serif;color:#c5e4ff;text-decoration:underline;text-underline-offset:3px;align-self:flex-start}
.vz-fans-credit:hover{color:#fff}
@media(max-width:800px){
 .vz-press-stage{grid-template-columns:1fr;gap:8px}
 .vz-press-cover{height:clamp(290px,66vw,445px);max-width:95%}
 .vz-press-paper{min-height:0}
 .vz-press-vinyl{width:min(54%,185px)}
 .vz-fans-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:6px 3px 18px;scrollbar-width:thin}
 .vz-fans-card{flex:0 0 min(78vw,305px);aspect-ratio:3/4;scroll-snap-align:center}
 .vz-fans-intro{margin-bottom:23px!important}
}
@media(max-width:500px){
 .vz-choice-orb-mark{width:73%!important;height:73%!important}
 .vz-press-vinyl{width:min(50%,168px)}
 .vz-press-cover{height:clamp(285px,76vw,390px)}
 .vz-press-stage{padding:21px 12px 27px}
 .vz-press-artwork{margin-top:9px}
 .vz-fans{padding:62px 14px 72px}
 .vz-fans-card{flex-basis:80vw}
}
@media(prefers-reduced-motion:reduce){
 .vz-choice-orb-mark.vz-orb-enter,.vz-press-artwork.vz-press-enter,.vz-press-paper::after,.vz-press-vinyl{animation:none!important}
 .vz-fans-card{opacity:1;transform:none;transition:none}
 .vz-fans-photo{transition:none}
}

/* Fix team crests: no rectangular badge or clipped white square inside the vinyl. */
.vz-choice-orb{width:clamp(49px,6vw,67px);height:clamp(49px,6vw,67px);border:1px solid #ffffff9c}
.vz-choice-orb-mark{width:73%!important;height:73%!important;overflow:visible!important;filter:none!important}
.vz-choice-orb-mark .vz-orb-crest{width:100%;height:100%;overflow:visible!important;border-radius:0;display:grid;place-items:center}
.vz-orb-crest .vz-crest-image,.vz-choice-orb-mark .vz-crest-image{
 width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;
 border-radius:0;transform:none;filter:drop-shadow(0 2px 3px #0008);
 -webkit-mask-image:none;mask-image:none
}
/* Hide the original crest's rectangular backing by presenting it as a circular cutout,
   then let the spherical centre provide the surrounding colours. */
.vz-choice-orb-mark .vz-crest-image{clip-path:circle(49% at 50% 50%);object-position:center}
.vz-choice-orb-mark{border-radius:50%;overflow:hidden!important}
.vz-choice-orb-mark .vz-orb-crest{overflow:hidden!important;border-radius:50%}
.vz-choice-orb-mark .vz-crest-image{transform:scale(.92)}
.vz-fans-grid.vz-fans-ready{display:flex;max-width:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:16px;padding:12px max(18px,calc((100vw - 1190px)/2)) 22px;scrollbar-width:thin}
.vz-fans-grid.vz-fans-ready .vz-fans-card{flex:0 0 clamp(220px,24vw,320px);scroll-snap-align:center}
.vz-fans-grid.vz-fans-ready .vz-fans-card:nth-child(n+4){transition-delay:0s}
@media(max-width:800px){.vz-fans-grid.vz-fans-ready{padding:10px 5px 20px}.vz-fans-grid.vz-fans-ready .vz-fans-card{flex-basis:min(77vw,310px)}}
@media(prefers-reduced-motion:reduce){.vz-fans-grid.vz-fans-ready{scroll-behavior:auto}}

/* Static cup icons for the two home choices */
.vz-choice-orb-mark .vz-trophy-icon{display:grid;place-items:center;width:64%;height:70%;filter:drop-shadow(0 5px 12px #0008)}
.vz-choice-orb-mark .vz-trophy-icon svg{display:block;width:100%;height:100%;max-height:125px}
.vz-choice-orb-mark{display:grid!important;place-items:center!important}


/* VINILAZO — curated 30-photo supporters cinematic rail */
.vz-fans{position:relative;isolation:isolate}
.vz-fans::before{content:"";position:absolute;inset:4% -15% 18%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 30% 50%,#30608f25,transparent 38%),radial-gradient(ellipse at 77% 60%,#e4bb5920,transparent 40%);animation:vz-fans-ambient 10s ease-in-out infinite alternate}
@keyframes vz-fans-ambient{to{opacity:.38;transform:translateX(2%)}}
.vz-fans-grid.vz-fans-ready{width:100%;display:flex;gap:clamp(13px,2vw,25px);max-width:none;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:clamp(15px,7vw,100px);padding:16px clamp(15px,7vw,100px) 25px;scrollbar-width:thin;scrollbar-color:#6485a0 #07162a}
.vz-fans-grid.vz-fans-ready .vz-fans-card{flex:0 0 clamp(230px,28vw,375px);height:auto;aspect-ratio:4/5;scroll-snap-align:start;scroll-snap-stop:normal;opacity:1;transform:none}
.vz-fans-grid.vz-fans-ready .vz-fans-photo{object-fit:cover}
.vz-fans-grid.vz-fans-ready .vz-fans-card:hover{box-shadow:0 18px 65px #3c75ad40,0 0 0 1px #a8d5ff66}
.vz-fans-controls{display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,35px);padding:17px 10px 0}
.vz-fans-arrow{appearance:none;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;border:1px solid #a5d5ff65;background:#142d4b;color:#f1faff;font:800 23px/1 system-ui,sans-serif;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s}
.vz-fans-arrow:hover,.vz-fans-arrow:focus-visible{background:#24587e;transform:translateY(-2px);box-shadow:0 0 25px #79befb36}
.vz-fans-status{font:800 13px/1.1 system-ui,sans-serif;letter-spacing:.18em;color:#bddaf5;min-width:80px;text-align:center;font-variant-numeric:tabular-nums}
.vz-fans-caption{padding:25px 19px 19px;gap:9px}
.vz-fans-caption strong{font-size:clamp(22px,2.1vw,30px);line-height:1.08}
.vz-fans-credit{font-size:10px;max-width:100%;line-height:1.45}
@media(max-width:800px){
 .vz-fans-grid.vz-fans-ready{gap:12px;padding:13px 15px 22px;scroll-padding-inline:15px}
 .vz-fans-grid.vz-fans-ready .vz-fans-card{flex-basis:min(79vw,330px)}
 .vz-fans-controls{padding-top:10px}
}
@media(prefers-reduced-motion:reduce){
 .vz-fans::before{animation:none}
 .vz-fans-grid.vz-fans-ready{scroll-behavior:auto}
 .vz-fans-arrow{transition:none}
}
