/* GENERAL ---------------------------------------------------------------------------------------- */
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-size: 16px;
    line-height: normal;
    font-family: sans-serif;
    font-weight: 400;
}

body {
    margin: 0;                                    
    padding: 0;
}

/* MAINPAGE --------------------------------------------------------------------------------------- */

/* General ---------------------------------------------*/
#main {
    height: 100vh;               /* vh significa toda la pagína */
    background-color: white;
    display: grid;               /* hace el big container lo define como grid */
    grid-template-columns: 1fr;       /* divide el grid en 6 columnas (otra forma repeat(4,minmax(0,272px))) */
    grid-template-rows: 1fr 840px 280px 1fr 1fr 1fr;       /* 5 filas, valores de acuerdo al diseño en XD */
    grid-template-areas: 
        /* "header1 header1 header1 header1 header1 header1"
        "mainarea-m mainarea-m mainarea-m mainarea-m mainarea-m mainarea-m"
        "carousel1 carousel1 carousel1 carousel1 carousel1 carousel1"
        "distribution-m distribution-m distribution-m distribution-m distribution-m distribution-m"
        "datascience-m datascience-m datascience-m datascience-m datascience-m datascience-m"
        "footer footer footer footer footer footer"; */
        "header1"
        "mainarea-m"
        "carousel1"
        "distribution-m"
        "datascience-m"
        "footer";
}

/* Header (m)-------------------------------------------*/
.header1 {
    grid-area: header1;
}

/* Mainarea (m) ----------------------------------------*/
#mainarea-m {
    grid-area: mainarea-m;
    background-image: url('../images/mainarea-m.jpeg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}
#mainarea-m h2 {
    margin-top: 2em;
    margin-right: 2em;
    color: #135166;
    font-size: 35px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1.5px;
    line-height: 60px;
    margin-bottom: 15px;
}
#mainarea-m p {
    color: #616161;
    font-size: 1.125rem;
    font-weight: 500;
    width: 30em;
    margin-right: 3.5em;
    text-align: justify;
    text-justify: inter-word;
}
.scheduleacall {
    display: flex;
    text-decoration: none;
    background-color: #546e7a;
    border: 1px solid #fafafa;
    border-radius: 0.7em;
    color: #fafafa;
    padding: 10px 30px;
    margin: 0 8px;
    text-transform: uppercase;
    font-weight: bold;
    margin-top: 20px;
    margin-right: 3.6rem;
}
.scheduleacall:hover {
    background-color: #607d8b;
    color: #bdbdbd;
}
/* yokogawa portal button */
.ygportalbutton a {
    position:  absolute;
    top: 80%;
    left: 4%;
    /* transform: translate(-50%,-50%); */
    padding: 6px 6px 0px 6px;
    font-size: 30px;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 20px 50px rgba(0,0,0,.5);
    overflow: hidden;
}
.ygportalbutton a img {
    width: 200px;
    border: 5px solid #3a52a0;
    border-radius: 1.3em;
    margin:  4px;
}
.ygportalbutton a:before {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    bottom: 2px;
    width: 50%;
    background: (255,255,255,0.05);
}
.ygportalbutton a span:nth-child(1) {
    position: absolute;
    top: 0;
    left: 0; 
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, #0c002b, #0c408a);
    animation: animate1 2s linear infinite;
}
@keyframes animate1 {
    0% {
        transform: translateX(-100%);
    }
    100%{
        transform: translateX(100%);
    }
}
.ygportalbutton a span:nth-child(2) {
    position: absolute;
    top: 0;
    right: 0; 
    width: 2px;
    height: 100%;
    background: linear-gradient(to bottom, #0c002b, #0c408a);
    animation: animate2 2s linear infinite;
    animation-delay: 3s;
}
@keyframes animate2 {
    0% {
        transform: translateY(-100%);
    }
    100%{
        transform: translateY(100%);
    }
}
.ygportalbutton a span:nth-child(3) {
    position: absolute;
    bottom: 0;
    left: 0; 
    width: 100%;
    height: 2px;
    background: linear-gradient(to left, #0c002b, #0c408a);
    animation: animate3 2s linear infinite;
}
@keyframes animate3 {
    0% {
        transform: translateX(100%);
    }
    100%{
        transform: translateX(-100%);
    }
}
.ygportalbutton a span:nth-child(4) {
    position: absolute;
    top: 0;
    left: 0; 
    width: 2px;
    height: 100%;
    background: linear-gradient(to top, #0c002b, #0c408a);
    animation: animate4 2s linear infinite;
    animation-delay: 3s;
}
@keyframes animate4 {
    0% {
        transform: translateY(100%);
    }
    100%{
        transform: translateY(-100%);
    }
}
/* yokogawa portal button - Text Animation */
.wavy {
    margin: 0;
    padding: 0;
    font-family: 'Times New Roman', Times, serif;
    letter-spacing: 0.5rem;
    position:  absolute;
    top: 85%;
    left: 20%;   
    display: flex;
    justify-content: center;
    align-items: center;
    /* min-height: 100vh; */
    background: transparent;
}
.wavy {
    -webkit-box-reflect: below -12px linear-gradient(transparent, rgba(0,0,0,0.2));
}
.wavy span {
    position: relative;
    display: inline-block;
    color: #fff;
    font-size: 1.3rem;
    /* text-transform: uppercase; */
    animation: animate 1s ease-in-out infinite;
    animation-delay: calc(0.1s * var(--i));
}
@keyframes animate {
    0% {
        transform: translateY(0px);
    }
    20% {
        transform: translateY(-20px);
    }
    40%,100% {
        transform: translateY(0px);
    }
}
.wavy .scrollleft img {
    width: 0.5rem;
}
.wavy .spacescroll {
    margin-right: 3rem;
}

/* Carousel (m) ---------------------------------------=*/
.carousel1 {
    grid-area: carousel1;
}

/* Distribution Lines (m) ------------------------------*/
#distribution-m {
    background: white;
    grid-area: distribution-m;
    min-height: 840px;
}

/* Data Science (m) ------------------------------*/
#datascience-m {
    margin: 0;
    padding: 0;
    min-height: 920px;
    background: #f5f5f5;
    grid-area: datascience-m;
    display: flex;
    justify-content: center;
}
#container-m-ds {
    margin: 0;
    padding: 0;
    width: 1200px;
    align-self: center;
}
.row1-ds {
    /* background: #eeeeee; */
    min-height: 55%;
    color: black;
    margin: 10px;
}
.titulo-ds h1 {
    text-align: center;
    font-size: 30px;
    font-weight: 600;
}
#row1main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 90%;
}
#row1main-col1 {
    margin-left: 25px;
    font-size: 22px;
    font-weight: 500;
    width: 60%;
}
#row1main-col1 .checkbox {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    font-weight: 400;
}
.checkbox_input {
    display: none;
}
.checkbox_box {
    width: 1.25em;
    height: 1.25em;
    border: 2px solid #cccccc;
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    flex-shrink: 0;
    transition: background 0.2s, border-color 0.2s;
}
.checkbox_box::after {
    content: '\2714';
    color: white;
    transform: scale(0);
    transition: transform 0.2s;
}
.checkbox_input:checked + .checkbox_box {
    background: #2266dc;
    border-color: #2266dc;
}
.checkbox_input:checked + .checkbox_box::after {
    transform: scale(1);
}
#row1main-col2 {
    width: 25%;
    background: #37474f;
    border: #212121;
    margin: 20px;
}
#row1main-col2-1 {
    margin: 20px;
    color: #fafafa;
}
.row1-ds .scheduleacall {
    width: 260px;
}
.row2-ds {
    margin: 10px;
    background: #cfd8dc;
    min-height: 45%;
    outline: 1px solid #546e7a;
    display: flex;
    justify-content: center;
    align-items: center;
}
.leftwheels {
    margin: 10px 0;
    width: 80%;
    height: 80%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    background: #263238;
}
.titleswheels {
    background: #263238;
    color: #91ccf3;
    font-size: 16px;
    font-weight: 400;
    width: 90%;
}
tab1 {
    display: inline-block;
    margin-left: 1.2em;
}
.wheels {
    /* padding: 5%; */
    box-sizing: border-box;
    width: 80%;
    display: flex;
    align-items: center;
    justify-content: space-around;
}
.titleswheels-bottom p {
    color: rgb(238, 235, 235);
    font-style: italic;
}
.wheel1, .wheel3, .wheel5 {
    width: 15%;
    height: 15%;
}
.wheel2, .wheel4, .wheel6 {
    width: 20%;
    height: 20%;
    margin: -50px 0px 20px 0px;
}
.wheel1 {
    -webkit-animation: spin 4s linear infinite;
	-moz-animation: spin 4s linear infinite;
	animation: spin 4s linear infinite;
}
.wheel2 {
    -webkit-animation: spin1 6s linear infinite;
	-moz-animation: spin1 6s linear infinite;
	animation: spin1 6s linear infinite;
}
.wheel3 {
    -webkit-animation: spin 4s linear infinite;
	-moz-animation: spin 4s linear infinite;
	animation: spin 4s linear infinite;
}
.wheel4 {
    -webkit-animation: spin1 6s linear infinite;
	-moz-animation: spin1 6s linear infinite;
	animation: spin1 6s linear infinite;
}
.wheel5 {
    -webkit-animation: spin 4s linear infinite;
	-moz-animation: spin 4s linear infinite;
	animation: spin 4s linear infinite;
}
.wheel6:hover{
	-webkit-animation: spin1 6s linear infinite;
	-moz-animation: spin1 6s linear infinite;
	animation: spin1 6s linear infinite;
}
/*use keyframes*/
@-webkit-keyframes spin{
	100%{-webkit-transform: rotate(360deg);}
}
@-moz-keyframes spin{
	100%{-webkit-transform: rotate(360deg);}
}
@keyframes spin{
	100%{-webkit-transform: rotate(360deg);}
}
@-webkit-keyframes spin1{
	100%{-webkit-transform: rotate(-360deg);}
}
@-moz-keyframes spin1{
	100%{-webkit-transform: rotate(-360deg);}
}
@keyframes spin1{
	100%{-webkit-transform: rotate(-360deg);}
}
#leftwheels {
    width: 60%;
    height: 80%;
    color: #263238;
    /* font-size: 28px;
    font-weight: 500;
    font-style: italic;
    text-align: center; */
}
#leftwheels p {
    font-size: 20px;
    font-weight: 500;
    font-style: italic;
    text-align: center;
}
#rightwheels {
    width: 30%;
    height: 80%;
}

/* Footer (m) -------------------------------------------*/
.footer {
    grid-area: footer;
}

/* TABS MENU (DISTRIBUTION LINES) -------------------------------------------------------------------------------------- */
.hero{
    width: 90%;
    /* min-width: 768px; */
    height: 640px;
    position: relative;
    margin: 100px 20px;
    overflow: hidden;
}
.btn-box {
    display: flex;
    border-bottom: 1px solid #ccc;
}
.btn-box button {
    background: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 14px 16px;
    margin-right: 50px;
    font-size: 20px;
    font-weight: 500;
}
.btn-box .fas {
    margin-right: 20px;
}
.btn-box button:hover .fas {
    color: #bdbdbd;
}
.content-right img {
    width: 80%;
}
.content{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 5% auto;
    position: absolute;
    transform: translate(100%);
    transition: 0.3s;
}
.content-left {
    flex-basis: 50%;
}
.content-left h1 {
    font-size: 36px;
    font-weight: 600;
}
.content-left p {
    font-size: 16px;
    font-weight: 300;
    padding: 30px 0;
    text-align: justify;
    text-justify: inter-word;
}
.content-left a {
    width: 180px;
    display: block;
    padding: 8px 5px;
    border-radius: 10px;
    text-decoration: none;
    background-color: #546e7a;
    color: #fff;
    text-align: center;
}
.content-left a:hover {
    background-color: #607d8b;
    color: #bdbdbd;
}
.content-right {
    flex-basis: 50%;
    text-align: center;
}
#content1 {
    transform: translate(0px);
}
#btn1 {
    color: #546e7a;
}

/* ------------------------  RESPONSIVE DESIGN ------------------------------------------------------------------------ */

/* Large devices (desktops, less than 1200px) ----------------------- */
@media (max-width: 1199.98px) {
    /*main */
    #mainarea-m h2 {
        font-size: 28px;
        font-weight: 700;
    }
    /* datascience */
    #container-m-ds {
        width: 900px;
    }
    .leftwheels {
        width: 90%;
        height: 90%;
    }
    .titleswheels {
        font-size: 9px;
        font-weight: 100;
        width: 100%;
    }
    tab1 {
        display: inline-block;
        margin-left: 0.3em;
    }
}

/* Medium devices (tablets, less than 992px) ------------------------ */
@media (max-width: 991.98px) {
    /*main */    
    #mainarea-m h2 {
        font-size: 26px;
        font-weight: 700;
        letter-spacing: 1.25px;
        line-height: 50px;
    }
    #mainarea-m p {
        width: 25em;
    }
    /* datascience */
    #container-m-ds {
        width: 767px;
    }
    tab1 {
        display: inline-block;
        margin-left: 6em;
    }
    .wheels {
        display: none;
    }
}

/* Small devices (landscape phones, less than 768px)  */
@media (max-width: 767.98px) {
    /*main */  
    #mainarea-m h2 {
        font-size: 22px;
        font-weight: 600;
        letter-spacing: 1px;
        line-height: 40px;
    }
    #mainarea-m p {
        font-size: 1rem;
        font-weight: 400;
        margin-right: 3.5em;
        width: 20em;
    }
    /* distribution-m */
    .hero{
        min-height: 650px;
    }
    .hero .btn-box button {
        font-size: 1rem;
        font-weight: 400;
    }
    .hero .content-left p {
        font-size: 14px;
        font-weight: 300;
        padding: 20px 0;
        text-align: justify;
        text-justify: inter-word;
    }
    /* datascience */
    #container-m-ds {
        width: 400px;
    }
    .row1-ds {
        min-height: 100%;
        margin: 10px;
    }
    .titulo-ds h1 {
        font-size: 22px;
        font-weight: 500;
    }
    #row1main {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-between;
    }
    #row1main-col1 {
        font-size: 16px;
        font-weight: 400;
        width: 100%;
        margin: 10px;
    }
    #row1main-col2 {
        width: 100%;
        margin: 10px;
    }
    .row2-ds {
        display: none;
    }
}