@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Gowun+Dodum&family=Noto+Sans+KR:wght@100;400;700&display=swap');

:root {
    --color: #1D4582;
    --noto: 'Noto Sans KR';
    --insta: linear-gradient(232deg, rgba(81,91,212,1) 14%, rgba(129,52,175,1) 34%, rgba(221,42,123,1) 55%, rgba(254,218,119,1) 79%, rgba(245,133,41,1) 100%);
}

* {
    font-family: 'Gowun Dodum', sans-serif;
    font-weight: 400;
    font-size: 18px;
    text-align: center;
}
b {
    font-weight: bold;
}

/* Page start */
html, body {
    padding: 0;
    margin: 0;
    background-color: var(--color);
}
body {
    position: relative;
}

/* Main Title */
h1 {
    font-family: var(--noto), sans-serif;
    font-size: 40px;
    font-weight: 700;
    color: white;
    margin-top: 50px;    
}

article {
    background-color: white;
    padding: 40px 20px 100px 10px;
    border-radius: 50px 50px 0px 0px;

    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(max(400px, calc((100% - 20px) / 3)), 1fr));
    grid-auto-rows: minmax(300px, auto);
    gap: 10px;

    align-items: center;
    justify-items: center;
    margin: 0px 5vw 0px 5vw;
}

.gridcell {
    width: 400px;
    padding: 0px 0px 30px 0px;
} .gridcell:hover {
    border: 2px dashed var(--color);
    box-shadow: 20px 14px rgb(56, 56, 56);
} .gridcell:hover > h2 {
    font-size: 33px;
    font-weight: bold;
    
    background: linear-gradient(to right, #6666ff, #0077ff , #48ff00, #ff3355, #6666ff);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: rainbow_animation 2s ease-in infinite;
    background-size: 400% 100%;
} @keyframes rainbow_animation {
    0%,100% { background-position: 0 0; }
    50% { background-position: 100% 0;  }
}

/* Table */
table {
    grid-row: span 2;
    padding: 0;
    margin: 0
}
td, th {
    border: 1px solid var(--color);
}
td > img {
    margin: 7px;
    width: 320px;
}
.tbltitle {
    background-color: var(--color);
    color: white;
    font-weight: bold;
}

/* Section Title */
h2 {
    font-weight: bold;
    color: darkslateblue;
    font-size: 27px;
}

/* SNS Links */
.sns {
    font-weight: 700;
    font-family: var(--noto), sans-serif;
    font-size: 20px;
    display: inline-block;
    width: 250px;
    cursor: pointer;
}
#instagram {
    background: var(--insta);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
} #instagram:hover {
    background: var(--insta);
    -webkit-text-fill-color: white;
}
#naverblog {
    color: #2db400;
} #naverblog:hover {
    color: white;
    background-color: #2db400;
}
#tistory {
    color: #d05d30;
} #tistory:hover {
    color: white;
    background-color: #d05d30;
}
#brunch {
    color: #494042;
} #brunch:hover {
    color: white;
    background-color: #494042;
}
#youtube {
    color: red;
} #youtube:hover {
    color: white;
    background-color: red;
}
#github {
    color: black;
} #github:hover {
    color: white;
    background-color: black;
}

#contact {
    font-size: 23px;
    font-weight: bold;
    color: var(--color);
}
form input {
    accent-color: var(--color);
    border: dotted black;
    transform: scale(1.2);
}

hr {
    margin: 10px 5vw
}

footer {
    background-color: white;
    border-radius: 0px 0px 50px 50px;
    padding: 7px 0px 7px 0px;
    margin: 0px 5vw 50px 5vw;
}