/* ===========================
   Company Page
=========================== */

.company-page{
    max-width:1100px;
    margin:0 auto;
    padding:80px 20px;
    color:#333;
}

.company-page h1{
    text-align:center;
    font-size:3.2rem;
    font-weight:700;
    color:#01C8BD;
    margin-bottom:70px;
    position:relative;
}

.company-page h1::after{
    content:"";
    width:90px;
    height:4px;
    background:#FFC900;
    display:block;
    margin:18px auto 0;
    border-radius:20px;
}

/* -----------------
intro
------------------*/

.company-intro{
    display:grid;
    grid-template-columns:1fr 520px;
    gap:60px;
    align-items:center;
    margin-bottom:90px;
}

.company-intro-text{
    background:#fff;
    padding:45px;
    border-radius:30px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.company-intro-text p{
    margin:0;
    font-size:1.8rem;
    line-height:2.2;
    font-weight:500;
}

.company-main-image img{
    width:100%;
    border-radius:30px;
    display:block;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

/* -----------------
section
------------------*/

.company-section{
    margin-bottom:80px;
}

.company-section h2{
    font-size:2.4rem;
    color:#01C8BD;
    margin-bottom:35px;
    padding-bottom:15px;
    border-bottom:3px solid #01C8BD;
}

/* -----------------
table
------------------*/

.company-table{
    background:#fff;
    border-radius:30px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.company-table>div{
    display:grid;
    grid-template-columns:240px 1fr;
    border-bottom:1px solid #eee;
}

.company-table>div:last-child{
    border:none;
}

.company-table dt{
    background:#F8F8F8;
    padding:25px;
    font-weight:700;
    color:#01C8BD;
    display:flex;
    align-items:center;
}

.company-table dd{
    margin:0;
    padding:25px 30px;
    line-height:2;
}

.company-table a{
    color:#008AE6;
    word-break:break-all;
}

/* -----------------
gallery
------------------*/
/* -----------------
gallery
------------------*/

.company-gallery{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-top:70px;
    align-items:stretch;
}

.company-gallery figure{
    margin:0;
}

.company-gallery img{
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    display:block;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    transition:.3s;
}

.company-gallery img:hover{
    transform:translateY(-6px);
}

@media(max-width:991px){

    .company-gallery{
        grid-template-columns:repeat(2,1fr);
        gap:18px;
    }

}

@media(max-width:767px){

    .company-gallery{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
        margin-top:40px;
    }

    .company-gallery img{
        border-radius:14px;
    }

}
/* -----------------
responsive
------------------*/

@media(max-width:991px){

.company-intro{
    grid-template-columns:1fr;
}

.company-table>div{
    grid-template-columns:1fr;
}

.company-table dt{
    justify-content:center;
}

}

@media(max-width:767px){

.company-page{
    padding:50px 15px;
}

.company-page h1{
    font-size:2.6rem;
    margin-bottom:45px;
}

.company-intro{
    gap:30px;
    margin-bottom:50px;
}

.company-intro-text{
    padding:28px;
}

.company-intro-text p{
    font-size:1.6rem;
    line-height:2;
}

.company-section{
    margin-bottom:50px;
}

.company-section h2{
    font-size:2rem;
}

.company-table dt,
.company-table dd{
    padding:18px;
}


}