*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}body.neon{--bg:#100720;--ink:#fff7ff;--muted:#d0bedc;--accent:#66f6ee;--line:#624079;--panel:#1d1032;--button:#66f6ee;--button-ink:#160c28}body.pop{--bg:#f8f1e1;--ink:#152b62;--muted:#42516c;--accent:#2449d8;--line:#a4a6ad;--panel:#ffe5ba;--button:#2449d8;--button-ink:#fff}body.vinil{--bg:#26070e;--ink:#fff0d8;--muted:#ddc5b9;--accent:#edc98c;--line:#805745;--panel:#390f18;--button:#edc98c;--button-ink:#300b13}a{color:inherit;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--accent,#324ee5);outline-offset:5px}h1,h2,h3,p{margin:0}.skip{position:fixed;top:-100px;left:15px;z-index:20;padding:12px;background:var(--bg)}.skip:focus{top:10px}.topbar{max-width:1280px;margin:auto;padding:20px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;letter-spacing:1px}.topbar>a{text-decoration:none;font-weight:800}.topbar>a span{font-weight:400}.topbar button{background:transparent;border:1px solid var(--line);border-radius:30px;color:var(--ink);font-size:12px;min-height:44px;padding:8px 16px;letter-spacing:0}.invitation{max-width:1200px;margin:16px auto 0;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:64px;padding:0 32px}.hero{position:sticky;top:20px;aspect-ratio:2/3;overflow:hidden;border:1px solid var(--line);isolation:isolate}.art{display:block;width:100%;height:100%;object-fit:cover}.hero .art{animation:drift 12s ease-in-out infinite alternate}.hero-copy{position:absolute;top:5%;left:5%;right:5%;text-align:center;z-index:2}.eyebrow{font-size:clamp(11px,1.1vw,15px);letter-spacing:.22em;font-weight:600}.hero h1,.teaser h1{font-family:Impact,'Arial Black',sans-serif;font-weight:900;line-height:.95;margin:20px 0 14px;white-space:nowrap;letter-spacing:-.045em;font-size:clamp(70px,8.5vw,116px)}h1 strong{font:inherit}.neon h1{color:#fff1ff;text-shadow:3px 3px 0 #c42dd7,0 0 28px #d333b9}.neon h1 strong{color:#76ffff}.pop h1{color:#2449d8;transform:rotate(-4deg);text-shadow:4px 5px 0 #ffba55}.pop h1 strong{color:#e84a35}.vinil h1{font-family:Georgia,serif;font-weight:400;color:#f6d298;letter-spacing:-.07em}.tagline{font-size:clamp(16px,1.8vw,23px);line-height:1.25;margin:auto;max-width:92%;font-weight:600;text-wrap:balance}.vinil .tagline{font-family:Georgia,serif;font-style:italic;font-weight:400}.hero-foot{position:absolute;bottom:0;left:0;right:0;background:var(--bg);padding:18px 20px;display:flex;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:1px;border-top:1px solid var(--line)}.details{padding:12px 0 0}.kicker,.mini{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--accent)}.details h2{font-size:clamp(27px,2.8vw,38px);font-weight:500;line-height:1.18;margin:18px 0 30px;text-wrap:balance}.vinil .details h2,.vinil .dress h3{font-family:Georgia,serif}.pop .details h2{font-weight:800;letter-spacing:-1px}.event{display:flex;gap:22px;align-items:center;padding:24px 0;border-block:1px solid var(--line);margin-bottom:28px}.date-block{min-width:108px;display:flex;flex-direction:column}.date-block span{font-size:11px;letter-spacing:.04em}.date-block b{font-size:38px;font-weight:700;line-height:1.4;letter-spacing:-2px}.place{border-left:1px solid var(--line);padding-left:22px}.place h3{font-size:20px;line-height:1.2}.place .space{font-size:16px;margin:4px 0 10px}.place p:last-child{font-size:13px;line-height:1.6;color:var(--muted)}.primary{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 24px;background:var(--button);color:var(--button-ink);text-decoration:none;font-size:18px;font-weight:750;min-height:58px;border-radius:4px;transition:transform .2s}.primary:hover{transform:translateY(-2px)}.pop .primary{box-shadow:5px 5px 0 #f09a56;border-radius:0}.vinil .primary{border-radius:100px}.deadline{text-align:center;font-size:13px;margin:13px 0 16px}.individual{text-align:center;font-size:12px;color:var(--muted);line-height:1.7}.dress{margin-top:30px;padding:26px;background:var(--panel);border-left:3px solid var(--accent)}.dress h3{font-size:26px;line-height:1.2;margin:14px 0 10px}.dress p{font-size:14px;color:var(--muted)}.dress a{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;min-height:44px;font-weight:650;font-size:15px}.pop .dress{border:1px solid #173b83;transform:rotate(-1deg);box-shadow:5px 5px 0 #f1bb6a}.travel{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;padding:22px 0;border-bottom:1px solid var(--line)}.travel a{min-height:44px;display:inline-flex;align-items:center;font-size:13px}.brands{padding:28px 0 12px;text-align:center}.brands>p{font-size:10px;letter-spacing:3px;color:var(--muted);margin-bottom:20px}.brands>div{display:flex;gap:28px;align-items:center;justify-content:center;background:#fff;border-radius:4px;padding:16px 22px}.brands img{width:calc(50% - 14px);max-width:180px;height:60px;object-fit:contain}footer{text-align:center;color:var(--muted);font-size:11px;margin:38px 20px 26px}.spark{position:absolute;width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 18px var(--accent);animation:shimmer 5s ease-in-out infinite;pointer-events:none}.s1{left:12%;top:42%}.s2{right:14%;top:68%;animation-delay:-2s}.pop .spark{width:16px;height:16px;box-shadow:none;border-radius:0;background:#e94a35;animation:twist 9s ease-in-out infinite}.vinil .spark{background:#ffe6a5}.paused *,.paused *:before,.paused *:after{animation-play-state:paused!important}@keyframes drift{to{transform:scale(1.025) translateY(-2px)}}@keyframes shimmer{0%,100%{opacity:.2;transform:scale(.6)}50%{opacity:.9;transform:scale(1.2)}}@keyframes twist{50%{transform:rotate(90deg) translateY(8px)}}
.teaser-page{width:1080px;margin:0}.teaser{width:1080px;height:1620px;position:relative;overflow:hidden}.teaser .art{width:1080px;height:1620px}.teaser .hero-copy{top:65px}.teaser .eyebrow{font-size:26px;letter-spacing:6px}.teaser h1{font-size:220px;margin:25px 0 24px}.teaser .tagline{font-size:36px;max-width:850px}.teaser-bottom{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,var(--bg) 23%);padding:85px 30px 40px;text-align:center}.teaser-date{font-size:40px;font-weight:700}.teaser-date span{padding:0 14px;color:var(--accent)}.teaser-call{font-size:38px;font-weight:650;margin-top:15px}.teaser-bottom>p:nth-child(3){font-size:25px;margin-top:12px}.teaser-brands{font-size:17px;letter-spacing:3px;margin-top:30px;font-weight:700}.teaser-brands span{padding:0 20px}.teaser.pop h1{text-shadow:7px 9px 0 #ffba55}.teaser.vinil h1{font-size:212px}
.gallery{background:#f4f2ed;color:#212626;--accent:#2449d8}.gallery main{max-width:1300px;margin:auto;padding:65px 32px}.gallery>.eyebrow{color:#666}.gallery h1{font-size:clamp(42px,6vw,76px);font-weight:600;line-height:1.05;letter-spacing:-3px;margin:24px 0}.gallery .intro{font-size:18px;max-width:690px;color:#5b6161}.options{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:50px 0}.cover{display:block}.cover img{display:block;width:100%;height:auto;border-radius:8px}.options .kicker{margin-top:24px}.options h2{font-size:28px;letter-spacing:-1px;margin:6px 0}.options article>p:not(.kicker){color:#606666;min-height:54px;font-size:15px}.gallery-button{display:block;text-align:center;padding:14px;background:#202c2c;color:white;text-decoration:none;margin:20px 0 6px;border-radius:4px}.download{display:block;text-align:center;padding:12px;font-size:14px}.gallery aside{border-top:1px solid #ccc;padding-top:30px;max-width:900px}.gallery aside h2{font-size:24px;margin-bottom:16px}.gallery aside p{color:#606666;margin:12px 0}
@media(max-width:800px){.topbar{padding:12px 18px;font-size:9px;gap:10px}.topbar>a span{display:block}.topbar button{font-size:11px;padding:8px 12px}.invitation{display:block;max-width:560px;padding:0 18px;margin:8px auto 0}.hero{position:relative;top:0;margin:0 -18px;border-inline:0}.hero-copy{top:6%}.hero h1{font-size:clamp(78px,19vw,120px);margin:16px 0 14px}.eyebrow{font-size:clamp(10px,2.5vw,14px)}.tagline{font-size:clamp(17px,4.7vw,24px)}.hero-foot{font-size:11px;padding:16px 22px}.details{padding:30px 3px 0}.details h2{font-size:31px;margin-bottom:25px}.kicker{font-size:10px}.event{gap:16px}.date-block{min-width:99px}.place{padding-left:16px}.place h3{font-size:19px}.place p:last-child{font-size:12px}.dress{padding:24px}.brands>div{gap:20px;padding:15px}.brands img{width:calc(50% - 10px);height:52px}.options{grid-template-columns:1fr;max-width:460px;margin-inline:auto;gap:40px}.gallery main{padding:35px 22px}.gallery h1{letter-spacing:-2px}.gallery .eyebrow{font-size:11px}.gallery .intro{font-size:16px}}
.brands>div{background:#142737}.hero h1 strong,.teaser h1 strong{display:inline-block;margin-left:.035em}.hero .tagline{display:table;padding:4px 10px;border-radius:3px;background:var(--bg)}.hero-copy{top:4%}.hero .eyebrow{margin-top:2px}.hero h1{margin-top:14px}.hero.vinil .tagline{background:transparent}
.controls{display:flex;align-items:center;gap:8px}@media(max-width:420px){.topbar{padding-inline:12px;gap:6px}.topbar>a{font-size:8px;letter-spacing:0}.topbar button{font-size:10px;padding:7px 9px}.controls{gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:not(.motion-enabled) *,body:not(.motion-enabled) *:before,body:not(.motion-enabled) *:after{animation:none!important;transition:none!important}}

/* Revision 2: official transparent logos, more perceptible motion, new option. */
.brands>div{background:transparent;padding:12px 0;border:0;border-radius:0;gap:32px}
.brands img{max-width:210px;height:62px;width:calc(50% - 16px)}
.teaser-brands{margin-top:22px}.teaser-brands .brands{padding:0}.teaser-brands .brands>p{display:none}.teaser-brands .brands>div{padding:0;gap:65px}.teaser-brands .brands img{width:300px;max-width:300px;height:88px}
body.videoclipe{--bg:#003f48;--ink:#fff;--muted:#cce5e7;--accent:#e1fa14;--line:#56939b;--panel:#074e61;--button:#e1fa14;--button-ink:#12383b}
.videoclipe h1{color:#e7ff24;text-shadow:5px 5px 0 #a9009f;transform:rotate(-3deg)}
.videoclipe h1 strong{color:#fff}.videoclipe .details h2{font-weight:800;letter-spacing:-1px}.videoclipe .primary{box-shadow:5px 5px 0 #f72aa7}.videoclipe .dress{border-left:0;border-top:4px solid #ee36b2}
.hero .art{animation:art-breathe 6s ease-in-out infinite alternate;transform-origin:center 65%;will-change:transform}
.motion-decor{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.orbit{position:absolute;right:7%;top:36%;width:34px;height:34px;border:3px solid var(--accent);border-radius:50%;box-shadow:0 0 14px var(--accent);animation:object-float 4s ease-in-out infinite}
.orbit.second{left:6%;right:auto;top:71%;width:20px;height:20px;animation-delay:-2s}
.pop .orbit{border-radius:0;box-shadow:none;background:#ed533b;border:0;animation:shape-turn 6s ease-in-out infinite}.pop .orbit.second{background:#2449d8;border-radius:50%;animation:object-float 4s ease-in-out infinite}
.videoclipe .orbit{border-radius:0;transform:rotate(45deg);border-color:#ff49bf;animation:shape-turn 6s ease-in-out infinite;box-shadow:none}
.equalizer{position:absolute;bottom:11%;right:6%;display:flex;align-items:end;gap:4px;height:34px;padding:5px 7px;background:var(--bg);border-radius:4px}
.equalizer b{display:block;width:5px;height:24px;background:var(--accent);transform-origin:bottom;animation:equalize 1.4s ease-in-out infinite alternate}.equalizer b:nth-child(2){animation-delay:-.6s}.equalizer b:nth-child(3){animation-delay:-1.1s}.equalizer b:nth-child(4){animation-delay:-.3s}.equalizer b:nth-child(5){animation-delay:-.9s}
@keyframes art-breathe{from{transform:scale(1)}to{transform:scale(1.055) translateY(-4px)}}
@keyframes object-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-22px)}}
@keyframes shape-turn{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-18px) rotate(100deg)}}
@keyframes equalize{from{transform:scaleY(.2)}to{transform:scaleY(1)}}
@media(max-width:800px){.brands>div{gap:28px}.brands img{height:56px;width:calc(50% - 14px)}.hero .orbit{width:25px;height:25px}.hero .orbit.second{width:17px;height:17px}}
