/* Duas sequências idênticas mantêm a passagem contínua, sem salto no loop. */
.sponsors{padding:28px 0 30px;background:#edd5a6 url('../img/paper-texture.jpg') center/cover;color:#35251c;border-top:1px solid #a67e46;border-bottom:3px solid #9e241f}
.sponsors-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0  clamp(18px,3vw,56px) 22px}
.sponsors-heading h2{margin:0;font-size:clamp(20px,2vw,28px);font-weight:600;line-height:1.2}
.sponsors-heading h2 span{color:#9e241f;margin-right:8px}
.sponsors-toggle{flex-shrink:0;border:1px solid #88633d;border-radius:3px;background:transparent;color:#513620;padding:7px 12px;font-size:13px;cursor:pointer}
.sponsors-toggle:hover{background:#e0bd80}
.sponsors-toggle:focus-visible{outline:2px solid #9e241f;outline-offset:4px}
.sponsors-marquee{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}
.sponsors-track{display:flex;width:max-content;animation:sponsors-scroll 78s linear infinite}
.sponsors-group{display:flex;flex-shrink:0;list-style:none;padding:0;margin:0}
.sponsor-logo{display:flex;align-items:center;justify-content:center;width:260px;height:150px;padding:0 22px;border-right:1px solid rgba(81,54,32,.18)}
.sponsor-logo img{width:100%;height:100%;object-fit:contain}
.sponsors.is-paused .sponsors-track{animation-play-state:paused}
@keyframes sponsors-scroll{to{transform:translateX(-50%)}}
@media(max-width:580px){
    .sponsors{padding:22px 0}
    .sponsors-heading{align-items:flex-start;gap:12px;flex-direction:column;margin-bottom:14px}
    .sponsor-logo{width:200px;height:125px;padding:0 14px}
    .sponsors-track{animation-duration:60s}
}
@media(prefers-reduced-motion:reduce){
    .sponsors-track{animation:none}
    .sponsors-marquee{overflow-x:auto;mask-image:none}
    .sponsors-group[aria-hidden="true"]{display:none}
    .sponsors-toggle{display:none}
}

:root{
    --paper:#e9c98f;
    --paper-light:#f3dca9;
    --ink:#171615;
    --red:#9e241f;
    --red-dark:#791813;
    --cream:#ecd8aa;
    --olive:#6d812c;
    --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#171613;color:var(--ink);font-family:Oswald,Arial,sans-serif;overflow-x:hidden}
a{color:inherit}
img{max-width:100%;display:block}
button,input{font:inherit}
.container{width:min(1080px,calc(100% - 40px));margin:auto}
.container-wide{width:min(1240px,calc(100% - 34px));margin:auto}

.site-header{position:sticky;top:0;z-index:1000;background:#181714;color:#f0dfb9;transition:.28s ease;box-shadow:0 5px 20px rgba(0,0,0,.2)}
.site-header.hide{transform:translateY(-100%)}
.header-grain{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 20%,rgba(255,255,255,.045),transparent 22%),radial-gradient(circle at 73% 70%,rgba(255,255,255,.035),transparent 20%),linear-gradient(90deg,rgba(255,255,255,.02),transparent 18%,rgba(0,0,0,.25));opacity:.9}
.site-header:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:10px;background:linear-gradient(176deg,#181714 0 48%,transparent 49% 100%);pointer-events:none}
.header-inner{height:74px;position:relative;display:grid;grid-template-columns:230px 1fr 230px;align-items:center;gap:20px;width:min(1240px,calc(100% - 36px));margin:auto}
.brand{display:inline-flex;align-items:center;width:205px;height:62px;overflow:hidden}
.brand img{width:190px;height:auto;object-fit:contain}
.main-nav{display:flex;justify-content:center;align-items:center;gap:34px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.main-nav a{text-decoration:none;position:relative;padding:25px 0 22px;color:#eee2c9;transition:.2s}
.main-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:13px;height:2px;background:#b72b26;transition:.22s}
.main-nav a:hover:after,.main-nav a.active:after{left:0;right:0}
.header-cta{justify-self:end;background:#b92725;color:#fff;text-decoration:none;padding:15px 24px;border-radius:4px;text-transform:uppercase;font-weight:700;letter-spacing:.08em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);transition:.2s}
.header-cta:hover,.btn-primary:hover{background:#cb312d;transform:translateY(-1px)}
.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:9px;cursor:pointer}
.menu-toggle span{display:block;height:2px;background:#f3e3c2;margin:6px 0}

.hero{
    background:#171613;
    position:relative;
    overflow:hidden;
}
.hero-stage{
    width:min(1600px,100%);
    aspect-ratio:16/9;
    margin:0 auto;
    position:relative;
    overflow:hidden;
    isolation:isolate;
}
.hero-art{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    user-select:none;
    pointer-events:none;
}
.hero-copy{
    position:absolute;
    z-index:2;
    left:4.2%;
    top:6.5%;
    width:36.7%;
    height:82%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:0 1.4%;
    text-align:center;
}
.edition-lockup{
    width:100%;
    display:grid;
    grid-template-columns:1fr auto auto auto 1fr;
    align-items:center;
    gap:14px;
    color:#8d211c;
    margin:0 0 4px;
}
.edition-lockup strong{
    font-family:Rye,Georgia,serif;
    font-size:clamp(48px,4.4vw,78px);
    line-height:.88;
    font-weight:400;
}
.edition-star{
    font-size:clamp(14px,1.35vw,23px);
    line-height:1;
}
.ornament{
    height:8px;
    position:relative;
    border-top:3px solid #90241d;
    border-bottom:2px solid #90241d;
    opacity:.95;
}
.ornament-left:before,.ornament-right:after{
    content:"";
    position:absolute;
    top:-6px;
    width:18px;
    height:12px;
    border-top:2px solid #90241d;
}
.ornament-left:before{left:0;transform:skewX(-28deg)}
.ornament-right:after{right:0;transform:skewX(28deg)}
.hero h1{
    font-family:Rye,Georgia,serif;
    text-transform:uppercase;
    font-size:clamp(48px,4.45vw,79px);
    line-height:.91;
    margin:0;
    color:#11100e;
    letter-spacing:-.035em;
    text-shadow:0 1px rgba(255,255,255,.2);
}
.hero h1 span{display:block;white-space:nowrap}
.hero-rule{
    width:94%;
    height:9px;
    border-top:3px solid var(--red);
    border-bottom:2px solid var(--red);
    margin:18px auto 13px;
}
.hero-kicker{
    font-family:Rye,Georgia,serif;
    text-transform:uppercase;
    font-size:clamp(17px,1.42vw,25px);
    line-height:1.08;
    margin:0 0 20px;
    color:#17120f;
}
.hero-meta{
    width:92%;
    display:flex;
    flex-direction:column;
    gap:11px;
    margin:0 auto;
    text-align:left;
    font-family:Rye,Georgia,serif;
    text-transform:uppercase;
    font-size:clamp(13px,1.04vw,18px);
    line-height:1.12;
    color:#17120f;
}
.hero-meta p{
    margin:0;
    display:grid;
    grid-template-columns:27px 1fr;
    align-items:center;
    gap:8px;
    white-space:nowrap;
}
.hero-meta b{font-family:Georgia,serif;font-weight:700;padding:0 3px}
.meta-svg{
    width:24px;
    height:24px;
    fill:none;
    stroke:#a62520;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.meta-svg.pin{fill:#a62520;stroke:none}
.hero-cta{
    width:92%;
    min-width:0;
    min-height:58px;
    margin-top:22px;
    padding:14px 28px;
    font-size:clamp(16px,1.25vw,22px);
    border-radius:3px;
    box-shadow:0 6px 14px rgba(88,15,11,.18);
}
.hero-cta span{font-family:Arial,sans-serif;font-size:1.25em;transform:translateY(-1px)}

.kids-strip{min-height:90px;background:#1b1a17;color:#f0e4ca;display:flex;align-items:center;justify-content:center;gap:42px;text-transform:uppercase;border-top:5px solid rgba(0,0,0,.15);border-bottom:4px solid rgba(255,255,255,.06);position:relative}
.kids-strip:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 40%,rgba(255,255,255,.04),transparent 22%),radial-gradient(circle at 85% 60%,rgba(255,255,255,.03),transparent 25%);pointer-events:none}
.kids-item{display:flex;align-items:center;gap:16px;font-size:20px;line-height:1.05}.kids-icon{font-size:32px;filter:grayscale(1)}.kids-separator{width:2px;height:48px;background:#e6dbc0;opacity:.6}

.paper-section{background-color:#e4bd79;background-image:linear-gradient(rgba(238,208,154,.08),rgba(238,208,154,.08)),url('../img/paper-texture.jpg');background-size:100% auto;background-position:center top;padding:26px 0}
.section-ribbon{min-height:52px;margin:0 auto 18px;width:min(880px,90%);display:flex;align-items:center;justify-content:center;gap:20px;background:linear-gradient(#a93129,#8d201a);color:#eddbb4;border:1px solid rgba(88,17,13,.55);box-shadow:0 3px 0 rgba(101,24,20,.28);position:relative;padding:5px 22px}
.section-ribbon:before,.section-ribbon:after{content:"";position:absolute;top:11px;width:80px;height:3px;border-top:2px solid #d6b682;border-bottom:1px solid #d6b682;opacity:.7}.section-ribbon:before{left:18px}.section-ribbon:after{right:18px}
.section-ribbon h2{font-family:Rye,Georgia,serif;text-transform:uppercase;font-size:29px;font-weight:400;margin:0;line-height:1;text-align:center}.section-ribbon span{font-size:22px}
.artists-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;border:1px solid rgba(62,37,20,.7);background:#4b3826}
.artist-card{position:relative;min-height:278px;overflow:hidden;background:#222;margin:0}
.artist-card img{width:100%;height:100%;min-height:278px;object-fit:cover;object-position:center 24%;filter:saturate(.92) contrast(1.02)}
.artist-card h3{position:absolute;left:0;right:0;bottom:0;margin:0;background:rgba(135,30,24,.94);color:#e8cf9d;text-align:center;text-transform:uppercase;font-family:Rye,Georgia,serif;font-size:20px;font-weight:400;padding:11px 8px;border-top:2px solid rgba(232,207,157,.42)}
.art-exhibition{margin-top:9px;display:grid;grid-template-columns:34% 48% 18%;min-height:220px;border:1px solid #644426;background:#d4a65f;overflow:hidden}
.art-photo img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.art-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;text-transform:uppercase;text-align:center;padding:14px}.art-copy span{font-family:Rye,Georgia,serif;color:#14333b;font-size:18px}.art-copy h3{font-family:Rye,Georgia,serif;color:#98251d;font-size:52px;line-height:1;margin:8px 0}.art-copy p{font-family:Rye,Georgia,serif;font-size:20px;margin:0}.art-frame{display:flex;align-items:center;justify-content:center;font-size:82px;background:radial-gradient(circle at center,#9f6d2e 0 32%,#1b1712 33% 35%,#bd8b45 36% 46%,#3c291a 47% 52%,#9a6a31 53% 57%,#362414 58% 100%);color:#c89855;text-shadow:0 0 5px #000}

.flavors-home{padding-top:4px}.flavors-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(74,45,25,.55);background:#d9b676}.flavor-card{min-height:164px;background:#efe2c5;border-right:1px solid rgba(65,43,28,.45);border-bottom:1px solid rgba(65,43,28,.45);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:9px}.flavor-card img{width:100%;height:145px;object-fit:contain}.flavor-card:nth-child(3n){border-right:0}

.venue-band{background:#191815;min-height:280px;color:#ede2c7;display:grid;grid-template-columns:37% 46% 17%;align-items:stretch;border-top:5px solid rgba(123,34,24,.42);border-bottom:4px solid #8b201b;position:relative;overflow:hidden}
.venue-band:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 30%,rgba(255,255,255,.03),transparent 25%);pointer-events:none}.venue-image{overflow:hidden}.venue-image img{width:100%;height:100%;object-fit:cover;object-position:center}.venue-copy{padding:28px 34px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.venue-copy h2{font-family:Rye,Georgia,serif;text-transform:uppercase;font-weight:400;font-size:34px;margin:0 0 16px}.venue-copy p{font-family:Arial,sans-serif;font-size:17px;line-height:1.5;margin:0 0 18px;color:#eee8da}.venue-address{text-transform:uppercase;font-size:18px;font-weight:700}.venue-note{font-family:'Special Elite',cursive;color:#d3aa70;font-size:25px;text-transform:uppercase;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(-4deg);line-height:1.25}

.ticket-band{background-color:#e1b872;background-image:url('../img/paper-texture.jpg');background-size:100% auto;background-position:center 65%;padding:26px 0;border-bottom:9px solid #7d1e18}
.ticket-inner{width:min(1160px,calc(100% - 34px));margin:auto;display:grid;grid-template-columns:190px 1fr 220px;gap:28px;align-items:center}.ticket-qr{width:180px;height:180px;object-fit:contain;background:#fff;padding:5px;border:6px solid rgba(255,255,255,.65)}.ticket-copy h2{font-family:Rye,Georgia,serif;text-transform:uppercase;color:#9b261f;font-size:42px;font-weight:400;margin:0 0 6px}.ticket-copy p{font-family:Rye,Georgia,serif;text-transform:uppercase;font-size:20px;margin:4px 0}.ticket-note{font-family:'Special Elite',cursive;color:#392b20;text-transform:uppercase;font-size:25px;transform:rotate(-4deg);text-align:center;line-height:1.22}

.site-footer{background:#161714;color:#ded8c7;padding:26px 0 14px;position:relative}.site-footer:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 10%,rgba(255,255,255,.035),transparent 25%),linear-gradient(90deg,transparent,rgba(255,255,255,.015),transparent);pointer-events:none}.footer-inner{width:min(1160px,calc(100% - 36px));margin:auto;display:grid;grid-template-columns:300px 1fr 160px;align-items:center;gap:25px}.footer-brand img{width:260px}.footer-tagline{display:flex;align-items:center;justify-content:center;gap:14px;text-transform:uppercase;font-size:12px;letter-spacing:.04em}.footer-tagline i{font-style:normal;color:#a18f6b}.footer-social{display:flex;justify-content:flex-end;gap:15px}.footer-social a{width:34px;height:34px;border:1px solid rgba(255,255,255,.16);border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;font-family:Arial;font-weight:700}.footer-copy{text-align:center;font-family:Arial,sans-serif;font-size:11px;margin-top:16px;color:#a9a397}

.page-hero{min-height:390px;background-image:linear-gradient(90deg,rgba(20,18,15,.78),rgba(20,18,15,.28)),url('../img/hero-bg-original-logo.png');background-size:cover;background-position:center;display:flex;align-items:center;color:#f0dfbb}.page-hero>div{width:min(1100px,calc(100% - 42px));margin:auto}.page-hero.compact{min-height:330px}.page-hero h1{font-family:Rye,Georgia,serif;text-transform:uppercase;font-size:60px;line-height:1.02;margin:8px 0 10px;max-width:850px;font-weight:400}.page-hero p{font-size:22px;max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:#d8b26f;font-size:14px;font-weight:700}.eyebrow.dark{color:#7e211a}.page-content{min-height:500px;padding:48px 0}.page-grid{grid-template-columns:repeat(2,1fr);gap:12px;background:transparent;border:0}.page-grid .artist-card{min-height:360px;border:1px solid #573a28}.page-grid .artist-card img{min-height:360px}.art-exhibition.large{margin-top:18px;min-height:300px}.page-flavors{gap:10px;border:0;background:transparent}.page-flavors .flavor-card{border:1px solid rgba(68,42,24,.35);min-height:210px;flex-direction:column}.page-flavors .flavor-card img{height:155px}.flavor-card.labeled h3{font-family:Rye,Georgia,serif;font-size:18px;text-align:center;margin:8px 0;color:#442b1f}.venue-page-hero{background-position:center 42%}.tickets-page-hero{background-position:center 52%}.content-split{display:grid;grid-template-columns:1fr 1.1fr;gap:46px;align-items:center}.venue-large{width:100%;min-height:380px;object-fit:cover;border:8px solid rgba(107,66,35,.25);box-shadow:0 18px 35px rgba(68,40,24,.2)}.ink-title{font-family:Rye,Georgia,serif;text-transform:uppercase;font-size:38px;line-height:1.08;color:#7f211b;font-weight:400;margin:0 0 18px}.body-copy{font-family:Arial,sans-serif;font-size:18px;line-height:1.65;color:#35271c}.info-box{background:rgba(255,245,220,.55);border-left:5px solid #8f241d;padding:18px 20px;font-family:Arial,sans-serif;font-size:17px;line-height:1.65;margin:24px 0}.ticket-page-card{display:grid;grid-template-columns:330px 1fr;gap:50px;align-items:center;background:rgba(255,244,218,.5);padding:38px;border:1px solid rgba(77,47,29,.25);box-shadow:0 18px 35px rgba(71,40,20,.12)}.big-qr{width:100%;background:white;padding:10px;border:8px solid rgba(83,51,30,.2)}.event-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:22px 0}.event-facts div{background:#1a1917;color:#eadbbd;padding:15px 16px}.event-facts span{display:block;text-transform:uppercase;font-size:11px;letter-spacing:.12em;color:#bcae93}.event-facts strong{font-size:18px}.small-note{font-family:Arial,sans-serif;font-size:12px;color:#6a5946;margin-top:13px}.small-note code{background:rgba(255,255,255,.35);padding:1px 4px}

@media (max-width:1050px){
 .header-inner{grid-template-columns:190px 1fr 190px;gap:8px}.main-nav{gap:20px;font-size:13px}.header-cta{padding:13px 16px;font-size:13px}.brand{width:180px}.brand img{width:172px}
 .hero{min-height:570px}.hero-inner{min-height:570px}.hero-copy{width:48%}.hero h1{font-size:55px}.edition-mark strong{font-size:68px}.hero-kicker{font-size:19px}.hero-meta{font-size:15px}.btn-primary{min-width:260px;font-size:17px}
 .artists-grid{grid-template-columns:repeat(2,1fr)}.artist-card{min-height:320px}.artist-card img{min-height:320px}.flavors-grid{grid-template-columns:repeat(3,1fr)}
 .venue-band{grid-template-columns:40% 60%}.venue-note{display:none}.ticket-inner{grid-template-columns:170px 1fr}.ticket-note{display:none}.footer-inner{grid-template-columns:260px 1fr}.footer-social{display:none}
}
@media (max-width:820px){
 body.menu-open{overflow:hidden}.site-header{position:sticky}.site-header.hide{transform:none}.header-inner{height:68px;display:flex;justify-content:space-between}.brand{width:170px}.brand img{width:164px}.header-cta{display:none}.menu-toggle{display:block;position:relative;z-index:1002}
 .main-nav{position:fixed;top:68px;left:0;right:0;bottom:0;background:#181714;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:24px 28px;transform:translateX(105%);transition:.26s;z-index:1001}.main-nav.open{transform:translateX(0)}.main-nav a{font-family:Rye,Georgia,serif;font-size:25px;padding:17px 5px;border-bottom:1px solid rgba(255,255,255,.08)}.main-nav a:after{display:none}
 .hero{min-height:710px;background-position:67% center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(232,197,137,.96) 0 53%,rgba(232,197,137,.62) 68%,rgba(0,0,0,.05) 100%)}.hero-inner{min-height:710px;padding:25px 18px}.hero-copy{width:65%;padding:8px 12px}.hero h1{font-size:52px}.edition-mark strong{font-size:64px}.hero-kicker{font-size:18px}.hero-meta{font-size:14px}.kids-strip{gap:20px;padding:16px 20px}.kids-item{font-size:16px}.kids-icon{font-size:26px}
 .art-exhibition{grid-template-columns:40% 60%}.art-frame{display:none}.art-copy h3{font-size:42px}.venue-band{grid-template-columns:1fr}.venue-image{height:250px}.venue-copy{padding:28px 22px}.venue-copy h2{font-size:29px}.ticket-inner{grid-template-columns:150px 1fr}.ticket-copy h2{font-size:34px}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-brand{margin:auto}.footer-tagline{flex-wrap:wrap}.page-hero h1{font-size:46px}.content-split,.ticket-page-card{grid-template-columns:1fr}.ticket-page-card{padding:24px}.big-qr{max-width:330px;margin:auto}.page-grid{grid-template-columns:1fr}
}
@media (max-width:580px){
 .container,.container-wide{width:min(100% - 22px,100%)}.hero{min-height:660px;background-image:url('../img/hero-bg-clean.jpg');background-position:center}.hero:before{background:rgba(232,197,137,.87)}.hero-inner{min-height:660px;display:block;padding-top:38px}.hero-copy{width:100%;max-width:430px;margin:auto;background:rgba(240,211,160,.72);padding:18px 14px;border:1px solid rgba(103,62,37,.16)}.hero h1{font-size:48px}.edition-mark strong{font-size:58px}.hero-kicker{font-size:17px}.hero-meta{font-size:13px}.btn-primary{width:100%;min-width:0;font-size:16px}.kids-strip{display:grid;grid-template-columns:1fr;padding:14px 28px;gap:10px}.kids-separator{display:none}.kids-item{justify-content:center;text-align:center}.section-ribbon{width:100%;min-height:48px}.section-ribbon:before,.section-ribbon:after{display:none}.section-ribbon h2{font-size:22px}.artists-grid{grid-template-columns:1fr}.artist-card,.artist-card img{min-height:280px}.art-exhibition{grid-template-columns:1fr}.art-photo{height:250px}.art-copy{padding:20px 10px}.art-copy h3{font-size:38px}.flavors-grid{grid-template-columns:1fr 1fr}.flavor-card{min-height:140px}.flavor-card img{height:120px}.flavor-card:nth-child(3n){border-right:1px solid rgba(65,43,28,.45)}.venue-image{height:220px}.venue-copy h2{font-size:25px}.venue-copy p{font-size:15px}.venue-address{font-size:14px}.ticket-inner{grid-template-columns:1fr;text-align:center}.ticket-qr{margin:auto;width:160px;height:160px}.ticket-copy h2{font-size:31px}.ticket-copy p{font-size:16px}.site-footer{padding-top:22px}.footer-brand img{width:220px}.footer-tagline{font-size:10px;gap:8px}.page-hero{min-height:310px}.page-hero h1{font-size:36px}.page-hero p{font-size:18px}.page-content{padding:28px 0}.ink-title{font-size:30px}.event-facts{grid-template-columns:1fr 1fr}.ticket-page-card{padding:17px}.page-flavors{grid-template-columns:1fr}
}


/* Hero responsivo revisado */
@media (min-width:1601px){
    .hero{background:#171613}
}
@media (max-width:1050px) and (min-width:821px){
    .hero-copy{left:3.5%;top:5.5%;width:38.5%;height:84%;padding:0 1%}
    .edition-lockup{gap:8px}
    .hero-rule{margin:10px auto 9px}
    .hero-kicker{margin-bottom:11px}
    .hero-meta{gap:7px;width:96%}
    .hero-meta p{grid-template-columns:22px 1fr;gap:6px}
    .meta-svg{width:20px;height:20px}
    .hero-cta{width:96%;min-height:48px;margin-top:12px;padding:10px 18px}
}
@media (max-width:820px){
    .hero-stage{aspect-ratio:auto;min-height:700px;background:url('../img/hero-bg-clean.jpg') center/cover no-repeat}
    .hero-art{display:none}
    .hero-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(239,207,153,.96) 0 58%,rgba(239,207,153,.78) 72%,rgba(0,0,0,.12) 100%)}
    .hero-copy{left:4%;top:5%;width:62%;height:90%;padding:0 2%}
    .edition-lockup strong{font-size:64px}.edition-star{font-size:18px}
    .hero h1{font-size:54px}.hero-kicker{font-size:18px}.hero-meta{font-size:13px;gap:9px}
    .hero-meta p{white-space:normal}.hero-cta{font-size:17px}
}
@media (max-width:580px){
    .hero-stage{min-height:670px;background-position:64% center}
    .hero-stage:before{background:rgba(236,201,142,.9)}
    .hero-copy{position:relative;left:auto;top:auto;width:calc(100% - 28px);height:auto;min-height:670px;margin:auto;padding:34px 12px 28px;justify-content:center}
    .edition-lockup{gap:9px}.edition-lockup strong{font-size:58px}.edition-star{font-size:17px}
    .hero h1{font-size:48px}.hero-rule{margin:13px auto 11px}.hero-kicker{font-size:17px;margin-bottom:16px}
    .hero-meta{width:100%;font-size:13px}.hero-meta p{grid-template-columns:24px 1fr}.hero-cta{width:100%;margin-top:18px;min-height:52px;font-size:16px}
}

/* =====================================================
   ATRAÇÕES — layout revisado para seguir a arte original
   ===================================================== */
#atracoes.paper-section{
    padding:24px 0 30px;
}
#atracoes .section-ribbon{
    width:min(1120px,calc(100% - 48px));
    min-height:50px;
    margin:0 auto 12px;
    background:
        linear-gradient(rgba(122,26,20,.96),rgba(145,36,27,.96)),
        radial-gradient(circle at 12% 30%,rgba(255,255,255,.07),transparent 26%);
    border:1px solid rgba(92,24,16,.72);
    box-shadow:0 2px 0 rgba(99,33,20,.24);
}
#atracoes .section-ribbon h2{
    font-size:clamp(24px,2.5vw,38px);
    letter-spacing:.025em;
}
#atracoes .section-ribbon:before,
#atracoes .section-ribbon:after{
    width:120px;
    top:12px;
}

.artists-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
    border:1px solid rgba(72,43,24,.72);
    background:#4b3826;
}
.artist-card{
    position:relative;
    height:auto;
    min-height:0;
    aspect-ratio:1.92/1;
    overflow:hidden;
    background:#29241f;
    margin:0;
    border:0;
}
.artist-card:after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    box-shadow:inset 0 0 0 1px rgba(34,21,12,.42);
}
.artist-card img{
    width:100%;
    height:100%;
    min-height:0;
    object-fit:cover;
    object-position:center;
    filter:saturate(.93) contrast(1.025);
    transform:scale(1.002);
}
.artist-card h3{
    position:absolute;
    z-index:2;
    left:0;
    right:0;
    bottom:0;
    min-height:46px;
    margin:0;
    padding:8px 12px 7px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        linear-gradient(rgba(132,31,24,.96),rgba(143,36,27,.97)),
        repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 5px);
    color:#ead0a0;
    border-top:1px solid rgba(239,208,154,.42);
    text-align:center;
    text-transform:uppercase;
    font-family:Rye,Georgia,serif;
    font-size:clamp(16px,1.65vw,25px);
    font-weight:400;
    line-height:1.03;
    text-shadow:0 1px 0 rgba(53,16,10,.65);
}

/* bloco Luciano Luz, abaixo do grid, no mesmo ritmo visual da referência */
.art-exhibition{
    margin-top:7px;
    display:grid;
    grid-template-columns:37% 45% 18%;
    min-height:228px;
    border:1px solid #644426;
    background:
        linear-gradient(rgba(224,181,105,.94),rgba(220,174,94,.94)),
        url('../img/paper-texture.jpg') center/cover;
    overflow:hidden;
}
.art-photo{
    min-width:0;
    overflow:hidden;
    border-right:1px solid rgba(90,54,29,.42);
}
.art-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    filter:saturate(.88) contrast(1.02);
}
.art-copy{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-transform:uppercase;
    text-align:center;
    padding:16px 20px;
}
.art-copy:before,
.art-copy:after{
    content:"";
    width:72%;
    height:1px;
    background:rgba(108,57,25,.42);
    position:absolute;
    left:14%;
}
.art-copy:before{top:20px}
.art-copy:after{bottom:20px}
.art-copy span{
    font-family:Rye,Georgia,serif;
    color:#14343b;
    font-size:clamp(14px,1.35vw,20px);
    letter-spacing:.04em;
}
.art-copy h3{
    font-family:Rye,Georgia,serif;
    color:#9a281f;
    font-size:clamp(38px,4.4vw,64px);
    line-height:.92;
    margin:9px 0 7px;
    font-weight:400;
    white-space:nowrap;
}
.art-copy p{
    font-family:Rye,Georgia,serif;
    font-size:clamp(15px,1.55vw,22px);
    margin:0;
    color:#211813;
}
.art-frame{
    position:relative;
    display:block;
    font-size:0;
    min-height:228px;
    background:#c08a45;
    overflow:hidden;
}
.art-frame:before{
    content:"";
    position:absolute;
    inset:19px 14px;
    border:12px ridge #8b5a24;
    box-shadow:
        0 0 0 3px #4f3219,
        0 0 0 7px #b27a35,
        inset 0 0 18px rgba(0,0,0,.58),
        0 6px 12px rgba(59,31,13,.38);
    background:
        radial-gradient(ellipse at 50% 76%,#7f5a2d 0 20%,transparent 21%),
        radial-gradient(ellipse at 57% 58%,#b37a3f 0 15%,transparent 16%),
        linear-gradient(155deg,#3c2d20 0 26%,#7b5430 27% 48%,#b18a50 49% 57%,#5a422a 58% 100%);
}
.art-frame:after{
    content:"";
    position:absolute;
    inset:31px 26px;
    border:1px solid rgba(241,211,147,.26);
    box-shadow:inset 0 0 26px rgba(0,0,0,.45);
    pointer-events:none;
}

/* página de atrações */
.page-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    background:transparent;
    border:0;
}
.page-grid .artist-card{
    min-height:0;
    aspect-ratio:1.92/1;
    border:1px solid #573a28;
}
.page-grid .artist-card img{min-height:0}
.art-exhibition.large{
    margin-top:12px;
    min-height:250px;
}
.art-exhibition.large .art-frame{min-height:250px}

@media (max-width:820px){
    #atracoes .section-ribbon{width:100%}
    .artists-grid,.page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}
    .artist-card{aspect-ratio:1.55/1}
    .artist-card h3{min-height:42px;font-size:16px;padding:7px 8px}
    .art-exhibition{grid-template-columns:40% 60%;min-height:210px}
    .art-frame{display:none}
    .art-copy h3{font-size:40px;white-space:normal}
    .art-copy:before,.art-copy:after{width:76%;left:12%}
}
@media (max-width:580px){
    #atracoes.paper-section{padding-top:18px}
    #atracoes .section-ribbon{margin-bottom:8px}
    .artists-grid,.page-grid{grid-template-columns:1fr;gap:4px}
    .artist-card,.page-grid .artist-card{aspect-ratio:1.62/1;min-height:0}
    .artist-card img,.page-grid .artist-card img{min-height:0}
    .artist-card h3{min-height:45px;font-size:18px}
    .art-exhibition{grid-template-columns:1fr;min-height:0}
    .art-photo{height:auto;aspect-ratio:1.75/1;border-right:0;border-bottom:1px solid rgba(90,54,29,.42)}
    .art-copy{min-height:170px;padding:22px 12px}
    .art-copy h3{font-size:42px}
    .art-copy span{font-size:14px}
    .art-copy p{font-size:16px}
}

/* =====================================================
   SABORES — cards individuais com identidade vintage
   ===================================================== */
.flavors-home{
    padding-top:10px;
    padding-bottom:36px;
}
.flavors-home .flavors-grid,
.page-flavors{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    border:0;
    background:transparent;
    padding:6px 0;
}
.flavors-home .flavor-card,
.page-flavors .flavor-card{
    position:relative;
    min-height:190px;
    padding:24px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border:1px solid rgba(92,57,31,.42);
    border-radius:2px;
    background:
        linear-gradient(rgba(248,231,197,.95),rgba(235,207,158,.95)),
        url('../img/paper-texture.jpg') center/cover no-repeat;
    box-shadow:
        0 6px 14px rgba(65,39,21,.10),
        inset 0 0 24px rgba(109,63,31,.05);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.flavors-home .flavor-card::before,
.page-flavors .flavor-card::before{
    content:"";
    position:absolute;
    inset:8px;
    border:1px solid rgba(106,66,34,.14);
    pointer-events:none;
}
.flavors-home .flavor-card:hover,
.page-flavors .flavor-card:hover{
    transform:translateY(-3px);
    border-color:rgba(92,57,31,.58);
    box-shadow:
        0 10px 20px rgba(65,39,21,.16),
        inset 0 0 24px rgba(109,63,31,.05);
}
.flavors-home .flavor-card img,
.page-flavors .flavor-card img{
    position:relative;
    z-index:1;
    display:block;
    width:auto;
    height:auto;
    max-width:82%;
    max-height:142px;
    object-fit:contain;
}
.flavors-home .flavor-card:nth-child(3n),
.page-flavors .flavor-card:nth-child(3n){
    border-right:1px solid rgba(92,57,31,.42);
}
.page-flavors .flavor-card{
    min-height:220px;
    flex-direction:column;
    gap:12px;
}
.page-flavors .flavor-card img{
    max-height:145px;
}
.page-flavors .flavor-card h3{
    position:relative;
    z-index:1;
    margin:2px 0 0;
    color:#4a2f20;
    font-family:Rye,Georgia,serif;
    font-size:17px;
    font-weight:400;
    line-height:1.15;
    text-align:center;
    text-transform:uppercase;
}

/* Crédito de desenvolvimento */
.footer-copy{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px 18px;
    flex-wrap:wrap;
    padding:0 18px;
}
.footer-developed{
    color:#b8ad91;
}
.footer-developed::before{
    content:"•";
    margin-right:18px;
    color:#6f7d3b;
}
.footer-developed a{
    color:#d8cfb7;
    font-weight:700;
    text-decoration:none;
    transition:color .2s ease;
}
.footer-developed a:hover{
    color:#ffffff;
    text-decoration:underline;
}

@media (max-width:820px){
    .flavors-home .flavors-grid,
    .page-flavors{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }
    .flavors-home .flavor-card,
    .page-flavors .flavor-card{
        min-height:170px;
        padding:20px;
    }
    .flavors-home .flavor-card img,
    .page-flavors .flavor-card img{
        max-width:84%;
        max-height:125px;
    }
}

@media (max-width:520px){
    .flavors-home .flavors-grid,
    .page-flavors{
        grid-template-columns:1fr;
        gap:10px;
    }
    .flavors-home .flavor-card,
    .page-flavors .flavor-card{
        min-height:155px;
        padding:18px;
    }
    .flavors-home .flavor-card img,
    .page-flavors .flavor-card img{
        max-width:78%;
        max-height:115px;
    }
    .footer-copy{
        flex-direction:column;
        gap:5px;
    }
    .footer-developed::before{
        display:none;
    }
}

/* Logo legível no banner móvel, sem depender do recorte do fundo. */
.hero-mobile-logo{display:none}
@media(max-width:820px){
.hero-mobile-logo{display:block;width:140px;height:140px;object-fit:contain;border-radius:50%;margin:0 auto 18px;flex-shrink:0}
.hero-copy{position:relative;left:auto;top:auto;height:auto;min-height:700px;margin:0 auto;padding:30px 16px;width:min(540px,calc(100% - 28px))}
.hero-stage{height:auto;min-height:0}.hero-copy h1{font-size:clamp(30px,7vw,48px)}
}
/* Fotos das atrações: imagem inteira sobre laterais desfocadas. */
.artist-card{--artist-label-height:46px}
.artist-card .artist-visual{position:relative;width:100%;height:100%;overflow:hidden;background:#29241f}
.artist-card>.artist-visual,.artist-card>.ib-artist-image-link{position:absolute;inset:0 0 var(--artist-label-height);width:100%;height:auto}.artist-card>.ib-artist-image-link>.artist-visual{position:absolute;inset:0;width:100%;height:100%}
.artist-card .artist-visual img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain;object-position:center;transform:none;filter:none;z-index:1}
.artist-card .artist-visual .artist-backdrop{object-fit:cover;filter:blur(16px) brightness(.8);transform:scale(1.14);z-index:0;pointer-events:none}
.artist-card h3{height:var(--artist-label-height);min-height:var(--artist-label-height)}
@media(max-width:820px){.artist-card{--artist-label-height:42px}}
@media(max-width:580px){.artist-card{--artist-label-height:45px}}