/* index.html style block 1 */
body {
            font-family: Inter, system-ui, sans-serif;
        }

        /* Oculta elementos con x-cloak hasta que Alpine monte */
        [x-cloak] {
            display: none !important;
        }

        /* Botón flotante */
        #topBtn {
            transition: opacity .3s ease, transform .3s ease;
        }

        #topBtn:hover {
            transform: translateY(-4px);
        }

        /* Páginas del PDF responsivas */
        #pdfContainer canvas {
            width: 100% !important;
            height: auto !important;
            display: block;
        }

        #pdfContainer {
            -webkit-overflow-scrolling: touch;
            overscroll-behavior: contain;
            touch-action: pan-y pinch-zoom;
        }

/* index.html style block 2 */
:root {
            --accent: #c5a46b;
        }

        a {
            transition: color .15s
        }

        /* Ítems */
        .item {
            display: flex;
            align-items: center;
            gap: .75rem;
            padding: .75rem 1rem;
            font-size: .875rem;
            font-weight: 600;
            color: #f3f4f6;
            background: transparent
        }

        .item:hover:not(.disabled) {
            background: rgba(255, 255, 255, .08)
        }

        .item::before {
            content: "";
            flex: none;
            width: .375rem;
            height: 1.25rem;
            border-radius: .25rem;
            background: var(--c, #fff)
        }

        .item.disabled {
            opacity: .6;
            pointer-events: none
        }

        .item.disabled .soon {
            margin-left: auto;
            padding: .125rem .5rem;
            font-size: .75rem;
            border-radius: .25rem;
            background: #d946ef;
            font-weight: 700;
            color: #fff;
            box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
            transform: rotate(-7deg)
        }

        /* Pop-ups */
        .popup-backdrop {
            position: fixed;
            inset: 0;
            z-index: 9999;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(0, 0, 0, .6);
            animation: popupfadein .18s
        }

        @keyframes popupfadein {
            from {
                opacity: 0
            }

            to {
                opacity: 1
            }
        }

        .popup-content {
            background: rgba(255, 255, 255, .98);
            color: #1a1a1a;
            border-radius: 18px;
            padding: 2rem 1.5rem 1.5rem;
            min-width: 90vw;
            max-width: 340px;
            box-shadow: 0 12px 32px rgba(90, 60, 20, .1), 0 1.5px 0 var(--accent);
            text-align: center;
            position: relative;
            animation: popupup .24s cubic-bezier(.65, .02, .17, 1.2)
        }

        @media(min-width:600px) {
            .popup-content {
                min-width: 350px;
                max-width: 440px
            }
        }

        @keyframes popupup {
            from {
                transform: translateY(60px) scale(.95)
            }

            to {
                transform: translateY(0) scale(1)
            }
        }

        .popup-content h4 {
            font-size: 1.3rem;
            font-weight: 700;
            margin-bottom: .7rem;
            color: var(--accent);
            letter-spacing: .02em
        }

        .popup-close {
            background: none;
            border: none;
            font-size: 2rem;
            color: var(--accent);
            position: absolute;
            right: 18px;
            top: 8px;
            cursor: pointer;
            line-height: 1;
            opacity: .75;
            transition: opacity .15s
        }

        .popup-close:hover {
            opacity: 1
        }

        /* Hero tiles: estado cliqueable */
        .hero-tile {
            cursor: pointer;
            position: relative;
            overflow: hidden;
            --tile-accent: 251, 191, 36;
            --tile-accent-strong: 245, 158, 11;
            background:
                radial-gradient(circle at 16% 18%, rgba(var(--tile-accent), 0.32), transparent 36%),
                radial-gradient(circle at 82% 6%, rgba(var(--tile-accent-strong), 0.18), transparent 34%),
                linear-gradient(145deg, rgba(15, 23, 42, 0.92), rgba(17, 24, 39, 0.86));
            border: 1.5px solid rgba(255, 255, 255, 0.12);
            box-shadow:
                0 24px 48px rgba(0, 0, 0, 0.4),
                0 0 0 1px rgba(255, 255, 255, 0.05),
                0 0 0 1px rgba(var(--tile-accent), 0.16) inset;
            backdrop-filter: blur(6px);
            transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .35s ease;
        }

        .hero-tile::before {
            content: "";
            position: absolute;
            inset: -10% -12%;
            background:
                radial-gradient(circle at 24% 28%, rgba(var(--tile-accent-strong), 0.28), transparent 42%),
                linear-gradient(120deg, rgba(var(--tile-accent), 0.18), transparent 55%);
            opacity: 0.9;
            pointer-events: none;
            transition: opacity .25s ease, transform .25s ease;
        }

        .hero-tile::after {
            content: "";
            position: absolute;
            inset: 0;
            background:
                linear-gradient(115deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0) 55%),
                linear-gradient(45deg,
                    rgba(255, 255, 255, 0.06) 25%,
                    transparent 25%,
                    transparent 50%,
                    rgba(255, 255, 255, 0.06) 50%,
                    rgba(255, 255, 255, 0.06) 75%,
                    transparent 75%,
                    transparent);
            background-size: 100% 100%, 14px 14px;
            mix-blend-mode: soft-light;
            opacity: 0.45;
            pointer-events: none;
            transition: opacity .2s ease;
        }

        .group:hover .hero-tile,
        .group:focus-visible .hero-tile {
            transform: translateY(-6px) scale(1.01);
            box-shadow:
                0 26px 54px rgba(0, 0, 0, 0.45),
                0 0 0 1px rgba(var(--tile-accent), 0.28),
                0 10px 40px rgba(var(--tile-accent), 0.25);
            border-color: rgba(var(--tile-accent), 0.42);
        }

        .group:hover .hero-tile::before,
        .group:focus-visible .hero-tile::before {
            opacity: 1;
            transform: translateY(-4px);
        }

        .group:hover .hero-tile::after,
        .group:focus-visible .hero-tile::after {
            opacity: 0.65;
        }

        .hero-tag {
            position: relative;
            padding-inline: 0.8rem;
            background: linear-gradient(120deg, rgba(var(--tile-accent), 0.55), rgba(var(--tile-accent-strong), 0.42));
            color: #0b1221;
            text-transform: uppercase;
            letter-spacing: 0.18em;
            font-weight: 800;
            box-shadow: 0 12px 30px rgba(var(--tile-accent), 0.25);
            border-radius: 999px;
        }

        .hero-tag::after {
            content: "";
            position: absolute;
            inset: -1px;
            border: 1px solid rgba(255, 255, 255, 0.22);
            border-radius: 999px;
            opacity: 0.7;
            pointer-events: none;
        }

        .hero-tile-cta {
            position: absolute;
            right: 1rem;
            bottom: 0.85rem;
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
            font-size: 0.68rem;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            font-weight: 700;
            opacity: 0;
            transform: translateY(6px);
            transition: opacity .22s ease, transform .22s ease;
            color: rgba(249, 250, 251, .9);
        }

        .hero-tile-cta-icon {
            font-size: 0.75rem;
            padding: 6px;
            border-radius: 999px;
            background: radial-gradient(circle at 50% 40%, rgba(var(--tile-accent), 0.55), rgba(var(--tile-accent-strong), 0.4));
            box-shadow: 0 4px 12px rgba(var(--tile-accent), 0.4);
        }

        /* aparece al pasar el mouse o al hacer focus con teclado */
        .group:hover .hero-tile-cta,
        .group:focus-visible .hero-tile-cta {
            opacity: 1;
            transform: translateY(0);
        }

        /* “COMING SOON” para ciertas tarjetas del hero */
        .hero-tile--soon::after {
            background:
                linear-gradient(115deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0) 55%),
                repeating-linear-gradient(-45deg,
                    rgba(255, 255, 255, .08),
                    rgba(255, 255, 255, .08) 8px,
                    transparent 8px,
                    transparent 16px);
            background-size: 100% 100%, 12px 12px;
            opacity: 0.55;
        }

        .hero-soon-badge {
            position: absolute;
            top: 0.5rem;
            right: -0.25rem;
            background: linear-gradient(120deg, #fcd34d, #f59e0b);
            color: #111827;
            font-size: 0.62rem;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: 0.16em;
            padding: 0.32rem 0.8rem;
            border-radius: 999px;
            box-shadow: 0 16px 32px rgba(0, 0, 0, .35), 0 0 0 1px rgba(255, 255, 255, 0.15);
            transform: rotate(-6deg);
            pointer-events: none;
        }
