@font-face {
    font-family: "SM3태명조";
    src: url("../fonts/SM3Tae.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "SangBleu";
    src: url("../fonts/SangBleu.woff2") format("woff2");
    font-weight: 500;
    font-display: swap;
}

:root {
    --border: 1px solid black;
    --work-detail-left-width: 27%;
    --list-padding: 5px 20px;
    --height: 100dvh;
    --nav-height: clamp(90px, 18vw, 150px);
    --global-font-size:  clamp(14px, 2.5vw, 16px);
    --menu-font-size: clamp(16.5px, 2.5vw, 22.5px);
    --container-padding: clamp(8px, 2.5vw, 20px);
    --list-margin: clamp(6px, 2.5vw, 8px);
    --work-detail-gap-between: clamp(8px 2.5vw, 30px);
}

::-moz-selection {
    background: black;
    color: white;
}

::selection {
    background: black;
    color: white;
}

::-webkit-scrollbar {
    display: none;
}

html,
body {
    width: 100%;
    height: 100%;
    line-height: 1.8rem;
    font-size: var(--global-font-size);
}

body {
    box-sizing: content-box;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 1920px;
    height: var(--height);
    background: white;
}

.container {
    position: relative;
    box-sizing: border-box;
    scrollbar-width: none;
    padding: var(--container-padding);
    padding-bottom: 0;
    width: 100%;
    display: grid;
    grid-template: "nav"
        "main";
    grid-template-rows: var(--nav-height) calc(var(--height) - var(--nav-height) - 20px);
    height: var(--height);
    overflow: hidden;
}

.container[data-language="ko"] [data-lang="en"] {
  display: none;
}

.container[data-language="en"] [data-lang="ko"] {
  display: none;
}

.container[data-language="ko"] [data-lang="en"] {
  display: none;
}

.container[data-language="en"] [data-lang="ko"] {
  display: none;
}

[data-lang] p,
[data-lang] ul {
  margin-bottom: 1rem;
}

[data-lang] p:last-child {
  margin-bottom: 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: var(--border);
    padding: 0;
    margin: 0;
}

nav {
    position: sticky;
    top: 0;
    height: 100%;
    
    
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: flex-start;
}

.container.home main {
    border-top: 0px;
}

main {
    font-family: "SangBleu", "SM3태명조";
    height: auto;
    overflow-y: scroll;
    border-top: var(--border);
}

.menus {
    font-family: Helvetica, "Arial", sans-serif;
    display: grid;
    grid-template-columns: repeat(4, auto);
    grid-template-rows: repeat(4, auto);
    max-width: fit-content;
}

.menus span {
    width: fit-content;
}

.menus span:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
}

.menus span:nth-child(2) {
    grid-column: 2;
    grid-row: 2;
}

.menus span:nth-child(3) {
    grid-column: 3;
    grid-row: 3;
}

.menus span:nth-child(4) {
    grid-column: 1;
    grid-row: 3;
}

.menus span:nth-child(5) {
    grid-column: 4;
    grid-row: 4;
}

p {
    margin: 0;
    padding: 0;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

a {
    color: black;
    text-decoration: none;
}

.container nav .lang-button {
    font-family: Helvetica, "Arial", sans-serif;
    font-size: var(--menu-font-size);
    line-height: 1.04;
    background: none;
    border: none;     
    padding: 0;
}

.container nav .lang-button:hover {
    cursor: pointer;
}

.container.home nav .lang-button {
    display: none;
}

.container.home a {
    color: white;
}

.container.home span {
    background-color: none;
}

.container .menus a {
    font-size: var(--menu-font-size);
    line-height: 1.04;
    display: flex;
    align-items: center;
    justify-content: center;
}

.container[class="container"] .menus span {
    visibility: hidden;
}

.menus span:hover>a:hover {
    cursor: pointer;
}

.title a {
    text-decoration: underline;
}

.title a:hover {
    text-decoration: none;
}


.container.work ul,
.container.news ul {
    display: grid;
}

.container.work ul a,
.container.news ul a {
    text-decoration: none;
    color: black;
    border-bottom: var(--border);
}

.container.work ul li {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr auto;
    padding-block: var(--list-padding);
    gap: 5px;
}

.container.news ul li {
    display: grid;
    grid-template-columns: 0.7fr 1fr 1fr;
    padding-block: var(--list-padding);
    gap: 5px;
}

.container.work ul li div,
.container.news ul li div {
    /* white-space: nowrap; */
    overflow: hidden;
    /* text-overflow: ellipsis; */
}

.container.work-detail main {
    grid-area: "main";
    display: grid;
    grid-template: "left right";
    grid-template-columns: var(--work-detail-left-width) calc(100% - var(--work-detail-left-width) - 30px);
    gap: 30px;
    overflow-y: hidden;
    border-top: 0px;
}

.container.work-detail main .left,
.container.work-detail main .right {
    box-sizing: border-box;
    width: 100%;
    display: flex;
    flex-direction: column;
    height: calc(var(--height) - var(--nav-height) - 45px);
    overflow-y: scroll;
    padding-bottom: 30px;
    scrollbar-width: none;
}

.container.work-detail main .left {
    border-top: var(--border)
}

.container.work-detail main .left .top-container {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding-top: 5px;
}

.container.work-detail main .left .top-container div:last-child {
    margin-bottom: 90px;
}

.container.work-detail main .credit {
    white-space: pre-line;
}


.container.work-detail main .right img {
    width: 100%;
}

.critics-container,
.articles-container {
    border-top: 1px solid black;
    padding: 1em 0 1em 0;
}

.container.biography section>p:first-child {
    padding-block: var(--list-padding);
}

.container.biography section {
    border-bottom: var(--border)
}

.container.biography section>ul {
    display: flex;
    flex-direction: column;
    margin-block: 40px 65px;
}

.container.biography section>ul>li {
    display: grid;
    grid-template-columns: clamp(100px, 18vw, 180px) auto;
    margin-bottom: var(--list-margin);
    gap: 5px;
}

.container.biography .description {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.biography-title {
    position: sticky;
    top: 0;
    background-color: white;
}

.container.contact p {
    padding-block: var(--list-padding);
    border-bottom: var(--border);
}

@media screen and (max-width: 1280px) {}

@media screen and (max-width: 1280px) {}

@media screen and (max-width: 768px) {
    .container.work-detail main {
        grid-template-columns: 1fr;
        grid-template-areas:
            "left"
            "right";
        gap: 30px;
        overflow-y: scroll;
    }

    .container.work-detail main .left,
    .container.work-detail main .right {
        height: auto;
        overflow-y: visible;
    }
    
    .container.work-detail main .right {
        padding-bottom: var(--container-padding);
    }
}

@media screen and (max-width: 580px) {


}
