/* Añade más definiciones de @font-face para otros pesos y estilos si es necesario */

html {
    scroll-padding-top: 85px; /* Ajusta este valor según el tamaño de tu barra de navegación */
}

@media (max-width: 768px) {
    html {
        scroll-padding-top: 200px; /* Ajusta este valor para dispositivos móviles */
    }
}

body {
    font-family: "Inter", sans-serif;
}

h1 {
    font-size: 3rem;
    font-weight: 900;
}

h2 {
    font-size: 2.5rem;
    font-weight: 900;
}

h3 {
    font-size: 1.8rem;
    font-weight: 900;
}

h4 {
    font-size: 1.5rem;
    font-weight: 900;
}

p {
    font-size: 1rem;
    line-height: 1.8;
}

/* GENERAL */
.custom-container {
    max-width: 900px;
}

.surfaces-title {
    font-size: 3rem;
    font-weight: 900;
    text-align: center;
}

.half-orange-half-white {
    background: linear-gradient(to right, #ffffff 50%, #f74f37 50%);
    padding: 50px 0; /* Ajusta el padding según sea necesario */
}

.half-orange-half-white-reverse {
    background: linear-gradient(to right, #f74f37 50%, #ffffff 50%);
    padding: 50px 0; /* Ajusta el padding según sea necesario */
}

.half-blue-half-white {
    background: linear-gradient(to right, rgba(13, 110, 253) 50%, #ffffff 50%);
    padding: 50px 0; /* Ajusta el padding según sea necesario */
}

.half-blue-half-white-reverse {
    background: linear-gradient(to right, #ffffff 50%, rgba(13, 110, 253) 50%);
    padding: 50px 0; /* Ajusta el padding según sea necesario */
}

.landing-footer {
    background: #f74f37;
}

.navbar-items-custom {
    flex-grow: inherit;
    font-size: 16px;
}

.nav-link {
    color: black !important;
}

.sticky-top {
    position: -webkit-sticky; /* Safari */
    position: sticky;
    top: 0;
}

/* navbar */
.navbar-custom {
    background-color: white;
    width: 1200px;
}

.nav-item {
    margin-right: 10px;
    cursor: pointer;
}

.nav-link {
    padding-right: 10px;
    padding-left: 10px;
}

.active {
    background-color: #f5f5f5;
    border-radius: 8px;
}

.login-button-navbar {
    border-radius: 8px;
    /* background-color: #2c2c2c;
    color: white;
    border-color: #2c2c2c; */
    width: 10rem;
    font-size: 16px;
}

.navbar-nav {
    align-items: center;
}

@media (max-width: 768px) {
    .display-4 {
        font-size: 28px;
    } /* Reducir tamaño del título */
    .fw-light {
        font-size: 18px;
    } /* Reducir subtítulo */
    .btn-lg {
        font-size: 16px;
        padding: 8px 16px;
    } /* Hacer el botón más pequeño */
    .navbar-custom {
        border: 1px solid #e3e3e3;
    }

    .active {
        width: max-content;
    }

    .navbar-logo {
        width: 75%;
    }

    .navbar-nav {
        align-items: normal;
    }
}

#navbar-container {
    background-color: white;
    display: flex;
    justify-content: center;
}

/* hero */
.landing-hero-button {
    background-color: white;
    color: black;
    padding: 6px 38px;
    font-size: 14px;
    border: none;
    cursor: pointer;
    border-radius: 5px;
}

.landing-hero-button:hover {
    background-color: rgb(243, 242, 242);
    color: black;
}

.landing-hero-imagen {
    width: 100% !important;
    filter: blur(1px);
    max-height: 522px;
    object-fit: cover;
    object-position: center;
}

.landing-hero-image-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    text-align: center;
    width: 80%;
}

.hero-title {
    font-size: 72px;
    font-weight: 600;
    margin-bottom: 10px;
}

.hero-subtitle {
    font-size: 32px;
    margin-bottom: 20px;
    font-weight: 400;
    font-style: normal;
}

@media (max-width: 560px) {
    .hero-title {
        font-size: 1.5rem;
    }

    .hero-subtitle {
        font-size: 1.2rem;
    }

    .landing-hero-button {
        padding: 10px 20px;
    }
}

/* modules */
.module {
    padding: 20px;
    margin-bottom: 20px;
}

.modules-subtitle {
    color: #757575;
    font-size: 20px;
}

.modules-title {
    color: #1e1e1e;
    font-size: 24px;
    font-weight: 600;
}

.module-title {
    color: #1e1e1e;
    font-size: 24px;
    font-weight: 600;
    /* align-items: flex-end; */
    display: flex;
    align-items: center;
}

.module-icon {
    margin-right: 16px;
    font-size: 18px;
    color: #1d2f4f;
}

.module-subtitle {
    color: #757575;
    font-size: 16px;
    margin-left: 40px;
}

/* traffic */

#traffic-container {
    background-color: #f5f5f5;
}

.traffic-subtitle {
    color: #757575;
    font-size: 20px;
    margin-bottom: 20px;
    margin-left: 3rem;
}

.traffic-title {
    color: #1e1e1e;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-left: 3rem;
}

.traffic-p {
    font-size: 16px;
    line-height: 1.6;
    color: #1e1e1e;
    margin-left: 3rem;
}

@media (max-width: 575px) {
    .traffic-text {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center; /* Center align text on mobile */
        width: 98%; /* Adjust this value to control the width of the text container */
        max-width: 400px; /* Optional: Set a maximum width if needed */
        margin: 0 auto; /* Center the text container horizontally */
    }

    .traffic-title,
    .traffic-subtitle,
    .traffic-p {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100%; /* Ensure full width inside the .traffic-text container */
    }

    .traffic-p {
        font-size: 13px; /* Slightly increase font size for better readability */
    }
}

/* plans and pricing */
.landing-plans-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 10px;
    border: 1px solid #d9d9d9;
    height: 100%; /* Asegura que todas las cards sean de la misma altura */
}

.landing-plans-card .card-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
}

.landing-plans-card .card-body .text-center {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.landing-plans-card .card-body .text-center ul {
    flex-grow: 1;
}

.row-plans {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.landing-plans-btn-primary,
.landing-plans-btn-secondary {
    font-size: 16px;
    margin-top: auto; /* Asegura que el botón esté en la parte inferior */
}

.landing-plans-btn-primary {
    color: #2c2c2c;
}

.landing-plans-btn-primary span {
    color: #f5f5f5;
}

.landing-plans-card-secondary {
    background-color: #2c2c2c; /* Cambia el color de fondo */
    color: #f5f5f5; /* Cambia el color del texto */
}

.landing-plans-card-secondary .card-body {
    color: #f5f5f5; /* Asegura que todo el contenido dentro de card-body tenga el color de texto deseado */
}

.landing-plans-btn-secondary {
    background-color: #e3e3e3;
    color: #1e1e1e;
    border-color: #767676;
}

.landing-plans-card-secondary-li {
    color: #f5f5f5 !important;
}

.pricing-content li.landing-plans-card-secondary-li:before {
    color: #f5f5f5; /* Cambia el color del icono a F5F5F5 */
}

.pricing-content li {
    color: #757575;
    font-size: 16px;
}

.nav-link-plans {
    cursor: pointer;
    font-size: 16px !important;
    color: #1e1e1e !important;
}

@media (max-width: 768px) {
    .pricing-content {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        align-content: center;
    }
    .col-md-6 {
        margin-bottom: 1rem; /* Add margin-bottom for mobile devices */
    }
}

.landing-plans-card-title,
.landing-plans-card-secondary-title {
    font-size: 24px;
    font-weight: 600 !important;
}

.landing-plans-card-price,
.landing-plans-card-price-secondary {
    font-weight: 600 !important;
    font-size: 48px;
}

.landing-plans-card-title,
.landing-plans-card-price {
    color: #1e1e1e;
}

.landing-plans-card-secondary-title,
.landing-plans-card-price-secondary {
    color: #f5f5f5 !important;
}

/* reviews */
.reviews-subtitle {
    color: #757575;
    font-size: 36px;
}

.reviews-title {
    color: #1e1e1e;
    font-size: 40px;
    font-weight: 600;
}

.landing-reviews-card {
    border-radius: 10px;
    border: 1px solid #d9d9d9;
}

.landing-hero-button:hover {
    background-color: rgb(243, 242, 242);
    color: black;
}

.review-message {
    color: #757575;
    font-size: 24px;
    font-weight: 600;
}

.review-title {
    color: #757575;
    font-size: 16px;
    font-weight: 600;
}

.review-subtitle {
    color: #b3b3b3;
    font-size: 16px;
}

/* faqs */
.faqs-title {
    color: #1e1e1e !important;
    font-size: 32px;
    font-weight: 400;
}

.faqs-subtitle {
    color: #757575;
    font-size: 20px;
}

.landing-faqs-question {
    font-size: 16px;
    color: #1e1e1e !important;
    font-weight: 600;
}

.landing-faqs-answer {
    font-size: 16px;
    color: #1e1e1e !important;
}

/* Footer Styles */
.footer-section {
    background-color: #ffffff;
    border-top: 1px solid #eaeaea;
}

/* Title styling - you can modify these classes later */
.footer-title {
    font-size: 16px;
    font-weight: 600;
    color: #1e1e1e;
}

/* Link styling */
.footer-link {
    color: #1e1e1e;
    text-decoration: none;
    font-size: 16px;
    line-height: 2;
    transition: color 0.3s ease;
}

.footer-link:hover {
    color: #000;
}

.footer-logo {
    width: 70%;
}

/* Social icons styling */
.social-icons a {
    color: #333;
    font-size: 20px;
    transition: color 0.3s ease;
}

.social-icons a:hover {
    color: #0077b5;
}

/* Custom B icon for the logo */
.fa-square-b {
    font-size: 28px;
    color: #000;
}

/* surface */

.surface-subtitle {
    color: #757575;
    font-size: 20px;
    margin-bottom: 20px;
    margin-left: 3rem;
}

.surface-title {
    color: #1e1e1e;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-left: 3rem;
}

.surface-p {
    font-size: 16px;
    line-height: 1.6;
    color: #1e1e1e;
    margin-left: 3rem;
}

#surface-container {
    background-color: #f5f5f5;
}

@media (max-width: 575px) {
    .surface-text {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center; /* Center align text on mobile */
        width: 98%; /* Adjust this value to control the width of the text container */
        max-width: 400px; /* Optional: Set a maximum width if needed */
        margin: 0 auto; /* Center the text container horizontally */
    }

    .surface-title,
    .surface-subtitle,
    .surface-p {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100%; /* Ensure full width inside the .surface-text container */
    }

    .surface-p {
        font-size: 13px; /* Slightly increase font size for better readability */
    }
}

/* plans-pricing */
.plan-pricing-hero-title {
    font-size: 48px;
    font-weight: 600;
    margin-bottom: 10px;
}

.plan-pricing-hero-subtitle {
    font-size: 32px;
    margin-bottom: 20px;
    font-weight: 400;
    font-style: normal;
}

.plan-pricing-hero-imagen {
    width: 100% !important;
    filter: blur(1px);
    max-height: 424px;
    object-fit: cover;
    object-position: center;
}

.plan-pricing-hero-image-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    text-align: center;
    width: 80%;
}
@media (max-width: 560px) {
    .plan-pricing-hero-title {
        font-size: 1.5rem;
    }

    .plan-pricing-hero-subtitle {
        font-size: 1.2rem;
    }

    .plan-pricing-hero-button {
        padding: 10px 20px;
    }
}
