.hero-carousel{position:relative;background:var(--bg)}
.hero-slides{position:relative;isolation:isolate;overflow:clip}
.hero-slide{position:absolute;inset:0;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility .65s;background:var(--bg);color:var(--ink)}
.hero-slide.is-active{position:relative;inset:auto;opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hero-slide .hero-section{box-sizing:border-box}
.hero-carousel .hero-fiesta{padding-block:42px 48px}
.hero-carousel .hero-fiesta .fiesta-strip{margin-top:35px}
.hero-carousel-controls{display:flex;justify-content:center;align-items:center;gap:12px;padding:14px 20px 22px;color:var(--ink);border-bottom:1px solid var(--line)}
.carousel-arrow,.hero-carousel-dots button,.carousel-pause{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;background:var(--bg)}
.carousel-arrow{font-size:19px}.carousel-arrow:hover,.carousel-pause:hover{border-color:var(--accent)}
.hero-carousel-dots{display:flex;gap:0}.hero-carousel-dots button{border:0;background:transparent;min-width:35px}
.hero-carousel-dots span{width:8px;height:8px;border-radius:50%;background:var(--line);transition:width .2s,background .2s}
.hero-carousel-dots [aria-pressed=true] span{width:24px;border-radius:8px;background:var(--accent)}
.carousel-divider{height:19px;width:1px;background:var(--line);margin-inline:6px}
.carousel-pause{border-radius:25px;padding-inline:18px;font-size:11px;min-width:84px}
.carousel-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.brand-updated .brand .brand-logo{width:80px;height:80px;object-fit:contain;background:#fff;padding:0;border:0;border-radius:50%}
.brand-updated .suenos-copy .mini-logo{width:120px;height:120px;padding:0;border:0;object-fit:contain;margin-bottom:18px}
.brand-updated .social-contact-card>img{width:140px;height:140px;object-fit:contain;background:white}
.brand-updated .about-mark{width:190px;height:190px;object-fit:contain;border:0}
@media(max-width:1150px){.brand-updated .about-mark{width:140px;height:140px}}
@media(max-width:760px){.hero-carousel .hero-fiesta{padding-block:30px 40px}.hero-carousel .hero-fiesta .fiesta-intro h1{font-size:clamp(45px,13vw,63px)}.hero-carousel .hero-fiesta .fiesta-strip{margin-top:35px}.hero-carousel .hero-fiesta .photo-card img{object-fit:contain}.hero-carousel-controls{gap:5px;padding-block:8px 16px}.carousel-divider{margin-inline:4px}.carousel-pause{padding-inline:14px;min-width:79px}.brand-updated .brand .brand-logo{width:62px;height:62px}.brand-updated .brand>.brand-wordmark{font-size:22px}.brand-updated .suenos-copy .mini-logo{width:110px;height:110px}.brand-updated .about-mark{width:130px;height:130px}.brand-updated .about-identity{align-items:center;gap:18px}.brand-updated .about-identity>div{font-size:22px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-carousel-dots span{transition:none}}
