html{scroll-behavior:smooth}body{margin:0}.pms-page{font-family:Arial,sans-serif;color:#0f172a;background:#f8fafc}.pms-hero{min-height:92vh;display:flex;align-items:center;padding:70px 24px;background:linear-gradient(135deg,rgba(14,165,233,.74),rgba(20,184,166,.58)),url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1800&q=80');background-size:cover;background-position:center}.pms-hero-content{max-width:1180px;width:100%;margin:0 auto;color:white}.pms-tag,.pms-small-title{display:inline-block;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.pms-hero h1{font-size:clamp(42px,7vw,86px);line-height:.95;margin:18px 0}.pms-hero p{max-width:620px;font-size:20px;line-height:1.6}.pms-search-box{margin-top:34px;background:rgba(255,255,255,.96);color:#0f172a;border-radius:28px;padding:26px;max-width:1050px;box-shadow:0 25px 65px rgba(15,23,42,.22)}.pms-search-box h2{margin:0;font-size:28px}.pms-search-box p{color:#475569;margin:8px 0 20px;font-size:15px}.pms-motopress-search form,.pms-motopress-search .mphb_sc_search-form{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;align-items:end}.pms-motopress-search input,.pms-motopress-search select{width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:13px}.pms-motopress-search input[type="submit"],.pms-motopress-search button{background:linear-gradient(135deg,#0ea5e9,#14b8a6)!important;color:white!important;border:none!important;border-radius:14px!important;padding:14px 20px!important;font-weight:900!important;cursor:pointer}.pms-section{max-width:1180px;margin:0 auto;padding:80px 24px}.pms-section h2{font-size:clamp(30px,4vw,48px);margin:12px 0 18px}.pms-section p{color:#475569;line-height:1.7;font-size:17px}.pms-about{display:grid;grid-template-columns:1.4fr .8fr;gap:26px;align-items:center}.pms-about-card{background:linear-gradient(135deg,#dff8ff,#fff6c7);border-radius:28px;padding:34px;box-shadow:0 16px 40px rgba(15,23,42,.08)}.pms-about-card strong{display:block;font-size:28px}.pms-about-card span{color:#64748b}.pms-rooms,.pms-gallery-grid,.pms-experience-grid{display:grid;gap:20px}.pms-rooms{grid-template-columns:repeat(3,1fr)}.pms-rooms article{background:white;border-radius:24px;padding:16px;box-shadow:0 16px 40px rgba(15,23,42,.08)}.pms-room-img,.pms-gallery-item{height:240px;border-radius:20px;background-size:cover;background-position:center}.pms-img-1{background-image:url('https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&w=1200&q=80')}.pms-img-2{background-image:url('https://images.unsplash.com/photo-1520250497591-112f2f40a3f4?auto=format&fit=crop&w=1200&q=80')}.pms-img-3{background-image:url('https://images.unsplash.com/photo-1501117716987-c8e1ecb21030?auto=format&fit=crop&w=1200&q=80')}.pms-img-4{background-image:url('https://images.unsplash.com/photo-1540541338287-41700207dee6?auto=format&fit=crop&w=1200&q=80')}.pms-rooms h3{font-size:22px;margin:18px 0 8px}.pms-experience{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}.pms-experience-grid{grid-template-columns:repeat(2,1fr)}.pms-experience-grid div{background:white;border-radius:22px;padding:26px;font-weight:900;box-shadow:0 16px 40px rgba(15,23,42,.08)}.pms-gallery-grid{grid-template-columns:repeat(4,1fr)}.pms-gallery-item{height:220px}.pms-note{font-size:14px!important}.pms-cta{text-align:center;padding:80px 24px;background:linear-gradient(135deg,#0ea5e9,#14b8a6);color:white}.pms-cta h2{font-size:clamp(32px,5vw,56px);margin:0 0 12px}.pms-cta p{font-size:18px}.pms-cta-actions{margin-top:28px;display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.pms-btn,.pms-btn-outline{padding:15px 22px;border-radius:999px;font-weight:900;text-decoration:none}.pms-btn{background:white;color:#0369a1}.pms-btn-outline{border:2px solid white;color:white}@media(max-width:900px){.pms-about,.pms-experience{grid-template-columns:1fr}.pms-rooms,.pms-gallery-grid{grid-template-columns:1fr}.pms-hero{min-height:auto;padding-top:60px}}

/* Página de resultado da busca */
.pms-results-page {
    background: #f8fafc;
}

.pms-results-hero {
    padding: 70px 24px 40px;
    background:
        linear-gradient(135deg, rgba(14,165,233,.9), rgba(20,184,166,.82)),
        url('https://images.unsplash.com/photo-1542314831-068cd1dbfeeb?auto=format&fit=crop&w=1800&q=80');
    background-size: cover;
    background-position: center;
    color: white;
}

.pms-results-content {
    max-width: 1180px;
    margin: 0 auto;
}

.pms-results-content h1 {
    font-size: clamp(38px, 6vw, 72px);
    margin: 16px 0;
    line-height: 1;
}

.pms-results-content p {
    font-size: 18px;
    max-width: 680px;
    line-height: 1.6;
}

.pms-mini-search {
    margin-top: 28px;
    background: rgba(255,255,255,.96);
    color: #0f172a;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 20px 50px rgba(15,23,42,.18);
}

.pms-mini-search h2 {
    margin: 0 0 14px;
    font-size: 24px;
}

.pms-mini-search form,
.pms-mini-search .mphb_sc_search-form {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 12px;
    align-items: end;
}

.pms-mini-search input,
.pms-mini-search select {
    width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: 14px;
    padding: 12px;
}

.pms-mini-search input[type="submit"],
.pms-mini-search button {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 14px !important;
    padding: 13px 18px !important;
    font-weight: 900 !important;
}

.pms-results-section {
    padding-top: 55px;
}

.pms-results-title {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: end;
    margin-bottom: 26px;
}

.pms-results-title h2 {
    margin-bottom: 0;
}

/* Estilização dos cards do MotoPress */
.pms-motopress-results .mphb-room-type,
.pms-motopress-results .mphb-recommendation,
.pms-motopress-results .mphb-room-type-details {
    background: white;
    border-radius: 26px;
    padding: 20px;
    box-shadow: 0 16px 42px rgba(15,23,42,.08);
    border: 1px solid #e2e8f0;
    margin-bottom: 24px;
    overflow: hidden;
}

.pms-motopress-results .mphb-room-type {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 22px;
    align-items: start;
}

.pms-motopress-results .mphb-loop-room-thumbnail,
.pms-motopress-results .mphb-room-type-images,
.pms-motopress-results .mphb-single-room-type-gallery-wrapper {
    border-radius: 20px;
    overflow: hidden;
}

.pms-motopress-results img {
    border-radius: 20px;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.pms-motopress-results h2,
.pms-motopress-results h3,
.pms-motopress-results .mphb-room-type-title {
    color: #0f172a;
    font-size: 28px;
    margin-top: 0;
}

.pms-motopress-results p,
.pms-motopress-results li,
.pms-motopress-results span {
    color: #475569;
    line-height: 1.6;
}

.pms-motopress-results .mphb-price,
.pms-motopress-results .mphb-regular-price,
.pms-motopress-results .mphb-room-price {
    font-size: 22px;
    color: #0369a1;
    font-weight: 900;
}

.pms-motopress-results input[type="submit"],
.pms-motopress-results button,
.pms-motopress-results .button,
.pms-motopress-results a.button {
    background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
    color: white !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 13px 20px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    cursor: pointer;
}

.pms-motopress-results select,
.pms-motopress-results input[type="number"],
.pms-motopress-results input[type="text"],
.pms-motopress-results input[type="email"] {
    border: 1px solid #cbd5e1;
    border-radius: 14px;
    padding: 12px;
}

.pms-motopress-results .mphb-reserve-room-section,
.pms-motopress-results .mphb-to-book-btn-wrapper {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
}

.pms-motopress-results .mphb-errors-wrapper,
.pms-motopress-results .mphb_sc_search_results-info {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #9a3412;
    border-radius: 18px;
    padding: 14px;
    margin-bottom: 18px;
}

@media (max-width: 900px) {
    .pms-results-title {
        display: block;
    }

    .pms-motopress-results .mphb-room-type {
        grid-template-columns: 1fr;
    }
}

/* Resultado da busca - versão alinhada e compatível com MotoPress */
.pms-results-pro {
    background: linear-gradient(180deg, #fffaf4 0%, #f8fafc 45%, #fffaf4 100%);
}

.pms-result-header {
    min-height: 360px;
    color: white;
    background:
        linear-gradient(90deg, rgba(2, 44, 55, .78), rgba(2, 44, 55, .22)),
        url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1800&q=80');
    background-size: cover;
    background-position: center;
}

.pms-nav {
    max-width: 1220px;
    margin: 0 auto;
    padding: 22px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.pms-logo {
    display: grid;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.pms-logo span {
    font-size: 24px;
}

.pms-logo strong {
    font-size: 18px;
}

.pms-logo small {
    opacity: .85;
}

.pms-nav nav {
    display: flex;
    gap: 26px;
    flex-wrap: wrap;
}

.pms-nav nav a,
.pms-reserve-top {
    color: white;
    text-decoration: none;
    font-weight: 800;
    font-size: 13px;
    text-transform: uppercase;
}

.pms-reserve-top {
    background: #075e61;
    padding: 13px 22px;
    border-radius: 999px;
}

.pms-result-hero-content {
    max-width: 1220px;
    margin: 0 auto;
    padding: 58px 24px 84px;
}

.pms-result-hero-content h1 {
    font-size: clamp(38px, 6vw, 68px);
    margin: 12px 0;
    line-height: 1;
}

.pms-search-summary {
    max-width: 1100px;
    margin: -52px auto 36px;
    background: rgba(255,255,255,.98);
    border: 1px solid #e2e8f0;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
    border-radius: 18px;
    padding: 22px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    align-items: center;
    position: relative;
    z-index: 5;
}

.pms-search-summary div {
    border-right: 1px solid #e2e8f0;
    padding-right: 18px;
}

.pms-search-summary small {
    display: block;
    color: #64748b;
    text-transform: uppercase;
    font-weight: 900;
    margin-bottom: 5px;
}

.pms-search-summary strong {
    color: #0f172a;
    font-size: 17px;
}

.pms-change-search {
    justify-self: end;
    border: 1px solid #0f766e;
    color: #0f766e;
    border-radius: 10px;
    padding: 13px 18px;
    text-decoration: none;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 12px;
}

.pms-results-shell {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 24px 70px;
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
}

.pms-filter-card {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 22px;
    box-shadow: 0 12px 35px rgba(15,23,42,.06);
    position: sticky;
    top: 20px;
}

.pms-filter-card h3 {
    margin: 0 0 18px;
}

.pms-filter-group {
    border-top: 1px solid #e2e8f0;
    padding: 18px 0;
}

.pms-filter-group strong {
    display: block;
    color: #0f766e;
    margin-bottom: 12px;
}

.pms-filter-group label {
    display: block;
    margin: 10px 0;
    color: #475569;
}

.pms-results-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 18px;
}

.pms-results-toolbar span {
    color: #475569;
    font-weight: 800;
}

.pms-results-toolbar select {
    border: 1px solid #cbd5e1;
    border-radius: 10px;
    padding: 10px;
}

/* Correção principal: não quebra a estrutura do MotoPress */
.pms-results-modern,
.pms-results-modern * {
    box-sizing: border-box;
}

.pms-results-modern {
    width: 100%;
    max-width: 100%;
}

.pms-results-modern .mphb_sc_search_results-wrapper,
.pms-results-modern .mphb-room-types,
.pms-results-modern .mphb-recommendation,
.pms-results-modern .mphb-reserve-rooms-details {
    width: 100% !important;
    max-width: 100% !important;
}

.pms-results-modern .mphb-room-type,
.pms-results-modern .mphb-room-type-details,
.pms-results-modern .mphb-recommendation,
.pms-results-modern .mphb-reserve-rooms-details {
    background: white !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: 22px !important;
    margin: 0 0 22px !important;
    box-shadow: 0 12px 35px rgba(15,23,42,.08) !important;
    overflow: visible !important;
    display: block !important;
    min-height: auto !important;
    height: auto !important;
}

.pms-results-modern .mphb-loop-room-thumbnail,
.pms-results-modern .mphb-room-type-images,
.pms-results-modern .mphb-single-room-type-gallery-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    float: none !important;
    display: block !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

.pms-results-modern img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 320px !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 14px !important;
}

.pms-results-modern h1,
.pms-results-modern h2,
.pms-results-modern h3,
.pms-results-modern .mphb-room-type-title {
    color: #0f172a !important;
    font-size: 26px !important;
    line-height: 1.2 !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    text-align: left !important;
}

.pms-results-modern .mphb-room-type-title a {
    color: #0f172a !important;
    text-decoration: none !important;
}

.pms-results-modern p,
.pms-results-modern li,
.pms-results-modern span,
.pms-results-modern dd,
.pms-results-modern dt {
    color: #475569 !important;
    line-height: 1.6 !important;
    font-size: 14px !important;
    text-align: left !important;
}

.pms-results-modern ul,
.pms-results-modern ol {
    margin: 12px 0 !important;
    padding-left: 20px !important;
}

.pms-results-modern .mphb-loop-room-type-attributes,
.pms-results-modern .mphb-room-type-excerpt {
    margin: 12px 0 !important;
    padding: 0 !important;
}

.pms-results-modern .mphb-regular-price,
.pms-results-modern .mphb-price,
.pms-results-modern .mphb-room-price {
    display: block !important;
    color: #0369a1 !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    margin: 16px 0 !important;
    text-align: left !important;
}

.pms-results-modern .mphb-view-details-button-wrapper,
.pms-results-modern .mphb-to-book-btn-wrapper,
.pms-results-modern .mphb-reserve-room-section {
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #e2e8f0 !important;
    text-align: left !important;
    clear: both !important;
}

.pms-results-modern input[type="submit"],
.pms-results-modern button,
.pms-results-modern .button,
.pms-results-modern a.button,
.pms-results-modern .mphb-book-button,
.pms-results-modern .mphb-confirm-reservation {
    background: #007c7c !important;
    color: white !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 18px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    width: auto !important;
    max-width: 100% !important;
    display: inline-block !important;
}

.pms-results-modern .mphb-view-details-button,
.pms-results-modern .mphb-view-details-button-wrapper a {
    color: #0f766e !important;
    background: transparent !important;
    padding: 10px 0 !important;
}

.pms-results-modern select,
.pms-results-modern input[type="number"],
.pms-results-modern input[type="text"],
.pms-results-modern input[type="email"],
.pms-results-modern input[type="tel"] {
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 10px !important;
    max-width: 100% !important;
}

.pms-results-modern .mphb-errors-wrapper,
.pms-results-modern .mphb_sc_search_results-info {
    background: #fff7ed !important;
    border: 1px solid #fed7aa !important;
    color: #9a3412 !important;
    border-radius: 14px !important;
    padding: 14px !important;
    margin-bottom: 18px !important;
}

.pms-safe-box {
    max-width: 1100px;
    margin: 0 auto 70px;
    border: 1px solid #ead8bd;
    background: #fffaf4;
    border-radius: 18px;
    padding: 22px;
    text-align: center;
    color: #0f766e;
}

.pms-safe-box strong,
.pms-safe-box span {
    display: block;
}

@media (min-width: 901px) {
    .pms-results-modern .mphb-room-type {
        position: relative !important;
        padding-right: 190px !important;
        min-height: 260px !important;
    }

    .pms-results-modern .mphb-loop-room-thumbnail,
    .pms-results-modern .mphb-room-type-images {
        width: 260px !important;
        float: left !important;
        margin: 0 22px 16px 0 !important;
    }

    .pms-results-modern .mphb-loop-room-thumbnail img,
    .pms-results-modern .mphb-room-type-images img {
        height: 190px !important;
        max-height: 190px !important;
    }

    .pms-results-modern .mphb-regular-price,
    .pms-results-modern .mphb-price,
    .pms-results-modern .mphb-room-price {
        position: absolute !important;
        right: 22px !important;
        top: 55px !important;
        width: 145px !important;
        text-align: center !important;
    }

    .pms-results-modern .mphb-to-book-btn-wrapper,
    .pms-results-modern .mphb-reserve-room-section {
        position: absolute !important;
        right: 22px !important;
        bottom: 22px !important;
        width: 145px !important;
        text-align: center !important;
        border-top: none !important;
        padding-top: 0 !important;
    }
}

@media (max-width: 980px) {
    .pms-nav nav {
        display: none;
    }

    .pms-search-summary,
    .pms-results-shell {
        grid-template-columns: 1fr;
    }

    .pms-search-summary div {
        border-right: none;
        border-bottom: 1px solid #e2e8f0;
        padding-bottom: 12px;
    }

    .pms-filter-card {
        position: static;
    }

    .pms-results-modern .mphb-room-type {
        padding: 18px !important;
    }
}

/* Resultados próprios da Pousada Malibu - cards compactos e responsivos */
.pms-custom-room-card {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr) 145px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(15,23,42,.07);
    margin-bottom: 14px;
}

.pms-custom-room-image {
    display: block;
    min-height: 160px;
    background: #e2e8f0;
}

.pms-custom-room-image img {
    width: 100%;
    height: 100%;
    min-height: 160px;
    max-height: 180px;
    object-fit: cover;
    display: block;
}

.pms-custom-room-body {
    padding: 16px;
    min-width: 0;
}

.pms-custom-room-body h3 {
    font-size: 21px;
    line-height: 1.2;
    margin: 0 0 9px;
    color: #0f172a;
}

.pms-custom-room-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

.pms-custom-room-tags span {
    background: #edfdfd;
    color: #0f766e;
    border-radius: 999px;
    padding: 5px 8px;
    font-size: 11px;
    font-weight: 800;
}

.pms-custom-room-body p {
    color: #475569;
    line-height: 1.55;
    font-size: 14px;
    margin: 0 0 10px;
}

.pms-custom-details {
    color: #0f766e;
    font-weight: 900;
    text-decoration: none;
    font-size: 13px;
}

.pms-custom-room-price {
    border-left: 1px solid #e2e8f0;
    padding: 16px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    text-align: center;
}

.pms-custom-room-price small {
    color: #64748b;
    font-size: 11px;
}

.pms-custom-room-price strong {
    color: #0369a1;
    font-size: 20px;
    line-height: 1.1;
}

.pms-custom-room-price span {
    color: #475569;
    font-size: 12px;
    font-weight: 700;
}

.pms-custom-reserve {
    margin-top: 8px;
    background: #007c7c;
    color: white;
    text-decoration: none;
    border-radius: 9px;
    padding: 10px 13px;
    font-weight: 900;
    font-size: 12px;
    width: 100%;
}

.pms-custom-empty {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #9a3412;
    border-radius: 16px;
    padding: 18px;
    font-weight: 800;
}

/* Responsividade geral */
@media (max-width: 1200px) {
    .pms-results-shell,
    .pms-section,
    .pms-nav,
    .pms-result-hero-content {
        max-width: 100%;
    }

    .pms-results-shell {
        grid-template-columns: 240px minmax(0, 1fr);
        gap: 20px;
    }

    .pms-custom-room-card {
        grid-template-columns: 190px minmax(0, 1fr) 130px;
    }

    .pms-custom-room-image,
    .pms-custom-room-image img {
        min-height: 150px;
    }
}

@media (max-width: 980px) {
    .pms-nav nav {
        display: none;
    }

    .pms-search-summary,
    .pms-results-shell,
    .pms-about,
    .pms-experience {
        grid-template-columns: 1fr !important;
    }

    .pms-search-summary {
        margin-left: 16px;
        margin-right: 16px;
    }

    .pms-search-summary div {
        border-right: none;
        border-bottom: 1px solid #e2e8f0;
        padding-bottom: 10px;
    }

    .pms-filter-card {
        position: static;
        padding: 16px;
    }

    .pms-custom-room-card {
        grid-template-columns: 170px minmax(0, 1fr);
    }

    .pms-custom-room-price {
        grid-column: 1 / -1;
        border-left: none;
        border-top: 1px solid #e2e8f0;
        flex-direction: row;
        justify-content: space-between;
        text-align: left;
    }

    .pms-custom-reserve {
        width: auto;
        min-width: 130px;
        margin-top: 0;
        text-align: center;
    }
}

@media (max-width: 680px) {
    .pms-hero,
    .pms-result-header {
        min-height: auto;
        padding: 44px 16px;
    }

    .pms-result-hero-content,
    .pms-hero-content {
        padding: 28px 0;
    }

    .pms-hero h1,
    .pms-result-hero-content h1 {
        font-size: 38px;
    }

    .pms-search-box,
    .pms-mini-search {
        padding: 18px;
        border-radius: 20px;
    }

    .pms-section,
    .pms-results-shell {
        padding-left: 14px;
        padding-right: 14px;
    }

    .pms-rooms,
    .pms-gallery-grid,
    .pms-experience-grid {
        grid-template-columns: 1fr !important;
    }

    .pms-custom-room-card {
        grid-template-columns: 1fr;
    }

    .pms-custom-room-image,
    .pms-custom-room-image img {
        min-height: 180px;
        max-height: 220px;
    }

    .pms-custom-room-body {
        padding: 14px;
    }

    .pms-custom-room-body h3 {
        font-size: 20px;
    }

    .pms-custom-room-price {
        padding: 14px;
        align-items: stretch;
        flex-direction: column;
        text-align: center;
    }

    .pms-custom-reserve {
        width: 100%;
    }
}

@media (max-width: 420px) {
    .pms-hero h1,
    .pms-result-hero-content h1 {
        font-size: 32px;
    }

    .pms-search-summary {
        padding: 16px;
    }

    .pms-custom-room-tags span {
        font-size: 10px;
    }
}


/* Filtro horizontal */
.pms-results-shell {
    display: block !important;
    max-width: 1220px;
}

.pms-filter-card.pms-filter-horizontal {
    position: static !important;
    width: 100%;
    margin-bottom: 24px;
    padding: 18px 20px;
}

.pms-filter-horizontal {
    display: grid;
    grid-template-columns: 190px repeat(3, minmax(160px, 1fr));
    gap: 16px;
    align-items: center;
}

.pms-filter-horizontal h3 {
    margin: 0;
    font-size: 22px;
}

.pms-filter-horizontal .pms-filter-group {
    border-top: none !important;
    border-left: 1px solid #e2e8f0;
    padding: 0 0 0 16px !important;
    min-height: auto;
}

.pms-filter-horizontal .pms-filter-group strong {
    margin-bottom: 8px;
    font-size: 14px;
}

.pms-filter-horizontal .pms-filter-group label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 4px 12px 4px 0;
    font-size: 14px;
}

.pms-filter-horizontal .pms-filter-group p {
    margin: 0;
    font-size: 13px;
}

.pms-results-main {
    width: 100%;
}

@media (max-width: 900px) {
    .pms-filter-horizontal {
        grid-template-columns: 1fr;
    }

    .pms-filter-horizontal .pms-filter-group {
        border-left: none;
        border-top: 1px solid #e2e8f0 !important;
        padding: 12px 0 0 !important;
    }
}
