/* Achobeer '26 — Entradas · estilos del front */

.achobeer-entradas{
  --acho-lime:#c7ef00;
  --acho-red:#ff2b2b;
  --acho-purple:#826aed;
  --acho-cream:#e6e5c6;
  --acho-cream-100:#f4f3e4;
  --acho-cream-600:#cbc9a0;
  --acho-graphite:#3a3a3a;
  --acho-graphite-300:#9a9a94;
  --acho-black:#000;
  --acho-white:#fff;
  --font-display:"Boldonse","Arial Black",system-ui,sans-serif;
  --font-body:"host-grotesk","Host Grotesk",system-ui,-apple-system,sans-serif;
  --radius-lg:28px;
  --radius-md:14px;
  --pill:999px;
  --ease-pop:cubic-bezier(.2,.9,.3,1.3);
  background:var(--acho-cream);
  color:var(--acho-black);
  font:400 16px/1.5 var(--font-body);
  overflow:hidden;
  box-sizing:border-box;
  /* Rompe el contenedor del tema para ocupar todo el ancho de la ventana. */
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
body:has(.achobeer-entradas){overflow-x:hidden;}
.achobeer-entradas *,
.achobeer-entradas *::before,
.achobeer-entradas *::after{box-sizing:border-box;}
.achobeer-entradas img{max-width:100%;display:block;}
.achobeer-entradas p{margin:0;}
.achobeer-entradas a{color:var(--acho-lime);}

/* ---------- Cabecera ---------- */
.ach-hero{position:relative;background:var(--acho-black);color:var(--acho-cream);padding:40px 24px 0;display:flow-root;}
.ach-hero__bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
.ach-hero__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);}
.ach-hero__inner{position:relative;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:26px;}
.ach-hero__top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;}
.ach-logo{height:72px;width:auto;}
.ach-pills{display:flex;gap:10px;flex-wrap:wrap;}
.ach-pill{display:inline-flex;align-items:center;gap:7px;border-radius:var(--pill);white-space:nowrap;}
.ach-pill--lime{background:var(--acho-lime);color:var(--acho-black);font:400 15px/1 var(--font-display);padding:11px 16px 12px;}
.ach-pill--ghost{background:transparent;color:var(--acho-cream);font:700 13px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;padding:11px 16px;border:2px solid var(--acho-cream);text-decoration:none;transition:background .12s var(--ease-pop),color .12s var(--ease-pop);}
.ach-pill--ghost:hover,.ach-pill--ghost:focus{background:var(--acho-cream);color:var(--acho-black);}
.ach-hero__title{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,6.2vw,68px);line-height:1.42;margin:0 0 6px;}
.ach-hero__desc{font:400 clamp(16px,2.2vw,20px)/1.5 var(--font-body);color:var(--acho-cream);max-width:620px;text-wrap:pretty;}
.ach-hero__note{font:700 13px/1.4 var(--font-body);color:var(--acho-cream);opacity:.8;}
.ach-hero__card{position:relative;max-width:1100px;margin:44px auto 0;z-index:1;}

/* ---------- Tarjetas ---------- */
.ach-main{max-width:1100px;margin:0 auto;padding:40px 24px 24px;display:flex;flex-direction:column;gap:32px;}
.ach-card{position:relative;display:flex;flex-wrap:wrap;background:var(--acho-cream-100);color:var(--acho-black);border-radius:var(--radius-lg);overflow:hidden;}
.ach-card__media{position:relative;flex:1 1 260px;min-height:240px;background:var(--acho-black);}
.ach-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.ach-card__dim{position:absolute;inset:0;background:rgba(0,0,0,.55);}
.ach-badge{position:absolute;top:14px;left:14px;transform:rotate(-4deg);z-index:2;font:700 11px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;padding:8px 13px;border-radius:var(--pill);}
.ach-card__body{flex:3 1 420px;display:flex;flex-direction:column;gap:18px;padding:30px 28px 26px;}
.ach-tag{align-self:flex-start;font:700 11px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;padding:6px 11px;border-radius:var(--pill);margin-bottom:-8px;}
.ach-card__title{font-family:var(--font-display);font-weight:400;font-size:clamp(23px,3.4vw,36px);line-height:1.28;margin:0;}
.ach-card__desc{font:400 15px/1.5 var(--font-body);color:var(--acho-graphite);}
.ach-notice{border-radius:var(--radius-md);padding:12px 16px;font:700 14px/1.35 var(--font-body);}
.ach-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.ach-list li{display:flex;gap:11px;font:400 15px/1.4 var(--font-body);}
.ach-list__dot{width:7px;height:7px;margin-top:6px;flex:none;}
.ach-prices{display:flex;flex-direction:column;}
.ach-price{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:2px dashed var(--acho-cream-600);}
.ach-price__label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font:700 14px/1.25 var(--font-body);}
.ach-price__note{font:400 13px/1.4 var(--font-body);color:var(--acho-graphite);width:100%;}
.ach-price__badge{background:var(--acho-lime);color:var(--acho-black);font:700 11px/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:var(--pill);}
.ach-price__amount{font-family:var(--font-display);font-size:19px;line-height:1.3;white-space:nowrap;}
.ach-price__amount sup{font:700 11px var(--font-body);vertical-align:super;margin-left:3px;}
.ach-price__pill{display:inline-flex;align-items:center;background:var(--acho-black);color:var(--acho-lime);font-family:var(--font-display);font-size:13px;line-height:1;padding:9px 15px;border-radius:var(--pill);}

/* ---------- Botón de compra (stop-motion) ---------- */
@keyframes achWobble{
  0%{clip-path:polygon(2% 12%,11% 1%,90% 4%,100% 40%,98% 88%,87% 99%,9% 96%,1% 50%);transform:rotate(-1.2deg) translate(0,0);}
  25%{clip-path:polygon(1% 8%,13% 2%,93% 1%,99% 45%,100% 90%,84% 100%,11% 98%,0 54%);transform:rotate(.7deg) translate(1px,-1px);}
  50%{clip-path:polygon(3% 10%,9% 0,91% 5%,100% 38%,97% 92%,89% 98%,7% 95%,2% 48%);transform:rotate(-.5deg) translate(-1px,1px);}
  75%{clip-path:polygon(2% 14%,12% 3%,92% 2%,98% 43%,99% 87%,86% 100%,10% 97%,1% 52%);transform:rotate(1deg) translate(0,-1px);}
  100%{clip-path:polygon(2% 12%,11% 1%,90% 4%,100% 40%,98% 88%,87% 99%,9% 96%,1% 50%);transform:rotate(-1.2deg) translate(0,0);}
}
.ach-btn{width:100%;border:0;cursor:pointer;font-family:var(--font-display);font-weight:400;font-size:15px;line-height:1.2;padding:17px 26px;display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;clip-path:polygon(1% 14%,6% 2%,95% 3%,99% 42%,98% 90%,93% 99%,5% 97%,1% 52%);animation:achWobble 2.4s step-end infinite;}
.ach-btn:hover{filter:brightness(1.08);}
.ach-btn:focus-visible{outline:3px solid var(--acho-purple);outline-offset:3px;}
.ach-btn--off{background:var(--acho-cream-600);color:var(--acho-graphite);cursor:not-allowed;animation:none;}
.ach-btn--link{text-decoration:none;}
.ach-btn__arrow{display:inline-block;font-size:15px;transition:transform .18s var(--ease-pop);}
.ach-btn--link:hover .ach-btn__arrow{transform:translateX(3px);}
.ach-btn__chev{display:inline-block;font-size:11px;transition:transform .25s var(--ease-pop);}
.ach-btn[aria-expanded="true"] .ach-btn__chev{transform:rotate(180deg);}
@media (prefers-reduced-motion:reduce){.ach-btn{animation:none;}}

.ach-panel{overflow:hidden;transition:max-height .38s ease;max-height:0;}
.ach-panel[hidden]{display:none;}
.ach-panel__inner{margin-top:16px;padding:16px;background:var(--acho-cream-100);border:2px dashed var(--acho-graphite-300);border-radius:var(--radius-md);}
.ach-panel__title{font:700 11px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--acho-graphite);margin-bottom:12px;}
.ach-panel__empty{font:400 14px/1.5 var(--font-body);color:var(--acho-graphite);}
.ach-panel iframe{width:100%;border:0;}

/* ---------- Pie ---------- */
.ach-footer{background:var(--acho-black);color:var(--acho-cream);padding:40px 24px;margin-top:28px;}
.ach-footer__inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:24px;justify-content:space-between;}
.ach-footer__text{font:400 14px/1.6 var(--font-body);}
.ach-footer__text a{color:var(--acho-lime);text-decoration-thickness:2px;text-underline-offset:3px;}
.ach-footer__text a:hover{color:var(--acho-white);}
.ach-footer__legal{opacity:.75;}

@media (max-width:640px){
  .ach-hero{padding:28px 16px 0;}
  .ach-main{padding:32px 16px 16px;gap:22px;}
  .ach-card__body{padding:24px 20px 22px;}
  .ach-card__media{flex-basis:100%;min-height:190px;}
  .ach-logo{height:52px!important;}
  .ach-footer{padding:32px 16px;}
  .ach-hero__card{margin-top:28px;}
}
