/* --- FINAL FIX: FORCE TITLES LEFT --- */

/* 1. RESET CARD CONTAINER */
div.vbmodroomsboxdiv {
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    background: #fff !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.08) !important;
    border: none !important;
    border-radius: 0px !important;
    padding-bottom: 100px !important;
    margin-bottom: 40px !important;
    height: 100% !important;
    text-align: left !important; /* Global Left Align */
}

div.vbmodroomsboxdiv:hover {
    transform: translateY(-5px) !important;
}

/* 2. BADGE */
span.vbmodroomscat {
    position: absolute !important;
    top: 20px !important;
    left: 30px !important;
    width: auto !important;
    background: #000 !important;
    color: #fff !important;
    font-size: 9px !important;
    padding: 6px 12px !important;
    font-weight: 500 !important;
    font-style: normal !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    z-index: 20 !important;
}

/* 3. IMAGE */
a.vbmodrooms-img-link img {
    width: 100% !important;
    height: 250px !important;
    object-fit: cover !important;
    margin: 0 !important;
}

/* 4. TITLE & TEXT ALIGNMENT FIX (UPDATED) */
/* This section specifically forces the title to the left */

div.vbmodrooms-divblock {
    display: block !important;
    width: 100% !important;
    padding: 0 30px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    justify-content: flex-start !important;
}

/* Target the Title Span AND any Links inside it */
span.vbmodroomsname, 
span.vbmodroomsname a {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    
    /* Force margins to zero on the left */
    margin-left: 0 !important;
    margin-right: auto !important;
    
    font-family: 'Playfair Display', serif !important;
    font-size: 24px !important;
    color: #111 !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    
    /* Add spacing above/below */
    margin-top: 25px !important;
    margin-bottom: 15px !important;
}

div.vbmodroomsdesc {
    padding: 0 30px !important;
    text-align: left !important;
    font-size: 15px !important;
    color: #666 !important;
    line-height: 1.6 !important;
    margin-bottom: 20px !important;
    display: block !important;
}

/* 5. ICON GRID BREAKER */
div.vbmodrooms-carats {
    display: flex !important;
    flex-wrap: wrap !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important; /* Align Start/Left */
    
    border-top: 1px solid #ebebeb !important;
    padding: 20px 30px 0 30px !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    gap: 25px !important;
}

div.vbmodrooms-carats span, 
div.vbmodrooms-carats i,
div.vbmodrooms-carats div {
    width: auto !important;
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    text-align: left !important;
    font-size: 18px !important;
    color: #333 !important;
}

/* 6. BUTTON & PRICE ALIGNMENT */
div.vbmodroomsroomcost, div.vbmodroomsview {
    position: absolute !important;
    bottom: 30px !important;
    display: block !important;
    background: transparent !important;
    border: none !important;
    z-index: 5 !important;
}

div.vbmodroomsroomcost {
    left: 30px !important;
    text-align: left !important;
    width: auto !important;
    padding: 0 !important;
}

div.vbmodroomsroomcost::before {
    content: "STARTING FROM" !important;
    display: block !important;
    font-size: 10px !important;
    color: #999 !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 5px !important;
    text-transform: uppercase !important;
    font-family: sans-serif !important;
}

div.vbmodroomsroomcost .vbo_price {
    font-size: 26px !important;
    color: #111 !important;
    font-weight: 700 !important;
    font-family: 'Playfair Display', serif !important;
}

div.vbmodroomsview {
    right: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
}

div.vbmodroomsview a.btn {
    background-color: #a08b73 !important;
    color: transparent !important;
    text-shadow: none !important;
    padding: 12px 25px !important;
    border-radius: 0 !important;
    border: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 45px !important;
}

div.vbmodroomsview a.btn::after {
    content: "BOOK NOW" !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    line-height: normal !important;
    display: block !important;
    visibility: visible !important;
}

div.vbmodroomsview a.btn:hover {
    background-color: #000 !important;
}