/* ========================================
    VARIABLES
======================================== */

:root {
    --fda-font-primary: 'Hanken Grotesk', sans-serif;
    --fda-font-secondary: 'Fira Code', 'Hanken Grotesk', sans-serif;
    --fda-principal-white: #EFF2F8;
    --fda-secondary: #04003F;
    --fda-secondary-light: #04166C;
    --fda-light-principal: #F4E9D3;
    --fda-principal: #ECA51A;
    --fda-white: #FFFFFF;
    --fda-white-grey: #F5F5F5;
    --fda-light-grey: #C3C6C9;
    --fda-grey: #5B646C;
    --fda-deep-grey: #2E3439;
    --fda-border-color: #E5E5E5;
    --fda-code-color: #607B96;
    --fda-blue: #0056FC;
    --fda-light-purple: #DED6F3;
    --fda-purple: #5A22F5;
    --fda-orange: #FF472D;
    --fda-light-green: #EDFAF6;
    --fda-green: #08C78F;
    --fda-white-aqua: #E9F8F8;
    --fda-aqua: #00ABB0;
    --fda-creamy: #F09769;
    --fda-light-creamy: #FAF0EB;
    --fda-black-aqua: #003234;
    --fda-deep-aqua: #007377;
    --fda-grey30: #E5E5E5;
    --fda-grey50: #A0A0A0;
    --fda-auxiliar-blue: #0056FC;
    --fda-auxiliar-green: #08C78F;
    --fda-auxiliar-purple: #5A22F5;
    --fda-auxiliar-aqua: #00ABB0;
    --fda-auxiliar-creamy: #F09769;
    --fda-background_aqua: #E9F8F8;
    --fda-background_creamy: #FAF0EB;
    --fda-shadow-principal: 0 -2.4px 0 0 rgba(3, 1, 34, 0.10) inset, 0 6px 32px 0 rgba(3, 1, 34, 0), 0 1px 4px 0 rgba(3, 1, 34, 0.20), 0 0 2px 0 rgba(0, 0, 0, 0.20);
    --fda-shadow-circle: 0px 10px 6px 0px rgba(0, 0, 0, 0.06), 0px 4px 2px 0px rgba(0, 0, 0, 0.03), 0px 0px 2px 0px rgba(0, 22, 44, 0.20), 0px -2.4px 0px 0px rgba(0, 0, 0, 0.04) inset;
    --fda-shadow-hover: 0 -2.4px 0 0 rgba(3, 1, 34, 0.10) inset, 0 6px 32px 0 rgba(3, 1, 34, 0.30), 0 1px 4px 0 rgba(3, 1, 34, 0.20), 0 0 2px 0 rgba(0, 0, 0, 0.20);
    --fda-shadow-box: 0px 6px 32px 0px rgba(3, 1, 34, 0.10), 0px 1px 4px 0px rgba(3, 1, 34, 0.10), 0px -2.4px 0px 0px #E5E5E5 inset, 0px 0px 2px 0px rgba(3, 1, 34, 0.10);
    --fda-shadow-infoblock: 0px 24px 64px 0px rgba(31, 9, 66, 0.20);
    --fda-shadow-form: 0px 6px 32px 0px rgba(3, 1, 34, 0.10), 0px 1px 4px 0px rgba(3, 1, 34, 0.10), 0px 0px 2px 0px rgba(3, 1, 34, 0.10), 0px -2.4px 0px 0px #E5E5E5 inset;
}

/* ========================================
    GENERAL
======================================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    font-family: var(--fda-font-primary);
    font-size: 1rem;
    line-height: 1.375rem;
    color: var(--fda-deep-grey);
}
a {
    text-decoration: none;
}
li {
    list-style: none;
}

/* ========================================
    VARIABLES
======================================== */

.fda_text_center {
    text-align: center;
    justify-content: center;
    align-items: center;
}

.fda_nomargin {
    margin: 0px;
}

.fda_mb4 {
    margin-bottom: 4px;
}

.fda_mb16 {
    margin-bottom: 16px;
}

.fda_mb25 {
    margin-top: -25px;
}

.d_none {
    display: none;
}

.noshrink {
    flex-shrink: 0;
}

/* ========================================
    TEXTOS
======================================== */

.large_title {
    font-size: 3.5rem;
    font-weight: 900;
    line-height: 3.75rem;
    margin-bottom: 1rem;
}

.large_title_48 {
    font-size: 3rem; /* 48px */
    font-weight: 900;
    line-height: 3.25rem;
    margin-bottom: 1rem;
}
.fda_title1 {
    font-family: var(--fda-font-primary);
    font-size: 3rem;
    font-style: normal;
    font-weight: 900;
    line-height: 3.25rem;
    margin-bottom: 1rem;
}
.fda_title2 {
    font-family: var(--fda-font-primary);
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 900;
    line-height: 2.75rem;
    margin-bottom: 1rem;
}
.fda_title3 {
    font-family: var(--fda-font-primary);
    font-size: 2rem;
    font-style: normal;
    font-weight: 900;
    line-height: 2.375rem;
    margin-bottom: 1rem;
}
.fda_title4 {
    font-family: var(--fda-font-primary);
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 900;
    line-height: 1.625rem;
    margin-bottom: 1rem;
}
.fda_title5 {
    font-family: var(--fda-font-primary);
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 900;
    line-height: 1.375rem;
    margin-bottom: 0.5rem;
}
.fda_title6 {
    font-family: var(--fda-font-primary);
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.fda_text__med {
    font-family: var(--fda-font-primary);
    font-size: 0.938rem;
    font-weight: normal;
    line-height: 1.188rem;
}

.fda_text__15 {
    font-family: var(--fda-font-primary);
    font-size: 0.9375rem; /* 15px */
    font-weight: normal;
    line-height: 1.25rem;
}

.fda_text__small {
    font-family: var(--fda-font-primary);
    font-size: 0.875rem;
    font-weight: normal;
    line-height: 1.188rem;
}
.fda_text__tiny {
    font-family: var(--fda-font-primary);
    font-size: 0.75rem;
    font-weight: normal;
    line-height: 0.813rem;
}

.fda_icon__18 {
    font-size: 1.125rem; /* 18px */
}

.fda_icon__16 {
    font-size: 1rem; /* 16px */
}
.fda_code__text {
    color: var(--fda-code-color);
    font-family: var(--fda-font-secondary);
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 450;
    line-height: 1.5rem;
}
.fda_code__text__card {
    color: var(--fda-code-color);
    font-family: var(--fda-font-secondary);
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 450;
}
.fda_text__italic {
    margin-top: 30px;
    font-family: var(--fda-font-primary);
    color: var(--fda-font-secondary);
    font-weight: bold;
    line-height: 1.40rem;
    font-style: italic;
}

/* ========================================
    COLORES
======================================== */

.text_primary {
    color: var(--fda-principal);
}
.text_secondary {
    color: var(--fda-secondary);
}
.text_blue {
    color: var(--fda-blue);
}
.text_green {
    color: var(--fda-green);
}
.text_purple {
    color: var(--fda-purple);
}
.text_orange {
    color: var(--fda-orange);
}
.text_white {
    color: var(--fda-white);
}

.text_grey {
    color: var(----fda-grey);
}
.text_code {
    color: var(--fda-code-color);
}
.fda_link__primary {
    color: var(--fda-principal);
}
.fda_link__primary:hover {
    color: var(--fda-secondary);
}

.text_aqua {
    color: var(--fda-aqua);
}

.text_creamy {
    color: var(--fda-creamy);
}

/* ========================================
    BOTONES
======================================== */

.fda_button {
    align-items: center;
    border: none;
    border-radius: 50px; 
    box-shadow: var(--fda-shadow-principal);
    cursor: pointer;
    display: flex;
    font-family: var(--fda-font-primary);
    font-weight: 700;
    font-size: 1rem;
    gap: 8px;
    justify-content: center;
    padding: 10px 16px;
    transition: all 0.3s ease; 
}
.fda_button:hover {
    box-shadow: var(--fda-shadow-hover);
}
.fda_button__secondary {
    background-color: var(--fda-secondary);
    color: var(--fda-white) !important;
}
.fda_button__secondary:hover  {
    background-color: var(--fda-secondary-light);
    color: var(--fda-white) !important;
}

.fda_button__alternative {
    background-color: #04166C;
    color: var(--fda-white) !important;
}

.fda_button__alternative:hover {
        background-color: var(--fda-secondary-light);
        color: var(--fda-white) !important;
}

.fda_button__white_bg {
    background-color: transparent !important;
    color: var(--fda-white) !important;
    border-radius: 100px;
    border: 1px solid var(--fda-white) !important;
    box-shadow: 0 -2.4px 0 0 rgba(8, 70, 72, 0.04) inset, 0 6px 32px 0 rgba(8, 70, 72, 0.20), 0 1px 4px 0 rgba(8, 70, 72, 0.10), 0 0 2px 0 rgba(8, 70, 72, 0.10);
}
.fda_button__white_bg:hover {
    background-color: var(--fda-white) !important;
    color: var(--fda-secondary) !important;
    border: 1px solid var(--fda-white) !important;
}
.fda_button__white {
    background-color: var(--fda-white) !important;
    color: var(--fda-secondary) !important;
    border: 1px solid transparent;
}
.fda_button__white:hover {
    background-color: transparent !important;
    border: 1px solid var(--fda-white) !important;
    color: var(--fda-white) !important;
}
.fda_button__aqua {
    background-color: var(--fda-aqua) !important;
    color: var(--fda-white) !important;
}

.fda_button__creamy {
    background-color: var(--fda-creamy) !important;
    color: var(--fda-white) !important;
}

.fda_button__aqua:hover {
    background-color: var(--fda-deep-aqua) !important;
    color: var(--fda-white) !important;
}

.fda_button__creamy:hover {
    background-color: #e0855a !important;
    color: var(--fda-white) !important;
}

/* Estilos específicos para el botón del hero - solo en price_button_container */
.herodark .price_button_container .fda_button__aqua {
    background-color: var(--fda-aqua) !important;
    color: var(--fda-white) !important;
}

.herodark .price_button_container .fda_button__creamy {
    background-color: var(--fda-creamy) !important;
    color: var(--fda-white) !important;
}

.herodark .price_button_container .fda_button__aqua:hover {
    background-color: var(--fda-deep-aqua) !important;
    color: var(--fda-white) !important;
}

.herodark .price_button_container .fda_button__creamy:hover {
    background-color: #e0855a !important;
    color: var(--fda-white) !important;
}

.fda_button__code {
    align-items: center;
    background-color: var(--fda-white-grey);
    border: 1px solid var(--fda-border-color);
    border-radius: 50px; 
    color: var(--fda-secondary);
    cursor: pointer;
    display: flex;
    font-family: var(--fda-font-primary);
    font-size: 0.938rem;
    font-weight: 700;
    gap: 8px;
    justify-content: center;
    padding: 6px 12px;
    transition: all 0.3s ease;
}
.fda_button__code:hover {
    background-color: var(--fda-secondary);
    color: var(--fda-white);
}
.fda_button__link {
    align-items: center;
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    font-family: var(--fda-font-primary);
    font-size: 1rem;
    font-weight: 700;
    gap: 4px;
    justify-content: center;
    transition: all 0.3s ease;
}

.fda_button__link span {
    text-decoration: underline;
}
.fda_button__link-secondary {
    color: var(--fda-secondary);
}
.fda_button__link-secondary:hover {
    color: var(--fda-secondary-light); 
}
.fda_button__link-white {
    color: var(--fda-white);
}
.fda_button__link-white:hover {
    color: var(--fda-principal);
}
.fda_button .fa-arrow-right,
.fda_button__link .fa-arrow-right,
.fda_button__code .fa-arrow-right {
    transform: rotate(-45deg);
}
.fda_button__hero {
	background-color: var(--fda-white);
	color: black;
	border: none;
	border-radius: 100px;
	font-weight: 500;
	cursor: pointer;
	transition: background-color 0.3s ease;
}
.fda_button__hero:hover {
	background-color: #f5f5f5;
	color: black;
}
.fda_button__black {
	background-color: #000000;
	color: var(--fda-white);
	border: none;
	border-radius: 100px;
	font-weight: 500;
	cursor: pointer;
	transition: background-color 0.3s ease;
	text-decoration: none;
	display: inline-block;
}
.fda_button__black:hover {
	background-color: #333333;
	color: var(--fda-white);
}
.fda_button__black.disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.fda_button__fullwidth {
	width: 100%;
}

/* ========================================
    CONTAINER
======================================== */

section {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 72px;
}
.fda_section__title {
    padding: 48px 0px 40px 0px !important;
}
.fda_section__content {
    max-width: 1200px;
    padding: 0px 16px;
    width: 100%;
    margin: 0 auto;
}
.fda_breadcrums {
    display: flex;
    flex-direction: row;
    gap: 16px;
    margin-bottom: 24px;
}


.fda_section__two-columns_without-padding {
    display: grid;
    grid-template-columns: 1fr 0fr;
    gap: 76px;
    max-width: 1200px;
}

.hero {
    padding: 24px 0 64px;
}

.fda_section_dark__background {
    background-image: url(../assets/images/fondocoding.jpg);
    background-size: cover;
    background-position: center;
    color: white;
    padding: 100px 0px;
}
.fda_center_title {
    padding: 48px 0px 40px 0px;
}
.fda_section__column__box > *:not(:last-child) {
    margin-bottom: 24px;
}
.intro > .fda_section__content > .fda_section__column__box {
    gap: 64px;
}
.fda_align_center {
    align-items: center;
}

.fda_info__block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    gap: 0.5rem;
}

.fda_card__panel {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-rows: auto;
    gap: 12px;
    position: relative;
}

.fda_block__primary {
    color: white;
    background-color: var(--fda-secondary);
    border-radius: 1rem;
    padding: 40px 40px
}

.fda_tittle__block, fda_section__block {
    text-align: center;
    padding-bottom: 80px;
    max-width: 1200px;
}

.fda_section__block {
    padding: 80px;
    max-width: 1200px;
    border-radius: 16px;
}

.fda_section__block h2 {
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--fda-secondary);
    margin-top: 1rem;
}

.fda_title__descriptions {
    display: flex;
    flex-direction: column;
    max-width: 800px;
    margin: 0 auto;
}

.content_padding {
    padding: 1.5rem;
}

.fda_center__box {
    margin: 0 auto;
}

.fda_buttons__panel {
    display: flex;
    gap: 32px;
    flex-direction: row;
    align-items: center;
}

.fda_social__proof {
    display: flex;
    flex-flow: row nowrap;
}



.fda_card__content{
    display: flex;
    flex-direction: row;
    gap:26px;
    text-align: left;
}

.relative_container {
    position: relative;
}

.fda_grid__2x2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 24px;
}
.contacto .fda_breadcrums {
    justify-content: flex-start;
    margin-bottom: 8px;
}

/* ========================================
    CUADROS DE INFO EN IMÁGENES
======================================== */

.fda_image__container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex: 1 0 0;
    border-radius: 16px;
}

.fda_image__hero_container {
    display: flex;
    height: 490px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex: 1 0 0;
    border-radius: 16px;
}


.fda_image__container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}

/* Imágenes en secciones de dos columnas que ocupen todo el alto */
.margin-columns .fda_image__container {
    height: 100%;
    display: flex;
    align-items: stretch;
}

.margin-columns .fda_image__container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fda_image__hero_container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}

.fda_image_fluid {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.image_info__square{
    position: absolute;
    background-color: white;
    padding: 16px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
    opacity: 1;
    color: var(--fda-grey);
    max-width: 140px;
    z-index:20;
}

.benefits .image_info__square i {
    margin-bottom: 8px;
    font-size: 1.2rem;
}

/* ========================================
    SELECCIONAMOS LA ESQUINA QUE QUEREMOS SIN REDONDEO
======================================== */

.info_square__topleft {
    border-radius: 0px 16px 16px 16px;
}
.info_square__topright {
    border-radius: 16px 0px 16px 16px;
}
.info_square__botleft {
    border-radius: 16px 16px 16px 0px;
}
.info_square__botright {
    border-radius: 16px 16px 0px 16px;
}

/* ========================================
CIRCULOS CON ICONO
======================================== */

.fda_circle {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 1.5rem;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}
.fda_circle_xs {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 0.6rem;
}
.fda_circle_s {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 0.875rem;
}
.fda_circle_xl {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 2em;
}
.fda_circle__socialproof {
    width: 50px;
    height: 50px;
    margin-left: -20px;
    font-size: 14px;
    font-weight: bold;
}
.fda_circle__blue {
    background-color: var(--fda-auxiliar-blue);
}
.fda_circle__green {
    background-color: var(--fda-auxiliar-green);
}
.fda_circle__orange {
    background-color: var(--fda-orange);
}

.fda_circle__purple {
    background-color: var(--fda-auxiliar-purple);
}
.fda_circle__secondary {
    background-color: var(--fda-secondary);
}
.fda_circle__primary {
    background-color: var(--fda-principal);
}
.fda_circle__aqua {
    background-color: var(--fda-aqua);
}
.fda_circle__creamy {
    background-color: var(--fda-creamy);
}
.fda_circle__white {
    background-color: white;
    color: var(--fda-secondary);
}
.fda_circle__disable {
    background-color: var(--fda-grey50);
}
.fda_circle__grey {
    background-color: var(--fda-light-grey);
    color: var(--fda-secondary);
    font-size: 1rem;
    font-weight: 700;
}
.fda_circle__social {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    background-color: var(--fda-secondary);
    cursor: pointer;
    transition: background-color 0.3s ease;
}
.fda_circle__social:hover {
    background-color: var(--fda-secondary);
}


/* ========================================
    LISTADOS
======================================== */

.fda_list__numbers__item {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: 16px;
    align-items: flex-start;
    margin-top: 2.4rem;
    position: relative;
}


.fda_list__numbers__box::after {
    content: "";
    width: 2px;
    height: 100%;
    background-color: var(--fda-grey30);
    position: absolute;
    z-index: 0;
    top: 35px;
    left: 15px;
}

.fda_list__numbers__item:last-child > .fda_list__numbers__box::after {
    content: "";
    width: 2px;
    height:0;
    background-color: var(--fda-grey30);
    position: absolute;
    z-index: 0;
    top: 35px;
    left: 15px;
}

/* ========================================
    FORMULARIO DE CONTACTO
======================================== */

/* CONFIRMACION */
.confirmation-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0 auto;
}

.confirmation-card {
    background-color: #F5F5F5;
    border-radius: 16px;
    padding: 24px;
    width: 572px;
    height: 596.3px;
    box-shadow: var(--fda-shadow-form);
    position: relative;
    margin: 0 auto;
    z-index: 30;
}

.card-header {
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
    margin-bottom: 10px;
    gap: 12px;
}

.card-title {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #000000;
    margin: 0;
}

.card-subtitle {
    font-family: 'Fira Code', monospace;
    font-size: 14px;
    color: #607B96;
    margin: 0;
}

.inner-card {
    background-color: white;
    border-radius: 16px;
    padding: 16px;
    border: 1px solid var(--fda-border-color);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 24px;
    height: 514.3px;
    flex: 1;
}

.success-icon {
    text-align: center;
    margin-bottom: 24px;
    color: #28a745;
}

.confirmation-message {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 32px;
    color: #000000;
    font-weight: bold;
    text-align: center;
    margin-bottom: 16px;
    line-height: 1.3;
}

.confirmation-note {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 15px;
    color: var(--fda-grey);
    margin-bottom: 32px;
    line-height: 1.4;
    font-weight: 400;
    max-width: 500px;
}

.fda_social__proof img {
    border-radius:50%;
    width: 50px;
    height: 50px;
    margin-left: -16px;
}


.fda_codebox {
    justify-self: start;
}

.back_info_card {
    background: white;
    border-radius: 12px;
    padding: 20px;
    	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: flex-start;
    gap: 15px;
    max-width: 280px;
    position: absolute;
}

.back_info_card .icon_container {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.back_info_card .icon_container i {
    color: white;
    font-size: 10px;
}

.back_info_card .content {
    flex: 1;
}

.back_info_card .title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
    color: #333;
}

.back_info_card .description {
    font-size: 15px;
    color: #666;
    line-height: 1.4;
}

.price_button_container {
    display: flex;
    align-items: center;
    gap: 170px;
    justify-content: space-between;
}

/* Responsive para price_button_container */
@media (max-width: 1200px) {
    .price_button_container {
        gap: 120px;
    }
}

@media (max-width: 992px) {
    .price_button_container {
        gap: 80px;
    }
}

@media (max-width: 768px) {
    .price_button_container {
        gap: 40px;
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 480px) {
    .price_button_container {
        gap: 20px;
    }
}

.fda_button__back {
    background-color: #00abb0;
    color: var(--fda-white);
    align-items: center;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    display: flex;
    font-family: var(--fda-font-primary);
    font-weight: 700;
    font-size: 1rem;
    gap: 8px;
    justify-content: center;
    padding: 10px 16px;
    transition: all 0.3s ease;
}

.fda_button__back:hover {
    background-color: #2DBDC1;
    color: var(--fda-white);
}


/* Layout con cards superpuestas sobre la imagen */
.hero_image_with_cards {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 600px;
    margin: 0 auto;
}

.hero_image_with_cards .fda_image__hero_container {
    position: relative;
    z-index: 1;
    width: 100%;
}

.hero_image_with_cards .back_info_card {
    position: absolute;
    z-index: 10;
    max-width: 280px;
}

/* Posicionamiento de las cards sobre la imagen */
.hero_image_with_cards .back_info_card:nth-of-type(1) {
    top: 20px;
    left: -40px;
}

.hero_image_with_cards .back_info_card:nth-of-type(2) {
    top: 20px;
    right: -40px;
}

.hero_image_with_cards .back_info_card:nth-of-type(3) {
    bottom: 20px;
    left: -40px;
}

.hero_image_with_cards .back_info_card:nth-of-type(4) {
    right: -40px;
}

/* Responsive para móviles */
@media (max-width: 768px) {
    .hero_image_with_cards {
        flex-direction: column;
        max-width: 100%;
    }
    
    .hero_image_with_cards .back_info_card {
        position: static;
        max-width: 100%;
        margin: 10px 0;
    }
    
    .hero_image_with_cards .back_info_card:nth-of-type(1),
    .hero_image_with_cards .back_info_card:nth-of-type(2),
    .hero_image_with_cards .back_info_card:nth-of-type(3),
    .hero_image_with_cards .back_info_card:nth-of-type(4) {
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
    }
}

.relative_container .back_info_card:nth-of-type(1) .icon_container {
    background-color: #EF5350;
}

.relative_container .back_info_card:nth-of-type(2) .icon_container {
    background-color: #0056FC;
}

.relative_container .back_info_card:nth-of-type(3) .icon_container {
    background-color: #673AB7;
}

.relative_container .back_info_card:nth-of-type(4) .icon_container {
    background-color: #00BFA6;
}

.fda_codebox {
    justify-self: start;
}


.ux_info_card {
    background: white;
    border-radius: 12px;
    padding: 20px;
    	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: flex-start;
    gap: 15px;
    max-width: 280px;
    position: absolute;
}

.ux_info_card .icon_container {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ux_info_card .icon_container i {
    color: white;
    font-size: 10px;
}

.ux_info_card .content {
    flex: 1;
}

.ux_info_card .title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
    color: #333;
}

.ux_info_card .description {
    font-size: 15px;
    color: #666;
    line-height: 1.4;
}


.fda_button__ux {
    background-color: #F09769;
    color: var(--fda-white);
}

.fda_button__ux:hover {
    background-color: #e0855a;
    color: #030122;
}



/* ========================================
    POSICIONAMIENTO ESPECÍFICO DE LAS CARDS
======================================== */

.relative_container .ux_info_card:nth-of-type(1) {
    top: 4px;
    left: -30px;
}

.relative_container .ux_info_card:nth-of-type(2) {
    top: 89px;
    right: -25px;
}

.relative_container .ux_info_card:nth-of-type(3) {
    bottom: 89px;
    right: -25px;
}

.relative_container .ux_info_card:nth-of-type(4) {
    bottom: 89px;
    left: -45px;
}

/* ========================================
    COLORES DE LOS ICONOS DE LAS CARDS
======================================== */

.relative_container .ux_info_card:nth-of-type(1) .icon_container {
    background-color: #EF5350;
}

.relative_container .ux_info_card:nth-of-type(2) .icon_container {
    background-color: #EF5350;
}

.relative_container .ux_info_card:nth-of-type(3) .icon_container {
    background-color: #673AB7;
}

.relative_container .ux_info_card:nth-of-type(4) .icon_container {
    background-color: #00BFA6;
}

/* ========================================
    INFOBOX
======================================== */

.infobox-card-content {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}


.infobox-info-item {
    flex: 1 1 45%;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    margin-bottom: 12px;
}

.infobox-info-item span {
    color: #6B7280;
    font-size: 14px;
    font-weight: 400;
    font-family: 'Fira Code', monospace;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 6px;
}
 
.infobox-info-item p {
    text-decoration: none;
    margin: 0;
    font-size: 0.875rem;
    font-weight: 400;
    font-family: 'Fira Code', monospace;
}

.infobox-card-content {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.infobox-info-item {
    flex: 1 1 45%;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    margin-bottom: 12px;
}

.infobox-info-item span {
    color: #6B7280;
    font-size: 14px;
    font-weight: 400;
    font-family: 'Fira Code', monospace;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.infobox-info-item span i {
    font-size: 16px;
}

.master-content-aqua{
    padding-top: 0;
}
/* ========================================
    INSCRIPCION
======================================== */
.inscription {
    background-color: var(--fda-principal-white);
    text-align: center;
}

.fda_inscription__card__container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: left;
}

.fda_inscription__card__circle {
    margin-bottom: 24px;
}

.fda_circle_highlight {
    background-color: var(--fda-white);
    box-shadow: var(--fda-shadow-circle);
    color: var(--fda-light-grey);
    transition: background-color 0.3s ease-in-out;
}

.fda_inscription__bar {
    width: 100%;
    height: 1px;
    background-color: var(--fda-light-grey);
    position: absolute;
    z-index: 0;
    top: 40px;
    left: 0;
}

.fda_inscription__card {
    background-color: #fff;
    border-radius: 10px;
    border-bottom: 3px solid var(--fda-light-grey);
    padding: 24px 16px;
    width: 100%;
    height: 100%;
    transition: transform 0.2s ease-in-out;
    display: flex;
    flex-direction: row;
    gap: 12px;
}

.fda_inscription__card .fda_title6 {
    margin-bottom: 8px;
}

.fda_inscription__card__container:hover .fda_inscription__card {
    border-color: var(--fda-principal);
    transform: translateY(-5px);
    box-shadow: var(--fda-shadow-hover);
}

.fda_inscription__card__container:hover .fda_circle_highlight {
    background-color: var(--fda-principal);
    color: var(--fda-white);
}

.fda_inscription__card__circle:hover {
    opacity: 1;
}

/* ========================================
    INTRO
======================================== */

.intro {
    background-color: var(--fda-principal-white);
    margin-top: 36px;
}
.intro .fda_section__two-columns {
    margin-bottom: 32px;
}
.fda_intro__card {
    background-color: #fff;
    border-radius: 10px;
    border-bottom: 3px solid var(--fda-principal);
    color: var(--fda-grey);
    padding: 32px 24px;
    transition: transform 0.3s ease-in-out;
}

.fda_intro__card .fda_circle {
    margin-bottom: 12px;
}
.fda_card__content {
    display:flex;
    gap: 8px;
}



/* ========================================
    TEST DIVERTIDO
======================================== */


/* ========================================
    OFERTA DE CURSOS
======================================== */

.offer_card__panel {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    max-width: 800px;
    padding: 0 16px;
    gap: 24px;
    margin: 0 auto;
}

.formation_offer {
    padding-top:0;
}

.offer_card__container {
    border-radius: 16px;
    border: 1px solid var(--fda-border-color);
}

.offer_frontend {
    border: 1px solid var(--fda-auxiliar-aqua);
    background-color: var(--fda-background_aqua);
}

.offer_backend {
    border: 1px solid var(--fda-auxiliar-creamy);
    background-color: var(--fda-background_creamy);
}

.offer_card__content{
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 16px;
}


.offer_card__image img {
    width: 100%;
    border-radius: 8px;
    object-fit: cover;
    object-position: center;
}

.offer_course__name {
    width: 100%;
    font-size: 1.1rem;
    font-weight: 600;
}




.offer_card__body__text {
    font-size: 0.8rem;
    border-radius: 8px;
    background-color: var(--fda-white-grey);
    border: 1px solid var(--fda-border-color);
    padding: 8px 12px;
}

.offer_card__footer {
    border-top: 1px solid var(--fda-border-color);
}

.offer_frontend .offer_card__footer {
    border-top: 1px solid var(--fda-auxiliar-aqua);
}

.offer_backend .offer_card__footer {
    border-top: 1px solid var(--fda-auxiliar-creamy);
}


.offer_footer__block {
    display: inline-block;
    padding: 8px 12px;
    margin-left: 4px;

}

.offer_footer__block__middle {
    display: inline-block;
    border-left: 1px solid var(--fda-border-color);
    border-right: 1px solid var(--fda-border-color);
    padding: 8px 12px;
}

.offer_frontend .offer_footer__block__middle {
    border-left: 1px solid var(--fda-auxiliar-aqua);
    border-right: 1px solid var(--fda-auxiliar-aqua);
}

.offer_backend .offer_footer__block__middle {
    border-left: 1px solid var(--fda-auxiliar-creamy);
    border-right: 1px solid var(--fda-auxiliar-creamy);
}

.offer_card__tools {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
}

.offer_tools__icons {
    display: flex;
    flex-direction: row;
    gap: 12px;
    font-size: 24px;
    margin-top: 8px;

}

.offer_card__tools button {
    box-shadow: none;
}

.offer_card__footer i {
    margin-right: 4px;
}

@media (max-width: 768px) {
    .offer_card__panel {
        grid-template-columns: 1fr;

    }
}














/* ========================================
    RESTO SIN REVISAR
======================================== */

#boton_mini_conocenos {
    font-size: 1.5rem;
    background-color: white;
    color: var(--fda-secondary);
}

#boton_mini_conocenos {
    display: none;
}

#boton_mini_conocenos {
    font-size: 1.5rem;
    background-color: white;
    color: var(--fda-secondary);
}

#boton_mini_conocenos {
    display: none;
}

#boton_conocenos_menu {
    display: flex;
}

.image_info__square .fda_title6 {
    font-size: 15px;
}

.info_square__botleft {
    top: 89px;
    right: -45px;
}

.info_square__topleft {
    bottom: -5px;
    right: -25px;
}

.info_square__topright {
    bottom: 73px;
    left: -45px;
}

.info_square__botright {
    top: 34px;
    left: -61px;
}

/* blue_block */

.intro_conocenos {
    max-width: 1100px;
    border-radius: 16px;
    padding-top: 0px;
    background-color: #EFF2F8;
    margin: 0 auto;
}

.fda_blue_container__intro{
    padding: 0 0 40px 0;
}
/* Estilos para las tarjetas ux_info_card */
.ux_info_card {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: flex-start;
    gap: 15px;
    max-width: 280px;
    position: absolute;
}

.ux_info_card .icon_container {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ux_info_card .icon_container i {
    color: white;
    font-size: 14px;
}

.ux_info_card .content {
    flex: 1;
}

.ux_info_card .title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
    color: #333;
}

.ux_info_card .description {
    font-size: 15px;
    color: #666;
    line-height: 1.4;
}

/* Estilos para las tarjetas back_info_card */
.back_info_card {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: flex-start;
    gap: 15px;
    max-width: 280px;
    position: absolute;
}

.back_info_card .icon_container {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.back_info_card .icon_container i {
    color: white;
    font-size: 14px;
}

.back_info_card .content {
    flex: 1;
}

.back_info_card .title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
    color: #333;
}

.back_info_card .description {
    font-size: 15px;
    color: #666;
    line-height: 1.4;
}

.fda_blue__container {
    display: flex;
    flex-direction: column;
    max-width: 1000px;
    border-radius: 16px;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 40px;
    margin: 0 auto;
}


.fda_blue__block__body {
    display: flex;
    flex-direction: column;
    max-width: 95%;
    background-color: var(--fda-white);
    border-radius: 16px;
    justify-content: center;
    padding: 0px 24px 24px 24px;
    box-shadow: var(--fda-shadow-box);
}


.blue_column__container {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    flex: 1;
    justify-content: center;
    align-items: flex-start;
}

.blue_column__container li{
    margin-bottom: 16px;
}

.blue_column__container li i {
    margin-right: 8px;
}

/* Alineación específica para los iconos en las secciones de dos columnas */
.margin-columns .blue_column__container .fda_circle {
    align-self: flex-start;
    margin-bottom: 16px;
}

/* Estilos específicos para la página "Por qué elegirnos" - imágenes del mismo tamaño */
.intro_conocenos .margin-columns .fda_image__container {
    height: 400px;
    min-height: 400px;
    max-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.intro_conocenos .margin-columns .fda_image__container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Padding específico para textos cuando están a la derecha */
.intro_conocenos .margin-columns .blue_column__container:last-child {
    padding-left: 32px;
}

/* Padding específico para textos cuando están a la izquierda */
.intro_conocenos .margin-columns .blue_column__container:first-child {
    padding-right: 32px;
}

.blue_image__container {
    display: flex;
    align-items: stretch;
    overflow: hidden;
    border-radius: 16px;
    height: 100%;
    flex: 1;
}

.fda_blue__block__image {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.fda_blue__block__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* CodeBox Right UX */

.fda_code__button {
    border: 1px solid var(--fda-grey30);
    padding: 8px 16px;
    border-radius: 50px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background-color: var(--fda-white-grey);
}

.fda_code__button:hover {
    background-color: var(--fda-secondary);
}

.fda_code__preheader .fda_title6 {
    margin-bottom: 0px;
}

.fda_code__preheader {
    background-color: var(--fda-white-grey);
    border-radius: 16px 16px 0px 0px;
    border: 1px solid var(--fda-border-color);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 90%;
    margin: 0 auto;
    padding: 16px 24px 8px;
}

.fda_code__body {
    display: flex;
    flex-direction: row;
    background-color: white;
    border-radius: 16px;
    padding: 16px;
    gap: 1em;
    border: 1px solid var(--fda-border-color);
    width: 100%;
}

.fda_codebox__lateral {
    position: absolute;
    right: 0px;
    top: -60px;
}

/* Codebox UX */
.codebox-ux-container {
    width: 100%;
    max-width: none;
    background: white;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.codebox-ux-container * {
    font-family: 'Fira Code', monospace;
}

.codebox-ux-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.codebox-ux-header h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

.codebox-ux-button {
    font-size: 14px;
    font-weight: normal;
    padding: 8px 16px;
    border: none;
    background: #00abb0;
    color: white;
    border-radius: 4px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}

.codebox-ux-text {
    background: #f8f9fa;
    border-radius: 4px;
    padding: 15px;
    font-size: 14px;
    line-height: 1.5;
}

.codebox-ux-text p {
    font-size: 14px;
    font-weight: normal;
    margin: 2px 0;
}

/* contenidos_curso */
.profile_container {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px 20px;
}

.profile_image {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.profile_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile_info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    text-align: left;
}

.profile_name {
    color: #00abb0;
    font-weight: 600;
    font-size: 14px;
    text-align: left;
}

.profile_specialty {
    color: #666;
    font-size: 12px;
    font-family: 'Fira Code', monospace;
    text-align: left;
}

.master_vscode__container {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.8);
    border-radius: 16px;
    z-index: 10;
    color: #c3c6c9;
}

.master_vscode__header {
    background-color: #E9E9EA;
    width: 100%;
    padding: 8px;
    border-radius: 16px 16px 0px 0px;
}

.master_vscode__subheader {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    background-color: #f5f5f5;
    border-top: 1px solid #E5E5E5;
    border-bottom: 1px solid #E5E5E5;
    padding: 5px 0px;
}

.inscription_button {
    margin-right: 20px;
}

.inscription_button .fda_button {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    font-size: 14px;
}

.inscription_button img {
    width: 16px;
    height: 16px;
    filter: brightness(0) invert(1);
}

.master_contenidos__listado {
    background-color: #f5f5f5;
}

.master_vscode__body {
    width: 100%;
}

.master_content_header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 20px;
    background-color: #f5f5f5;
    border-bottom: 1px solid #E5E5E5;
    font-weight: 700;
    font-size: 16px;
    color: #333;
}

    .master_content_header i {
        color: #00abb0;
        font-size: 16px;
    }

.master_button__contenidos {
    background-color: transparent;
    border: 0px;
    padding: 10px 10px;
    text-align: left;
    margin: 4px 2px;
    transition: all ease 500ms;
    opacity: 0.6;
    font-weight: 400;
    width: 99%;
    color: #999;
    line-height: 1.4;
}

.master_button__contenidos:hover {
    background-color: white;
    border-radius: 4px;
    box-shadow: 0px 4px 0px #00abb0;
    opacity: 0.8;
}

.master_button__contenidos:focus {
    background-color: white;
    border-radius: 4px;
    opacity: 1;
    color: #333;
    font-weight: 600;
}

.master_button__contenidos.active {
    background-color: white;
    border-radius: 4px;
    opacity: 1;
    color: #333;
    font-weight: 600;
}

.master_vscode__footer {
    background-color: #f5f5f5;
    padding: 4px 8px;
    width: 100%;
    border-radius: 0px 0px 16px 16px;
    border-top: 1px solid #e5e5e5;
}

.vscode_footer__block {
    display: inline-block;
    font-size: 0.8rem;
}

.vscode_footer__block__middle {
    display: inline-block;
    font-size: 0.8rem;
    border-left: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5;
    padding: 5px 15px;
    letter-spacing: 8px
}

.fda_section__three-columns {
    display: grid;
    grid-template-columns: 1fr 5fr 12fr;
    gap: 0px;
    max-width: 1200px;
    margin: 0px;
    padding: 0px;
}


.contenido_oculto {
    display: none;
}

.master_temario__contenido {
    padding: 20px;
    gap: 20px;
}

.master_temario__contenido h3 {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.master_temario__contenido p {
    font-size: 15px;
    color: #666;
    line-height: 1.5;
    margin: 0;
}

.master_contenidos__temas {
    gap: 0px;
    margin-top: 0px;
    padding-top: 5px;
}

.compact_gap {
    gap: 5px;
}

.compact_gap .master_content_header {
    margin-bottom: 0px;
}

.compact_gap {
    padding-left: 5px;
    padding-right: 5px;
}

.compact_gap ul li:last-child {
    margin-bottom: 5px;
}

.profile_container {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px 20px;
}

.profile_image {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.profile_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile_info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    text-align: left;
}

.profile_name {
    color: #F09769;
    font-weight: 600;
    font-size: 14px;
    text-align: left;
}

.profile_specialty {
    color: #666;
    font-size: 12px;
    font-family: 'Fira Code', monospace;
    text-align: left;
}

.master_vscode__subheader {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    background-color: #f5f5f5;
    border-top: 1px solid #E5E5E5;
    border-bottom: 1px solid #E5E5E5;
    padding: 5px 0px;
}

.inscription_button {
    margin-right: 20px;
}

.inscription_button .fda_button {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    font-size: 14px;
}

.inscription_button img {
    width: 16px;
    height: 16px;
    filter: brightness(0) invert(1);
}

.master_content_header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 20px;
    background-color: #f5f5f5;
    border-bottom: 1px solid #E5E5E5;
    font-weight: 700;
    font-size: 16px;
    color: #333;
}

    .master_content_header i {
        color: #F09769;
        font-size: 16px;
    }

.master_button__contenidos {
    background-color: transparent;
    border: 0px;
    padding: 10px 10px;
    text-align: left;
    margin: 4px 2px;
    transition: all ease 500ms;
    opacity: 0.6;
    font-weight: 400;
    width: 99%;
    color: #999;
    line-height: 1.4;
}

.master_button__contenidos:hover {
    background-color: white;
    border-radius: 4px;
    box-shadow: 0px 4px 0px #ffa366;
    opacity: 0.8;
}

.master_button__contenidos:focus {
    background-color: white;
    border-radius: 4px;
    box-shadow: 0px 4px 0px var(--fda-secondary);
    opacity: 1;
    color: #333;
    font-weight: 600;
}

.master_button__contenidos.active {
    background-color: white;
    border-radius: 4px;
    box-shadow: 0px 4px 0px var(--fda-secondary);
    opacity: 1;
    color: #333;
    font-weight: 600;
}

.master_temario__contenido h3 {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.master_temario__contenido p {
    font-size: 15px;
    color: #666;
    line-height: 1.5;
    margin: 0;
}

.compact_gap {
    gap: 5px;
}

.compact_gap .master_content_header {
    margin-bottom: 0px;
}

.compact_gap {
    padding-left: 5px;
    padding-right: 5px;
}

.compact_gap ul li:last-child {
    margin-bottom: 5px;
}


.master-badge {
    position: relative;
    background-color: #E9F8F8;
    color: #00ABB0;
    padding: 4px 8px;
    border-radius: 4px;
    font-family: 'Fira Code', monospace;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
    display: inline-block;
}

.slide-content {
    width: 100%;
    max-width: 400px;
}

.slide h2 {
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.7);
    font-family: 'Hanken Grotesk', sans-serif;
    font-weight: 900;
    font-size: 28px;
    line-height: 1.2;
}

.slide .slide_text {
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.7);
    margin-bottom: 24px;
    font-family: 'Fira Code', monospace;
    font-size: 14px;
    line-height: 1.5;
    opacity: 0.9;
}

.slide a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: white;
    text-decoration: none;
    font-family: 'Fira Code', monospace;
    font-weight: 600;
    font-size: 12px;
    transition: opacity 0.3s ease;
}

.slide a:hover {
    opacity: 0.8;
}

.slide a img {
    width: 16px;
    height: 16px;
}

.fda_link__white img {
    width: 20px;
    height: 20px;
    display: inline-block;
    filter: brightness(0) invert(1);
    vertical-align: middle;
}

.slide.small {
    width: 25%;
    opacity: 0.7;
}

.slide.large {
    width: 75%;
    opacity: 1;
}

.slide.large .master-badge {
    transform: rotate(0deg);
    margin-bottom: 12px;
    margin-right: 0;
}

.slide.large .slide_text, .slide.large a {
    display: block;
}

.slide.small h2 {
    transform: rotate(-90deg);
    white-space: nowrap;
}

.slide.small .slide_text, .slide.small a {
    display: none;
}

.slide_content__close {
    opacity: 0;
    position: absolute;
    transform: rotate(-90deg);
}

.slide.small .slide_content__close {
    width: 500px;
    height: 150px;
    transform-origin: center;
    right: -175px;
    bottom: 174px;
    padding: 20px;
    opacity: 1;
    transition: opacity 0.25s ease-in 0.3s;
}

.slide-content {
    opacity: 0;
    position: relative;
    z-index: -1;
}

.slide.large .slide-content {
    opacity: 1;
    z-index: 2;
    transition: opacity 0.25s ease-in 0.3s;
}

.slide_title__close {
    white-space: nowrap;
}


/* form_box */

.fda_form__container {
    display: flex;
    flex-direction: column;
    background-color: var(--fda-white-grey);
    border-radius: 8px;
    border: 1px solid var(--fda-grey30);
    padding: 16px 16px;
    box-shadow: 0px 0px 4px rgba(0,0,0, 0.3);
}

.fda_form__header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 1em;
}

.fda_form__body {
    display: flex;
    flex-direction: column;
    background-color: white;
    border-radius: 8px;
    padding: 15px;
    gap: 1em;
}


.fda_form__body input, .fda_form__body textarea {
    width: 100%;
    border: 1px solid var(--fda-white-grey);
    padding: 10px;
    margin-bottom: 5px;
}

.preform_vertical {
    background-color: var(--fda-principal-white);
    width: 100%;
    height: 80%;
    max-width: 700px;
    padding: 20px;
    border-radius: 24px;
    position: absolute;
    top: 10%;
}

.contact_form {
    border: 1px solid var(--fda-border-color);
    background-color: var(--fda-white-grey);
    border-radius: 16px;
    box-shadow: var(--fda-shadow-form);
    color: var(--fda-deep-grey);
    width: 100%;
    max-width: 572px;
    padding: 24px;
    z-index: 30;
    margin: 0 auto;
}

.contact_form h3 {
    margin-bottom: 10px;
}

.contact_form span {
    font-family: Fira Code;
}



form {
    display: flex;
    padding: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    align-self: stretch;
    border-radius: 16px;
    border: 1px solid var(--fda-border-color);
    background: white;
}


form div {
    width: 100%;
}

.contact_form select,
select.form-control {
    padding-right: 80px;
    background-position: right 20px center;
    background-repeat: no-repeat;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") ;
    background-size: 20px;
}


.codetext {
    font-size: 0.9rem;
}

.contact_datos {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 16px;
}

.contact_whatsapp {
    display: flex;
    padding: 24px;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 8px;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: 8px;
    background: var(--fda-secondary);
    color: white;
}

.contact_whatsapp i {
    font-size: 30px;
}


.contact_form__checkbox {
    display: flex;
    align-items: center;
    gap: 15px;
    width: auto;
}

.contact_form__checkbox input[type=checkbox] {
    width: 20px;
    height: 20px;
    margin: 0;
}

.fda_list__numbers__box.fda_circle_s {

    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.fda_list__numbers__box.fda_circle_s h3 {
    margin: 0;
    padding: 0;
    line-height: 1;
    font-size: 0.6rem;
}



.fda_list__withicon {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}


.whatsapp-section input[type="checkbox"] {
    margin: 0;
    width: 16px;
    height: 16px;
    cursor: pointer;
    margin-right: 8px;
}

.whatsapp-section label {
    margin: 0;
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 10px;
}

.whatsapp-label {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    font-weight: 500;
    color: var(--fda-deep-grey);
}

.whatsapp-icon {
    width: 18px;
    height: 18px;
    vertical-align: middle;
}

.whatsapp-options {
    display: flex;
    align-items: center;
    gap: 30px;
    width: auto;
}

.whatsapp-option {
    display: flex;
    align-items: center;
    gap: 15px;
    width: auto;
}

.whatsapp-option input[type="radio"] {
    margin: 0;
    width: 20px;
    height: 20px;
    cursor: pointer;
}

.whatsapp-option .form-check-label {
    margin: 0;
    cursor: pointer;
    font-weight: 400;
    color: var(--fda-deep-grey);
}

.whatsapp-option input[type="radio"]:checked + .form-check-label {
    font-weight: 500;
    color: var(--fda-secondary);
}

.whatsapp-option:hover .form-check-label {
    color: var(--fda-secondary);
}

.whatsapp-option:hover input[type="radio"] {
    border-color: var(--fda-secondary);
}

.phone-input-container {
    display: flex;
    align-items: stretch;
    gap: 0;
    width: 100%;
}

.phone-input-container input[type="text"]:first-child {
    width: 50px;
    border-right: none ;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    text-align: center;
    background-color: #f8f9fa;
    color: var(--fda-deep-grey);
    font-weight: 500;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.phone-input-container input[type="tel"]:last-child {
    border-left: none;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    flex: 1;
    min-width: 0;
}


.contact_form input::placeholder,
.contact_form textarea::placeholder,
.contact_form select::placeholder {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 14px;
}

.terms-checkbox-section {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    width: 100%;
}

.terms-checkbox-section input[type="checkbox"] {
    margin: 0;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

.terms-checkbox-section label {
    margin: 0;
    flex: 1;
    line-height: 1.4;
    white-space: normal;
    word-wrap: break-word;
    min-width: 0;
}

/* ========================================
   PÁGINA CONÓCENOS - COMPONENTES
   ======================================== */

/* ========================================
   SELECTOR DE PROFESORES/EQUIPO
   ======================================== */
.fda_selector__container {
    display: flex;
    gap: 8px;
    background-color: var(--fda-white-grey);
    border-radius: 50px;
    padding: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin: 32px auto;
    width: fit-content;
}

.fda_selector__button {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 50px;
    text-decoration: none;
    color: var(--fda-secondary);
    font-weight: 500;
    font-size: 0.875rem; /* 14px en rem */
    transition: all 0.3s ease;
    background-color: transparent;
}

.fda_selector__button:hover {
    background-color: var(--fda-principal-white);
    color: var(--fda-secondary);
}

.fda_selector__button.active {
    background-color: var(--fda-white);
    color: var(--fda-secondary);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.fda_selector__button i {
    font-size: 16px;
}


/* ========================================
   COMPONENTES CTA
   ======================================== */
.fda_section_buttons {
    display: flex;
    justify-content: flex-start;
    margin-top: 24px;
}

    .fda_section_buttons .fda_button {
        width: auto;
        min-width: fit-content;
    }

/* ========================================
   SECCIÓN HERO CON CODEBOX
   ======================================== */
.fda_hero_section {
    background: linear-gradient(135deg, var(--fda-secondary) 0%, var(--fda-secondary-light) 100%);
    padding: 0;
    position: relative;
    overflow: hidden;
}

/* ========================================
   SECCIÓN FAQ CTA SECUNDARIA
   ======================================== */
.faq_section__ctasecondary {
    background-color: #030122;
    max-width: 1000px;
    margin: 0 auto;
    border-radius: 24px;
}

/* Alineación vertical de las columnas */
.faq_section__ctasecondary .fda_section__two-columns {
    align-items: center;
}

/* Padding específico para el contenido dentro de la sección FAQ CTA */
.faq_section__ctasecondary .fda_section__column__box:first-child {
    padding-left: 48px;
    padding-top: 56px;
    padding-bottom: 56px
}


/* Clase específica para limitar el ancho del contenedor azul */
.fda_hero_section .fda_section__content {
    max-width: 1000px;
    margin: 0 auto;
}

/* ========================================
   ESTILOS ESPECÍFICOS PARA IMAGEN CODEBOX
   ======================================== */

/* Solo afectar la imagen codebox.jpg en su contexto específico */
.faq_section__ctasecondary .fda_section__two-columns .fda_section__column__box:last-child img[src*="codebox.jpg"] {
    width: 100%;
    display: block;
    border-radius: 0 24px 24px 0;
}



.fda_hero_section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.1) 50%, transparent 100%), repeating-linear-gradient( 0deg, transparent, transparent 2px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.03) 4px );
    pointer-events: none;
}

.fda_hero__container {
    position: relative;
    z-index: 2;
    padding: 0;
}

.fda_hero__two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: center;
}

.fda_hero__left-column {
    color: var(--fda-white);
    padding: 60px 40px;
}

.fda_hero__content .fda_title__descriptions h2 {
    margin-bottom: 20px;
    line-height: 1.2;
}

.fda_hero__content .fda_title__descriptions p {
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 24px;
    line-height: 1.6;
    font-size: 1.1rem;
}

.fda_hero__right-column {
    position: relative;
    padding: 60px 40px;
}

.fda_hero__codebox {
    background: #f8f9fa;
    border-radius: 16px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    position: relative;
    margin: 0;
}

.fda_hero__codebox::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05));
    border-radius: 18px;
    z-index: -1;
}

.fda_hero__codebox .fda_code__preheader {
    background: #e9ecef;
    padding: 12px 20px;
    border-bottom: 1px solid #dee2e6;
    margin: 0;
}

.fda_hero__codebox .fda_code__body {
    background: #ffffff;
    border: none;
    padding: 20px;
    margin: 0;
    align-items: flex-start;
}

.fda_hero__codebox .fda_code__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.fda_hero__codebox .fda_code__text p {
    margin: 0;
    line-height: 1.5;
    min-height: 1.5em;
}

.fda_hero__codebox .code_text__grow {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.fda_hero__codebox .code_text__grow p {
    margin: 0;
    line-height: 1.5;
    min-height: 1.5em;
}

    .fda_hero__codebox .fda_button__code {
        background: var(--fda-secondary);
        color: var(--fda-white);
        border: none;
        padding: 8px 16px;
        font-size: 0.9rem;
        transition: all 0.3s ease;
        border-radius: 8px;
    }

.fda_hero__codebox .fda_button__code:hover {
    background: var(--fda-secondary-light);
    transform: translateY(-2px);
}


/* ========================================
   PÁGINA FAQ - COMPONENTES
   ======================================== */

/* ========================================
   SECCIÓN AZUL PRINCIPAL
   ======================================== */
.fda_section__white {
    background-color: var(--fda-principal-white);
    padding: 40px 0px;
}

.fda_section__white .fda_section__content {
    max-width: 1000px;
    padding: 0px 32px;
    width: 100%;
    margin: 0 auto;
}


 .fda_section__meetus {
        max-width: 1000px;
        width: 100%;
        margin: 0 auto;
        padding: 0px 32px;
  }

.fda_section__blue {
    background-image: url(../assets/images/fondocoding.jpg);
    background-size: cover;
    background-position: center;
    color: var(--fda-white);
    overflow: hidden;
    min-height: 800px;
    position: relative;
}

.fda_section__blue h2 {
    color: var(--fda-white);
}




/* ========================================
   PÁGINA MODAL DE DESCARGA DE DOSSIER
======================================== */


.modal_form {
    max-width: 670px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    background: white;
    padding: 16px;
    overflow-y: auto;
    margin: 0 auto;
}

.modal_header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 6px;
    flex-wrap: wrap;
    gap: 8px;
}

    .modal_header h3 {
        margin: 0;
        flex: 1;
    }

.modal_title_container {
    display: flex;
    align-items: baseline;
    gap: 0px;
    flex: 1;
    flex-wrap: wrap;
}

.modal_title_container h3 {
    margin: 0;
    flex-shrink: 0;
}

.modal_title_container .text-muted {
    margin: 0;
    margin-left: 4px;
    font-size: 14px;
    color: #666;
    font-family: 'Fira Code', monospace;
    flex-shrink: 0;
    line-height: 1.2;
    vertical-align: baseline;
}

.modal_close {
    background: none;
    border: none;
    font-size: 20px;
    color: #666;
    cursor: pointer;
    padding: 8px;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    margin-left: 16px;
}

    .modal_close:hover {
        background-color: #f5f5f5;
        color: #333;
    }

    .modal_close:focus {
        outline: none;
        box-shadow: 0 0 0 3px rgba(0,123,255,0.1);
    }

.modal_form h3 {
    color: #333;
    margin-bottom: 8px;
}

.modal_form .text-muted {
    color: #666;
    margin-bottom: 24px;
    font-family: 'Fira Code', monospace;
    font-size: 14px;
}

.modal_form__content {
    max-height: calc(80vh - 120px);
    overflow-y: auto;
    padding-right: 8px;
}

.modal_form__content > div {
    margin-bottom: 10px;
}

.control-label {
    display: block;
    margin-bottom: 8px;
    font-weight: 500;
    color: #333;
}

.form-control {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 12px 16px;
    font-size: 14px;
    transition: border-color 0.3s ease;
    width: 100%;
    box-sizing: border-box;
}

    .form-control:focus {
        border-color: #007bff;
        outline: none;
        box-shadow: 0 0 0 3px rgba(0,123,255,0.1);
    }

.phone-input-container {
    display: flex;
}

.phone-prefix {
    flex: 0 0 80px;
}

.phone-number {
    flex: 1;
}

.whatsapp-section {
    margin-bottom: 20px;
}

.whatsapp-options {
    display: flex;
    gap: 20px;
    margin-top: 8px;
}

.whatsapp-option {
    display: flex;
    align-items: center;
    gap: 8px;
}

    .whatsapp-option input[type="radio"] {
        margin: 0;
    }

    .whatsapp-option label {
        margin: 0;
        font-weight: normal;
    }

.terms-checkbox-section {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

    .terms-checkbox-section input[type="checkbox"] {
        margin: 0;
        margin-top: 2px;
    }

.legal-link {
    color: #ff6b35;
    text-decoration: none;
}

    .legal-link:hover {
        text-decoration: underline;
    }

.fda_button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: none;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

    .fda_button:hover {
        background-color: #16213e;
    }

    .fda_button i {
        font-size: 14px;
    }

#download-form-element {
    overflow-y: auto;
    padding-right: 8px;
}

/* Responsive para el modal */
@media (max-width: 768px) {
    .modal_title_container {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    .modal_header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    
    .modal_close {
        align-self: flex-end;
        margin-left: 0;
    }
}

/* ========================================
    MODAL DE CONFIRMACIÓN
======================================== */

.confirmation-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 300px;
}

.confirmation-card {
    border: 1px solid var(--fda-border-color);
    background-color: var(--fda-white-grey);
    border-radius: 16px;
    box-shadow: var(--fda-shadow-form);
    color: var(--fda-deep-grey);
    width: 100%;
    max-width: 572px;
    padding: 24px;
    z-index: 30;
    margin: 0 auto;
    position: relative;
}

.confirmation-card .card-header {
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
    margin-bottom: 10px;
    gap: 12px;
    background: transparent;
    padding: 0;
}

.confirmation-card .card-title {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #000000;
    margin: 0;
}

.confirmation-card .card-subtitle {
    font-family: 'Fira Code', monospace;
    font-size: 14px;
    color: #607B96;
    margin: 0;
}

.confirmation-card .inner-card {
    display: flex;
    padding: 16px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    align-self: stretch;
    border-radius: 16px;
    border: 1px solid var(--fda-border-color);
    background: white;
    min-height: 400px;
}

.confirmation-card .success-icon {
    text-align: center;
    margin-bottom: 24px;
    color: #28a745;
}

.confirmation-card .success-icon svg {
    width: 64px;
    height: 64px;
}

.confirmation-card .confirmation-message {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 32px;
    color: #000000;
    font-weight: bold;
    text-align: center;
    margin-bottom: 16px;
    line-height: 1.3;
}

.confirmation-card .confirmation-note {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 15px;
    color: var(--fda-grey);
    margin-bottom: 32px;
    line-height: 1.4;
    font-weight: 400;
    max-width: 500px;
}

/* Estilos para el contenedor de confirmación simplificado */
#confirmacion-container .modal_form__content {
    text-align: center;
    padding-top: 40px;
}

#confirmacion-container .success-icon-simple {
    font-size: 64px;
    color: #28a745;
    margin-bottom: 20px;
}

#confirmacion-container .success-title {
    color: #28a745;
    margin-bottom: 16px;
}

#confirmacion-container .success-message {
    color: #666;
    font-size: 16px;
    line-height: 1.5;
}

#confirmacion-container .success-button {
    margin-top: 40px;
}