@font-face {
    font-family: 'WorkSans Medium';
    src: url('../fonts/WorkSans-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'WorkSans SemiBold';
    src: url('../fonts/WorkSans-SemiBold.ttf') format('truetype');
}

@font-face {
    font-family: 'Kanit SemiBold';
    src: url('../fonts/Kanit-SemiBold.ttf') format('truetype');
} 

:root {
    /* Colors: */
    --Glacier-Glacier800: #005461;

    /* Spacing: */
    --spacing0: 0rem;
    --reference: 0.0625rem;
    --spacing1: 0.125rem;
    --spacing2: 0.25rem;
    --spacing3: 0.5rem;
    --spacing4: 0.75rem;
    --spacing5: 1rem;
    --spacing6: 1.25rem;
    --spacing7: 1.5rem;
    --spacing8: 2rem;
    --spacing9: 2.5rem;
    --spacing10: 3rem;
    --spacing11: 4rem;
    --spacing12: 5rem;
    --spacing13: 8rem;
    --spacing14: 10rem;
    --spacing15: 12rem;
    --spacing16: 14rem;
    --spacing17: 16rem;
    --spacing18: 20rem;

    /* Font/text values */
    --font-family-worksans-medium: WorkSans Medium;
    --font-family-worksans-semibold: WorkSans SemiBold;
    --font-family-kanit-semibold: Kanit Semibold;
    --font-style-normal: normal;
    --font-weight-600: 600;
    --font-weight-700: 700;
    --font-weight-800: 800;
    --font-weight-normal: 400;
    --font-weight-bold: bold;
    --font-weight-medium: 500;

    --font-size-3: 3rem;
    --font-size-2-5: 2.5rem;
    --font-size-2: 2rem;
    --font-size-1-125: 1.125rem;
    --font-size-1: 1rem;
    --font-size-0-875: 0.875rem;

    --character-spacing-000-5: 0.005rem;

    --line-height-3-250: 3.250rem;
    --line-height-3: 3rem;
    --line-height-2-250: 2.250rem;
    --line-height-1-5: 1.5rem;
    --line-height-1-250: 1.250rem;

    --border-radius-corner-lg: 16px;
}
    
/*-----Character Styles-----*/

.heading-large{
    font-family: var(--font-family-kanit-semibold);
    font-size: var(--font-size-3);
    font-style: var(--font-style-normal);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-3-250);
    letter-spacing: 0.096px;
}

.body-medium{
    font-family: var(--font-family-worksans-medium);
    font-size: var(--font-size-1);  
    font-style: var(--font-style-normal);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-1-5);
}

/*-----Character Styles-----*/

body {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    max-width: 100vw;
    min-width: 100vw;
    overflow-x: hidden;
}

html{
    font-size: 16px;
}

::-webkit-scrollbar{
    display: none;
}

figure,
p,
h1,
h2,
h3,
h4,
h5,
h6{
    margin: 0;
}

a{
    text-decoration: none;
    cursor: pointer;
}

main {
    width: 100vw;
    height: 100vh;
    margin: auto;
}

ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

/*-----NO_SERVICE-----*/

.main-content {
    position: relative;
    width: 100vw;
    height: 100vh;
    background-color: var(--Glacier-Glacier800);
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto 1fr;
    justify-content: center;
    align-items: center;
    color: white;
    padding-top: 7.4074074074074074074074074074074vh;
    overflow: hidden;
}

.main-content .logo{
    margin: 0 auto;
    z-index: 2;
    width: revert;
}

.info{
    width: 46.354166666666666666666666666667%;
    max-width: 890px;
    margin: 7.4074074074074074074074074074074vh auto 0 auto;
}

.info section{
    position: relative;
    z-index: 2;
    max-width: 522px;
    display: flex;
    flex-direction: column;
    gap: var(--spacing8);
    margin: 0 auto;
    text-align: center;
}

.main-content figure{
    width: 46.354166666666666666666666666667%;
    align-self: end;
    max-width: 890px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

figure img{
    object-fit: cover;
    width: 100%;
}

.floating-img{
    position: absolute;
}

.floating-img-1{
    bottom: 0;
    left: 0;
    width: 30.989583333333333333333333333333%;
}

.floating-img-2{
    top: 0;
    right: 0;
    width: 28.020833333333333333333333333333%;
}

.social {
    position: absolute;
    right: 8.8020833333333333333333333333333%;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: var(--spacing8);
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.social a{
    display: flex;
    width: 100%;
    height: 100%;
}

/*-----NO_SERVICE-----*/

@media only screen and (max-width: 1366px){


    
}

@media only screen and (max-width: 1280px){

    .heading-large {
        font-size: var(--font-size-2-5);
        line-height: var(--line-height-3);
        letter-spacing: 0.08px;
    }

}

@media only screen and (max-width: 1080px){ 

    .main-content{
        padding: 6.25vh 32px 0 32px;
    }

    .main-content figure {
        width: 91.666666666666666666666666666667%;
        max-width: 704px;
    }

    .social{
        position: relative;
        flex-direction: row;
        transform: none;
        margin-top: 12.5vh;
        right: revert;
        top: revert;
    }

}

@media only screen and (max-width: 767px){

    .heading-large {
        font-size: var(--font-size-2);
        line-height: var(--line-height-2-250);
    }

    .main-content {
        padding: 10vh 0 0 0;
    }

    .main-content figure{
        width: 100%;
    }

    .info{
        width: 100%;
        margin: 6vh auto 0 auto;
        padding: 0 5%;
    }

    .logo{
        max-width: 216px;
    }

    .social {
        margin-top: 8vh;
        padding: 0 5%;
    }

    .floating-img-1{
        content: url('../img/component_1_mob.svg');
        width: revert;
    }

    .floating-img-2{
        content: url('../img/component_2_mob.svg');
        width: revert;
    }

}

@media (max-width: 767px) and (max-height: 799px) {
    .main-content{
        padding-top: 5vh;
    }
}

@media only screen and (max-width: 600px){

}

@media only screen and (max-width: 412px){

}

@media only screen and (max-width: 325px){

}