@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Italiana&family=Mrs+Saint+Delafield&display=swap');
:root{scroll-padding-top:96px}.nye-body{--gold:#d6aa52;--champagne:#edc76f;--ebony:#0b0b0a;--ink-soft:#b9b1a3;background:var(--ebony);color:#f7f1e6}.nye-header{position:fixed;inset:0 0 auto;z-index:30;color:#ead8b0;background:rgba(8,8,7,.93);border-bottom:1px solid rgba(214,170,82,.24);backdrop-filter:blur(16px);box-shadow:0 10px 32px rgba(0,0,0,.16);transition:background-color .3s ease,box-shadow .3s ease}.nye-header.scrolled{background:rgba(8,8,7,.97);box-shadow:0 12px 36px rgba(0,0,0,.32)}.nye-header .main-nav{gap:21px}.nye-header .main-nav a{font-size:10px;letter-spacing:.12em}.gold-logo{overflow:visible}.gold-logo img{filter:none;mix-blend-mode:normal;object-fit:contain}.nye-hero{min-height:780px;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(4,5,7,.96),rgba(5,8,12,.48) 58%,rgba(8,6,4,.45)),url('../images/media/reveillon/reveillon-ponte-iluminada.jpg') center/cover no-repeat}.hero-grain{position:absolute;inset:0;background:radial-gradient(circle at 76% 24%,rgba(214,170,82,.17),transparent 27%);pointer-events:none}.nye-hero-content{position:relative;z-index:1;padding-top:92px}.event-signature{width:min(720px,80vw);display:grid;grid-template-columns:auto auto;align-items:end;margin-bottom:26px}.event-signature span{grid-column:1/3;font:clamp(48px,7vw,86px)/.8 'Mrs Saint Delafield',cursive;color:#efd07d;margin-left:22px}.event-signature strong{font:400 clamp(92px,13vw,162px)/.78 var(--serif);letter-spacing:-.045em;color:#e0b457}.event-signature small{font:clamp(34px,4vw,55px)/1 'Mrs Saint Delafield',cursive;color:#f1d995;margin:0 0 7px 16px}.event-signature-image{width:min(680px,82vw);max-height:300px;object-fit:contain;object-position:left center;margin-bottom:30px}.event-meta{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.event-meta b{font-size:16px;letter-spacing:.32em;color:#efd58f}.event-meta span{font-size:10px;letter-spacing:.17em;color:#d2c8b7}.nye-hero-content>p{max-width:550px;color:#ded6c9}.btn.champagne{background:linear-gradient(135deg,#efcc73,#a87522);color:#111;border-radius:999px;font-weight:600}.nye-section{padding:100px 0;scroll-margin-top:0}.nye-section h2,.nye-heading h2{font:400 clamp(38px,5vw,67px)/1.02 var(--serif);margin:0;color:#f7f1e6}.gold-text{color:var(--gold)}.nye-heading{max-width:760px;margin-bottom:48px}.attractions-section{background:#11110f}.attraction-duo{display:grid;grid-template-columns:1fr 1fr;gap:20px}.attraction-duo article{min-height:470px;position:relative;overflow:hidden;background:#171512;border:1px solid rgba(214,170,82,.2)}.attraction-duo article>img,.attraction-placeholder{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.attraction-duo article:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,5,4,.96),rgba(5,5,4,.04) 70%)}.attraction-placeholder{display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,#4b3520,#12110f 55%)}.attraction-placeholder span{font:clamp(70px,10vw,120px)/1 var(--serif);color:rgba(224,180,87,.16)}.attraction-duo article>div:last-child{position:absolute;z-index:2;inset:auto 34px 32px}.attraction-duo small{letter-spacing:.25em;color:var(--gold)}.attraction-duo h3{font:400 clamp(30px,4vw,50px)/1 var(--serif);margin:9px 0}.attraction-duo p{color:#c7beb0;max-width:480px}.venue-section{background:#0c0c0b}.editorial{display:grid;grid-template-columns:.72fr 1.4fr;gap:70px;align-items:center}.editorial>div:first-child>p:not(.eyebrow){color:var(--ink-soft)}.gold-link{display:inline-flex;color:#e5bf69;border-bottom:1px solid #b98a36;padding:10px 0;margin-top:14px}.nye-photo-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:8px}.nye-photo-grid img{width:100%;height:330px;object-fit:cover}.commercial-intro{background:linear-gradient(120deg,#17120d,#0b0b0a)}.commercial-intro h2{max-width:820px}.commercial-paths{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:48px}.commercial-paths a{border:1px solid rgba(214,170,82,.3);padding:30px;display:grid;grid-template-columns:auto 1fr;gap:4px 20px;background:rgba(255,255,255,.025)}.commercial-paths span{grid-row:1/3;color:var(--gold);font:34px var(--serif)}.commercial-paths b{font:26px var(--serif)}.commercial-paths small{color:#9e9588}.ticket-section{background:#0f0f0d}.section-line{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.current-lot{border-left:1px solid var(--gold);padding-left:20px;display:flex;flex-direction:column}.current-lot span{font-size:9px;letter-spacing:.2em;color:#a99e8d}.current-lot b{font:28px var(--serif);color:#e6c473}.sales-pending,.contact-pending{display:inline-flex;padding:10px 15px;border:1px solid rgba(214,170,82,.36);color:#c8aa6a;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ticket-grid article{min-height:350px;border:1px solid rgba(214,170,82,.24);padding:30px;display:flex;flex-direction:column;background:linear-gradient(145deg,#191713,#0d0d0c)}.ticket-grid article>small{font-size:9px;letter-spacing:.19em;color:#a38e66}.ticket-grid h3{font:32px/1.08 var(--serif);margin:24px 0 12px}.ticket-grid p{color:#a9a195}.ticket-grid .btn{margin-top:auto;align-self:flex-start}.ticket-price{display:block;color:#e6c26a;font:25px var(--serif);margin:5px 0 20px}.sales-note{font-size:11px;color:#7f786e;margin-top:18px}.reservation-section{background:#15130f}.reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reservation-grid article{display:grid;grid-template-columns:.9fr 1.1fr;min-height:440px;background:#0c0c0b;border:1px solid rgba(214,170,82,.22)}.reservation-grid article>img,.space-placeholder{width:100%;height:100%;object-fit:cover}.space-placeholder{display:grid;place-items:center;background:radial-gradient(circle,#3a2b19,#111)}.space-placeholder span{font-size:9px;letter-spacing:.2em;color:#b69458}.reservation-grid article>div:last-child{padding:34px;display:flex;flex-direction:column;align-items:flex-start}.reservation-grid h3{font:40px var(--serif);margin:0 0 5px}.reservation-grid p:not(.eyebrow){color:#aaa296}.reservation-grid .btn,.reservation-grid .contact-pending{margin-top:auto}.commercial-note{color:#d5b66f!important}.whatsapp-gold{border:1px solid #c9a34f;color:#efd27f;border-radius:999px}.whatsapp-gold img{width:18px;height:18px;filter:sepia(1) saturate(2)}.event-map-section{background:#0c0c0b}.event-map-placeholder{min-height:430px;border:1px solid rgba(214,170,82,.28);background:radial-gradient(circle at center,rgba(214,170,82,.08),transparent 42%),repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0 1px,transparent 1px 60px);display:grid;place-content:center;text-align:center}.event-map-placeholder span{font:clamp(42px,7vw,82px) var(--serif);color:rgba(214,170,82,.12)}.event-map-placeholder p{color:#c7b992}.event-map-frame{position:relative;border:1px solid rgba(214,170,82,.3);max-height:680px;overflow:hidden}.event-map-frame img{width:100%;max-height:680px;object-fit:contain;background:#161411}.map-zoom{position:absolute;right:18px;bottom:18px;background:#0a0908dd;color:#e7c774;padding:10px 14px;font-size:10px;letter-spacing:.12em}.memories-section{background:#0f0e0c}.past-years{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:8px}.past-years article{min-width:0;overflow:hidden}.past-years article:nth-child(7n+1),.past-years article:nth-child(7n+6){grid-column:span 2}.past-years .gallery-open,.past-years img{width:100%;height:100%;object-fit:cover}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.whatsapp-section{background:radial-gradient(circle at 80% 30%,#4b331a,#12100d 45%)}.whatsapp-section .shell{display:flex;align-items:end;justify-content:space-between;gap:40px}.whatsapp-section h2{max-width:700px}.whatsapp-section p:not(.eyebrow){color:#bbb1a2}.nye-footer{border-top:1px solid rgba(214,170,82,.25);padding:36px 0;background:#080807}.nye-footer .shell{display:flex;align-items:center;justify-content:space-between}.nye-footer p,.nye-footer a{font-size:12px}.nye-gallery-hero,.nye-mode-message{min-height:680px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(5,6,8,.94),rgba(5,6,8,.38)),url('../images/media/reveillon/reveillon-ponte-iluminada.jpg') center/cover;color:#fff}.nye-gallery-hero .shell,.nye-mode-message .shell{padding-top:80px}.signature-script{font:clamp(50px,7vw,90px)/.8 'Mrs Saint Delafield',cursive;color:#f0d07b;margin:0 0 18px}.nye-gallery-hero h1,.nye-mode-message h1{font:400 clamp(58px,9vw,112px)/.94 var(--serif);margin:0 0 22px;color:#ddb051}.nye-gallery-hero p:not(.signature-script),.nye-mode-message p{max-width:610px;color:#d9d1c5}
@media(max-width:980px){.nye-header .main-nav{gap:14px}.nye-header .main-nav a{font-size:9px}.reservation-grid article{grid-template-columns:1fr}.reservation-grid article>img,.space-placeholder{height:300px}}
@media(max-width:820px){:root{scroll-padding-top:78px}.nye-header .main-nav{background:#0c0c0b;color:#ead8b0}.nye-section{padding:72px 0}.nye-hero{min-height:760px;background-position:62% center}.nye-hero-content{padding-top:105px}.event-signature{width:100%;grid-template-columns:auto 1fr}.event-signature span{font-size:52px;margin-left:6px}.event-signature strong{font-size:78px}.event-signature small{font-size:35px;margin-left:10px}.event-meta{align-items:flex-start;flex-direction:column;gap:8px}.event-meta b{font-size:13px}.attraction-duo,.commercial-paths,.ticket-grid,.reservation-grid,.editorial{grid-template-columns:1fr}.attraction-duo article{min-height:410px}.nye-photo-grid{grid-template-columns:1fr}.nye-photo-grid img{height:280px}.section-line{align-items:flex-start;flex-direction:column}.ticket-grid article{min-height:310px}.reservation-grid article>img,.space-placeholder{height:280px}.past-years{grid-template-columns:1fr 1fr;grid-auto-rows:210px}.past-years article:nth-child(n){grid-column:span 1}.whatsapp-section .shell{align-items:flex-start;flex-direction:column}.nye-footer .shell{flex-direction:column;gap:18px}.nye-gallery-hero{min-height:640px}}

.reservation-cta{display:inline-flex;align-items:center;justify-content:center;min-width:174px;padding:14px 24px;border:1px solid rgba(239,204,115,.78);border-radius:7px;background:linear-gradient(135deg,#efcc73,#c2913c);color:#17130c;font-weight:700;text-align:center;box-shadow:0 8px 22px rgba(0,0,0,.18);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease}.reservation-cta:hover{background:linear-gradient(135deg,#f4d684,#cca04d);border-color:#f2d17b;box-shadow:0 10px 26px rgba(0,0,0,.25);transform:translateY(-1px)}.reservation-cta:focus-visible{outline:2px solid #f2d17b;outline-offset:3px}
@media(max-width:820px){.reservation-cta{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.reservation-cta{transition:none}.reservation-cta:hover{transform:none}}

/* Réveillon: cards compactos e centralizados para reservas exclusivas. */
.reservation-grid{width:min(80%,960px);margin-inline:auto;gap:24px}.reservation-grid article{display:flex;min-height:280px}.reservation-grid article>div:last-child{width:100%;padding:38px 32px;align-items:center;justify-content:center;text-align:center}.reservation-grid h3{margin:0 0 14px}.reservation-grid p:not(.eyebrow){max-width:330px;margin:0 auto 28px}.reservation-grid .btn,.reservation-grid .contact-pending{margin:0 auto}
@media(max-width:820px){.reservation-grid{width:min(100%,520px);gap:16px}.reservation-grid article{min-height:250px}.reservation-grid article>div:last-child{padding:32px 24px}.reservation-grid p:not(.eyebrow){margin-bottom:24px}}
@media(max-width:520px){.event-signature span{font-size:44px}.event-signature strong{font-size:65px}.event-signature small{font-size:30px}.past-years{grid-template-columns:1fr;grid-auto-rows:290px}.attraction-duo article>div:last-child{inset:auto 22px 22px}.reservation-grid article>div:last-child{padding:26px}.commercial-paths a{padding:22px}.nye-hero .button-row .btn{width:100%}}

/* A arte oficial permanece inteira: sem recorte, distorção ou textos HTML duplicados. */
.gold-logo{position:relative;overflow:visible}.gold-logo:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#f2d58d,#d6a94f 48%,#9f6b20);-webkit-mask:url('../images/logo-outside-oficial.png') center/contain no-repeat;mask:url('../images/logo-outside-oficial.png') center/contain no-repeat}.gold-logo img{opacity:0}
.nye-hero{min-height:0;display:block;padding:88px 0 0;background:#06070a;overflow:hidden}.nye-hero-art{display:block;width:100%;height:auto;aspect-ratio:2023/777;object-fit:contain;object-position:center;background:#06070a}.nye-hero-actions{position:relative;padding:26px 0 34px;background:linear-gradient(180deg,#080807 0%,#0d0c0a 72%,#11110f 100%);border-top:1px solid rgba(214,170,82,.2)}.nye-hero-actions:before{content:"";position:absolute;left:0;right:0;top:-42px;height:42px;background:linear-gradient(180deg,transparent,rgba(8,8,7,.96));pointer-events:none}.nye-hero-actions .shell{position:relative;z-index:1}.nye-hero-actions .button-row{margin:0;justify-content:center}.nye-hero-actions .btn{min-width:190px}.nye-hero-actions .btn.outline-light{background:rgba(8,8,7,.32);border-color:rgba(237,199,111,.58)}
.event-signature{display:flex;flex-direction:column;align-items:flex-start;width:min(650px,80vw);gap:0}.event-signature span{margin:0 0 4px 18px}.event-signature strong{display:block}.ticket-subtitle{display:block;margin-top:-5px;color:#d2ae67;font-size:15px;letter-spacing:.16em;text-transform:lowercase}.ticket-grid h3{margin-bottom:10px}
.reservation-section .nye-heading>p:not(.eyebrow){max-width:680px;color:#bdb4a6;font-size:17px}
.flyer-frame,.flyer-placeholder{width:min(1080px,100%);aspect-ratio:16/9;margin-inline:auto;border:1px solid rgba(214,170,82,.28);background:#0b0b0a}.flyer-frame{position:relative}.flyer-frame .gallery-open{width:100%;height:100%}.flyer-frame .gallery-open img{width:100%;height:100%;object-fit:contain;background:#0b0b0a}.flyer-placeholder{display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 50% 35%,rgba(214,170,82,.09),transparent 36%),#0b0b0a}.flyer-placeholder strong{font:clamp(30px,4vw,54px)/1 var(--serif);color:#d9b664}.flyer-placeholder span{margin-top:14px;color:#8e8578;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.venue-section .editorial{grid-template-columns:1fr;gap:42px;align-items:start}.venue-section .editorial>div:first-child{max-width:720px}.local-event-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:8px}.local-event-gallery .gallery-open{width:100%;height:100%}.local-event-gallery .gallery-open:nth-child(7n+1),.local-event-gallery .gallery-open:nth-child(7n+6){grid-column:span 2}.local-event-gallery .gallery-open img{width:100%;height:100%;object-fit:cover}.reservation-grid article{display:block;min-height:320px}.reservation-grid article>div:last-child{height:100%;padding:42px}.reservation-grid article>div:last-child>.btn,.reservation-grid article>div:last-child>.contact-pending{margin-top:32px}
/* A planta usa 16:9 e object-fit:contain para preservar textos e numerações. */
.event-map-placeholder,.event-map-frame{width:100%;aspect-ratio:16/9;min-height:0;max-height:none}.event-map-frame{aspect-ratio:auto;background:#161411}.event-map-frame .gallery-open{width:100%;height:auto;cursor:zoom-in}.event-map-frame .gallery-open img{width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:820px){.nye-hero{padding-top:82px}.nye-hero-art{width:100%;height:auto;object-fit:contain}.nye-hero-actions{padding:22px 0 28px}.nye-hero-actions:before{top:-28px;height:28px}.nye-hero-actions .button-row{justify-content:flex-start}.nye-hero-actions .btn{min-width:0}.event-signature{width:100%}.local-event-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.local-event-gallery .gallery-open:nth-child(n){grid-column:span 1}.reservation-grid article{min-height:280px}.reservation-grid article>div:last-child{padding:30px}.event-map-placeholder,.event-map-frame{aspect-ratio:16/9}}
@media(max-width:520px){.flyer-placeholder span{max-width:240px;margin-inline:auto}.local-event-gallery{grid-auto-rows:150px}}
