/* October 24, 36-page revision. Layout units follow the 1920/393 Figma frames. */
:root{--hangul-font:"Noto Sans KR";--received-text:InterDigits,SuiteLatin,Inter,var(--hangul-font),sans-serif}
[hidden]{display:none!important}
.main-nav>a[aria-current]{font-weight:inherit}
.page-home{background:#e6e7e9}
.main-entry{padding-top:6.35417vw;position:relative}
.main-film{display:block;width:100%;height:44.53125vw;object-fit:cover}
.main-film-toggle{position:absolute;right:24px;bottom:90px;border:1px solid currentColor;border-radius:20px;background:#e6e7e9df;padding:7px 12px;font-size:12px;opacity:0}
.main-film-toggle:focus-visible{opacity:1}
.main-sponsors{height:7.13542vw;min-height:80px;display:flex;align-items:center;justify-content:center;gap:1.25vw}
.main-sponsors img{max-width:6vw;max-height:1.5vw;object-fit:contain}
.signature{font-size:1em;font-weight:400;text-align:left;line-height:inherit}
.signature span{font-weight:inherit}
.about-copy,.venue>p,.people-table,.graduate-names{font-family:var(--received-text)}
.graduate-names{display:grid;grid-template-columns:repeat(8,max-content);justify-content:space-between;column-gap:.5em;row-gap:0}
.people-table>div{grid-template-columns:36% 1fr}
.committee>div{grid-template-columns:27% 1fr}
.people-table dd{min-width:0}
/* Figma 20:9355 / 20:9419 and revision PDF pp.11–12:
   the list and detail share the same four gradient stops across the FULL
   page height. Do not replace their ratios with viewport-sized edge fades.
   Percentages below include Figma's paint transform; at the source nodes
   the stops are 0 / 7.79748559 / 93.16558838 / 100 percent.
   Mobile frames 5:1896 / 15:7734 have separate stops; normalize each after
   removing the 63px iOS status area represented in the supplied frame. */
.page-designers:not(:has(.floorplan-layout)){
  background:linear-gradient(180deg,
    #e6e7e9 2.0635535703%,
    #f1f1f1 9.8383762864%,
    #f1f1f1 94.9583623557%,
    #e6e7e9 101.7729102134%);
}
@media(max-width:700px){
  .page-designers:not(:has(.floorplan-layout)){
  background:linear-gradient(180deg,
    #e6e7e9 -3.5151047707%,
    #f1f1f1 30.9389920575%,
    #f1f1f1 67.9264817762%,
    #e6e7e9 101.8738987699%);
}
  .page-designers.profile-selected:not(:has(.floorplan-layout)){
  background:linear-gradient(180deg,
    #e6e7e9 -4.3971753565%,
    #f1f1f1 44.6583827105%,
    #f1f1f1 68.6751659845%,
    #e6e7e9 101.8898665940%);
}
}
.designer-visual .designer-shape{width:100%;height:100%;object-fit:contain;transform:none}
.designer-card>strong,.designer-english{font-size:clamp(14px,1.458333vw,28px);font-weight:700}
.designer-card>strong{font-family:Inter,var(--hangul-font),sans-serif}
.designer-english{font-family:SUITE,sans-serif}
.designer-profile{border-bottom:0;outline:none}
.profile-text{display:flex;flex-direction:column;min-width:0}
.profile-text h1{font-family:Inter,var(--hangul-font),sans-serif;font-weight:700}
.profile-english{font-family:SUITE,sans-serif;line-height:1.2}
.profile-contacts{font-family:var(--received-text);font-weight:700;line-height:1.5;gap:8px}
.profile-contacts a,.work-author-contacts a{display:flex;align-items:center;gap:.4em;min-width:0;overflow-wrap:anywhere}
.contact-icon{display:inline-block;width:1em;height:1em;object-fit:contain;flex:none}
.profile-work-links{margin-top:auto;padding-top:1.927083vw;gap:2.03125vw}
.profile-work-links a{font-family:var(--received-text);line-height:1.25}
.profile-work-links small{font-family:SUITE,sans-serif;line-height:1.2;margin-bottom:.833333vw}
.profile-interview{margin-top:3.177083vw}
.interview-grid{font-family:Inter,var(--hangul-font),sans-serif;letter-spacing:-.08em}
.interview-grid h3,.interview-grid p{line-height:1.6;word-break:keep-all;overflow-wrap:anywhere}
.floorplan-layout .designer-tabs{margin-bottom:1.3vw}
.floorplan-stage{display:block;padding-top:0}
.floorplan-map{width:26.38vw;max-width:507px;margin:0 auto;transform:translateX(-2.35vw)}
.booth{left:calc(var(--x)*.988154 + .59229%);top:calc(var(--y)*.990868 + .45662%)}
.floorplan-legend{position:absolute;left:calc(50% + 19.55vw);bottom:10px;padding:0;gap:22px;font-size:clamp(12px,1.04167vw,20px);white-space:nowrap}
.booth-info{font-size:clamp(14px,1.25vw,24px);padding-top:30px;min-height:80px}
.floorplan-profile .profile-text h1{letter-spacing:0;display:flex;align-items:baseline;gap:.25em;flex-wrap:wrap}
.profile-booth{font:800 .5em SUITE,sans-serif;letter-spacing:0}
.floorplan-profile .profile-interview{margin-top:2.34375vw}
.floorplan-profile .profile-interview h2{display:flex;align-items:flex-end;gap:10px;font-weight:800}
.interview-mark{width:clamp(24px,2.8vw,54px);height:auto;object-fit:contain;margin-bottom:.12em}
.floorplan-profile .interview-grid h3,.floorplan-profile .interview-grid p{line-height:1.7}
.floorplan-profile .profile-works-section h2{text-align:center}
.profile-works{padding:20px 16px 45px;margin-left:-16px;margin-right:-16px}
.profile-works a:hover,.profile-works a:focus-visible{transform:scale(1.1)}
.profile-works img{display:block;width:100%}
.floorplan-profile .profile-works strong{font-size:clamp(14px,1.25vw,24px);line-height:1.5}
.works-selector{height:29vw;--category-ease:cubic-bezier(0,0,.58,1)}
.category-ray{top:-41.7292vw;max-width:none}
.category-nav{mask:none}
.category-nav a,.category-nav.is-rotating a{left:var(--arc-x);top:var(--arc-y);transition:color .3s;max-width:none;transform:translate(-50%,-50%)}
.category-nav a span{position:relative;left:var(--text-offset,0px)}
.works-selector:has(.category-nav.is-rotating) .category-ray img{transition:transform 1s cubic-bezier(0,0,.58,1)}
.work-card-shade{background:linear-gradient(transparent 45%,#ffffffd9 100%)}
.work-card:after{inset:20% -4% -15%;background:#f311922b;filter:blur(36px)}
.work-heading h1,.work-credit strong,.work-prose,.work-author strong{font-family:Inter,var(--hangul-font),sans-serif}
.work-heading h1{line-height:1.25}
.work-heading p{margin-top:0;line-height:1.25}
.work-credit a{line-height:1.35}
.work-author-person{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:18px;align-content:start}
.work-author-person>a{display:contents}
.work-author-person>a>img{grid-column:1;grid-row:1 / span 2;align-self:start}
.work-author-person>a>span{grid-column:2;align-self:start;line-height:1.3;font-family:SUITE,sans-serif}
.work-author strong{line-height:1.2;margin:0 0 2px}
.work-author-contacts{grid-column:2;margin-top:8px;font-family:var(--received-text);font-weight:700;line-height:1.35;gap:5px}
.work-author .contact-icon{width:14px;height:14px;filter:invert(1)}
.work-end{width:70.8333%;align-items:end;gap:4.3382%;grid-template-columns:1fr 1fr}
.related-works h2{font-size:clamp(12px,1.25vw,24px);line-height:1.3;display:flex;align-items:flex-end;justify-content:flex-end;gap:5px;white-space:normal}
.related-icon{margin:0 0 .12em;flex:none}
.related-works .work-card-shade{display:none}
.related-works .card-caption strong{font-size:clamp(13px,1.04167vw,20px);line-height:1.35}
.message-day{border:0}
.message-day>time{font-family:SUITE,sans-serif;font-size:clamp(14px,1.25vw,24px);color:#666;background:none}
.name-field input,.message-field textarea,.message-circle strong,.message-circle>span,.message-dialog-content>p,.message-dialog-bottom strong{font-family:var(--received-text)}
.name-field input::placeholder,.message-field textarea::placeholder{color:#666;opacity:1}
.message-disc{height:48.4896vw;min-height:0;padding:12.5521vw 0 0;overflow:visible;align-content:start}
.message-dialog-content>time{font-family:Inter,sans-serif}
/* Let vertical scrolling continue into the detail page at either text edge.
   The outer dialog still contains scrolling and keeps the message board fixed. */
.message-dialog-content>p{max-height:17.7vw;overflow-y:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-width:thin;scrollbar-color:#ffffff80 transparent;line-height:2}
.message-dialog-bottom{margin-top:3.9583vw}
.message-dialog-bottom button:focus{outline:none}
.message-dialog-bottom button:focus-visible{outline:2px solid white;outline-offset:4px}
.message-detail-page{isolation:isolate}
@media(max-width:1100px) and (min-width:701px){
 .graduate-names{grid-template-columns:repeat(6,max-content)}
 .profile-work-links{gap:16px;padding-top:20px}
 .profile-contacts{font-size:12px}
 .work-author-person{grid-template-columns:75px minmax(0,1fr);column-gap:12px}
 .work-author-person>a>img{width:75px;height:75px}
 .work-end{width:80%}
}
@media(max-width:700px){
 .main-entry{padding-top:66px}
 .main-film{height:auto;aspect-ratio:1920/855;object-fit:contain}
 .main-sponsors{gap:15px;min-height:70px}
 .main-sponsors img{max-width:16vw;max-height:20px}
 .main-film-toggle{bottom:76px;right:16px}
 .signature{font-size:14px}
 .graduate-names{grid-template-columns:repeat(6,max-content);font-size:14px;column-gap:5px}
 .people-table>div{grid-template-columns:39% 1fr}
 .committee>div{grid-template-columns:27% 1fr}
 .designer-card>strong{font-size:14px;font-weight:600}
 .designer-english{font-size:12px;font-weight:800;text-align:center}
 .designer-card{padding-left:7px;padding-right:7px}
 .profile-text h1{font-size:28px;margin-bottom:4px}
 .profile-english{font-size:22px}
 .profile-contacts{font-size:11px;line-height:1.5;gap:5px;margin-top:15px}
 .profile-work-links{gap:10px;padding-top:16px}
 .profile-work-links a{font-size:12px}
 .profile-work-links small{font-size:10px;margin-bottom:5px}
 .profile-interview{margin-top:42px}
 .floorplan-layout .designer-tabs{margin-bottom:28px}
 .floorplan-stage{padding-top:70px}
 .floorplan-map{width:calc(100% - 58px);max-width:none;margin:0 25px 0 33px;transform:none}
 .floorplan-legend{position:static;display:flex;gap:82px;justify-content:center;margin:75px auto 0;font-size:12px}
 .floorplan-legend>span{gap:8px}
 .booth-info{font-size:12px;padding-top:24px;min-height:65px}
 .booth[aria-pressed=true]:not(:hover):not(:focus-visible) .booth-name{opacity:1}
 .floorplan-layout.is-detail{padding-top:82px}
 .floorplan-layout.is-detail .floorplan-stage,.floorplan-layout.is-detail .designer-tabs{display:none}
 .floorplan-profile{margin-top:0}
 .floorplan-profile .profile-top{display:grid;grid-template-columns:46% minmax(0,1fr);gap:0 18px;align-items:start}
 .floorplan-profile .profile-text{display:contents}
 .floorplan-profile .profile-picture{grid-row:1 / span 3;grid-column:1}
 .floorplan-profile .profile-text>h1{grid-column:2;align-self:end;font-size:28px;margin-bottom:4px}
 .floorplan-profile .profile-english{grid-column:2;white-space:nowrap;overflow-wrap:normal;font-size:clamp(12px,4vw,18px);align-self:start}
 .floorplan-profile .profile-contacts{grid-column:2;align-self:end;margin:12px 0 0}
 .floorplan-profile .profile-interview{grid-column:1/-1;margin-top:42px}
 .floorplan-profile .profile-works strong,.floorplan-profile .profile-works small{display:none}
 .floorplan-profile .profile-works-section{margin-top:35px}
 .floorplan-profile .profile-works{margin-top:0;padding-bottom:16px}
 .interview-mark{width:30px}
 .works-selector{height:62vw;min-height:240px}
 .category-ray{top:-76vw;width:115vw;mask-image:radial-gradient(circle,transparent 0%,transparent 12%,#000 23%)}
 .category-nav a,.category-nav a[aria-current]{font-size:11px;gap:8px;white-space:nowrap;padding:6px 0;max-width:none}
 .category-nav a[aria-current]{font-size:14px}
 .category-nav a i{width:7px;height:7px}
 .works-title{margin-top:20px}
 .work-end{width:auto;display:block}
 .work-author-person{grid-template-columns:75px minmax(0,1fr);column-gap:12px}
 .work-author-person>a>img{width:75px;height:75px}
 .work-author-contacts{margin-top:6px;font-size:10px;gap:3px}
 .work-author .contact-icon{width:12px;height:12px}
 .related-works{width:100%;margin-top:35px;padding-bottom:30px}
 .related-works h2{font-size:14px;justify-content:flex-start;gap:5px}
 .related-icon{width:22px;height:auto}
 .related-works .card-caption strong{font-size:12px}
 .message-lines,.message-dialog-background{background-image:url('assets/revision-20261024/messages-mobile.png');background-size:cover;background-position:center top}
 .messages-layout{padding-top:242px}
 .message-day{padding:44px 20px 0}
 .message-day>time{position:static;display:block;transform:none;padding:0;margin:0 0 53px;text-align:center;font-size:14px;line-height:1.5}
 .message-disc{width:122.3919vw;height:122.3919vw;min-height:0;margin:157px 0 15px -11.2vw;padding:87px 0 0}
 .message-dialog-content{width:69.2vw}
 .message-dialog-content>time{font-size:14px;line-height:2;margin-bottom:36px}
 .message-dialog-content>p{font-size:12px;line-height:2;letter-spacing:-.03em;max-height:42vw}
 .message-dialog-bottom{font-size:11.2px;margin-top:32px}
}
@media(max-width:360px){
 .graduate-names{font-size:12px}
 .designer-card>strong{font-size:13px}
 .designer-english{font-size:10px}
 .profile-contacts{font-size:10px}
 .profile-text h1,.floorplan-profile .profile-text>h1{font-size:24px}
 .profile-top,.floorplan-profile .profile-top{column-gap:12px}
 .floorplan-legend{gap:50px}
 .category-nav a{font-size:10px}
 .category-nav a[aria-current]{font-size:12px}
 .message-disc{margin-top:135px;padding-top:65px}
 .message-dialog-content>time{margin-bottom:24px;font-size:12px}
 .message-dialog-content>p{max-height:40vw;font-size:11px}
 .message-dialog-bottom{margin-top:20px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.category-ray img{transition:none!important}}

.mobile-home-about{display:none}
@media(min-width:701px){[data-home-footer],[data-home-top]{display:none}}
@media(max-width:700px){
 .page-home{background:linear-gradient(#e6e7e9 0,#e6e7e9 calc(80px + 141.54vw),#fff calc(160px + 141.54vw))}
 .main-entry{display:none}.mobile-home-about{display:block}
 .works-selector{height:70vw;min-height:254px}
 /* Keep the same top anchor during rotation. The desktop rotating rule
    translates by -50% on Y; letting it override this mobile rule made
    every label jump up by half its height, then drop when rotation ended. */
 .category-nav a,.category-nav.is-rotating a{transform:translateX(-50%)}
 .category-nav a[aria-current] span{margin-top:12px}
}
@media(max-width:700px){
 body.menu-open .site-header,body.page-work-detail.menu-open .site-header,body.message-open.menu-open .site-header{color:#000}
}

.graduate-desktop{display:block}.graduate-mobile{display:none}
.graduate-row{display:flex;flex-wrap:wrap;gap:0 .8em}
.people-table dt{font-weight:700}
@media(max-width:700px){
 .graduate-desktop{display:none}
 .graduate-mobile{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0 6px;font-size:12px;line-height:2.65;letter-spacing:-.03em}
}
.message-dialog-content>time{font-family:Inter,var(--hangul-font),sans-serif}
@media(max-width:700px){.graduate-mobile{font-size:14px;gap:0 3px}.committee>div{grid-template-columns:20.1% 1fr}}
@media(max-width:360px){.graduate-mobile{font-size:12px}}
.message-dialog-content>time{font-weight:500}
#message-text:focus-visible{outline:1px solid #ffffff80;outline-offset:4px}
.designer-profile:not(.floorplan-profile) .profile-picture{align-self:stretch;height:100%}
@media(max-width:700px){
 .profile-text h1{letter-spacing:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:.25em}
 .profile-text h1.long-name,.floorplan-profile .profile-text>h1.long-name{font-size:20px}
 .profile-english,.floorplan-profile .profile-english{white-space:nowrap;font-size:clamp(16px,5.6vw,22px);overflow-wrap:normal}
 .profile-contacts{margin-top:10px}
 .profile-work-links{padding-top:10px;gap:8px}
 .profile-works strong,.profile-works small{display:none}
}
/* The newly supplied circle PNGs contain white pixels, not an alpha channel. */
.designer-card{isolation:auto}
.designer-visual{mix-blend-mode:multiply}
.designer-profile:not(.floorplan-profile) .profile-picture{width:100%}
.profile-work-links small{font-weight:700}
@media(min-width:701px){
 .profile-contacts{line-height:1;margin-top:1.354167vw;gap:1.145833vw}
 .profile-work-links a,.profile-work-links small{line-height:1}
}
/* Original Figma 6:620 / 25:6388: a blurred grey disc opens the centre. */
.works-selector:before{content:'';position:absolute;z-index:1;pointer-events:none;left:38.59375%;top:-19.791667vw;width:22.864583vw;height:22.864583vw;border-radius:50%;background:#e6e7e9;filter:blur(1.09375vw)}
.category-nav{z-index:2}
@media(max-width:700px){
 .category-ray{width:117.048346vw;height:113.740458vw;aspect-ratio:auto;top:-69.720102vw;mask:none}
 .works-selector:before{left:26.717557%;top:-23.155216vw;width:46.726205vw;height:46.726205vw;filter:blur(2.235194vw)}
}

@media(max-width:700px){
 .graduate-mobile{display:block;font-size:clamp(11px,3.56234vw,14px);line-height:2.64;letter-spacing:-.024em}
 .graduate-mobile .graduate-row{flex-wrap:nowrap;gap:0 clamp(3px,.9vw,5px)}
}
/* MAIN sponsor group: original Figma 44:2520, 429.714 × 23.988 at y1027.612. */
@media(min-width:701px){
 .page-home{background:#fff}
 .main-sponsors{background:#fff;justify-content:space-between;gap:0;align-items:flex-start;padding:2.63602vw calc((100% - 22.380962vw)/2) 0}
 .main-sponsors img{width:2.700283vw;height:auto;max-width:none;max-height:none}
 .main-sponsors img:nth-child(2){width:2.21665vw;margin-top:.080605vw}
 .main-sponsors img:nth-child(3){width:1.735172vw;margin-top:.05572vw}
 .main-sponsors img:nth-child(4){width:2.901796vw;margin-top:.080605vw}
}
