/**
 * Nitro Tattoo · Home Features — estilos del bloque de la home.
 *
 * @author    Nexir (https://nexir.es)
 * @copyright Nexir
 * @license   https://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
 */

.nt-homefeatures {
    padding: 32px;
    margin: 0;
    border-radius: 8px;
    border: none;
    width: 100%;
    color: #fff;
    align-items: center;
    border: 1px solid #e3e3e3;
    border-radius: 14px;
    transition: box-shadow .22s ease, transform .22s ease, border-color .22s ease;
    background-image: linear-gradient(rgb(255 255 255 / 62%), rgb(255 255 255 / 67%)), url(https://nitrotattoosupplies.com/img/fondo-nitrotattoo.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.nt-homefeatures p, .nt-homefeatures h2{
    color: #252e5f !important;
}
a.btn.btn-primary {
    background: #0b69f6 ;
    font-size: 16px;
    color: #ffffff;
    text-decoration: none;
}

.nt-homefeatures .nt-homefeatures_content {
    display: flex;
    align-items: flex-start !important;
    gap: 52px !important;
}

/* Columna de imagen izquierda */
.nt-homefeatures_img {
    width: 187px;
    height: 187px;
    object-fit: cover;
}

/* Contenido central */
.nt-homefeatures_left {
    flex: 1 1 0;
    min-width: 250px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
    align-items: flex-start;
}

.nt-homefeatures_left .title-before {
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px;
}

.nt-homefeatures_left .title,
.nt-homefeatures_left .title p {
    text-align: start;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    margin: 0 !important;
    color: ##252e5f !important;
}

.nt-homefeatures_left .subtitle,
.nt-homefeatures_left .subtitle p {
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    color: ##252e5f !important;
    margin: 0 !important;
}

.nt-homefeatures_left .btn {
    background: transparent;
    color: #ffffff;
    border: 1px solid #ffffff;
    border-radius: 8px;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    white-space: nowrap;
    transition: background-color .15s ease, color .15s ease;
}

/* Hover: inversión a fondo blanco + texto azul de marca */
.nt-homefeatures_left .btn:hover,
.nt-homefeatures_left .btn:focus-visible {
    background: #0a0d14;
    color: white;
    border-color: #0a0d14;
}

.nt-homefeatures_left .btn-primary:active,
.nt-homefeatures_left .btn-primary:focus {
    background: #ffffff;
    color: #003aee;
    border: 1px solid #ffffff;
}

/* Features derecha */
.nt-homefeatures_right {
    flex: 1 1 0;
    min-width: 260px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    justify-content: center;
    align-items: flex-start;
}

.nt-homefeatures_right .nt-homefeatures_feature {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    color: #ffffff;
    font-size: 1.09rem;
}

.nt-homefeatures_right .nt-homefeatures_feature_text p {
    margin-bottom: 20px !important;
}

.nt-homefeatures_right .nt-homefeatures_feature_text p:last-child {
    margin-bottom: 0 !important;
}

.nt-homefeatures_right .nt-homefeatures_feature_text span {
    display: flex;
    align-items: center;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.nt-homefeatures_right .nt-homefeatures_feature_text,
.nt-homefeatures_right .nt-homefeatures_feature_text p {
    color: #252e5f  !important;
    display: flex;
    gap: 16px;
    margin: 0;
}

.nt-homefeatures_right .nt-homefeatures_feature_text p {
    align-items: flex-start;
}

/* Iconos SVG (servidos vía <img>) de cada característica */
.nt-homefeatures_right .nt-homefeatures_feature_text img {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    margin-top: 1px;
}

/* Responsive */
@media (max-width: 1200px) {
    .nt-homefeatures .nt-homefeatures_content {
        gap: 40px !important;
    }
}

@media (max-width: 991px) {
    .nt-homefeatures {
        padding: 32px 20px;
    }

    .nt-homefeatures .nt-homefeatures_content {
        flex-direction: column;
        align-items: stretch;
    }

    .nt-homefeatures_img-col {
        display: flex;
        width: 100%;
        justify-content: center;
    }

    .nt-homefeatures_img {
        width: 288px;
        height: 288px;
        object-fit: cover;
    }

    .nt-homefeatures_left .btn {
        padding: 12px 24px;
    }
}