/* ==========================================================================
   Pizzas Watson — Encabezado del menú
   ========================================================================== */

.pw-menu-section {
    padding: 54px 0 72px;
    color: var(--pw-white);
    background:
        linear-gradient(
            180deg,
            #9e245d 0%,
            #c93170 55%,
            #d63d79 100%
        );
}

.pw-menu-section__heading {
    max-width: 640px;
    margin: 0 auto;
    text-align: center;
}

.pw-menu-section__heading h2 {
    margin: 0;
    color: var(--pw-white);
    font-size: clamp(2rem, 4vw, 2.75rem);
    line-height: 1.05;
    letter-spacing: -0.03em;
    text-transform: uppercase;
}

.pw-menu-section__heading h2 span,
.pw-menu-section__heading h2 strong {
    display: block;
}

.pw-menu-section__heading h2 strong {
    color: #fff7be;
}

.pw-menu-section__heading p {
    max-width: 560px;
    margin: 16px auto 0;
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.98rem;
    font-weight: 500;
    line-height: 1.35;
}

/* ==========================================================================
   Buscador
   ========================================================================== */

.pw-menu-tools {
    max-width: 520px;
    margin: 24px auto 42px;
}

.pw-menu-search {
    position: relative;
}

.pw-menu-search input {
    width: 100%;
    min-height: 48px;
    padding: 0 58px 0 20px;
    border: 0;
    border-radius: 999px;
    color: #7c3152;
    background: var(--pw-white);
    font-family: var(--pw-font-body);
    font-size: 0.95rem;
    font-weight: 600;
    box-shadow:
        0 10px 28px
        rgba(96, 0, 43, 0.12);
}

.pw-menu-search input::placeholder {
    color: #be8da3;
    opacity: 1;
}

.pw-menu-search input:focus {
    outline:
        3px solid
        rgba(255, 247, 190, 0.8);
}

.pw-menu-search img {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 30px;
    height: 30px;
    object-fit: contain;
    pointer-events: none;
    transform: translateY(-50%);
}

/* ==========================================================================
   Estados vacíos
   ========================================================================== */

.pw-menu-section__empty,
.pw-menu-section__no-results {
    max-width: 700px;
    margin: 0 auto;
    padding: 28px;
    border-radius: 16px;
    color: #8d174d;
    background: var(--pw-white);
    text-align: center;
}

.pw-menu-section__empty h2 {
    color: #b6004c;
}

.pw-menu-section__empty a {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    margin-top: 16px;
    padding: 0 20px;
    border-radius: 999px;
    color: var(--pw-white);
    background: #c81755;
    font-weight: 800;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 640px) {
    .pw-menu-section {
        padding: 46px 0 58px;
    }

    .pw-menu-section__heading h2 {
        font-size: 1.85rem;
    }

    .pw-menu-section__heading p {
        font-size: 0.88rem;
    }

    .pw-menu-tools {
        margin:
            22px
            auto
            32px;
    }

    .pw-menu-search input {
        min-height: 50px;
        font-size: 0.88rem;
    }
}