@font-face{font-family:Display;src:local('Impact');font-display:swap}
:root{--purple:#4a27af;--deep:#200451;--bright:#6237d7;--lilac:#caa1dd;--paper:#f8f6fc;--ink:#32116a;--line:rgba(74,39,175,.2);--body:Arial,Helvetica,sans-serif;--heading:Display,Impact,'Arial Narrow',sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:110px}body{margin:0;background:var(--purple);color:white;font-family:var(--body);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto;display:block}p,h1,h2,h3{margin:0}p+p{margin-top:22px}ul{padding-left:20px}a,button,input,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #edbbff;outline-offset:5px}.light-world a:focus-visible,.light-world button:focus-visible,input:focus-visible{outline-color:var(--bright)}[hidden]{display:none!important}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip:focus{position:fixed;top:12px;left:12px;z-index:1000;background:white;color:var(--purple);padding:12px 20px;border-radius:8px}
.purple-world{position:relative;isolation:isolate;overflow:clip;background:#4a27af}.purple-world:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.6' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.burst{position:absolute;z-index:-2;top:-36vw;left:-12%;width:125%;height:auto;max-width:none;transform:rotate(15.7deg);pointer-events:none;opacity:.86}.site-header{padding:40px 24px 0;position:sticky;top:0;z-index:10}.site-header nav{width:max-content;max-width:100%;margin:auto;background:white;color:var(--purple);display:flex;align-items:center;gap:30px;padding:9px 9px 9px 32px;border-radius:100px;box-shadow:0 8px 30px #25055918}.site-header nav>a{font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.025em;white-space:nowrap}.site-header nav>a:not(.button){padding:12px 0;position:relative}.site-header nav>a:not(.button):after{content:'';position:absolute;bottom:8px;height:2px;left:0;right:100%;background:var(--purple);transition:right .2s}.site-header nav>a:hover:after{right:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:18px 26px;background:linear-gradient(#480dae,#390298);color:white;border:1px solid #4d09c0;border-radius:100px;font-weight:700;font-size:14px;line-height:1.4;transition:background .2s,transform .2s;min-height:48px}.button:hover{background:#5822c7;transform:translateY(-2px)}.button:disabled{opacity:.65;cursor:wait;transform:none}.nav-cta span{font-size:18px}.hero{position:relative;padding:20px 24px 64px}.hero-art{position:relative;width:min(900px,90vw);height:min(525px,52.5vw);margin:0 auto}.hero-art h1{position:absolute;left:15%;top:37%;width:75%;margin:0}.confra{width:100%;height:auto}.sticker{position:absolute;object-fit:contain}.drink{width:20%;height:35%;top:12%;left:3%;transform:rotate(-19deg)}.disco{width:16%;height:31%;top:4%;left:49%;transform:rotate(3deg)}.computer{width:19%;height:29%;top:16%;right:1%;transform:rotate(15deg)}.glasses{width:23%;height:21%;top:60%;left:14%}.jump{width:43%;height:44%;top:45%;left:44%;transform:rotate(4.5deg)}.countdown-wrap{text-align:center;margin:8px auto 0}.countdown{display:flex;justify-content:center;gap:42px;align-items:center}.countdown>div{display:flex;align-items:center;gap:12px}.countdown b{font-family:var(--heading);font-size:clamp(42px,6.1vw,88px);font-weight:400;line-height:1;min-width:1.25em;font-variant-numeric:tabular-nums}.countdown span{font-family:var(--heading);font-size:23px;text-transform:uppercase}.countdown-wrap>p{font-size:14px;color:#e1d4ff;margin:22px 0 0;letter-spacing:.035em}.discover{display:flex;width:max-content;align-items:center;gap:16px;margin:32px auto 0;text-transform:uppercase;letter-spacing:.14em;font-size:11px}.discover span{font-size:20px}
.section{max-width:1216px;margin:0 auto;padding:110px 40px;scroll-margin-top:0}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:50px;margin-bottom:56px}.section-heading>p{max-width:280px;margin-top:14px;line-height:1.55;text-wrap:pretty}.section-heading>p:last-child{text-align:right}h2{font:400 clamp(48px,5.8vw,86px)/.98 var(--heading);letter-spacing:-.025em;text-transform:uppercase}h2 em{font-style:normal;color:var(--lilac)}h3{font:400 38px/1.12 var(--heading);letter-spacing:-.015em}h2,h3,.section-heading>p,.artist-invite,.rsvp-copy>p{text-wrap:balance}strong{font-weight:700}.eyebrow{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:24px}.intro{padding-top:52px;padding-bottom:130px}.intro .section-heading h2{font-size:clamp(56px,6.6vw,98px)}.intro-body{display:grid;grid-template-columns:1fr 1fr;gap:130px;align-items:center}.intro-text{max-width:540px;line-height:1.95}.celebrate{position:relative;padding:35px 0 0 20px}.celebrate>img{width:150px;height:180px;object-fit:contain;margin:0 auto 28px;transform:rotate(12deg)}.celebrate p{font:400 48px/1.05 var(--heading);text-transform:uppercase;transform:rotate(-5deg)}.celebrate span{color:var(--lilac)}.light-world{background:var(--paper);color:var(--ink)}.light-world h2 em{color:#8358b2}.facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts article{padding:38px 0 42px}.facts article+article{border-left:1px solid var(--line);padding-left:50px}.facts .eyebrow{margin-bottom:18px}.facts h3{font-size:36px}.facts p{margin-top:12px;color:#635674}.attractions{padding-top:105px;padding-bottom:105px}.attraction-panel{display:grid;grid-template-columns:.85fr 1fr;gap:60px;align-items:center}.attraction-art{min-height:315px;display:grid;place-items:center;border-radius:50%;background:#6237d7;aspect-ratio:1.25;width:90%;position:relative}.attraction-art img{width:63%;height:260px;object-fit:contain;transform:rotate(-9deg);filter:drop-shadow(0 18px 8px #25075955)}.tag{display:inline-flex;font-size:12px;text-transform:uppercase;letter-spacing:.08em;border:1px solid #caa1dd99;color:#f3deff;border-radius:100px;padding:6px 17px;margin-bottom:24px}.attraction-panel h3{font-size:50px;text-transform:uppercase}.attraction-panel p{margin-top:22px;color:#e3d9f8;line-height:1.8}.menu-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-right:140px}.menu-grid article{border-top:1px solid var(--line);padding-top:32px}.menu-grid h3{font-size:30px}.menu-grid p{margin-top:18px;color:#635674}.menu-grid>img{position:absolute;width:175px;height:180px;object-fit:contain;right:-20px;bottom:-10px;transform:rotate(15deg)}
.rsvp-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:120px;padding-bottom:120px;align-items:start}.rsvp-copy h2{font-size:clamp(56px,5.7vw,84px)}.rsvp-copy>p{max-width:360px;margin-top:28px;line-height:1.8}.rsvp-copy .small{font-size:14px;color:#e4d9fa}.rsvp-copy .small a{text-decoration:underline}.rsvp-copy>img{width:225px;height:130px;object-fit:contain;margin-top:48px;transform:rotate(-10deg)}.rsvp-card{background:white;color:var(--ink);border-radius:22px;padding:42px;box-shadow:12px 14px 0 #361584;margin:0 14px 18px 0}.rsvp-card h3{font-size:50px;line-height:1;text-transform:uppercase;margin-bottom:18px}.rsvp-card .eyebrow{font-size:11px;margin-bottom:18px}.rsvp-card p{font-size:14px;line-height:1.7;color:#6d617b;margin-bottom:26px}.rsvp-card label{font-size:14px;font-weight:600;display:block;margin:20px 0 8px}.rsvp-card input:not([type=checkbox]):not([type=hidden]){border:1px solid #d8d1e3;border-radius:8px;background:#fcfbfe;width:100%;padding:14px 15px;color:#32116a;min-height:50px;font-size:16px}.rsvp-card input::placeholder{color:#80758d}.rsvp-card input:user-invalid{border-color:#b93246}.rsvp-card small{display:block;color:#796d87;font-size:12px;line-height:1.5;margin-top:8px}.consent{display:flex;align-items:start;gap:12px;margin:24px 0}.consent input{width:19px;height:19px;flex:0 0 19px;accent-color:var(--purple);margin-top:2px}.consent label{font-size:12px;font-weight:400;line-height:1.6;margin:0;color:#675875}.submit{width:100%;justify-content:space-between;padding:18px 22px;font-size:13px}.submit>span:last-child{font-size:22px;line-height:1}.rsvp-card .form-note{text-align:center;font-size:11px;margin:18px 0 0;color:#776787}.rsvp-card .form-message{color:#98283e;background:#fff0f3;padding:12px 15px;border-left:3px solid #bc3552;border-radius:4px;margin:0 0 20px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#rsvp-success{padding:45px 0}#rsvp-success h3{font-size:68px}#rsvp-success .button{margin-top:10px}
.faq-world{background:#351478}.faq{display:grid;grid-template-columns:.85fr 1fr;gap:80px}.faq h2{font-size:64px}.questions details{border-bottom:1px solid #ffffff30}.questions details:first-child{border-top:1px solid #ffffff30}.questions summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:22px;font-size:16px;font-weight:600;min-height:74px;padding:22px 0;line-height:1.5}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:24px;font-weight:400;color:var(--lilac);transition:transform .2s}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{padding:0 36px 24px 0;font-size:14px;color:#e0d4f6;line-height:1.8}footer{background:#250b58;padding:35px max(30px,calc((100vw - 1136px)/2));display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:12px;color:#e1d2f8}.footer-brand{font:400 30px/1 var(--heading);white-space:nowrap}.footer-brand span{font-family:Arial,sans-serif;font-weight:700;font-size:21px;border:2px solid var(--lilac);border-radius:5px;padding:1px 6px;display:inline-block;transform:rotate(-7deg);margin-left:6px}
@media(min-width:1600px){.hero-art{width:1080px;height:610px}.hero{padding-bottom:80px}.section{padding-left:0;padding-right:0}.hero-art h1{top:39%}}
@media(max-width:1000px){.section{padding:80px 32px}.site-header nav{gap:20px;padding-left:24px}.site-header nav>a{font-size:11px}.button{padding:15px 22px}.hero-art{width:95vw;height:55vw}.section-heading{gap:36px}.intro-body{gap:60px}.celebrate p{font-size:40px}.rsvp-section{gap:42px}.rsvp-card{padding:30px}.faq{gap:40px}.faq h2{font-size:54px}.menu-grid{padding-right:95px;gap:25px}.menu-grid>img{width:125px;right:-22px}.attraction-panel{gap:35px}.attraction-panel h3{font-size:40px}.attraction-art{min-height:250px}}
@media(max-width:760px){.site-header{padding:20px 16px 0}.site-header nav{border-radius:20px;gap:2px 18px;justify-content:center;flex-wrap:wrap;padding:12px 14px;max-width:500px;width:100%}.site-header nav>a{font-size:11px;min-height:36px}.site-header nav .nav-cta{padding:10px 18px;font-size:11px;min-height:38px}.site-header nav>a:not(.button){padding:8px 0}.hero{padding:12px 8px 42px}.hero-art{width:96vw;height:62vw;margin-top:20px}.hero-art h1{left:12%;width:78%;top:34%}.disco{top:0;left:47%;height:29%}.drink{top:7%;left:0}.computer{top:11%;right:0}.glasses{top:55%;left:12%}.jump{top:39%;left:42%;width:48%;height:44%}.countdown{gap:22px}.countdown>div{gap:5px}.countdown b{font-size:48px}.countdown span{font-size:17px}.countdown-wrap>p{font-size:12px;margin-top:20px;padding:0 20px}.discover{font-size:10px;margin-top:26px}.burst{top:-10vw;width:190%;left:-43%}.section{padding:65px 24px}h2,.intro .section-heading h2{font-size:58px}.section-heading{display:block;margin-bottom:34px}.section-heading>p,.section-heading>p:last-child{margin-top:25px;text-align:left;max-width:400px;font-size:15px;line-height:1.8}.intro{padding-top:35px}.intro-body{grid-template-columns:1fr;gap:20px}.intro-text{font-size:16px}.celebrate{display:none}.facts{grid-template-columns:1fr}.facts article{padding:28px 0}.facts article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.facts h3{font-size:32px}.eyebrow{font-size:11px;margin-bottom:18px}.attraction-panel{grid-template-columns:1fr;gap:30px}.attraction-art{width:75%;margin:0 auto;min-height:0;height:220px}.attraction-art img{height:190px;width:65%}.attraction-panel h3{font-size:42px}.attraction-panel p{font-size:15px}.menu-grid{grid-template-columns:1fr;padding-right:65px;gap:32px}.menu-grid>img{width:105px;height:150px;right:-14px;bottom:20px}.menu-grid h3{font-size:29px}.menu-grid article{padding-top:24px}.rsvp-section{grid-template-columns:1fr;gap:35px}.rsvp-copy h2{font-size:64px}.rsvp-copy>p{font-size:15px;max-width:100%}.rsvp-copy>img{display:none}.rsvp-card{padding:30px 24px;box-shadow:6px 8px 0 #361584}.rsvp-card h3{font-size:48px}.rsvp-card label{font-size:14px}.consent label{font-size:12px}.faq{grid-template-columns:1fr;gap:32px}.faq h2{font-size:58px}.questions summary{font-size:15px}.questions details p{font-size:14px}footer{flex-wrap:wrap;padding:32px 24px;gap:18px}footer p{margin:0}footer>a:last-child{width:100%;border-top:1px solid #ffffff20;padding-top:20px}}
@media(max-width:380px){.countdown{gap:14px}.countdown b{font-size:40px}.countdown span{font-size:14px}h2,.intro .section-heading h2{font-size:50px}.rsvp-copy h2{font-size:56px}.section{padding-left:20px;padding-right:20px}.site-header nav{gap:0 14px}}
@media(max-width:760px){.hero-art{width:100%;max-width:100%}.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-width:420px;margin:0 auto;padding:0 12px}.countdown>div{display:flex;flex-direction:column;gap:8px}.countdown b{font-size:46px;min-width:0}.countdown span{font-size:16px}.rsvp-card{min-width:0}.rsvp-card h3{overflow-wrap:break-word}}
@media(max-width:760px){.menu-grid>img{right:5px;width:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition:none!important}}
/* Movimento e galeria do local */
.reading-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;background:#edc6ff;transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}
.button span[aria-hidden]{transition:transform .25s}.button:hover span[aria-hidden]{transform:translate(3px,-3px)}
.facts article,.menu-grid article{transition:background .3s,box-shadow .3s}.facts article:hover,.menu-grid article:hover{background:#4a27af05;box-shadow:0 4px 0 #8358b2}
.rsvp-card input:not([type=checkbox]){transition:border-color .2s,box-shadow .2s,background .2s}.rsvp-card input:focus{background:white;box-shadow:0 0 0 4px #4a27af12;border-color:#8358b2}
.questions details{overflow:hidden}.questions summary{transition:color .2s}.questions summary:hover{color:var(--lilac)}
.venue-gallery{border-bottom:1px solid #ffffff26}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.venue-photo{margin:0;min-width:0}.venue-photo:first-child{grid-column:1/-1}.photo-link{display:block;position:relative;overflow:hidden;border-radius:14px;background:#351478;aspect-ratio:4/3}.venue-photo:first-child .photo-link{aspect-ratio:16/8}.photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.65,.3,1),filter .4s}.photo-link:hover img,.photo-link:focus-visible img{transform:scale(1.045);filter:brightness(1.06)}.photo-expand{position:absolute;bottom:18px;right:18px;border:1px solid #ffffff60;border-radius:100px;padding:8px 16px;background:#250b58cc;color:white;font-size:12px;backdrop-filter:blur(10px)}.venue-photo figcaption{display:flex;gap:18px;margin-top:14px;font-size:14px}.venue-photo figcaption>span{color:var(--lilac);font-variant-numeric:tabular-nums}.gallery-empty{display:grid;grid-template-columns:.8fr 1fr;gap:65px;align-items:center;padding:40px;background:#35147866;border:1px solid #ffffff20;border-radius:18px}.gallery-empty h3{font-size:44px;text-transform:uppercase}.gallery-empty p{margin-top:22px;color:#e3d9f8;font-size:15px}.gallery-frame{display:grid;place-items:center;aspect-ratio:4/3;border:2px dashed #caa1dd70;border-radius:12px;transform:rotate(-5deg);background:linear-gradient(135deg,#8358b240,transparent)}.gallery-frame>span{font-size:42px;font-weight:bold;border:3px solid var(--lilac);border-radius:8px;padding:0 20px;transform:rotate(10deg);color:#e4cbef}.photo-dialog{background:#1b0939;color:white;border:1px solid #ffffff30;border-radius:16px;padding:60px 24px 18px;width:min(1100px,94vw);max-height:94dvh;overflow:auto}.photo-dialog::backdrop{background:#10051ce8;backdrop-filter:blur(8px)}.photo-close{position:absolute;right:18px;top:12px;background:transparent;color:white;border:0;padding:8px 12px;min-height:40px;font-size:14px}.photo-stage{height:min(65dvh,730px);display:grid;place-items:center}.photo-stage img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}.photo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.photo-toolbar p{font-size:14px;text-align:center}.photo-toolbar button{flex:0 0 44px;width:44px;height:44px;border:1px solid #ffffff60;border-radius:50%;background:transparent;color:white}.photo-toolbar button:disabled{opacity:.3;cursor:default}body.photo-open{overflow:hidden}
@media(max-width:1000px){.site-header nav{gap:16px}.gallery-empty{gap:35px;padding:32px}.gallery-empty h3{font-size:36px}}
@media(max-width:760px){.site-header nav{gap:2px 16px}.photo-grid{grid-template-columns:1fr;gap:28px}.venue-photo:first-child .photo-link{aspect-ratio:4/3}.gallery-empty{grid-template-columns:1fr;gap:32px;padding:28px}.gallery-frame{width:70%;margin:8px auto}.gallery-frame>span{font-size:32px}.gallery-empty h3{font-size:36px}.photo-dialog{padding:58px 12px 14px}.photo-stage{height:58dvh}.photo-toolbar{gap:10px}}
@media(prefers-reduced-motion:reduce){.photo-link img,.button span[aria-hidden],.facts article,.menu-grid article,.questions summary{transition:none}.photo-link:hover img,.photo-link:focus-visible img,.button:hover span[aria-hidden]{transform:none}.reading-progress{display:none}}
/* Assinatura visual: mesmos SVGs e composição da hero. */
.photo-credit{margin-top:28px;font-size:12px;color:#dfcef5;line-height:1.7}.photo-credit a{text-decoration:underline;text-underline-offset:3px}
.party-footer{position:relative;isolation:isolate;overflow:hidden;background:#4a27af;border-top:1px solid #ffffff25;padding-top:26px;padding-bottom:26px}.party-footer:before{content:'';position:absolute;inset:-380px -15% -300px;z-index:-1;background:url('../burst.svg') center/cover no-repeat;opacity:.55;pointer-events:none}.footer-brand.footer-logo{display:block;width:320px;max-width:100%;flex:0 0 320px;line-height:1}.footer-brand.footer-logo .footer-logo-art{all:unset;display:block;position:relative;width:100%;aspect-ratio:900/525}.footer-wordmark{position:absolute;left:15%;top:37%;width:75%;height:auto}.party-footer p,.party-footer>a:last-child{color:white;font-size:14px}.party-footer>a:last-child{padding:12px 0}.footer-logo:focus-visible{outline-offset:0}
@media(max-width:760px){.party-footer{justify-content:center;gap:12px;padding:24px}.footer-brand.footer-logo{flex-basis:290px;width:290px}.party-footer p{text-align:center;width:100%;margin:0}.party-footer>a:last-child{text-align:center;margin-top:12px;padding-top:20px}}
/* Cardápio completo, organizado por categorias. */
.menu-grid.menu-categories{grid-template-columns:repeat(3,minmax(0,1fr));padding-right:0;gap:42px 36px}.menu-categories article{min-width:0;padding:26px 0 8px}.menu-categories .eyebrow{margin-bottom:14px;color:#765b98}.menu-categories h3{font-size:29px;line-height:1.15}.menu-categories ul{list-style:none;padding:0;margin:20px 0 0;color:#514064;font-size:16px;line-height:1.7}.menu-categories li+li{margin-top:7px}.menu-signature{display:grid;place-items:center;min-height:180px}.menu-signature img{position:static;width:155px;height:180px;object-fit:contain;transform:rotate(12deg)}
@media(max-width:1000px){.menu-grid.menu-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.menu-signature{display:none}}
@media(max-width:600px){.menu-grid.menu-categories{grid-template-columns:1fr;gap:26px}.menu-categories h3{font-size:30px}}
/* Sticker em destaque e fundos em camadas para o parallax. */
.menu-signature{min-height:330px;padding:22px 12px;overflow:visible}.menu-signature img{width:min(100%,290px);height:300px;filter:drop-shadow(0 16px 14px #4a27af20);transform:rotate(8deg)}
.venue-gallery,.confirmations-section,.rsvp-section,.attractions{position:relative;isolation:isolate;overflow:clip;--section-drift:0px}
.venue-gallery:before,.attractions:before,.rsvp-section:before{content:'';position:absolute;inset:-90px -12%;z-index:-1;pointer-events:none;background:url('../burst.svg') center/cover no-repeat;opacity:.1;transform:translate3d(0,var(--section-drift),0)}
.attractions:before{background-position:70% 35%;opacity:.13;inset:0}.rsvp-section:before{background-position:25% 65%;opacity:.09}
@media(max-width:1000px){.menu-signature{display:grid;grid-column:1/-1;min-height:280px}.menu-signature img{width:250px;height:260px}}
@media(max-width:600px){.menu-signature{min-height:260px;padding:14px}.menu-signature img{width:230px;height:240px}}
@media(prefers-reduced-motion:reduce){.venue-gallery:before,.attractions:before,.rsvp-section:before{transform:none}.menu-signature img{transform:rotate(8deg)}}
/* Flutuação independente do transform usado pelo parallax e pela composição original. */
.hero-art .sticker,.celebrate>img,.attraction-art>img,.rsvp-copy>img,.confirmations-art img,.menu-signature img,.footer-logo-art .sticker{translate:0 var(--sticker-float,0px);rotate:var(--sticker-tilt,0deg)}
@media(prefers-reduced-motion:reduce){.hero-art .sticker,.celebrate>img,.attraction-art>img,.rsvp-copy>img,.confirmations-art img,.menu-signature img,.footer-logo-art .sticker{translate:none;rotate:none}}
.artist+.artist{margin-top:36px;padding-top:28px;border-top:1px solid #ffffff30}.attraction-panel .artist h3{font-size:clamp(38px,4.8vw,66px);line-height:1.12;text-transform:none;overflow-wrap:break-word}.attraction-panel .artist-role{font-size:14px;letter-spacing:.16em;font-weight:700;color:var(--lilac);margin:20px 0 28px}.artist-profile{background:#ffffff12;border-color:#ffffff55;min-height:48px}.artist-profile:hover{background:#ffffff24}.artist-profile span{font-size:21px}
/* Atração em destaque: retrato e assinatura. */
.artist-feature-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:76px;align-items:center}.artist-visual{position:relative;padding:28px 20px 40px 0;overflow:visible}.artist-portrait{position:relative;margin:0;aspect-ratio:1;transform:rotate(-3deg);border:9px solid #caa1dd;background:#24034e;box-shadow:15px 18px 0 #2a0e68;overflow:hidden;border-radius:28px}.artist-portrait>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center top;border-radius:0}.artist-portrait figcaption{position:absolute;left:14px;bottom:14px;color:white;background:#24034ed9;border:1px solid #ffffff45;padding:6px 12px;font-size:11px;letter-spacing:.13em}.artist-visual .artist-sticker{position:absolute;right:-14px;bottom:0;width:136px;height:136px;min-height:0;aspect-ratio:1;margin:0;background:none;border-radius:0}.artist-visual .artist-sticker img{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 12px 10px #20045155)}.artist-feature-copy .tag{margin-bottom:26px}.artist-feature-copy .artist-role{color:var(--lilac);font-size:14px;letter-spacing:.2em;font-weight:700;margin:0 0 15px}.artist-feature-copy h3{font-size:clamp(55px,6.8vw,98px);line-height:1.05;letter-spacing:-.025em;overflow-wrap:break-word}.artist-invite{font-size:20px;line-height:1.7;margin-top:25px;color:#e6d8fa}.artist-socials{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:30px}.artist-soundcloud-link{font-size:14px;text-decoration:underline;text-underline-offset:5px}
.playlist-block{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center;margin-top:84px}.playlist-copy h3{font-size:clamp(40px,4.6vw,64px);text-transform:uppercase;margin-bottom:16px}.playlist-copy p{color:#e6d8fa;line-height:1.7;margin:0 0 28px;max-width:34ch}.playlist-copy .button{width:fit-content}.playlist-embed{width:100%;height:352px;border:0;border-radius:24px;background:#200451}
@media(max-width:1000px){.artist-feature-main{gap:40px}.artist-feature-copy h3{font-size:64px}.artist-socials{gap:16px}.playlist-block{gap:32px}}
@media(max-width:760px){.playlist-block{grid-template-columns:1fr;gap:28px;margin-top:56px}.playlist-embed{height:152px}.artist-feature-main{grid-template-columns:1fr;gap:25px}.artist-visual{width:min(100%,400px);margin:auto;padding:28px 20px 35px 8px}.artist-portrait{box-shadow:9px 12px 0 #2a0e68;border-width:7px}.artist-visual .artist-sticker{right:0;width:110px;height:110px}.artist-visual .artist-sticker img{width:100px;height:100px}.artist-feature-copy h3{font-size:64px}.artist-invite{font-size:18px}.artist-socials .button{font-size:12px;padding:15px 18px}}
/* Cantos arredondados nas fotografias e na moldura da artista. */
.photo-link{border-radius:24px}.photo-stage img{border-radius:18px}
@media(max-width:760px){.artist-portrait{border-radius:24px}.photo-link{border-radius:20px}}
/* Mural de confirmações e formulário SSO */
.confirmations-section{position:relative;isolation:isolate;overflow:clip;--section-drift:0px;border-top:1px solid #ffffff26}.confirmations-section:before{content:'';position:absolute;inset:-90px -12%;z-index:-1;pointer-events:none;background:url('../burst.svg') center/cover no-repeat;opacity:.1;background-position:60% 40%;transform:translate3d(0,var(--section-drift),0)}.confirmations-count{margin-top:18px;font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:#e6d8fa}.confirmations-count strong{font:400 clamp(40px,4.5vw,64px)/1 var(--heading);display:inline-block;margin-right:10px;color:white;letter-spacing:-.02em;text-transform:none;vertical-align:-.12em}.section-heading-aside{max-width:280px;margin-top:14px;text-align:right}.section-heading-aside>p{line-height:1.55;text-wrap:pretty;margin:0}.confirmations-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;border-top:1px solid #ffffff30}.confirmation-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:start;padding:28px 0;border-bottom:1px solid #ffffff30}.confirmation-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;background:#351478}.confirmation-avatar-fallback{display:grid;place-items:center;font:700 20px/1 var(--heading);color:#f3deff;letter-spacing:.04em}.confirmation-copy h3{font:400 32px/1.1 var(--heading);text-transform:uppercase;margin:2px 0 10px}.confirmation-copy p{font-size:15px;line-height:1.7;color:#e2d6f8;margin:0;max-width:36ch}.confirmations-empty{display:grid;grid-template-columns:.75fr 1.1fr;gap:48px;align-items:center;padding:36px 40px;border:1px solid #ffffff30;border-radius:28px;background:#35147866}.confirmations-art{display:grid;place-items:center}.confirmations-art img{width:min(220px,70%);height:auto;transform:rotate(-8deg)}.confirmations-empty .tag{margin-bottom:18px}.confirmations-empty h3{font-size:clamp(36px,4vw,52px);text-transform:uppercase;margin-bottom:18px}.confirmations-empty p{font-size:16px;line-height:1.75;color:#e6d8fa;margin:0 0 28px;max-width:34ch}.confirmations-empty .button{width:fit-content}.rsvp-card textarea{border:1px solid #d8d1e3;border-radius:8px;background:#fcfbfe;width:100%;padding:14px 15px;color:#32116a;min-height:96px;font:inherit;resize:vertical}.rsvp-card textarea:focus{background:white;box-shadow:0 0 0 4px #4a27af12;border-color:#8358b2;outline:none}.rsvp-card .optional{font-weight:400;color:#796d87}.rsvp-card .char-count{font-size:12px;color:#796d87;margin:-4px 0 0;text-align:right}.rsvp-login .button{margin-top:8px}.rsvp-confirmed .tag,.rsvp-card .rsvp-status{display:inline-flex;align-items:center;margin-bottom:18px;color:#32116a;border:1.5px solid #4a27af;background:#efe8fb;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em;border-radius:100px;padding:7px 16px}.rsvp-confirmed h3{margin-bottom:14px}.rsvp-confirmed-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:8px 0 28px}.rsvp-confirmed-actions>.button{width:auto;margin:0}.rsvp-admin-link{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--purple);text-decoration:underline}.rsvp-cancel{margin-top:18px;padding-top:16px;border-top:1px solid #e7e0f0}.rsvp-cancel-btn{appearance:none;border:0;background:none;padding:0;font:inherit;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#98283e;cursor:pointer;text-decoration:underline}.rsvp-cancel-btn:disabled{opacity:.55;cursor:wait}.admin-page{background:var(--paper);color:var(--ink);min-height:100vh}.admin-shell{max-width:1080px;margin:0 auto;padding:48px 24px 80px}.admin-back a{color:var(--purple);font-size:14px;font-weight:600}.admin-header{margin:28px 0 32px}.admin-header h1{font:400 clamp(40px,5vw,64px)/1 var(--heading);text-transform:uppercase;margin:8px 0 12px}.admin-header p{color:#675875}.admin-flash{padding:14px 16px;border-radius:10px;margin-bottom:22px}.admin-flash.is-ok{background:#eef8ef;color:#1f6b34}.admin-flash.is-error{background:#fff0f3;color:#98283e}.admin-empty{color:#675875}.admin-table-wrap{overflow:auto;border:1px solid #e7e0f0;border-radius:16px;background:white}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th,.admin-table td{padding:14px 16px;text-align:left;border-bottom:1px solid #efeaf5;vertical-align:top}.admin-table th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#796d87}.admin-table tr:last-child td{border-bottom:0}.admin-remove-btn{appearance:none;border:1px solid #bc3552;background:#fff0f3;color:#98283e;border-radius:100px;padding:8px 14px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.rsvp-confirmed-lead{margin-bottom:22px!important}.rsvp-confirmed>.button{width:auto;margin:8px 0 28px}.rsvp-message-preview{margin:0 0 24px;padding:16px 18px;border-left:3px solid var(--bright);background:#f6f1fc;border-radius:0 12px 12px 0}.rsvp-message-preview .eyebrow{margin-bottom:8px;color:#6d617b}.rsvp-message-preview p{margin:0;color:var(--ink);font-size:15px;line-height:1.6}.rsvp-edit{border-top:1px solid #e7e0f0;padding-top:8px}.rsvp-edit summary{cursor:pointer;list-style:none;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.rsvp-edit summary::-webkit-details-marker{display:none}.rsvp-edit summary:after{content:'+';font-size:22px;font-weight:400;color:var(--bright)}.rsvp-edit[open] summary:after{content:'–'}.rsvp-edit form{padding-bottom:4px}.rsvp-edit form>p{margin-bottom:8px}
@media(max-width:1000px){.confirmations-empty{gap:32px;padding:32px}.confirmations-empty h3{font-size:40px}}
@media(max-width:760px){.confirmations-list{grid-template-columns:1fr}.confirmation-copy h3{font-size:26px}.confirmations-empty{grid-template-columns:1fr;gap:28px;padding:28px}.confirmations-art img{width:55%;margin:0 auto}.confirmations-empty h3{font-size:36px}.confirmations-count strong{font-size:44px}.section-heading-aside{max-width:none;margin-top:22px;text-align:left}}
@media(prefers-reduced-motion:reduce){.confirmations-section:before{transform:none}}
