/* PELIGRO DE EXTINCIÓN — Sistema global de formas.
   Carga al FINAL: corrige TODAS las superficies rectangulares heredadas.
   Mezcla tarjetas suaves, etiquetas orgánicas, botones cápsula y sombras offset. */
:root{--shape-pill:999px;--shape-small:15px;--shape-medium:23px;--shape-card:30px;--shape-card-organic:28px 35px 26px 32px;--shape-sticker:19px 35px 21px 30px}
:where(.nav-cta,.primary-cta,.secondary-cta,.mobile-cta,.cat-strike,.artist-callout-btn,.artist-callout-link,.submit-demo,.close-modal,.menu-toggle){border-radius:var(--shape-pill)}
.nav-cta,.primary-cta,.cat-strike,.artist-callout-btn,.submit-demo{border-radius:var(--shape-pill)!important;display:inline-flex;align-items:center;justify-content:center;gap:.55em;white-space:normal;text-align:center;line-height:1.25;min-height:52px}
.secondary-cta{border:2px solid currentColor;border-radius:var(--shape-pill);background:rgba(255,255,255,.055);padding:12px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.secondary-cta:hover{border-color:var(--yellow);background:rgba(255,255,255,.13)}
.menu-toggle{border-radius:16px}
.mobile-cta{display:none!important;border-radius:var(--shape-pill)!important}
.kicker,.section-kicker,.cat-sticker,.ticket-label,.detail-chip,.ticket-meta b,.cat-count,.hero-patch,.hero-sticker,.demo-ribbon,.artist-callout-stamp,.about-art .side-note,.burst-note,.cat-voice,.speech-label,.map-label{border-radius:var(--shape-sticker)}
.detail-chip,.ticket-meta b{border-radius:var(--shape-pill);overflow-wrap:anywhere}
.kicker{border-radius:var(--shape-pill)}
.section-kicker{padding:6px 12px;border-radius:var(--shape-pill);background:rgba(255,255,255,.46)}
.hero-patch,.hero-sticker,.demo-ribbon,.artist-callout-stamp,.burst-note,.about-art .side-note{border-radius:var(--shape-sticker)}
.floating-stamp{border-radius:50%}
.poster-stage::before{border-radius:var(--shape-card-organic)}
.poster{border-radius:var(--shape-medium)}
.about-art img{border-radius:var(--shape-card-organic)}
.auction-card{border-radius:var(--shape-card-organic)!important;overflow:hidden;isolation:isolate}
.auction-card .card-art{border-radius:22px 30px 15px 26px;overflow:hidden}
.auction-card h3,.auction-card p{overflow-wrap:anywhere}
.artist-callout{border-radius:36px 27px 40px 31px!important}
.artist-callout-btn{padding-inline:22px}
.artist-callout-link{border-radius:var(--shape-pill);padding:10px 16px;background:rgba(255,255,255,.45);text-underline-offset:5px}
.cat-dialogue{border-radius:32px 42px 34px 27px!important}
.cat-dialogue::after{border-bottom-right-radius:15px}
.cat-voice{border-radius:24px 35px 18px 27px}
.cat-sticker{border-radius:var(--shape-pill)}
.cat-count{border-radius:var(--shape-pill);padding-inline:17px}
.cat-podium{border-radius:24px 29px 24px 32px}
/* Cómo funciona: antes eran líneas rectas, ahora tres tarjetas visibles. */
.steps{align-items:stretch;gap:23px}
.step{background:#fff;border:3px solid var(--black);border-radius:var(--shape-card-organic)!important;box-shadow:7px 8px 0 var(--blue);padding:25px 23px;overflow:hidden;transition:transform .23s ease,box-shadow .23s ease}
.step:nth-child(2){background:var(--yellow);box-shadow:7px 8px 0 var(--red)}
.step:nth-child(3){background:#ffe2ef;box-shadow:7px 8px 0 var(--black)}
.step:hover{transform:translateY(-5px);box-shadow:9px 13px 0 var(--blue)}
.step:nth-child(2):hover{box-shadow:9px 13px 0 var(--red)}
.step:nth-child(3):hover{box-shadow:9px 13px 0 var(--black)}
/* Boleto en dos piezas: solo esquinas exteriores curvas, borde interior punteado. */
.ticket-box{border-radius:33px!important;overflow:hidden;isolation:isolate}
.ticket-left{border-radius:33px 0 0 33px}
.ticket-right{border-radius:0 33px 33px 0}
.ticket-meta b{background:rgba(255,255,255,.35)}
.ticket-right .primary-cta{border-radius:var(--shape-pill)!important}
.tickets-footer{border-radius:var(--shape-pill);width:fit-content;max-width:100%;margin-inline:auto;padding:10px 20px}
.map-card{border-radius:34px 45px 28px 37px!important;isolation:isolate}
.map-label{border-radius:var(--shape-pill);padding-inline:22px}
.modal{border-radius:31px 37px 28px 34px!important}
.close-modal{border-radius:50%;display:grid;place-items:center}
.form-group input:not([type=checkbox]),.form-group select{border-radius:16px!important}
.choice,.choice[aria-pressed=true]{border-radius:23px 28px 20px 27px!important}
.quantity{border-radius:var(--shape-pill);overflow:hidden}
.quantity button{border-radius:0}
.quantity button:first-child{border-radius:var(--shape-pill) 0 0 var(--shape-pill)}
.quantity button:last-child{border-radius:0 var(--shape-pill) var(--shape-pill) 0}
.submit-demo{border-radius:var(--shape-pill)!important}
.success .receipt{border-radius:24px 30px 22px 28px}
.footer-links a{border-radius:var(--shape-medium);padding-inline:14px}
.footer-social,.footer-social-secondary{border-radius:var(--shape-pill)!important}
.footer-admin-link{border-radius:var(--shape-pill);padding:8px 11px}
@media(max-width:780px){
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;border-radius:16px}
.navlinks{border-radius:var(--shape-card-organic);overflow:hidden}
.navlinks>a:not(.nav-cta){border-radius:var(--shape-pill);padding:6px 9px}
.mobile-cta{border-radius:var(--shape-pill)!important;padding:15px 23px;display:flex!important;align-items:center;justify-content:center;gap:.6em;box-shadow:5px 6px 0 var(--black)}
.ticket-box{border-radius:33px!important}
.ticket-left{border-radius:33px 33px 0 0}
.ticket-right{border-radius:0 0 33px 33px}
.step{border:3px solid var(--black);padding:18px 18px}
.artist-callout{border-radius:30px 27px 32px 26px!important}
}
@media(max-width:560px){
.hero-ctas{align-items:stretch}
.hero-ctas .primary-cta{min-height:56px}
.auction-cards{gap:29px}
.auction-card{border-radius:24px 30px 23px 29px!important}
.step{border-radius:24px 30px 22px 29px!important}
.ticket-box{border-radius:28px!important}
.ticket-left{border-radius:28px 28px 0 0}
.ticket-right{border-radius:0 0 28px 28px}
.ticket-meta b{font-size:11px}
.map-card{border-radius:28px 34px 25px 31px!important}
.artist-callout-stamp{border-radius:var(--shape-pill)}
.modal{border-radius:27px 31px 24px 29px!important}
.footer-social{max-width:100%;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.step{transition:none}}
