@font-face {
  font-family: 'ZonaPro Bold';
  src: url('fonts/ZonaPro-Bold.otf') format('opentype');
  font-weight: bold;
}

@font-face {
  font-family: 'ZonaPro Thin';
  src: url('fonts/ZonaPro-Thin.otf') format('opentype');
  font-weight: 100;
}


@font-face {
  font-family: 'Comfortaa';
  src: url('fonts/Comfortaa-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 700; 
  font-style: normal;
}



html, body {
    overflow-x: hidden;
    width: 100%;
}

        body {
            margin: 0;
            font-family: "ubuntu", sans-serif;
              width: 100%;
            background-color: #1c1c1c;
        }

        .container {
            max-width: 1355px;
            margin: 0 auto;
            padding: 0 20px;
        }

        h1, h2, h3, h4 {
        font-family: "ubuntu", sans-serif;
        font-weight: 600;
        }

        h1 {
            font-size: 46px;
            line-height: 1.2;
            margin-top: 0;
            color: white;
        }

        p {
            font-size: 1.3125rem;
            font-family: "ubuntu", sans-serif;
            line-height: 1.2;
            color: #1c1c1c;

        }

        .text-center{
            text-align: center;
        }

        .header, .row-formulario {
        
            text-align: center;
            padding: 30px 20px;
          
        }



        .header  {
            background-color: #141414;
        }

        .header .container {
            display: block;
            margin: 0 auto;
            text-align: center;
        }



        .header .logo{
            width: auto;
        }
        


        .highlight {
            color: #e8308a;
        }
        .italic-bold {
            font-style: italic;
            font-size: 2em;
            font-weight: 500;
        }
        .btn {
            display: inline-block;
            color: white;
            padding: 20px 70px;
            text-decoration: none;
            margin-top: 50px;
            font-size: 28px;
            background: #e8308a;
            transition: 0.5s ease;
            border-radius: 30px;
            font-weight: 500;
        }

        .btn:hover{
            background-color: #dc418c;
            color: white;
        }


        .section {
            text-align: center;
            padding: 50px 50px;
        }

        .section h2 {
            margin-top: 0;
            font-size: 40px;
        }

        h2 {
            font-size: 4em;
            font-weight: 600;
            line-height: 1.2;
            color: #e8308a;
            font-style: italic;
        }

        h3 {
            font-size: 2.2em;
            font-weight: 600;
            color: #1c1c1c;
        }


        h4 {
            font-size: 3rem;
            color: #1c1c1c;
            margin: 0;
            padding: 27px 0px 70px;
        }


        h3.title-fucs {
            color: #e8308a;
            font-size: 5rem;
            margin-top: 80px !important;
            margin-bottom: 20px !important;
        }

        img.ojo {
            width: 15%;
            margin-bottom: 70px;
        }


        .flex-container {
            display: flex;
            justify-content: space-between;
            max-width: 1355px;
            margin: 0 auto;
            flex-wrap: wrap;
        }


        .column {
            width: 36%;
            margin-bottom: 40px;
            padding: 0px 64px;
        }

        .icon-text {
            display: flex        ;
            flex-direction: row;
            align-items: flex-start;
            color: white;
        }

        .icon-text h3 {
            color: white;
            margin-top: 0;
            font-size: 40px;
        }

        .icon-text img {
            height: 80px;
            padding-right: 50px;
        }


        .fila-columna {
          display: flex;
          justify-content: center;
          background: linear-gradient(to right, white 30%, #1c1c1c 30%);
          align-items: center;
          position: relative;
          width: 100vw !important;
        }


        .fila-columna:before {
            content: '';
            width: 260px;
            height: 100%;
            background: #1c1c1c;
            position: absolute;
            margin-left: -26%;
            z-index: 1;
            top: 0;
        }



        .fila-columna .column{
            width: 100%;
            padding-right: 0px;
        }


        .fila-columna .column p {
            padding-right: 200px;
            color: white;
            font-size: 1.7rem;
        }




        .fila-columna .column span {
            color: #e8308a;
            border-bottom: 3px solid;
            width: 100%;
            display: block;
            font-style: italic;
            font-size: 20px;
        }


        .fila3 {
            padding-top: 50px;
        }

        .column-imagen.fila-img-1 {
            padding-left: 100px;
        }

        .column-imagen.fila-img-2 {
            padding-left: 200px;
        }

        .column-imagen.fila-img-3 {
            padding-left: 250px;
        }

        .column-imagen img {
            width: 500px;
            padding: 50px;
            z-index: 9;
            position: relative;
        }

        .fila-columna.padd-marg1 .column.col1 {
           /* padding-left: 200px;*/
            padding-left: 10%;
        }

        .fila-columna.padd-marg2 .column.col1 {
           /* padding-left: 100px;*/
            padding-left: 5%;
        }

        .fila-columna.padd-marg3 .column.col1 {
           /* padding-left: 50px;*/
            padding-left: 2.5%;
        }



                .column-imagen {
            position: relative;
            display: inline-block; /* o block según tu layout */
            }

        .fila-columna .imagen {
            display: block;
            }

        .medio-cuadrado {
            width: 441px;
            height: 329px;
            border-left: 2px solid #e8308a;
            border-top: 2px solid #e8308a;
            border-bottom: 2px solid #e8308a;
            border-right: none;
            position: absolute;
            top: 25px;
            left: 50%;
            transform: translateX(-50%);
        }

        .fila-columna.padd-marg2 .medio-cuadrado {
            left: 50%;
            width: 340px;
        }

        .fila-columna.padd-marg3 .medio-cuadrado {
            left: 50%;
            width: 290px;
        }



        .fila-columna .imagen {
            display: block;
            position: relative;
            z-index: 9;
        }

        .section.fila1 .container {
            width: 100%;
            padding: 0;
        }


        .fila1 a.btn {
            padding: 10px 100px;
        }



        .video-konnexia {
            width: 100%;
            height: 400px;
            
            overflow: hidden;
        }

        .video-konnexia-wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 20px; 
        background: linear-gradient(to bottom, #1c1c1c 50%, white 50%);
        }

        .video-konnexia {
        width: 80vw;
        height: 850px;
        max-height: 850px;
        object-fit: cover;
        }

        .text-side {
            writing-mode: vertical-rl;
            transform: rotate(180deg);
            font-size: 2rem;
            font-weight: bold;
            color: white;
            height: 850px;
            text-align: center;
            border-right: 2px solid #e8308a;
            padding-right: 20px;
        }


        .text-left {
        transform: rotate(180deg); /* gira en sentido horario */
        transform-origin: center;

        background: linear-gradient(
        to bottom,
        black 50%,
        white 50%
        );
        background-clip: text;
        -webkit-background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;

        }

        .text-right {
        transform: rotate(0deg); /* gira en sentido antihorario */
        transform-origin: center;

        background: linear-gradient(
        to bottom,
        white 50%,
        black 50%
        );
        background-clip: text;
        -webkit-background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;

        }


        .text-video{
            position: relative;
        }

        .texto-superior {
            position: absolute;
            bottom: 85px;
            text-align: center;
            color: white;
            font-weight: bold;
            width: 100%;
            font-size: 3rem;
        }

        .destacado-texto{
            color: #E4368B;
            font-size: 5rem;
            font-style: italic;
            font-weight: bold;
        }

        .fila2 {
            background: white;
            padding-top: 100px;
        }

        .fila2 h3 {
            margin: 0;
            font-size: 5rem;
            font-style: italic;
        }

        .fila3 h4 {
            font-size: 4rem !important;
        }


        .fila3 p.text-big {
            font-size: 3rem;
            font-weight: bold;
            margin-top: 60px;
        }


        .fila3 h4, .fila3 p {
            color: white;
        }

        .fila3 p {
            font-size: 2rem;
            font-weight: 600;
        }

        .fila3 h4 span {
            color: #e8308a;
            font-style: italic;
            padding-top: 20px;
            display: block;
        }

    .two-columns {
        display: flex;
        gap: 20px;
        align-items: stretch; 
    }


    .big-column {
        flex: 1; 
    }




    .small-column {
        width: 440px;
        background-color: white;
        color: #e46641;
        padding: 40px;
        margin: 80px 80px 80px 200px;
        box-sizing: border-box;  
    }

    .small-column > div {
        display: flex;
        flex-direction: column; 
    }



        .small-column h3 {
            font-size: 38px;
            margin: 0;
            font-weight: 700;
            line-height: 1;
            color: #e8308a;
        }

        .small-column p {
            margin: 60px 0px 40px;
        }

        p.text-destacado {
            font-size: 29px;
            line-height: 1;
            color: #e8308a;
            font-weight: 700;
            margin-top: 0px;
        }



        .row-formulario h3 {
            font-weight: 700;
            font-size: 43px;
            margin: 0;
            color: #e8308a;
            line-height: 1.2;
        }



    .columna-estrecha {
        width: 44%;
        margin: 0 auto;
    }

    .columna-estrecha .btn {
        padding: 10px 80px;
    }

        h4.margin-top {
            margin-top: 60px;
            margin-bottom: 35px;
        }

        .contact-form {
            display: flex;
            flex-direction: column;
            gap: 30px;
            max-width: 700px;
            margin: 0 auto;
            margin-top: 50px;
            margin-bottom: 50px;
        }
        
        .form-row {
            display: flex;
            gap: 15px;
        }
        
        .form-group {
            flex: 1;
            display: flex;
            flex-direction: column;
        }
        
        label {
            font-weight: normal;
            margin-bottom: 5px;
            text-align: left;
            color: #afafaf;
        }
        
        input, textarea {
            width: calc(100% - 20px);
            padding: 15px 10px;
            border: 1px solid #e8308a;
            border-radius: 10px;
            font-size: 1em;
            background: transparent;
            color: white;
        }
        
        textarea {
            resize: vertical;
            min-height: 100px;
        }
        
        .checkbox {
            display: flex;
            align-items: center;
            gap: 10px;
        }
        
        .checkbox input {
            width: auto;
        }
        
        .form .btn {
            background: #e8308a;
            color: black;
            padding: 10px 15px;
            border: none;
            border-radius: 5px;
            font-size: 1.2em;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 600;
        }
        
        button#submit {
            width: auto;
            margin: 0 auto;
            padding: 20px 170px;
            font-size: 1.5em;
            border: none;
            color: white;
            background: #e8308a;
            cursor: pointer;
            transition: background 0.3s ease;
        }


        label a {
            color: #e8308a;
        }


        .img-big img {
            width: 100%;
        }

        .img-big h3 {
            font-size: 85px;
            line-height: 1.2;
            margin-bottom: 0px;
        }





        #footer { 
            padding:23px 0px;
            background: #e82d8a;
            color: white;
        }

        #footer p{
            color: white;
        }
            #footer .copyright-txt {
                float:left;
                padding-top:16px;
                margin:0px;
            }
		#footer .copyright-txt a {
			color:#404040;
			font-weight:400;
		}
		#footer .copyright-txt a:hover {
            color:#E82D8A; 
        }

footer#footer img {
    width: 100%;
    height: auto;
}

.datos-footer {
    display: flex;
    justify-content: center;
    gap: 20px;
    color: white;
    font-size: 20px;
    flex-direction: column;
}

.datos-footer a{
    color: white;
    text-decoration: none;
    font-size: 20px;
}

.logo-footer {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}




ul.legales {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    float: right;
    justify-content: flex-end;
}

ul.legales li {
    padding-right: 2rem;
}


ul.legales a{
    font-size: 16px;
}

.column a.btn {
    padding: 20px 15px;
}

        .ancho-menor {
            width: 60%;
            margin: 0 auto;
            font-size: 28px;
            font-weight: bold;
        }

        /* Pantallas menores a 1200px (Laptops y Tablets Grandes) */


        .padd-bottom{
            margin-bottom: 200px;
        }


        @media (max-width: 1500px) and (min-width: 992px) {

.icon-text img {
    height: 50px;
    padding-right: 50px;
}

            .fila-columna.padd-marg3 .column.col1 {
    padding-left: 10px;
}

.column.col1 {}

.fila-columna.padd-marg2 .column.col1 {
    padding-left: 10px;
}

.fila-columna.padd-marg1 .column.col1 {
    padding-left: 10px;
}

.column-imagen.fila-img-1 {
    padding-left: 20px;
}

.column-imagen.fila-img-2 {
    padding-left: 20px;
}

.column-imagen.fila-img-3 {
    padding-left: 20px;
}

    .fila-columna:before {
        margin-left: -25%;
        width: 191px;
    }



        }

@media (max-width: 1400px) {

        .fila-columna.padd-marg1 .column.col1 {
            padding-left: 40px;
        }

        .fila-columna.padd-marg2 .column.col1 {
    padding-left: 0px;
        }
}


@media (max-width: 1242px) {


    .icon-text {

        width: auto !important;
    
    }
}



@media (max-width: 1200px) {
    .flex-container {
        flex-direction: column;
        align-items: center;
    }

   /* .column {
        width: 100%;
        margin-bottom: 20px;
    }*/

    .datos-footer {
    text-align: center;
}

}

/* Pantallas menores a 992px (Tabletas) */
@media (max-width: 992px) {


    .fila-columna:before{
        display: none;
    }


    .header h1, h2, .h3-text {
        font-size: 40px;
    }

    .fila3 p {
        font-size: 35px;
    }

    .columna-estrecha {
        width: 100%;
        margin: 0 auto;
    }


    .column {
    width: 90%;
    padding: 0;
}



.section h2, .icon-text h3 {
        font-size: 30px;
    }


        .small-column {
        margin-right: 0;
        text-align: center;
    }

    .small-column > div {
        justify-content: center;
    }

        .small-column {
        margin-right: 0;
        text-align: center;
        margin: 24px;
        width: auto;
    }


        .two-columns {
        flex-direction: column;
        gap: 30px;
    }


    .fila-columna {
    display: flex;
    flex-direction: column;
}


.icon-text {
    display: flex;
    flex-direction: column;
}


.fila-columna .column p {
    padding-right: 0;
}

.fila-columna.padd-marg2 .column.col1, .fila-columna.padd-marg3 .column.col1, .fila-columna.padd-marg1 .column.col1, .column-imagen.fila-img-1, .column-imagen.fila-img-2, .column-imagen.fila-img-3 {
    padding: 0px;
    margin-right: 20px;
    margin-left: 20px;
}




.medio-cuadrado {
    display: none;
}

.column-imagen .imagen, img.imagen, .column-imagen.fila-img-3 img {
    width: 100%;
    margin: 0;
    padding: 0;

}


img.imagen {
    border: 2px solid #e8308a;
    padding: 10px;
    margin: 10px;
}


.column-imagen.fila-img-3 img{
    border: 2px solid #e8308a;

}


.column-imagen {
    margin-bottom: 30px;
    margin-top: 30px;
}



.fila-columna {
    width: 90%;
    margin: 0 auto;
    background: #1c1c1c;
}


.icon-text {
        align-items: center;
        text-align: center;
    }

    .icon-text img {
        margin-bottom: 15px;
    }

    .icon-text p {
        text-align: center;
    }



    .small-column .green-text {
        font-size: 10em;
        padding-right: 0;
    }


    .form-row {
        flex-direction: column;
    }




}

/* Pantallas menores a 768px (Móviles y tablets pequeñas) */
@media (max-width: 768px) {


    .text-side {
        display: none;
    }



    .texto-superior {
    font-size: 2rem;
}
.destacado-texto{
     font-size: 3rem;
}


.video-konnexia {
    height: 580px;
}

    .fila1 a.btn {
    padding: 13px 20px;
}


.ancho-menor {
    width: 100%;
}

.fila2 h3 {
    margin: 0;
    font-size: 3rem;
}

img.ojo {
    width: 40%;
}

    

    
    .row-formulario h3 {
        font-size: 30px;
    }


    .contact-form{
        margin-top: 40px;
    }

    .header .logo {
        width: 200px !important;
        margin: 0 auto;
    }

    .fila2 {
    background-size: cover;
}

    .header .container {
        display: flex;
        flex-direction: column;
    }

    h1 {
       font-size: 2rem;
    }




    .btn {
        font-size: 1.5em;
        padding: 8px 15px;
    }

    




button#submit {
    padding: 14px 80px;
}

.fila3 {
    padding: 50px 20px;
}

.fila3 h4 {
    font-size: 3rem !important;
}

.column {
    padding: 0;
}
.icon-text img {
    padding-right: 0;
}


ul.legales{
    display: block;
}
}

/* Pantallas menores a 480px (Móviles pequeños) */
@media (max-width: 480px) {
    .header h1,
    h2 {
        font-size: 2em;
    }

    h3 {
        font-size: 1.8em;
    }

    .btn {
        font-size: 1.2em;
        padding: 6px 12px;
    }

    .small-column .green-text {
        font-size: 8em;
    }
}


  