:root {
  --coral: #f5655e;
  --coral-dark: #e45049;
  --coral-soft: #fff0ec;
  --pink: #ee8da6;
  --pink-soft: #fff3f6;
  --gold: #e89d29;
  --teal: #159b9c;
  --ink: #211a18;
  --muted: #76544a;
  --brown: #6d2c20;
  --cream: #fff8f4;
  --cream-2: #fff1eb;
  --white: #fff;
  --line: #f1d3ca;
  --shadow: 0 18px 48px rgba(87, 42, 30, .11);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button { font: inherit; }
.shell { width: min(1180px, calc(100% - 42px)); margin-inline: auto; }
.sr-only, .skip-link { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip-link:focus { z-index: 1000; width: auto; height: auto; clip: auto; top: 10px; left: 10px; padding: 10px 14px; color: #fff; background: var(--brown); border-radius: 8px; }

.topbar { color: #fff; background: var(--coral); font-size: 12px; font-weight: 700; }
.topbar__inner { min-height: 36px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.topbar p { margin: 0; }
.social { display: flex; align-items: center; gap: 8px; }
.social a { width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.68); border-radius: 50%; }
.social svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid #f2e5df; background: rgba(255,255,255,.96); backdrop-filter: blur(12px); }
.header__inner { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: flex; align-items: center; gap: 12px; min-width: 245px; }
.brand img { width: 76px; height: 60px; object-fit: contain; object-position: center; border-radius: 0; background: transparent; flex: 0 0 auto; }
.brand__copy { display: grid; gap: 4px; }
.brand__copy strong { color: #004d61; font: 400 25px/1 Georgia, serif; letter-spacing: -.02em; }
.brand__copy small { color: var(--muted); font-size: 10px; }
.nav { display: flex; align-items: center; gap: 31px; font-size: 13px; font-weight: 700; }
.nav a { position: relative; padding: 42px 0 36px; }
.nav a:not(.nav__whatsapp)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 17px; height: 2px; background: var(--coral); transform: scaleX(0); transition: transform .2s ease; }
.nav a:hover::after, .nav a.active::after { transform: scaleX(1); }
.nav a.active { color: var(--coral); }
.nav__whatsapp { padding: 14px 21px !important; color: var(--coral); border: 1px solid var(--coral); border-radius: 999px; }
.nav__whatsapp:hover { color: #fff; background: var(--coral); }
.menu-toggle { display: none; width: 44px; height: 44px; padding: 10px; border: 0; background: transparent; }
.menu-toggle span:not(.sr-only) { display: block; height: 2px; margin: 5px 0; border-radius: 3px; background: var(--ink); }

.hero { padding-top: 0; }
.hero__image-wrap { position: relative; overflow: hidden; }
.hero img { width: 100%; height: auto; }
.hero__whatsapp-hotspot { position: absolute; left: 6.5%; bottom: 10.2%; width: 25.5%; height: 9.2%; border-radius: 999px; }
.hero__whatsapp-hotspot:focus-visible { outline: 4px solid #fff; outline-offset: 3px; }

.trust { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 22px; padding: 17px 18px; border-radius: 24px; background: #fff; box-shadow: var(--shadow); }
.trust__item { min-height: 84px; display: grid; grid-template-columns: 65px 1fr; align-items: center; gap: 14px; padding: 5px 20px; border-right: 1px solid #eee2dd; }
.trust__item:last-child { border-right: 0; }
.trust__icon { width: 58px; height: 58px; display: grid; place-items: center; color: var(--coral-dark); background: var(--coral-soft); border: 1px solid #ffc4bb; border-radius: 50%; font-size: 25px; }
.trust h2 { margin: 0 0 7px; font-size: 13px; line-height: 1.25; }
.trust p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }

.section { padding: 86px 0; }
.section-heading { max-width: 800px; margin: 0 auto 42px; text-align: center; }
.heading-line { display: flex; align-items: center; justify-content: center; gap: 15px; }
.heading-line span { width: 38px; height: 1px; background: var(--coral); }
.section-heading h1 { margin: 0; font: 400 clamp(31px, 4vw, 45px)/1.05 Georgia, serif; letter-spacing: -.035em; }
.section-heading h1 b { color: var(--pink); font: inherit; }
.section-heading p { margin: 14px 0 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.eyebrow { display: inline-block; color: var(--coral-dark); font-size: 11px; font-weight: 800; letter-spacing: .16em; }

.categories { background: linear-gradient(180deg, #fff 0%, #fff9f6 100%); }
.category-visual-grid { display: grid; gap: 16px; align-items: start; max-width: 1180px; margin: 0 auto 44px; }
.category-visual-grid--primary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.category-visual-grid--secondary { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.category-visual-grid--new { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.category-visual-card { position: relative; display: block; overflow: hidden; aspect-ratio: 1; border: 1px solid #ff9f94; border-radius: 22px; background: #fff; box-shadow: 0 12px 28px rgba(96,47,34,.08); transition: transform .2s ease, box-shadow .2s ease; }
.category-visual-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.category-visual-card:focus-visible { outline: 4px solid rgba(245,101,94,.35); outline-offset: 4px; }
.category-visual-card img { width: 100%; height: 100%; object-fit: cover; }
.category-subheading { margin: 0 auto 24px; text-align: center; }
.category-subheading--more { margin-top: 4px; margin-bottom: 24px; }
.category-subheading--more .eyebrow { color: var(--coral-dark); }
.category-subheading h2 { margin: 8px 0 0; font: 400 29px/1.1 Georgia, serif; letter-spacing: -.025em; }
.category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; align-items: stretch; }
.category-grid--compact { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.category-grid--compact .category-card { padding: 19px 17px 17px; border-radius: 19px; }
.category-grid--compact .category-card__top { grid-template-columns: 52px 1fr; gap: 11px; min-height: 58px; }
.category-grid--compact .category-icon { width: 48px; height: 48px; border-radius: 15px; font-size: 21px; }
.category-grid--compact .category-card h2 { font-size: 20px; }
.category-grid--compact .category-card ul { margin: 18px 0; }
.category-grid--compact .category-card li { margin-bottom: 8px; padding-left: 17px; font-size: 11.5px; line-height: 1.38; }
.category-grid--compact .category-card__button { min-height: 40px; padding: 0 13px; font-size: 11px; }
.category-grid--compact .category-card--gift { grid-column: auto; }
.category-card { position: relative; display: flex; flex-direction: column; overflow: hidden; min-height: 100%; padding: 26px 25px 24px; border: 1px solid #ffafa3; border-radius: 23px; background: #fff; box-shadow: 0 12px 30px rgba(96, 47, 34, .055); transition: transform .2s ease, box-shadow .2s ease; }
.category-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.category-card::before { content: ""; position: absolute; top: -65px; right: -65px; width: 155px; height: 155px; border-radius: 50%; opacity: .6; }
.category-card--stickers::before { background: #ffe1ea; }
.category-card--business::before { background: #fff0c5; }
.category-card--party::before { background: #e7dcff; }
.category-card--textile::before { background: #d9efff; }
.category-card--paper::before { background: #dff6ea; }
.category-card--vinyl::before { background: #eadfee; }
.category-card--gift::before { background: #ffe2d6; }
.category-card__top { position: relative; z-index: 1; display: grid; grid-template-columns: 62px 1fr; align-items: center; gap: 15px; min-height: 70px; }
.category-icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 18px; color: #fff; background: linear-gradient(135deg, var(--coral), #f79b74); box-shadow: 0 12px 22px rgba(245,101,94,.2); font-size: 25px; }
.category-card small { color: var(--coral-dark); font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.category-card h2 { margin: 5px 0 0; font: 400 24px/1.08 Georgia, serif; letter-spacing: -.02em; }
.category-card ul { flex: 1; margin: 24px 0 24px; padding: 0; list-style: none; }
.category-card li { position: relative; margin: 0 0 11px; padding-left: 20px; color: var(--muted); font-size: 13px; line-height: 1.43; }
.category-card li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--coral); font-weight: 900; }
.category-card__button { display: flex; align-items: center; justify-content: space-between; min-height: 44px; padding: 0 16px; color: #fff; background: var(--coral); border-radius: 12px; font-size: 12px; font-weight: 800; }
.category-card__button:hover { background: var(--coral-dark); }
.category-card__button span { font-size: 17px; }
.category-card--gift { grid-column: 2; }

.idea-cta { position: relative; display: grid; grid-template-columns: 82px 1.2fr 1.15fr auto; align-items: center; gap: 26px; margin-top: 12px; margin-bottom: 72px; padding: 34px 40px; border: 1px solid var(--coral); border-radius: 22px; background: var(--coral-soft); }
.idea-cta__icon { font-size: 43px; text-align: center; }
.idea-cta__title { padding-right: 25px; border-right: 1px solid #f3a49b; }
.idea-cta__title h2 { margin: 9px 0 0; font: 400 30px/1 Georgia, serif; }
.idea-cta__text p { margin: 0; color: var(--muted); font: 400 14px/1.65 Georgia, serif; }
.idea-cta__spark { position: absolute; right: 28px; top: 16px; color: var(--teal); font-size: 34px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 23px; border-radius: 13px; font-size: 13px; font-weight: 800; }
.button--coral { color: #fff; background: var(--coral); box-shadow: 0 12px 24px rgba(245,101,94,.2); }
.button--coral:hover { background: var(--coral-dark); }

.about { padding: 76px 0; background: var(--cream); }
.about__grid { display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 68px; }
.about__image { overflow: hidden; border-radius: 30px; box-shadow: 0 18px 40px rgba(99,49,37,.1); }
.about__image img { width: 100%; aspect-ratio: 1.33; object-fit: cover; }
.about__content h2 { max-width: 680px; margin: 17px 0 24px; font: 400 clamp(38px,4.2vw,59px)/.98 Georgia, serif; letter-spacing: -.035em; }
.about__content h2 em { color: var(--pink); }
.about__content p { margin: 0; color: var(--muted); font: 400 16px/1.75 Georgia, serif; }
.about__content ul { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px 55px; margin: 28px 0 0; padding: 0; list-style: none; font-size: 14px; font-weight: 700; }
.about__content li::before { content: "✓"; color: var(--coral); margin-right: 5px; }

.contact-shell { padding: 76px 0; }
.contact-box { display: grid; grid-template-columns: 1.25fr .95fr auto; align-items: center; gap: 48px; padding: 42px 48px; border-radius: 30px; color: #fff; background: linear-gradient(120deg, var(--brown), #5a2118); box-shadow: 0 22px 50px rgba(69,29,20,.14); }
.eyebrow--light { color: #ffc1b9; }
.contact-box h2 { max-width: 360px; margin: 17px 0 5px; font: 400 43px/1 Georgia, serif; }
.contact-box p { margin: 0; font-size: 16px; }
.contact-box__data { display: grid; gap: 14px; }
.contact-box__data div { display: grid; gap: 6px; }
.contact-box__data small { color: #ffc1b9; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.contact-box__data a, .contact-box__data span { font-size: 12px; }
.contact-box__button { min-width: 207px; padding: 18px 22px; border-radius: 13px; text-align: center; color: var(--coral-dark); background: #fff; font-size: 13px; font-weight: 800; }
.contact-box__button:hover { color: #fff; background: var(--coral); }

.footer { padding: 58px 0 20px; background: var(--cream-2); }
.footer__grid { display: grid; grid-template-columns: 190px 1.25fr .65fr .8fr .65fr; gap: 42px; align-items: center; }
.footer__brand img { width: 150px; height: 118px; object-fit: contain; border-radius: 0; background: transparent; }
.footer__slogan { color: var(--muted); font-size: 12px; line-height: 1.8; }
.footer__slogan strong { display: block; margin-bottom: 5px; color: #004d61; font: 400 23px Georgia, serif; }
.footer__slogan p { margin: 0; }
.footer__links { align-self: start; display: flex; flex-direction: column; gap: 13px; color: var(--muted); font-size: 12px; }
.footer__links h2 { margin: 0 0 5px; color: var(--ink); font: 400 20px Georgia, serif; }
.footer__links a:hover { color: var(--coral-dark); }
.footer__bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 44px; padding-top: 18px; border-top: 1px solid #ead9d1; color: #987367; font-size: 11px; }

.floating-whatsapp { position: fixed; right: 20px; bottom: 18px; z-index: 60; display: flex; align-items: center; gap: 9px; min-height: 50px; padding: 0 18px; border-radius: 999px; color: #fff; background: #25d366; box-shadow: 0 14px 30px rgba(20,125,68,.28); font-size: 12px; font-weight: 800; }
.floating-whatsapp svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }

@media (max-width: 1120px) {
  .nav { gap: 23px; }
  .brand__copy { display: none; }
  .brand { min-width: auto; }
  .trust { grid-template-columns: repeat(2,1fr); }
  .trust__item:nth-child(2) { border-right: 0; }
  .trust__item:nth-child(-n+2) { border-bottom: 1px solid #eee4df; }
  .category-visual-grid--primary, .category-visual-grid--secondary, .category-visual-grid--new { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .category-grid { grid-template-columns: repeat(2,1fr); }
  .category-grid--compact { grid-template-columns: repeat(2,1fr); }
  .category-card--gift { grid-column: auto; }
  .idea-cta { grid-template-columns: 68px 1fr 1fr; }
  .idea-cta .button { grid-column: 2 / 4; width: max-content; }
  .contact-box { grid-template-columns: 1fr 1fr; }
  .contact-box__button { grid-column: 2; width: max-content; }
  .footer__grid { grid-template-columns: 160px 1.1fr repeat(3,.7fr); gap: 28px; }
}

@media (max-width: 820px) {
  .shell { width: min(100% - 28px, 1180px); }
  .header__inner { min-height: 82px; }
  .brand img { width: 64px; height: 52px; }
  .menu-toggle { display: block; }
  .nav { position: absolute; top: 82px; left: 14px; right: 14px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 14px; border: 1px solid #f0ddd5; border-radius: 18px; background: #fff; box-shadow: var(--shadow); }
  .nav.open { display: flex; }
  .nav a:not(.nav__whatsapp) { padding: 13px 10px; }
  .nav a:not(.nav__whatsapp)::after { display: none; }
  .nav__whatsapp { margin-top: 7px; text-align: center; }
  .hero { width: 100%; }
  .trust { margin-top: 15px; grid-template-columns: 1fr; padding: 10px; }
  .trust__item { border-right: 0; border-bottom: 1px solid #eee4df; }
  .trust__item:last-child { border-bottom: 0; }
  .category-grid { grid-template-columns: 1fr; }
  .category-grid--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .idea-cta { grid-template-columns: 65px 1fr; }
  .idea-cta__title { border-right: 0; padding-right: 0; }
  .idea-cta__text, .idea-cta .button { grid-column: 2; }
  .about__grid { grid-template-columns: 1fr; gap: 38px; }
  .contact-box { grid-template-columns: 1fr; }
  .contact-box__button { grid-column: 1; }
  .footer__grid { grid-template-columns: repeat(2,1fr); }
  .footer__brand, .footer__slogan { grid-column: span 1; }
}

@media (max-width: 560px) {
  .topbar__inner { justify-content: center; }
  .topbar p { display: none; }
  .header { top: 0; }
  .hero__image-wrap { overflow-x: hidden; }
  .hero img { width: 155%; max-width: none; transform: translateX(-8%); }
  .hero__whatsapp-hotspot { left: 4.5%; bottom: 10%; width: 39%; height: 9%; }
  .section { padding: 62px 0; }
  .heading-line span { width: 20px; }
  .category-visual-grid { gap: 14px; margin-bottom: 36px; }
  .category-visual-grid--primary, .category-visual-grid--secondary, .category-visual-grid--new { grid-template-columns: 1fr; }
  .category-subheading h2 { font-size: 25px; }
  .category-grid--compact { grid-template-columns: 1fr; }
  .category-card { padding: 23px 20px; }
  .category-card h2 { font-size: 22px; }
  .idea-cta { grid-template-columns: 1fr; padding: 28px 24px; }
  .idea-cta__icon { text-align: left; }
  .idea-cta__text, .idea-cta .button { grid-column: 1; }
  .idea-cta__spark { display: none; }
  .about__content ul { grid-template-columns: 1fr; gap: 13px; }
  .contact-box { padding: 32px 25px; }
  .contact-box h2 { font-size: 38px; }
  .contact-box__button { width: 100%; }
  .footer__grid { grid-template-columns: 1fr 1fr; gap: 28px; }
  .footer__brand, .footer__slogan { grid-column: 1 / -1; }
  .footer__brand img { width: 132px; height: 104px; }
  .footer__bottom { flex-direction: column; }
  .floating-whatsapp span { display: none; }
  .floating-whatsapp { width: 54px; height: 54px; padding: 0; justify-content: center; }
}

/* Categoría 02: tarjetas de presentación */
.category-visual-card--tarjetas::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0) 48%, rgba(45,24,20,.88) 100%);
  pointer-events: none;
}
.category-visual-card--tarjetas img { object-position: center top; }
.category-visual-card__badge {
  position: absolute;
  z-index: 2;
  top: 14px;
  left: 14px;
  padding: 8px 11px;
  border-radius: 999px;
  color: #fff;
  background: #f5655e;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  box-shadow: 0 8px 18px rgba(245,101,94,.26);
}
.category-visual-card__caption {
  position: absolute;
  z-index: 2;
  left: 18px;
  right: 18px;
  bottom: 17px;
  display: grid;
  gap: 5px;
  color: #fff;
}
.category-visual-card__caption strong { font: 400 27px/1.05 Georgia, serif; }
.category-visual-card__caption small { color: #ffe7e2; font-size: 10px; font-weight: 700; }
.category-visual-card--stickers::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.04) 42%, rgba(45,24,20,.9) 100%);
  pointer-events: none;
}
.category-visual-card--stickers img { object-fit: cover; object-position: center; }

/* Portadas aprobadas de las categorías principales */
.category-visual-card--artwork::after { display: none; }
.category-visual-card--artwork img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* En Inicio: 3 categorías medianas en la primera fila y 4 más pequeñas en la segunda.
   Las portadas horizontales se usan únicamente dentro de cada catálogo. */
@media (max-width: 980px) {
  .category-visual-grid--primary,
  .category-visual-grid--secondary,
  .category-visual-grid--new { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 760px; }
}
@media (max-width: 560px) {
  .category-visual-grid--primary,
  .category-visual-grid--secondary,
  .category-visual-grid--new { grid-template-columns: 1fr; max-width: 420px; }
}


/* Dirección enlazada a Google Maps */
.maps-link{display:inline-flex;align-items:center;gap:5px;color:inherit;font-weight:800;text-decoration:none;line-height:1.45}
.maps-link:hover,.maps-link:focus-visible{color:var(--coral-dark);text-decoration:underline;text-underline-offset:3px}
.maps-link--light:hover,.maps-link--light:focus-visible{color:#ffd2ca}
.trust .maps-link{font-size:12px;font-weight:700}
.footer__links .maps-link{display:inline-block}

/* Medios de pago interactivos */
.trust__item--payments .payment-actions{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:5px;color:#71564d;font-size:11px}
.payment-link{padding:0;border:0;border-bottom:1px solid currentColor;color:#a24335;background:transparent;font-size:11px;font-weight:800;line-height:1.35}
.payment-link:hover,.payment-link:focus-visible{color:#f5655e;border-color:#f5655e}
.transfer-dialog{width:min(520px,calc(100% - 28px));padding:0;border:0;border-radius:22px;background:#fff;box-shadow:0 28px 85px rgba(48,27,21,.32);overflow:hidden}
.transfer-dialog::backdrop{background:rgba(37,22,18,.62);backdrop-filter:blur(3px)}
.transfer-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px 18px;color:#fff;background:linear-gradient(135deg,#f5655e,#d94b45)}
.transfer-dialog__header span{font-size:9px;font-weight:900;letter-spacing:.16em}
.transfer-dialog__header h2{margin:7px 0 0;font:400 30px/1.05 Georgia,serif}
.transfer-dialog__close{width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.5);border-radius:50%;color:#fff;background:rgba(255,255,255,.12);font-size:27px;line-height:1}
.transfer-dialog__details{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:22px 24px 12px}
.transfer-dialog__details>div{display:grid;gap:5px;padding:12px 13px;border:1px solid #f0d8d0;border-radius:13px;background:#fffaf8;min-width:0}
.transfer-dialog__details small{color:#8a746c;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.transfer-dialog__details strong{color:#4d3027;font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.transfer-dialog__note{margin:0 24px 16px;padding:11px 13px;border-radius:12px;color:#6f544c;background:#fff1ed;font-size:10px;line-height:1.55}
.transfer-dialog__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 24px 24px}
.transfer-copy,.transfer-whatsapp{min-height:46px;display:grid;place-items:center;padding:0 14px;border-radius:12px;font-size:11px;font-weight:900;text-align:center}
.transfer-copy{border:1px solid #f1b6aa;color:#b84236;background:#fff}
.transfer-whatsapp{border:0;color:#fff;background:#22b76c}
.payment-toast{position:fixed;z-index:200;left:50%;bottom:24px;max-width:calc(100% - 30px);padding:12px 18px;border-radius:999px;color:#fff;background:#35231d;font-size:11px;font-weight:800;opacity:0;transform:translate(-50%,18px);transition:.2s;pointer-events:none}
.payment-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:560px){.transfer-dialog__details{grid-template-columns:1fr}.transfer-dialog__actions{grid-template-columns:1fr}.transfer-dialog__header{padding:20px}.transfer-dialog__details{padding:18px 18px 10px}.transfer-dialog__note{margin:0 18px 14px}.transfer-dialog__actions{padding:0 18px 18px}}

/* Ajuste general: menos espacios entre secciones y tarjetas */
.section{padding:62px 0}
.section-heading{margin-bottom:28px}
.category-visual-grid{gap:13px;margin-bottom:28px}
.category-grid{gap:16px}
.idea-cta{gap:18px;margin-bottom:44px;padding:26px 30px}
.about__grid{gap:42px}
.contact-box{gap:32px;padding:32px 36px}
.footer__grid{gap:30px}
@media(max-width:680px){
  .section{padding:42px 0}
  .section-heading{margin-bottom:22px}
  .category-visual-grid{gap:10px;margin-bottom:22px}
  .category-grid{gap:13px}
  .idea-cta{margin-bottom:32px;padding:22px 18px}
  .about__grid{gap:26px}
  .contact-box{gap:22px;padding:25px 20px}
}

/* Acciones funcionales en la franja informativa */
.trust__item--action>div{min-width:0}
.trust-action{display:inline-flex;align-items:center;width:max-content;margin-top:6px;padding:0;border:0;border-bottom:1px solid currentColor;color:#a24335;font-size:11px;font-weight:800;line-height:1.35;text-decoration:none}
.trust-action:hover,.trust-action:focus-visible{color:#f5655e;border-color:#f5655e}
@media(max-width:680px){.trust-action{margin-top:5px}}

/* =========================================================
   PALETA CORREGIDA POR CATEGORIA — PORTADA DE INICIO
   Fondo neutro; borde con el color principal y franja superior
   con los colores secundarios aprobados para cada categoria.
   ========================================================= */
.category-visual-card{
  --category-color:#ef7065;
  --category-color-2:#48afa8;
  --category-color-3:var(--category-color-2);
  --category-shadow:rgba(239,112,101,.20);
  border:2px solid var(--category-color);
  box-shadow:0 12px 28px var(--category-shadow);
}
.category-visual-card::before{
  content:"";
  position:absolute;
  z-index:3;
  inset:0 0 auto;
  height:7px;
  background:linear-gradient(90deg,var(--category-color),var(--category-color-2),var(--category-color-3));
  pointer-events:none;
}
.category-visual-card:hover{
  box-shadow:0 18px 38px var(--category-shadow);
}
.category-visual-card:focus-visible{
  outline:4px solid var(--category-shadow);
  outline-offset:4px;
}
/* 01 — Stickers: turquesa, coral y mostaza */
.category-visual-card[href="stickers.html"]{
  --category-color:#20aaa6;
  --category-color-2:#ef7065;
  --category-color-3:#d4a13a;
  --category-shadow:rgba(32,170,166,.23);
}
/* 02 — Emprendimiento: turquesa y lila */
.category-visual-card[href="tarjetas.html"]{
  --category-color:#4aafa8;
  --category-color-2:#a68ac8;
  --category-color-3:#a68ac8;
  --category-shadow:rgba(74,175,168,.23);
}
/* 03 — Cumpleanos: rosado y lila pastel */
.category-visual-card[href*="cat=03"]{
  --category-color:#e982a5;
  --category-color-2:#b79ad4;
  --category-color-3:#b79ad4;
  --category-shadow:rgba(233,130,165,.23);
}
/* 04 — Textil: vinotinto y mostaza */
.category-visual-card[href*="cat=04"]{
  --category-color:#8f3f55;
  --category-color-2:#d4a13a;
  --category-color-3:#d4a13a;
  --category-shadow:rgba(143,63,85,.23);
}
/* 05 — Papeleria: lavanda y rosado suave */
.category-visual-card[href*="cat=05"]{
  --category-color:#8d6ab2;
  --category-color-2:#d895b5;
  --category-color-3:#d895b5;
  --category-shadow:rgba(141,106,178,.23);
}
/* 06 — Regalos: coral y turquesa */
.category-visual-card[href*="cat=06"]{
  --category-color:#ef7065;
  --category-color-2:#48afa8;
  --category-color-3:#48afa8;
  --category-shadow:rgba(239,112,101,.23);
}
/* 07 — Peluches: verde salvia y durazno */
.category-visual-card[href*="cat=07"]{
  --category-color:#8fa783;
  --category-color-2:#e6a286;
  --category-color-3:#e6a286;
  --category-shadow:rgba(143,167,131,.25);
}


/* =========================================================
   NUEVA FILA 08–12 — conserva intactas las filas 01–03 y 04–07
   ========================================================= */
.category-visual-grid--new{
  width:100%;
  max-width:1180px;
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.category-visual-card--cat08{
  --category-color:#8f59b6;
  --category-color-2:#54b9b0;
  --category-color-3:#f2a9bf;
  --category-shadow:rgba(143,89,182,.22);
}
.category-visual-card--cat09{
  --category-color:#ef6258;
  --category-color-2:#859360;
  --category-color-3:#d2a270;
  --category-shadow:rgba(239,98,88,.22);
}
.category-visual-card--cat10{
  --category-color:#df7180;
  --category-color-2:#d6a454;
  --category-color-3:#f1b9c4;
  --category-shadow:rgba(223,113,128,.22);
}
.category-visual-card--cat11{
  --category-color:#ef6258;
  --category-color-2:#91a27a;
  --category-color-3:#d5ad69;
  --category-shadow:rgba(239,98,88,.22);
}
.category-visual-card--cat12{
  --category-color:#ef6258;
  --category-color-2:#a88bc4;
  --category-color-3:#f2a9bf;
  --category-shadow:rgba(168,139,196,.22);
}

.category-visual-card--cat13{
  --category-color:#07999a;
  --category-color-2:#ef6f87;
  --category-color-3:#d4a13a;
  --category-shadow:rgba(7,153,154,.24);
}
@media(max-width:1120px){
  .category-visual-grid--new{grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px}
}
@media(max-width:820px){
  .category-visual-grid--new{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}
}
@media(max-width:560px){
  .category-visual-grid--new{grid-template-columns:1fr;max-width:420px}
}

/* Toda la portada de cada categoría funciona como botón. */
.category-visual-card{cursor:pointer;touch-action:manipulation}
.category-visual-card img{pointer-events:none}


/* Sección aventuras */

.adventure-home { padding: 76px 0; background: var(--cream); }
.adventure-home .shell { max-width: 1320px; }
.adventure-home__card {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  box-shadow: 0 18px 40px rgba(99,49,37,.1);
  background: #fff7f0;
}
.adventure-home__card img {
  display: block;
  width: 100%;
  height: auto;
}
.adventure-home__hotspot {
  position: absolute;
  left: 53.5%;
  top: 55.2%;
  width: 40.2%;
  height: 15.4%;
  border-radius: 999px;
  background: transparent;
  outline: none;
}
.adventure-home__hotspot:focus-visible {
  box-shadow: 0 0 0 4px rgba(245,101,94,.45);
}
@media (max-width: 920px) {
  .adventure-home { padding: 52px 0; }
  .adventure-home__card { border-radius: 24px; }
}
@media (max-width: 640px) {
  .adventure-home__card { border-radius: 18px; }
  .adventure-home__hotspot {
    left: 52.6%;
    top: 55%;
    width: 41.8%;
    height: 15.8%;
  }
}


/* Botón de aventuras sobre la imagen de Nuestra esencia */

.about__image--adventure { position: relative; }
.about__image--adventure img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
}
.about__adventure-hotspot {
  position: absolute;
  left: 52.8%;
  top: 55.2%;
  width: 41.5%;
  height: 15.8%;
  border-radius: 999px;
  background: transparent;
}
.about__adventure-hotspot:focus-visible {
  outline: 4px solid rgba(245,101,94,.55);
  outline-offset: 3px;
}
@media (max-width: 920px) {
  .about__adventure-hotspot {
    left: 52.5%;
    top: 55%;
    width: 42%;
    height: 16%;
  }
}
.september-news{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-top:18px;margin-bottom:18px;padding:20px 24px;border:1px solid #f0c3d3;border-radius:22px;background:linear-gradient(120deg,#fff2f7,#f6efff 58%,#fff8df);box-shadow:0 12px 32px rgba(132,67,112,.12)}
.september-news__spark{display:grid;width:58px;height:58px;place-items:center;border-radius:50%;background:#fff;color:#d64c84;font-size:27px;box-shadow:0 8px 22px rgba(214,76,132,.16)}
.september-news__eyebrow{color:#d9467b;font-size:11px;font-weight:900;letter-spacing:.14em}.september-news h2{margin:4px 0 5px;color:#57356f;font:700 28px/1.05 Georgia,serif}.september-news p{margin:0;color:#756878;font-size:13px}.september-news a{padding:12px 18px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#dd4e88,#8b64b8);font-size:12px;font-weight:900;text-decoration:none;white-space:nowrap}
@media(max-width:720px){.september-news{grid-template-columns:auto 1fr}.september-news a{grid-column:1/-1;text-align:center}.september-news h2{font-size:23px}.september-news__spark{width:48px;height:48px}}
.adventure-guide{margin-top:30px;margin-bottom:18px;padding:28px;border:1px solid #dec5ee;border-radius:26px;background:linear-gradient(135deg,#fff8fc,#f8f2ff 55%,#fff9e5);box-shadow:0 14px 38px rgba(86,52,110,.11);text-align:center}.adventure-guide__heading>span{color:#d24f87;font-size:11px;font-weight:900;letter-spacing:.14em}.adventure-guide__heading h2{margin:6px 0;color:#57356f;font:700 30px/1.1 Georgia,serif}.adventure-guide__heading p{margin:0;color:#756878}.adventure-guide__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0;padding:0;list-style:none;text-align:left}.adventure-guide__steps li{display:flex;gap:12px;padding:16px;border:1px solid #ebdced;border-radius:18px;background:rgba(255,255,255,.82)}.adventure-guide__steps b{display:grid;flex:0 0 34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#df5488,#8c66bb)}.adventure-guide__steps strong,.adventure-guide__steps span{display:block}.adventure-guide__steps strong{margin-bottom:4px;color:#5d3c6f}.adventure-guide__steps span{color:#776a79;font-size:12px;line-height:1.45}.adventure-guide>a{display:inline-block;padding:12px 20px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#df5488,#8c66bb);font-size:12px;font-weight:900;text-decoration:none}@media(max-width:760px){.adventure-guide{padding:22px 16px}.adventure-guide__steps{grid-template-columns:1fr}.adventure-guide__heading h2{font-size:25px}}
