body {
    font-family: Arial, Helvetica, sans-serif;
    background: #f6f7f9;
    color: #222;
}

/* HERO PRINCIPAL */
.hero-home {
    background: linear-gradient(135deg, #111 0%, #2b2b2b 55%, #e51f1f 100%);
    color: #fff;
    padding: 80px 0;
}

.hero-home h1 {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.1;
}

.hero-home p {
    font-size: 18px;
    color: #e6e6e6;
}

.hero-card {
    background: #fff;
    color: #222;
    border-radius: 0px!important;
    padding: 40px;
    max-width: 420px;
    margin-left: auto;
    box-shadow: 0 20px 50px rgba(0,0,0,.25);
}

/* BUSCADOR MODERNO */
.bm-search-area {
    padding: 13px 0;
    background: #f3f5f8;
}

.bm-search-card,
.bm-types-card {
    background: #ffffff;
    border-radius: 0px!important;
    padding: 15px !important;
    border: 1px solid #e9e9e9;
    height: 100%;
}

.bm-search-card h2,
.bm-types-card h2 {
    font-size: 32px;
    font-weight: 900;
    margin-bottom: 25px;
    color: #111;
}

.bm-search-card h2 span {
    color: #ef2b24;
}

.bm-search-card label {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 6px;
    color: #222;
}

.bm-search-card .form-select,
.bm-search-card .form-control {
    height: 38px !important;
    border-radius: 0px!important;
    border: 1px solid #d9dde3;
    background-color: #fff;
    font-size: 15px;
}

.bm-search-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 12px;
}

.bm-search-footer a {
    color: #ef2b24;
    font-weight: 800;
    font-size: 14px;
    text-decoration: none;
}

.bm-search-footer a:hover {
    text-decoration: underline;
}

.bm-btn-search {
    background: #ef2b24;
    color: #fff;
    border: 0;
    border-radius: 0px!important;
    padding: 10px 34px;
    font-weight: 900;
}

.bm-btn-search:hover {
    background: #c91812;
    color: #fff;
}

/* TIPOS */
.bm-types-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.bm-types-grid a {
    background: #f6f7f9;
    border: 1px solid #ececec;
    border-radius: 16px;
    padding: 14px 15px;
    color: #222;
    text-decoration: none;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: .2s;
}

.bm-types-grid a span {
    font-size: 26px;
}

.bm-types-grid a:hover {
    background: #ef2b24;
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(239,43,36,.25);
}

/* SECCIONES */
.section-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px;
}

.section-title h2 {
    font-weight: 800;
}

.section-title a {
    color: #e51f1f;
    text-decoration: none;
    font-weight: 700;
}

/* CATEGORÍAS */
.category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 15px;
}

.category-card {
    background: #fff;
    border-radius: 0px!important;
    padding: 18px;
    text-decoration: none;
    color: #222;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid #eee;
    transition: .2s;
}

.category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
    color: #e51f1f;
}

.category-icon {
    font-size: 28px;
}

/* TARJETAS DE VEHÍCULOS */
.vehicle-card {
    background: #fff;
    border-radius: 0px;
    overflow: hidden;
    border: 1px solid #eee;
    box-shadow: 0;
    transition: .2s;
}

.vehicle-card:hover {
    transform: translateY(-5px);
}

.vehicle-card img,
.no-image {
    width: 100%;
    height: 160px;
    object-fit: cover;
    background: #e9ecef;
}

.no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #777;
    font-weight: bold;
}

/* CAMBIO IMPORTANTE */
.vehicle-info {
    padding: 12px;
}

.vehicle-info h5 {
    font-weight: 800;
    font-size: 17px;
    margin-bottom: 3px;
    line-height: 1.2;
    min-height: auto;
}

.vehicle-info p {
    color: #666;
    margin-bottom: 2px;
    line-height: 1.1;
}

.vehicle-info strong {
    color: #e51f1f;
    font-size: 18px;
    line-height: 1;
    display: block;
    margin-top: 0;
}

/* CTA PUBLICAR */
.publish-cta {
    background: #111;
    color: #fff;
    padding: 27px 0!important;
}

.publish-cta .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
}

.publish-cta h2 {
    font-weight: 800;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .hero-home {
        padding: 55px 0;
    }

    .hero-home h1 {
        font-size: 34px;
    }

    .bm-search-card,
    .bm-types-card {
        padding: 15px;
    }

    .bm-search-footer {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }

    .bm-btn-search {
        width: 100%;
    }

    .bm-types-grid {
        grid-template-columns: 1fr;
    }

    .publish-cta .container {
        flex-direction: column;
        align-items: flex-start;
    }
}

.plans-section {
    padding: 60px 0;
    background: #f8f9fb;
}

.plan-card {
    background: #fff;
    border-radius: 0px!important;
    padding: 30px;
    text-align: center;
    border: 1px solid #eee;
}

.plan-card h4 {
    font-weight: 900;
}

.plan-card h3 {
    margin: 20px 0;
    color: #ef2b24;
}

.plan-card ul {
    list-style: none;
    padding: 0;
}

.plan-card ul li {
    margin: 8px 0;
}

.plan-card.featured {
    border: 2px solid #ef2b24;
    transform: scale(1.05);
}

.plan-card.premium {
    background: #111;
    color: #fff;
}

.featured-card {
    border: 2px solid #ef2b24;
}

.featured-card .vehicle-info {
    padding: 10px;
}

.featured-card .vehicle-info h5 {
    font-size: 15px;
    margin-bottom: 2px;
    line-height: 1.1;
    min-height: auto;
}

.featured-card .vehicle-info strong {
    font-size: 16px;
}

.featured-card img,
.featured-card .no-image {
    height: 130px;
}

#featuredCarousel .carousel-control-prev,
#featuredCarousel .carousel-control-next {
    width: 38px;
    height: 38px;
    background: #111;
    border-radius: 50%;
    top: 45%;
}

#featuredCarousel .carousel-control-prev {
    left: -18px;
}

#featuredCarousel .carousel-control-next {
    right: -18px;
}

/* EQUIPAMIENTO */
.feature-box {
    background: #fff;
    border: 1px solid #d8dde6;
    border-radius: 0px!important;
    padding: 16px;
    height: 100%;
}

.feature-box h4 {
    font-size: 15px;
    font-weight: 900;
    margin-bottom: 12px;
    color: #111;
}

.feature-list {
    list-style: none;
    padding: 0;
    margin: 0;
    columns: 2;
    column-gap: 18px;
}

.feature-list li {
    break-inside: avoid;
    margin-bottom: 7px;
    font-size: 12px;
    line-height: 1.25;
    color: #333;
    display: flex;
    align-items: flex-start;
    gap: 6px;
}

.feature-list input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin-top: 1px;
    flex-shrink: 0;
}

.feature-list label {
    cursor: pointer;
}

.feature-list li:hover label {
    color: #ef2b24;
}

.section-head {
    margin: 20px 0 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e1e5ec;
}

.section-head h3 {
    font-size: 18px;
    font-weight: 900;
}

.equipment-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 2fr;
    gap: 14px;
}

.equipment-grid-bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 14px;
    max-width: 620px;
}

@media (max-width: 992px) {
    .equipment-grid,
    .equipment-grid-bottom {
        grid-template-columns: 1fr;
        max-width: 100%;
    }

    .feature-list {
        columns: 1;
    }
}

.vehicle-img {
    width: 100%;
    height: 160px;
    object-fit: cover;
    display: block;
    background: #e9ecef;
}



.recent-card {
    height: 100%;
    border-radius: 0px!important;
}

.recent-card img,
.recent-card .no-image {
    height: 130px;
}

.recent-card .vehicle-info {
    padding: 10px;
}

.recent-card .vehicle-info h5 {
    font-size: 14px;
    line-height: 1.15;
    margin-bottom: 3px;
    min-height: 0px;
}

.recent-card .vehicle-info p {
    font-size: 13px;
    margin-bottom: 3px;
}

.recent-card .vehicle-info strong {
    font-size: 15px;
}

.recent-pagination {
    display: flex;
    align-items: center;
    gap: 12px;
}

.page-btn {
    padding: 9px 16px;
    border-radius: 0px!important;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
}

.disabled-prev {
    background: #d6d6d6;
    color: #fff;
}

.next-btn {
    background: #ef2b24;
    color: #fff;
}

.next-btn:hover {
    background: #c91812;
    color: #fff;
}

.page-counter {
    font-size: 13px;
    font-weight: 700;
}









.bm-search-card {
    background: #fff;
    border-radius: 0px!important;
    padding: 18px;
    border: 1px solid #e5e8ef;
    margin-bottom: 25px;
}

.bm-search-card h2 {
    font-size: 32px;
    font-weight: 900;
    margin-bottom: 14px;
}

.bm-search-card h2 span {
    color: #ef2b24;
}

.bm-search-card .form-select,
.bm-search-card .form-control {
    height: 44px;
    border-radius: 0px!important;
    font-size: 14px;
}

.bm-btn-search {
    height: 44px;
    border-radius: 0px!important;
    background: #ef2b24;
    color: #fff;
    font-weight: 900;
}

/* Dashed red border */
.hr {
  border-top: 2px solid rgba(0, 0, 0, 0.075);
}












.bm-publish-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#ef0000;
    color:#fff;
    font-weight:800;
    font-size:15px;
    text-decoration:none;
    border:none;
    border-radius:0px!important;
    padding:12px 22px;
    transition:all .25s ease;
}

.bm-publish-btn:hover{
    background:#dc3545;
    color:#fff;
    transform:translateY(-2px);
}








.bm-search-wrap{
    background:#fff;
    border-radius:0px!important;
    padding:22px;
    box-shadow:0 12px 30px rgba(0,0,0,.05);
    border:1px solid #eceef2;
}

.bm-search-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:14px;
    align-items:center;
}

.bm-search-title{
    grid-column:1 / -1;
    margin-bottom:5px;
}

.bm-search-title h2{
    margin:0;
    font-size:42px;
    font-weight:900;
    color:#111827;
}

.bm-search-title span{
    color:#ef0000;
}

.bm-field{
    position:relative;
}

.bm-field .form-select{
    height:54px;
    border-radius:0px!important;
    border:1px solid #dfe3eb;
    font-size:15px;
    font-weight:600;
    color:#374151;
    background-color:#fff;
    padding-left:16px;
    transition:.2s ease;
    box-shadow:none;
}

.bm-field .form-select:focus{
    border-color:#ef0000;
    box-shadow:0 0 0 4px rgba(239,0,0,.10);
}

.bm-search-button{
    display:flex;
    align-items:center;
    justify-content:center;
}

.bm-search-button .bm-publish-btn{
    width:100%;
    height:54px;
    font-size:16px;
}

@media(max-width:1200px){

    .bm-search-grid{
        grid-template-columns:repeat(3,1fr);
    }

}

@media(max-width:768px){

    .bm-search-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .bm-search-title h2{
        font-size:30px;
    }

}

@media(max-width:576px){

    .bm-search-grid{
        grid-template-columns:1fr;
    }

}




/* =========================
   FOOTER BIENMONTAO
========================= */

.bm-footer{
    background:#151a21;
    color:#cfd4da;
    padding:60px 0 0;
}

.bm-footer h4{
    color:#fff;
    font-weight:900;
    margin-bottom:15px;
}

.bm-footer h5{
    color:#fff;
    font-size:16px;
    font-weight:800;
    margin-bottom:18px;
}

.bm-footer p{
    color:#adb5bd;
    line-height:1.7;
}

.bm-footer ul{
    list-style:none;
    padding:0;
    margin:0;
}

.bm-footer ul li{
    margin-bottom:0px;
}

.bm-footer ul li a{
    color:#adb5bd;
    text-decoration:none;
    transition:.2s;
}

.bm-footer ul li a:hover{
    color:#ef0000;
}

.bm-social{
    display:flex;
    gap:12px;
    margin-top:20px;
}

.bm-social a{
    width:40px;
    height:40px;
    background:#202733;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    transition:.2s;
}

.bm-social a:hover{
    background:#ef0000;
    transform:translateY(-2px);
}

.bm-contact li{
    color:#adb5bd;
}

.bm-footer-bottom{
    margin-top:40px;
    border-top:1px solid rgba(255,255,255,.08);
    padding:18px 0;
    color:#8c949d;
    font-size:14px;
}


.bm-brand-carousel-section{
    padding:30px 0;
    background:#fff;
    border-top:1px solid #eee;
    border-bottom:1px solid #eee;
}

.bm-brand-carousel{
    overflow:hidden;
    width:100%;
    position:relative;
}

.bm-brand-track{
    display:flex;
    gap:18px;
    width:max-content;
    animation:brandScroll 28s linear infinite;
}

.bm-brand-carousel:hover .bm-brand-track{
    animation-play-state:paused;
}

.bm-brand-logo{
    width:150px;
    height:110px;
    border:1px solid #e5e7eb;
    background:#fff;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#111827;
    transition:.2s;
}

.bm-brand-logo:hover{
    border-color:#ef0000;
    color:#ef0000;
    transform:translateY(-3px);
}

.bm-brand-logo img{
    max-width:62px;
    max-height:48px;
    object-fit:contain;
    margin-bottom:10px;
}

.bm-brand-logo span{
    font-size:13px;
    font-weight:800;
}

@keyframes brandScroll{
    from{ transform:translateX(0); }
    to{ transform:translateX(-50%); }
}



.sidebar-brand{
    padding:15px 10px;
    text-align:center;
    border-bottom:1px solid rgba(255,255,255,.1);
}

.sidebar-brand .brand-link{
    display:flex;
    justify-content:center;
    align-items:center;
}

.sidebar-brand img{
    max-width:180px;
    width:100%;
    height:auto;
}