
:root{--navy:#111c30;--gold:#ffce83;--cream:#fff9ef;--ink:#1a2540}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:white;background:#0d1527}button,a{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}#gate{min-height:100svh;background:radial-gradient(ellipse at 50% 18%,#473653 0%,#1b233d 53%,#101827 100%);display:grid;place-items:center;position:relative;overflow:hidden;padding:24px 14px;text-align:center}#gate:before{content:'✦  ✧   ✦       ✧   ✦';font-size:30px;position:absolute;top:7%;color:#ffda98;opacity:.45;letter-spacing:27px}.gate-inner{position:relative;width:min(100%,600px)}.eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:800;font-size:12px}.gate-inner h1{font:800 clamp(35px,7vw,58px)/1.05 'Playfair Display',serif;margin:14px 0}.gate-inner p{color:#e5dfe8;margin:8px 0 18px}.wheel-frame{width:min(85vw,440px);aspect-ratio:1;margin:10px auto 20px;position:relative;filter:drop-shadow(0 18px 25px #0007)}canvas{width:100%;height:100%;display:block;border-radius:50%;border:10px solid #edc77e;background:#fff} .pointer{position:absolute;top:-17px;left:50%;transform:translateX(-50%);z-index:3;width:0;height:0;border-left:19px solid transparent;border-right:19px solid transparent;border-top:38px solid #fff0b2;filter:drop-shadow(0 2px 3px #0008)}.wheel-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:5px solid #efce8d;background:#fff8ed;color:#783946;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:21px;width:70px;height:70px;box-shadow:0 3px 12px #0004}.main-btn{display:inline-block;border:0;border-radius:999px;background:linear-gradient(135deg,#ffe5a2,#f7b95c);color:#3e2643;font-weight:800;padding:16px 30px;box-shadow:0 9px 22px #0004;text-decoration:none;transition:transform .2s}.main-btn:hover{transform:translateY(-2px)}.main-btn:disabled{opacity:.6;cursor:wait}.small-note{font-size:12px!important;color:#c2bbcc!important;margin-top:16px!important}#confetti{position:fixed;inset:0;pointer-events:none;z-index:15;overflow:hidden}.piece{position:absolute;top:-5vh;width:10px;height:16px;animation:fall var(--dur) linear forwards;transform:rotate(var(--rot));opacity:.95}@keyframes fall{to{top:105vh;transform:translateX(var(--dx)) rotate(900deg)}}.modal-cover{position:fixed;inset:0;background:#08101de8;z-index:10;display:grid;place-items:center;padding:22px}.reveal{background:#fffaf2;color:#18223b;width:min(100%,450px);border-radius:23px;overflow:hidden;text-align:center;box-shadow:0 35px 90px #000a;animation:pop .6s cubic-bezier(.2,1.4,.5,1)}@keyframes pop{from{opacity:0;transform:translateY(25px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.reveal img{width:100%;height:240px;object-fit:cover}.reveal-content{padding:23px}.reveal h2{font:800 35px 'Playfair Display',serif;margin:5px 0}.reveal p{line-height:1.6}.reveal .main-btn{margin:8px 0 4px}.site{min-height:100vh;position:relative;isolation:isolate;background:#11213a}.site:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,21,38,.91),rgba(10,21,38,.76)),url('https://dynamic-media-cdn.tripadvisor.com/media/photo-o/17/b6/8a/20/city-unscripted-budapest.jpg?h=900&s=1&w=1200') center/cover no-repeat}.site-header{position:sticky;top:0;z-index:5;background:rgba(12,23,41,.93);backdrop-filter:blur(16px);border-bottom:1px solid #ffffff25;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px max(20px,calc((100vw - 1100px)/2))}.brand{font:800 19px 'Playfair Display',serif;white-space:nowrap;color:#ffe1a6}.nav{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.nav a{text-decoration:none;font-size:12px;font-weight:700;padding:10px 11px;border-radius:30px;color:#f8f0e8}.nav a:hover,.nav a:focus{background:#ffffff21}.wrap{width:min(1100px,calc(100% - 36px));margin:auto}.hero{min-height:420px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:65px 0 50px}.hero h1{font:800 clamp(48px,9vw,100px)/1 'Playfair Display',serif;margin:14px 0;color:#fff5e6}.hero h1 span{color:#ffce83}.hero .lead{font-size:clamp(17px,2vw,22px);max-width:680px;line-height:1.5;color:#eae4dc}.tag{background:#ffe3ae22;color:#ffe3ae;border:1px solid #ffe3ae55;border-radius:25px;padding:9px 14px;font-size:13px;font-weight:800;display:inline-block}section.content{scroll-margin-top:90px;padding:47px 0;border-top:1px solid #ffffff25}.section-title{font:700 clamp(32px,5vw,50px) 'Playfair Display',serif;margin:0 0 13px}.intro{color:#e9e7e6;max-width:810px;line-height:1.8;font-size:16px}.glass{background:#101d33db;border:1px solid #ffffff35;border-radius:20px;padding:25px;box-shadow:0 12px 35px #0002}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:24px}.info-card h3{color:#ffe0a2;margin:5px 0 13px;font-size:22px}.info-card p,.info-card li{line-height:1.7;color:#ececef}.photo{width:100%;height:240px;object-fit:cover;border-radius:14px;background:#29364d}.photo-caption{font-size:12px;color:#d9d7d2;margin:9px 2px}.timeline{list-style:none;padding:0;margin:20px 0}.timeline li{padding:10px 0 10px 24px;border-left:2px solid #e1bb83;position:relative;line-height:1.6}.timeline li:before{content:"";position:absolute;left:-7px;top:17px;width:12px;height:12px;background:#ffcf85;border-radius:50%}.detail{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #ffffff25;padding:12px 0}.detail span:first-child{color:#c0cbd6}.detail strong{text-align:right}.pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.pill{background:#ffffff1b;border:1px solid #ffffff31;padding:9px 12px;border-radius:40px;font-size:13px}.partners{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:26px}.partner{min-height:123px;border-radius:16px;padding:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;box-shadow:0 7px 25px #0003;transition:transform .2s}.partner:hover{transform:translateY(-4px)}.partner strong{font-size:clamp(15px,2vw,22px);line-height:1.16}.partner small{font-size:10px;letter-spacing:1.2px;margin-top:9px;text-transform:uppercase}.partner:nth-child(7n+1){background:#f8ede1;color:#aa323c;font-family:Georgia,serif}.partner:nth-child(7n+2){background:#bd2031;color:#fff;font-family:Georgia,serif;font-style:italic}.partner:nth-child(7n+3){background:#e8efe3;color:#246146;font-family:Georgia,serif}.partner:nth-child(7n+4){background:#602c47;color:#f2d0a0;font-family:Georgia,serif}.partner:nth-child(7n+5){background:#ebc95d;color:#3b2227;font-weight:900}.partner:nth-child(7n+6){background:#e5e7fb;color:#47366e;font-family:Georgia,serif}.partner:nth-child(7n){background:#073e61;color:#fff;font-weight:900}footer{text-align:center;padding:55px 15px;color:#d3d1d4;font-size:13px}.footer-heart{font-size:25px;color:#ffc781}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery img{width:100%;height:180px;object-fit:cover;border-radius:13px}.notice{padding:13px 17px;border:1px solid #f1d19580;border-radius:12px;color:#f2dfbd;background:#94743a21;font-size:13px;line-height:1.5;margin-top:14px}@media(max-width:850px){.site-header{align-items:flex-start;flex-direction:column}.nav{justify-content:flex-start;gap:2px}.nav a{padding:8px 9px;font-size:11px}.grid3{grid-template-columns:1fr 1fr}.partners{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.grid2,.grid3{grid-template-columns:1fr}.partners{grid-template-columns:repeat(2,1fr)}.glass{padding:18px}.hero{min-height:360px}.photo{height:210px}.gallery img{height:135px}section.content{scroll-margin-top:128px}.site-header{padding:13px 16px}.nav a{font-size:11px;padding:7px 7px}.partner{min-height:110px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.partner{transition:none}}

/* Navigazione multipagina */
.site-header{gap:12px}.nav-home{border:1px solid #ffe0a280;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;text-decoration:none;color:#ffe0a2;font-size:24px;flex-shrink:0;transition:background .2s}.nav-home:hover,.nav-home:focus-visible{background:#ffffff24}.nav a[aria-current="page"]{background:#ffe0a22b;color:#ffe2a7}.page-main{min-height:calc(100svh - 150px)}.page-heading{padding:44px 0 10px}.page-heading h1{margin:12px 0;font:800 clamp(36px,6vw,64px)/1.1 'Playfair Display',serif;color:#fff4df}.page-actions{margin:30px 0 55px;display:flex;gap:12px;flex-wrap:wrap}.page-actions a{display:inline-block;border:1px solid #ffdb9e80;border-radius:30px;padding:12px 18px;text-decoration:none;font-weight:700;background:#151f35c9}.page-actions a:hover{background:#ffffff21}@media(max-width:850px){.site-header{flex-direction:row;align-items:center;flex-wrap:wrap}.nav{order:3;width:100%;justify-content:center}.nav-home{margin-left:auto}}


/* Our Proud Partners: marchi scherzosi, molto vicini al linguaggio visivo dei brand, ma non identici. */
.partners{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.brand-card{position:relative;isolation:isolate;min-height:190px;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:22px 14px 18px;text-align:center;box-shadow:0 16px 36px #0006;border:1px solid #ffffff2d;transition:transform .25s ease}
.brand-card:hover{transform:translateY(-4px)}
.brand-card *{position:relative;z-index:1}
.brand-mark{display:flex;align-items:center;justify-content:center;min-height:92px;max-width:100%;position:relative}
.brand-name{position:relative;z-index:1;font-size:clamp(20px,2.5vw,31px);line-height:1.05;overflow-wrap:anywhere}
.brand-motto{position:relative;z-index:1;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-top:11px;line-height:1.3}

.brand-coffee{background:#006241;color:#fff}
.brand-coffee .brand-mark{border:5px double #fff;border-radius:50%;width:156px;height:156px;min-height:0;padding:18px;background:radial-gradient(circle at center,#0a7b58 0 42%,transparent 42%)}
.brand-coffee .brand-mark:before,.brand-coffee .brand-mark:after{content:'★';position:absolute;top:50%;transform:translateY(-50%);font-size:15px;color:#fff;opacity:.95}
.brand-coffee .brand-mark:before{left:18px}.brand-coffee .brand-mark:after{right:18px}
.brand-coffee .brand-name{font:700 21px/1.02 Georgia,serif;max-width:92px}
.brand-coffee .brand-motto{color:#d8f5e7}

.brand-cola{background:#c91927;color:#fff}
.brand-cola:before,.brand-cola:after{content:'';position:absolute;left:-10%;width:120%;height:24px;background:#fff;border-radius:50%;transform:rotate(-11deg)}
.brand-cola:before{top:18px}.brand-cola:after{bottom:16px}
.brand-cola .brand-name{font:italic 700 clamp(30px,3.8vw,47px)/1 'Brush Script MT','Segoe Script','Lucida Handwriting',cursive;letter-spacing:-1px;text-shadow:1px 2px #6c0c18}
.brand-cola .brand-motto{color:#ffe6e8;letter-spacing:.18em}

.brand-fried{background:linear-gradient(90deg,#bf1028 0 17%,#fff6ee 17% 23%,#bf1028 23% 29%,#fff6ee 29% 100%);color:#111}
.brand-fried .brand-mark{margin-left:24%}
.brand-fried .brand-mark:before{content:'';position:absolute;left:-52px;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 45% 38%,#fff 0 7px,#111 8px 11px,transparent 12px),radial-gradient(circle at 62% 38%,#fff 0 7px,#111 8px 11px,transparent 12px),radial-gradient(circle at 50% 62%,#111 0 15px,transparent 16px),#f0d9be;border:3px solid #111;box-shadow:0 0 0 2px #fff6ee}
.brand-fried .brand-name{font:900 25px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:-1.2px}
.brand-fried .brand-motto{margin-left:22%;color:#8d1827}

.brand-arches{background:#d82228;color:#ffce00}
.brand-arches:before,.brand-arches:after{content:'';position:absolute;top:24px;width:66px;height:120px;border:16px solid #ffce00;border-bottom:none;border-radius:60px 60px 0 0;opacity:.88}
.brand-arches:before{left:calc(50% - 56px)}.brand-arches:after{left:calc(50% - 10px)}
.brand-arches .brand-mark{padding-top:31px;width:100%;min-height:108px}
.brand-arches .brand-name{font:900 clamp(18px,2.3vw,25px)/1.15 Arial,sans-serif;color:#fff;background:#a90e1ce8;border:1px solid #ffffff45;border-radius:12px;padding:10px 12px;max-width:100%;text-shadow:0 2px 2px #55040b;box-shadow:0 4px 14px #61040b55}
.brand-arches .brand-motto{color:#ffe468;background:#a90e1ce8;border-radius:999px;padding:4px 10px;line-height:1.45}

.brand-streaming{background:#0b0b0d;color:#e50914}
.brand-streaming .brand-mark:before{content:'';position:absolute;inset:4px auto 4px auto;width:18px;height:86px;background:#b20710;left:50%;transform:translateX(-50%) skewX(-18deg);box-shadow:-22px 0 0 #e50914,22px 0 0 #7d0610;opacity:.34}
.brand-streaming .brand-name{font:900 clamp(28px,3.5vw,43px)/1 Arial,sans-serif;letter-spacing:-1.2px;text-transform:uppercase;text-shadow:2px 2px 0 #520006}
.brand-streaming .brand-motto{color:#fff}

.brand-doll{background:linear-gradient(#f5b2d6,#f48bbe);color:#fff}
.brand-doll .brand-mark{background:#f8d7e8;border:4px solid #fff;border-radius:999px;padding:10px 24px;box-shadow:0 6px 0 #d72e7d}
.brand-doll .brand-name{font:italic 700 clamp(30px,3.5vw,45px)/1 'Brush Script MT','Segoe Script','Lucida Handwriting',cursive;color:#fff;text-shadow:2px 3px 0 #d02c79}
.brand-doll .brand-motto{color:#911858}

.brand-furniture{background:#145aa4;color:#ffe100}
.brand-furniture .brand-mark{background:#ffe100;color:#145aa4;border-radius:50% / 44%;width:92%;max-width:292px;min-height:94px;transform:rotate(-4deg);padding:12px;border:4px solid #145aa4;box-shadow:0 0 0 3px #ffe100}
.brand-furniture .brand-name{font:900 clamp(20px,2.7vw,32px)/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:-1.5px}
.brand-furniture .brand-motto{color:#ffe100}

.brand-chocolate{background:#fff2d5;color:#633521}
.brand-chocolate:before{content:'';position:absolute;inset:12px;border:3px double #6b3c23;border-radius:14px}
.brand-chocolate:after{content:'';position:absolute;left:18px;right:18px;top:18px;bottom:18px;border:1px solid #9a6a4c;border-radius:10px;opacity:.75}
.brand-chocolate .brand-name{font:italic 800 clamp(29px,3.1vw,36px)/1.05 Georgia,serif;letter-spacing:-1px}
.brand-chocolate .brand-motto{color:#7b5743}

.brand-luxury{background:#f2eee8;color:#121212}
.brand-luxury .brand-mark{padding:0 12px}
.brand-luxury .brand-mark:before,.brand-luxury .brand-mark:after{content:'';position:absolute;left:10%;right:10%;height:1px;background:#121212;opacity:.22}
.brand-luxury .brand-mark:before{top:-9px}.brand-luxury .brand-mark:after{bottom:-9px}
.brand-luxury .brand-name{font:400 clamp(24px,2.7vw,33px)/1.12 'Times New Roman',serif;letter-spacing:.18em;text-transform:uppercase}
.brand-luxury .brand-motto{letter-spacing:.25em;font-size:9px;color:#5b5b5b}

.brand-delivery{background:#ffd400;color:#c4162a}
.brand-delivery:before,.brand-delivery:after{content:'';position:absolute;left:12%;width:76%;height:8px;background:#cf1930;transform:skew(-22deg);border-radius:2px}
.brand-delivery:before{top:34px}.brand-delivery:after{bottom:34px}
.brand-delivery .brand-name{font:italic 900 clamp(29px,3.4vw,36px)/1 Arial,sans-serif;transform:skew(-10deg);letter-spacing:-1px}
.brand-delivery .brand-motto{color:#9f1728;background:#fff2b5;padding:4px 10px;border-radius:999px;margin-top:14px;letter-spacing:.12em}

.brand-sports{background:#f5f5f5;color:#151515;padding-bottom:26px}
.brand-sports .brand-name{font:italic 900 clamp(21px,2.7vw,32px)/1.1 Arial,sans-serif;text-transform:uppercase;transform:skew(-10deg)}
.brand-sports .brand-motto{color:#444;background:#ffffffd9;padding:3px 8px;border-radius:999px;margin-top:12px}
.brand-sports:after{content:'';position:absolute;width:96px;height:14px;background:#111;clip-path:polygon(0 48%,80% 0,100% 0,38% 100%);bottom:12px;right:14px;opacity:.96}

.brand-travel{background:#173a60;color:#fff}
.brand-travel .brand-mark{border:2px solid #ebc889;border-radius:999px;width:162px;height:110px;padding:10px 16px;background:linear-gradient(180deg,#214d7e,#13304f)}
.brand-travel .brand-name{font:italic 700 clamp(20px,2.4vw,28px)/1.08 Georgia,serif}
.brand-travel .brand-motto{color:#e9c387}

.brand-toy{background:#eb1d2d;color:#fff}
.brand-toy .brand-mark{background:#eb1d2d;border:6px solid #fff;box-shadow:0 0 0 4px #f6b61e;transform:rotate(-4deg);padding:15px 14px;min-height:100px;border-radius:6px}
.brand-toy .brand-name{font:900 clamp(28px,3.3vw,36px)/1 Arial,sans-serif;letter-spacing:-2px;text-shadow:-2px -2px #111,2px 2px #111}
.brand-toy .brand-motto{color:#fff9ad}

.brand-tech{background:linear-gradient(180deg,#f7f7f7,#e6e6e6);color:#222}
.brand-tech .brand-mark{padding-top:8px}
.brand-tech .brand-mark:before{content:'';position:absolute;top:-16px;left:50%;transform:translateX(-50%);font-size:34px;color:#111;opacity:.9;font-family:Arial,sans-serif}
.brand-tech .brand-name{font:600 clamp(24px,2.8vw,35px)/1.1 Arial,sans-serif;letter-spacing:-1px}
.brand-tech .brand-motto{color:#555}

@media(max-width:800px){.partners{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.partners{gap:10px}.brand-card{min-height:160px;padding:14px 8px 16px}.brand-name{font-size:20px!important}.brand-cola .brand-name,.brand-doll .brand-name{font-size:27px!important}.brand-coffee .brand-mark{width:128px;height:128px}.brand-coffee .brand-name{font-size:17px!important}.brand-fried .brand-mark{margin-left:15%}.brand-fried .brand-motto{margin-left:15%}.brand-delivery .brand-motto{font-size:8px;padding:3px 8px}.brand-motto{font-size:8px}.brand-luxury .brand-name{font-size:18px!important}}
