@charset "utf-8"; 
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */ 

#skipToContent a {z-index:100000; position:absolute; top:0; left:0; width:1px; height:1px; font-size:0; line-height:0; overflow:hidden}
#skipToContent a:focus, 
#skipToContent a:active {width:200px; height:50px; background:#21272e; color:#fff; font-size:14px; font-weight:bold; text-align:center; text-decoration:none; line-height:50px; outline-color:#f37736; }

.only-desktop-tablet {display:block; }
.only-desktop {display:block; }
.only-tablet {display:none; }
.only-mobile {display:none; }

.contain {max-width:1500px;  padding-left:var(--space-container);  padding-right:var(--space-container);  margin:0 auto; }

/* 상단 띠 배너 — data-banner="off" 로 비노출 */
.top-banner {position:relative;  display:flex;  align-items:center;  justify-content:center;  width:100%;  height:64px;  padding:0 var(--space-container);  background:var(--color-primary);  color:#121212;  overflow:hidden;  font-size:var(--font-size-18);  line-height:1.5em; }
.top-banner[data-banner="off"]{display:none}
.top-banner-link{display:inline-flex;  align-items:center;  gap:14px;  min-width:0;  max-width:100%;  color:inherit;  font-weight:600; line-height:28px; letter-spacing:-0.02em;  white-space:nowrap; }
.top-banner-label{flex-shrink:0; padding:0 12px; border-radius:80px;  background:#121212;  color:#fff;  font-weight:700;  letter-spacing:.02em}
.top-banner-text{min-width:0; overflow:hidden; text-overflow:ellipsis}
.top-banner-link::after{content:""; position:absolute; inset:0}
.top-banner-link:focus-visible{outline:2px solid #121212; outline-offset:3px}


/* header */
#header {position:sticky;  top:0;  left:0;  width:100%;  z-index:100;  transition:.3s;  background:#fff;  border-bottom:1px solid #eee; }
#header .contain {position:relative;  display:flex;  align-items:center;  justify-content:space-between;  height:var(--header-height);  z-index:10; }

.sitelogo a {display:block; }
.sitelogo img,.sitelogo .logo-svg {height:52px; }
.head-right {display: flex;  align-items: center;  gap:60px;  flex-shrink: 0;   min-width:0; }

#gnb {}
#gnb>ul {display:flex;  justify-content:flex-end;  list-style:none ;  padding:0;  gap:50px; } 
#gnb>ul>li {position:relative; }
#gnb>ul>li>a {font-size:var(--font-size-18);  color:#2c2c2c;  font-weight:600;  letter-spacing:-.03em;  line-height:1.33em;  display:flex;  align-items:center;  justify-content:center;  height:var(--header-height); }
#gnb>ul>li:hover>a {color:var(--color-primary) !important; }
#gnb .submenu {display:none;  position:absolute;  left:50%;  width:200px;  transform:translateX(-50%);  background:#fff;  border-radius:16px; }
#gnb .submenu>ul {padding:var(--space-10);  display:grid;  gap:var(--space-10); }
#gnb .submenu>ul>li>a {border-radius:8px;  color:#8F8F8F;  display:block;  line-height:1.3em;  font-size:var(--font-size-16);  font-weight:500;  padding:var(--space-15) var(--space-20);  text-align:left; }
#gnb .submenu>ul>li>a:hover {color:#fff;  background:var(--color-primary); }

.head-util {display:flex;  align-items:center;  gap:20px; }
.head-search{display:flex; align-items:center; justify-content:space-between; gap:10px; width:320px; max-width:100%; min-width:0; flex-shrink:0; margin:0; padding:10px 16px; border:0; border-bottom:1px solid #dfdfdf; border-radius:0; background:transparent}
.head-search-input{flex:1 1 auto; min-width:0; width:100%; border:0; border-radius:0; padding:0; margin:0; font-size:16px; font-weight:500; color:#2c2c2c; background:transparent; font-family:inherit; line-height:26px; letter-spacing:-0.02em; -webkit-appearance:none; appearance:none}
.head-search-input::placeholder{color:#a8a8a8; font-weight:500; opacity:1}
.head-search-input:focus{outline:none}
.head-search-input::-webkit-search-cancel-button,.head-search-input::-webkit-search-decoration{display:none; -webkit-appearance:none}
.head-search-submit{flex-shrink:0; display:flex; align-items:center; justify-content:center; margin:0; padding:0; border:0; background:transparent; cursor:pointer; color:inherit}
.head-search-submit .icon{width:18px; height:18px; display:block; object-fit:contain}
a.account-link{display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; padding:10px 18px; border:1px solid #dfdfdf; border-radius:80px; background:#fff; font-size:16px; font-weight:600; line-height:26px; letter-spacing:-0.02em; color:#2c2c2c; white-space:nowrap; text-decoration:none; transition:background .2s,border-color .2s,color .2s}
a.account-link:hover,a.account-link:active,a.account-link:focus-visible{background:#121212; border-color:#121212; color:#fff}
/* 로그인 후 헤더 — Figma 15642:6379 */
.head-auth{display:inline-flex; align-items:center; gap:4px; flex-shrink:0}
.head-auth-logout{display:inline-flex; align-items:center; justify-content:center; margin:0; padding:10px 18px; border:0; border-radius:80px; background:#f1f1f1; font-family:inherit; font-size:16px; font-weight:600; line-height:26px; letter-spacing:-0.32px; color:#2c2c2c; white-space:nowrap; cursor:pointer; transition:background .2s,color .2s}
.head-auth-logout:hover,.head-auth-logout:focus-visible{background:#e4e4e4; color:#2c2c2c}
a.head-auth-mypage{display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; padding:14px; border-radius:80px; background:#ff511f; line-height:0; text-decoration:none; transition:background .2s,opacity .2s}
a.head-auth-mypage:hover,a.head-auth-mypage:focus-visible{background:#e64818}
a.head-auth-mypage img{display:block; width:20px; height:20px; object-fit:contain}
.head:not(:has(.head-right)) #gnb>ul{margin-left:auto}



/* for mobile */
.head-mobile-tools{display:none;align-items:center;gap:4px;margin-left:8px;flex-shrink:0}
.head-search-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;padding:0;margin:0;border:0;background:transparent;cursor:pointer;line-height:0}
.head-search-toggle img{display:block;width:20px;height:20px;object-fit:contain}
.head-search-layer{display:none;position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;border-bottom:1px solid #eee;box-shadow:0 12px 24px rgba(0,0,0,.08);box-sizing:border-box}
.head-search-layer-inner{padding:12px var(--sunday-gutter,20px) 16px;box-sizing:border-box}
.head-search-layer .head-search{width:100%;max-width:none}
.mobile-account{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:auto;padding:20px 24px calc(24px + env(safe-area-inset-bottom,0px));border-top:1px solid #eee}
.mobile-account form{margin:0;padding:0}
.mobile-account a,.mobile-account button{display:block;width:100%;margin:0;padding:10px 0;border:0;background:transparent;font-family:inherit;font-size:16px;font-weight:500;line-height:1.5em;letter-spacing:-0.02em;color:#676767;text-align:left;text-decoration:none;cursor:pointer}
.mobile-account a:hover,.mobile-account a:focus-visible,.mobile-account button:hover,.mobile-account button:focus-visible{color:var(--color-primary)}
.btn-m-menu {display:none;  position:relative;  width:26px;  height:26px; }
.btn-m-menu span {position:absolute;  left:0;  right:0;  top:50%;  height:2px;  margin-top:-1px;  background:#242424; }
.btn-m-menu span:before,
.btn-m-menu span:after {content:" ";  position:absolute;  left:0;  right:0;  height:2px;  background:#242424; }
.btn-m-menu span:before {top:-9px; }
.btn-m-menu span:after {bottom:-9px; }

.mobile-navigation{display:none;position:fixed;top:0;right:0;z-index:102;flex-direction:column;width:min(100%,400px);height:100%;height:100dvh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background:#fff;box-shadow:none;box-sizing:border-box;-ms-transform:translateX(100%);transform:translateX(100%);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1)}
.mobile-navigation::-webkit-scrollbar{display:none;width:0;height:0}
html.fr-view .mobile-navigation ul,html.fr-view .mobile-navigation ol,.mobile-navigation ul,.mobile-navigation ol{list-style:none;margin:0;padding:0}
.mobile-navigation .home{display:flex;align-items:center;flex-shrink:0;height:var(--header-height);padding:0 56px 0 24px;border-bottom:1px solid #eee;box-sizing:border-box}
.mobile-navigation .home:empty{display:none}
.mobile-navigation .home a{display:flex;align-items:center;line-height:0}
.mobile-navigation .home img,.mobile-navigation .home .logo-svg{display:block;height:42px;width:auto}
.mobile-navigation .nav-menu{flex:1 1 auto;padding:8px 24px 0;box-sizing:border-box}
.mobile-navigation .nav-menu>ul{border:0}
.mobile-navigation .nav-menu>ul>li{border-bottom:1px solid #eee}
.mobile-navigation .nav-menu>ul>li>a{position:relative;display:flex;align-items:center;padding:20px 0;color:#2c2c2c;font-size:22px;font-weight:600;line-height:1.36em;letter-spacing:-0.02em;text-decoration:none}
.mobile-navigation .nav-menu>ul>li>a:after{display:none}
.mobile-navigation .nav-menu>ul>li:has(>.submenu)>a{padding-right:28px}
.mobile-navigation .nav-menu>ul>li:has(>.submenu)>a:after{display:block;content:"";position:absolute;top:50%;right:0;width:8px;height:8px;border-right:1.5px solid #2c2c2c;border-bottom:1.5px solid #2c2c2c;transform:translateY(-70%) rotate(45deg)}
.mobile-navigation .nav-menu>ul>li.active:has(>.submenu)>a:after{transform:translateY(-20%) rotate(-135deg);border-color:var(--color-primary)}
.mobile-navigation .nav-menu>ul>li>a:hover,.mobile-navigation .nav-menu>ul>li>a:focus-visible,.mobile-navigation .nav-menu>ul>li>a[aria-current="page"],.mobile-navigation .nav-menu>ul>li.active>a{color:var(--color-primary);background:transparent}
.mobile-navigation .nav-menu .submenu{display:none;background:#fff;color:#676767;font-size:16px;font-weight:500;line-height:1.5em}
.mobile-navigation .nav-menu .submenu ul li{border-top:0;border-bottom:1px solid #eee}
.mobile-navigation .nav-menu .submenu ul li a{display:block;padding:12px 0;color:#676767;font-size:16px;font-weight:500;letter-spacing:-0.02em;text-decoration:none}
.mobile-navigation .nav-menu .submenu ul li a:hover,.mobile-navigation .nav-menu .submenu ul li a:focus-visible{color:var(--color-primary)}
.mobile-navigation .close{position:absolute;top:0;right:16px;z-index:2;width:24px;height:24px;margin-top:calc((var(--header-height) - 24px) / 2);text-indent:-9999em;overflow:hidden}
.mobile-navigation .close:before,.mobile-navigation .close:after{content:"";position:absolute;top:11px;left:2px;width:20px;height:1.5px;background:#2c2c2c}
.mobile-navigation .close:before{transform:rotate(45deg)}
.mobile-navigation .close:after{transform:rotate(-45deg)}
.mobile-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#121212;opacity:.4;z-index:101}

html.menu-opened {overflow:hidden; }
html.menu-opened .mobile-navigation{-ms-transform:translateX(0);transform:translateX(0);box-shadow:-24px 0 48px rgba(18,18,18,.08)}
html.menu-opened .mobile-overlay {display:block; }

/* ===== 2차피드백 20261030 ===== */
html.menu-opened .mobile-navigation{z-index:100010} /* 2차피드백 20261030: 메인 레이어팝업(z-index 1000) 위 (원래: 102) */
html.menu-opened .mobile-overlay{z-index:100009} /* 2차피드백 20261030: 모바일 메뉴 배경 (원래: 101) */

/* main */
:where(h1,h2,h3,h4,h5,h6){color:#2c2c2c}

.main-visual {position:relative;  height:540px;  background:#000;  overflow:hidden; }
.main-visual .item {position:relative;  height:540px;  overflow:hidden; }
.main-visual .item .video-js,
.main-visual .item video,
.main-visual .item iframe {position:absolute;  top:0;  left:0;  width:100%;  height:100%;  object-fit:cover; }
.main-visual .item img {position:absolute;  top:0;  left:0;  width:100%;  height:100%;  overflow:hidden;  transition:.4s linear;  object-fit:cover; }
.main-visual .item:hover img {transform:scale(1.02)}
.main-visual .arrows{position:absolute; top:auto; bottom:40px; right:40px; z-index:10; display:flex; gap:8px; align-items:flex-start; padding:0}
.main-visual .slick-arrow {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:48px; height:48px; padding:16px; border:0; border-radius:80px; background:rgba(255,255,255,.16)!important; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); cursor:pointer; color:#fff; transition:background .2s,color .2s}
.main-visual .slick-arrow:hover,
.main-visual .slick-arrow:active,
.main-visual .slick-arrow:focus-visible{background:var(--color-primary); color:#121212}
.main-visual .slick-arrow .hero-arrow-icon{display:block; width:16px; height:16px; flex-shrink:0}

.hero-caption {position:absolute;  left:0;  right:0;  bottom:96px;  z-index:2;  display:flex;  flex-direction:column;  gap:10px;  padding:40px 48px;  margin-right:100px; }
.hero-caption .eyebrow {font-size:var(--font-size-18);  line-height:1.5em;  font-weight:500;  letter-spacing:-0.02em;  color:rgba(255, 255, 255, .8); }
.hero-caption .title {font-size:var(--font-size-52);  line-height:1.33em;  font-weight:600;  letter-spacing:-0.02em;  color:#fff; }

/* Hero — Figma 15299:1301 · 1440 콘텐츠 밴드(헤더·트렌드와 동일 inset) */
.hero.wrap{width:100%;  max-width:1500px;  margin:0 auto;  padding:40px var(--space-container) 0;  }
.hero.wrap .hero-grid{display:grid; grid-template-columns:minmax(0,1fr) clamp(260px,32vw,486px); align-items:stretch; gap:10px; margin:0; width:100%; min-width:0}
.hero-box{display:flex; flex-direction:column; width:100%; min-width:0}
.hero-picture{position:relative; display:block; width:100%; min-width:0; overflow:hidden}
.hero-aside .eyebrow{text-transform:none}
.hero-meta{display:flex; justify-content:space-between; align-items:center; gap:24px; width:100%; border-bottom:1px solid #eee; margin:0; padding:16px 0; box-sizing:border-box}
.hero-meta>span{font-size:18px; line-height:28px; letter-spacing:-0.02em; white-space:nowrap}
.hero-meta>span:first-child{font-weight:500; color:#2c2c2c}
.hero-meta>span:last-child{font-weight:400; color:#878787}
/* Hero aside — 486px · #ff511f · Figma 15299:2150 */
.hero-aside{width:100%; max-width:486px; min-width:0; background:#ff511f; padding:40px; display:flex; flex-direction:column; justify-content:space-between; align-items:stretch; margin:0}
.hero-aside-copy{display:flex; flex-direction:column; align-items:flex-start; gap:30px; flex:1; min-height:0}
.hero-aside .hero-aside-copy .eyebrow,.hero-aside>div .eyebrow{font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:rgba(18,18,18,.8)}
.hero-aside h2{margin:0; font-size:52px; line-height:62px; font-weight:700; letter-spacing:-0.02em; color:#121212}
.hero-aside .aside-bottom{display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; margin:0; padding-top:20px; border-top:1px solid rgba(18,18,18,.1); color:#121212; text-decoration:none}
.hero-aside .aside-bottom>span:first-child{font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:rgba(18,18,18,.8)}
.hero-aside .aside-bottom .circle{display:inline-flex; align-items:center; justify-content:center; width:auto; height:auto; min-width:0; border:1px solid #121212; border-radius:80px; padding:12px; line-height:0; font-size:0; transition:background .2s,border-color .2s; flex-shrink:0}
.hero-aside .aside-bottom:hover .circle,.hero-aside .aside-bottom:focus-visible .circle{background:#121212; border-color:#121212; color:#fff}
.hero-aside .aside-bottom .circle .circle-arrow{display:block; width:20px; height:20px; flex-shrink:0}

/* Main section titles — interview .map-head-tt · .sec-label · .sec-title */
.map-head-tt{display:flex; flex-direction:column; gap:10px; min-width:0}
.sec-label{font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:#ff511f; text-transform:uppercase; margin:0}
.sec-title{margin:0; font-size:52px; line-height:1.27em; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c}
.section-head .sec-title{font-size:52px; line-height:1.27em; letter-spacing:-0.02em; font-weight:600}

#exhibitions.section.wrap{width:100%; max-width:none; margin-left:0; margin-right:0; padding:120px 0 140px; background:#fff; background-color:#fff}
#exhibitions .exhibit-section-inner{display:flex; flex-direction:column; gap:60px; width:100%}
#exhibitions .section-head--exhibit{display:flex; align-items:flex-end; justify-content:space-between; gap:24px; width:100%; margin:0}
#exhibitions .section-head--exhibit .sec-label{text-transform:none}
#exhibitions .text-link--schedule{display:inline-flex; align-items:center; gap:12px; padding:0 0 8px; border:0; border-bottom:1px solid #2c2c2c; border-radius:0; background:none; font-size:18px; line-height:28px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; text-decoration:none; flex-shrink:0; cursor:pointer; transition:color .2s,border-color .2s}
#exhibitions .text-link--schedule .text-link-icon{width:16px; height:16px; flex-shrink:0; display:block; object-fit:contain; transition:filter .2s}
/* 섹션 CTA text-link — 호버 주황 (#ff511f) 공통 */
#exhibitions .text-link--schedule:hover,#exhibitions .text-link--schedule:focus-visible,#trends .text-link--trends:hover,#trends .text-link--trends:focus-visible,#artworks .text-link--artworks:hover,#artworks .text-link--artworks:focus-visible,#notice .notice-more-link:hover,#notice .notice-more-link:focus-visible{border-bottom-color:#ff511f; color:#ff511f}
#exhibitions .text-link--schedule:hover .text-link-icon,#exhibitions .text-link--schedule:focus-visible .text-link-icon,#trends .text-link--trends:hover .text-link-icon,#trends .text-link--trends:focus-visible .text-link-icon,#artworks .text-link--artworks:hover .text-link-icon,#artworks .text-link--artworks:focus-visible .text-link-icon,#notice .notice-more-link:hover .text-link-icon,#notice .notice-more-link:focus-visible .text-link-icon{filter:brightness(0) saturate(100%) invert(36%) sepia(93%) saturate(4592%) hue-rotate(354deg) brightness(101%) contrast(101%)}
#exhibitions .exhibit-block{display:flex; flex-direction:column; gap:40px; width:100%}
#exhibitions .filters{display:flex; flex-wrap:wrap; gap:8px; margin:0}
#exhibitions .filters .chip{display:inline-flex; align-items:center; justify-content:center; padding:10px 22px; border-radius:80px; font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:#505050; background:#fff; border:1px solid #eee; cursor:pointer; transition:background .28s cubic-bezier(.22,1,.36,1),color .28s cubic-bezier(.22,1,.36,1),border-color .28s ease,transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}
#exhibitions .filters .chip.active{background:#121212; border-color:#121212; color:#fff; box-shadow:0 6px 20px rgba(18,18,18,.12)}
#exhibitions .exhibit-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:start; width:100%; margin:0}
#exhibitions .exhibit-card{position:relative; min-width:0; margin:0; max-width:100%}
@media (max-width:1024px){#exhibitions .exhibit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){#exhibitions .exhibit-grid{grid-template-columns:1fr}}
#exhibitions .exhibit-card-like{position:absolute; top:12px; right:12px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; margin:0; border:0; border-radius:8px; background:rgba(255,255,255,.4); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); color:#fff; cursor:pointer; line-height:0; font-size:0; transition:color .2s,background .2s}
#exhibitions .exhibit-card-like svg{display:block; width:20px; height:20px; stroke:currentColor; fill:none; pointer-events:none}
#exhibitions .exhibit-card-like:hover,#exhibitions .exhibit-card-like.liked,#exhibitions .exhibit-card-like.is-liked{color:#ff511f}
#exhibitions .exhibit-card-like:hover svg,#exhibitions .exhibit-card-like.liked svg,#exhibitions .exhibit-card-like.is-liked svg{fill:#ff511f; stroke:#ff511f}
#exhibitions .exhibit-card-like:focus-visible{outline:3px solid #ff511f; outline-offset:2px}
#exhibitions .exhibit-card-link{display:flex; flex-direction:column; color:inherit; text-decoration:none; height:100%}
#exhibitions .exhibit-card-media{position:relative; aspect-ratio:4/3; overflow:hidden; background:#eee; margin:0}
#exhibitions .exhibit-card-media img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
#exhibitions .exhibit-card-tag{position:absolute; top:16px; left:16px; z-index:1; display:inline-flex; align-items:center; justify-content:center; padding:8px 14px; margin:0; font-size:16px; line-height:26px; font-weight:600; letter-spacing:-0.02em; color:#fff; background:rgba(0,0,0,.16); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); border-radius:0}
#exhibitions .exhibit-card-body{display:flex; flex-direction:column; gap:20px; padding-top:20px; width:100%; box-sizing:border-box}
#exhibitions .exhibit-card-head{display:flex; flex-direction:column; gap:6px; align-items:flex-start}
#exhibitions .exhibit-card-category{margin:0; font-size:16px; line-height:26px; font-weight:500; letter-spacing:-0.02em; color:#ff511f; text-transform:none}
#exhibitions .exhibit-card-title{margin:0; font-size:26px; line-height:40px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere}
#exhibitions .exhibit-card-meta{display:flex; flex-direction:column; gap:6px; width:100%}
#exhibitions .exhibit-meta-row{display:flex; align-items:center; gap:10px; margin:0; font-size:18px; line-height:30px; font-weight:400; letter-spacing:-0.02em; color:#676767}
#exhibitions .exhibit-meta-icon{width:20px; height:20px; flex-shrink:0; display:block; object-fit:contain}
/* Trends — Figma 15299:1674 */
#trends.section.trends{padding-top:120px; padding-bottom:140px; background:#fff}
#trends .trends-wrap{width:100%; max-width:none; margin:0; padding-left:var(--sunday-gutter); padding-right:var(--sunday-gutter); box-sizing:border-box}
#trends .trends-section-inner{display:flex; flex-direction:column; gap:60px; width:100%}
#trends .section-head--trends{display:flex; align-items:flex-end; justify-content:space-between; gap:24px; width:100%; margin:0}
#trends .section-head--trends .sec-label{text-transform:none}
#trends .text-link--trends{display:inline-flex; align-items:center; gap:12px; padding:0 0 8px; border:0; border-bottom:1px solid #2c2c2c; border-radius:0; background:none; font-size:18px; line-height:28px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; text-decoration:none; flex-shrink:0; cursor:pointer; transition:color .2s,border-color .2s}
#trends .text-link--trends .text-link-icon{width:16px; height:16px; flex-shrink:0; display:block; object-fit:contain; transition:filter .2s}
#trends .trend-layout{display:flex; gap:60px; align-items:flex-start; width:100%; margin:0}
#trends .trend-feature{flex:1 1 0; min-width:0; margin:0}
#trends .trend-feature-link{display:flex; flex-direction:column; gap:24px; color:inherit; text-decoration:none; height:100%}
#trends .trend-feature-media{position:relative; width:100%; aspect-ratio:4/3; overflow:hidden; background:#eee; margin:0}
#trends .trend-feature-media img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease}
#trends .trend-feature-link:hover .trend-feature-media img,#trends .trend-feature-link:active .trend-feature-media img{transform:scale(1.04)}
#trends .trend-feature-body{display:flex; flex-direction:column; gap:14px; align-items:flex-start; width:100%; background:#fff}
#trends .trend-feature-head{display:flex; flex-direction:column; gap:2px; align-items:flex-start; width:100%}
#trends .trend-feature-category{margin:0; font-size:16px; line-height:26px; font-weight:500; letter-spacing:-0.02em; color:#ff511f; text-transform:none}
#trends .trend-feature-title{margin:0; max-width:100%; font-size:36px; line-height:50px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; word-break:keep-all; overflow-wrap:anywhere; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden}
#trends .trend-feature-desc{margin:0; font-size:18px; line-height:28px; font-weight:400; letter-spacing:-0.02em; color:#676767; word-break:keep-all; overflow-wrap:break-word; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden}
#trends .trend-list{flex:1 1 0; min-width:0; display:flex; flex-direction:column; border-top:1px solid #eee; margin:0; padding:0}
#trends .trend-list-row{display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 12px; margin:0 -12px; border-bottom:1px solid #eee; color:inherit; text-decoration:none; width:calc(100% + 24px); box-sizing:border-box; transition:background .2s ease}
#trends .trend-list-row:hover,#trends .trend-list-row:focus-visible{background:#fafafa}
#trends .trend-list-title,#trends .trend-feature-title{transition:color .2s ease}
#trends .trend-list-row:hover .trend-list-title,#trends .trend-list-row:focus-visible .trend-list-title,#trends .trend-feature-link:hover .trend-feature-title,#trends .trend-feature-link:focus-visible .trend-feature-title{color:#ff511f}
#trends .trend-list-text{flex:1 1 0; min-width:0; display:flex; flex-direction:column; gap:12px; align-items:flex-start; justify-content:center}
#trends .trend-list-head{display:flex; flex-direction:column; gap:2px; align-items:flex-start; width:100%}
#trends .trend-list-category{margin:0; font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:#ff511f; text-transform:none}
#trends .trend-list-title{margin:0; max-width:100%; font-size:28px; line-height:42px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; word-break:keep-all; overflow-wrap:anywhere; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden}
#trends .trend-list-desc{margin:0; font-size:16px; line-height:26px; font-weight:400; letter-spacing:-0.02em; color:#878787; word-break:keep-all; overflow-wrap:break-word; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden}
#trends .trend-list-thumb{position:relative; flex:0 0 236px; width:236px; aspect-ratio:4/3; overflow:hidden; background:#eee}
#trends .trend-list-thumb img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease}
#trends .trend-list-row:hover .trend-list-thumb img,#trends .trend-list-row:active .trend-list-thumb img{transform:scale(1.04)}
/* Artworks — Figma 15299:1726 */
#artworks.section.artworks{padding-top:120px; padding-bottom:140px; background:#fff; margin:0; width:100%; max-width:none}
#artworks .artworks-wrap{width:100%; max-width:none; margin:0; padding-left:var(--sunday-gutter); padding-right:var(--sunday-gutter); box-sizing:border-box}
#artworks .artworks-section-inner{display:flex; flex-direction:column; gap:80px; width:100%}
#artworks .section-head--artworks{display:flex; align-items:flex-end; justify-content:space-between; gap:24px; width:100%; margin:0}
#artworks .section-head--artworks .sec-label{text-transform:none}
#artworks .text-link--artworks{display:inline-flex; align-items:center; gap:12px; padding:0 0 8px; border:0; border-bottom:1px solid #2c2c2c; border-radius:0; background:none; font-size:18px; line-height:28px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; text-decoration:none; flex-shrink:0; cursor:pointer; transition:color .2s,border-color .2s}
#artworks .text-link--artworks .text-link-icon{width:16px; height:16px; flex-shrink:0; display:block; object-fit:contain; transition:filter .2s}
#artworks .artworks-grid{display:flex; gap:24px; align-items:flex-start; width:100%; margin:0}
#artworks .work-card{flex:1 1 calc((100% - 48px) / 3); max-width:calc((100% - 48px) / 3); min-width:0; display:flex; flex-direction:column; gap:24px; margin:0; transition:transform .35s ease}
#artworks .work-card:nth-child(1),#artworks .work-card:nth-child(3){margin-top:0}
#artworks .work-card:nth-child(2){margin-top:80px}
#artworks .work-card-media{position:relative; width:100%; height:334px; overflow:hidden; background:#eee; margin:0}
#artworks .work-card-media-link{display:block; position:absolute; inset:0; z-index:0}
#artworks .work-card-media-link img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease}
#artworks .work-card-media-link:hover img,#artworks .work-card-media-link:active img{transform:scale(1.04)}
/* save btn — Figma 15299:1741 · p12 · icon 20 · blur pill */
#artworks .work-save-btn{position:absolute; right:12px; bottom:12px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; min-height:44px; padding:12px; margin:0; border:0; border-radius:80px; background:rgba(255,255,255,.4); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); cursor:pointer; line-height:0; flex-shrink:0; overflow:visible; transition:background .2s}
#artworks .work-save-icon{position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:20px; height:20px; max-width:20px; max-height:20px; object-fit:contain; display:block; pointer-events:none; flex-shrink:0; transition:opacity .2s ease}
#artworks .work-save-icon--fill{opacity:0}
#artworks .work-save-btn:hover{background:rgba(255,255,255,.55)}
#artworks .work-save-btn:hover .work-save-icon--outline{opacity:0}
#artworks .work-save-btn:hover .work-save-icon--fill{opacity:1}
#artworks .work-save-btn.is-saved{background:rgba(255,81,31,.85)}
#artworks .work-save-btn.is-saved .work-save-icon--outline{opacity:0}
#artworks .work-save-btn.is-saved .work-save-icon--fill{opacity:1; filter:brightness(0) invert(1)}
#artworks .work-save-btn.is-saved:hover .work-save-icon--fill{filter:brightness(0) invert(1)}
#artworks .work-save-btn:focus-visible{outline:3px solid #ff511f; outline-offset:2px}
#artworks .work-card-body{display:flex; flex-direction:column; gap:16px; width:100%}
#artworks .work-card-head{display:flex; flex-direction:column; gap:4px; align-items:flex-start; width:100%}
#artworks .work-card-category{margin:0; font-size:16px; line-height:26px; font-weight:500; letter-spacing:-0.02em; color:#ff511f; text-transform:none}
#artworks .work-card-title-link{color:inherit; text-decoration:none; display:block}
#artworks .work-card-title{margin:0; font-size:26px; line-height:40px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c}
#artworks .work-card-foot{display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%}
#artworks .work-card-meta{display:flex; flex:1 1 0; min-width:0; align-items:center; gap:10px; font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:#676767}
#artworks .work-card-meta-divider{flex-shrink:0; width:1px; height:12px; background:#dfdfdf}
#artworks .work-follow-btn{flex-shrink:0; margin:0; padding:6px 14px; border:1px solid #2c2c2c; border-radius:80px; background:#fff; font-size:15px; line-height:24px; font-weight:500; letter-spacing:-0.02em; color:#2c2c2c; cursor:pointer; transition:background .2s,border-color .2s,color .2s}
#artworks .work-follow-btn:hover{background:#121212; border-color:#121212; color:#fff}
#artworks .work-follow-btn.is-following{background:#2c2c2c; border-color:#2c2c2c; color:#fff}
@media (max-width:1100px){
#artworks .work-card-media{height:280px}
}
/* Tag strip — Figma 15299:1861 · sunday.css .tag-strip flex/ border 무력화 */
#container > .tag-strip{display:block; width:100%; max-width:none; margin:0; padding:20px 0; border:0; background:#ff511f; overflow:hidden; font-size:inherit; gap:0; justify-content:unset; flex-wrap:unset}
.tag-strip-viewport{overflow:hidden; width:100%; margin:0; padding-left:var(--sunday-gutter); padding-right:var(--sunday-gutter); box-sizing:border-box}
.tag-strip-track{display:flex; align-items:center; flex-wrap:wrap; gap:24px 40px; width:100%; justify-content:flex-start}
.tag-strip-tag{margin:0; padding:0; border:0; border-radius:0; background:none; font-family:inherit; font-size:32px; line-height:46px; font-weight:600; letter-spacing:-0.02em; color:#121212; white-space:nowrap; cursor:pointer; transition:color .2s; flex-shrink:0}
.tag-strip-tag:hover,.tag-strip-tag:active{color:#fff; opacity:1}
.tag-strip-tag:focus-visible{outline:3px solid #fff; outline-offset:4px; color:#fff}
@media(prefers-reduced-motion:reduce){
.tag-strip-track{animation:none; width:100%; flex-wrap:wrap; justify-content:center; row-gap:24px; column-gap:40px}
.tag-strip-tag--clone{display:none}
}



/* Interview — Figma 14985:5257 */
#interview.sec-interview-pop{background:#fafafa; color:#505050; padding:120px max(56px,calc((100% - 1440px) / 2)) 140px; box-sizing:border-box}
#interview .sec-interview-inner{display:flex; flex-direction:column; gap:80px; width:100%}
#interview .sec-head--map{margin-bottom:0; display:flex; align-items:flex-end; justify-content:space-between; gap:20px; flex-wrap:wrap}
#interview .cal-nav{display:flex; align-items:flex-start; gap:8px; flex-shrink:0; width:104px; max-width:100%}
#interview .cal-nav-btn{display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; padding:16px; margin:0; border:1px solid #2c2c2c; border-radius:80px; background:#fff; color:#2c2c2c; cursor:pointer; line-height:0; transition:background .2s,border-color .2s}
#interview .cal-nav-btn:hover,#interview .cal-nav-btn:hover:focus-visible{background:#ff511f; border-color:#ff511f; outline:none}
#interview .cal-nav-btn:hover img,#interview .cal-nav-btn:active img{filter:brightness(0) invert(1)}
#interview .cal-nav-btn:active{background:#e84a1c; border-color:#e84a1c}
#interview .cal-nav-btn:focus-visible{outline:3px solid #ff511f; outline-offset:3px; background:#fff; border-color:#2c2c2c}
#interview .cal-nav-btn img{width:16px; height:16px; display:block; object-fit:contain; flex-shrink:0; pointer-events:none; transition:filter .2s}
#interview .pop-carousel{width:100%; max-width:100%; min-width:0; overflow:hidden; padding:0}
#interview .swiper-slide{height:auto; min-width:0}
#interview .pop-card{display:flex; flex-direction:column; height:100%; background:#fff; border:1px solid #eee; border-radius:0; overflow:hidden; transition:box-shadow .25s; color:inherit; text-decoration:none}
#interview .pop-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
#interview .pop-card-thumb{position:relative; width:100%; aspect-ratio:348/266; height:auto; overflow:hidden; background:#f0f0f0; flex-shrink:0}
#interview .pop-card-thumb img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease}
#interview .pop-card:hover .pop-card-thumb img{transform:scale(1.04)}
#interview .pop-rank{position:relative; z-index:1; display:block; padding:20px 0 0 20px; font-size:40px; font-weight:600; line-height:54px; letter-spacing:-0.02em; color:rgba(255,255,255,.4)}
#interview .pop-card-body{flex:1; display:flex; flex-direction:column; gap:16px; padding:24px 24px 30px; background:#fff}
#interview .pop-card-title{margin:0; min-height:72px; font-size:22px; line-height:36px; font-weight:500; color:#2c2c2c; letter-spacing:-0.02em; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
#interview .pop-card-date{margin-top:auto; padding-top:4px; flex-shrink:0; font-size:16px; line-height:26px; font-weight:400; color:#bbb; letter-spacing:-0.02em}

/* Explore map — 카카오 타일이 문서 위로 새지 않게 자른다 */
#explore > .wrap, 
#explore.section.explore {background: #fafafa; color: #505050;}
#explore .map-box{position:relative; width:100%; min-height:280px; overflow:hidden; background:#e8e8e8}
#explore .explore-roughmap{position:relative; z-index:0; width:100%; overflow:hidden; line-height:0}
#explore .explore-roughmap .map{position:relative; overflow:hidden}
#explore.section.explore{padding-top:120px;padding-bottom:140px;box-sizing:border-box}
#explore .explore-wrap{width:100%;max-width:none;margin:0;padding-left:var(--sunday-gutter);padding-right:var(--sunday-gutter);box-sizing:border-box}
#explore .explore-section-inner{display:flex;flex-direction:column;gap:60px;width:100%}
#explore .section-head--explore{margin:0}
#explore .section-head--explore .sec-label{text-transform:none}
#explore .explore-grid{display:flex;gap:40px;align-items:stretch;width:100%;margin:0}
#explore .explore-calendar{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:30px;background:#fff;padding:40px 35px;box-sizing:border-box}
#explore .calendar-top{display:flex;flex-direction:column;gap:30px;width:100%}
#explore .calendar-title{display:flex;align-items:center;justify-content:center;gap:30px;width:100%;margin:0}
#explore .cal-month-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:none;cursor:pointer;flex-shrink:0;transition:opacity .2s ease}
#explore .cal-month-btn:hover,#explore .cal-month-btn:focus-visible{opacity:.45}
#explore .cal-month-btn img{display:block;width:20px;height:20px;object-fit:contain}
#explore #month-label{font-size:28px;line-height:42px;font-weight:500;letter-spacing:-0.02em;color:#2c2c2c}
#explore .week{display:grid;grid-template-columns:repeat(7,1fr);width:100%;margin:0}
#explore .week span{display:flex;align-items:center;justify-content:center;font-size:16px;line-height:26px;font-weight:500;letter-spacing:-0.02em;color:#2c2c2c;padding:0}
#explore .week .week-sun{color:#ea4044}
#explore .week .week-sat{color:#3584e7}
#explore .days{display:grid;grid-template-columns:repeat(7,1fr);width:100%;margin:0}
#explore .days .empty{min-height:68px}
#explore .days button.day-btn{position:relative;display:flex;align-items:center;justify-content:center;height:auto!important;min-height:68px;padding:16px 10px;border:0;background:none!important;cursor:pointer;color:#676767;font-size:16px;line-height:26px;font-weight:500;letter-spacing:-0.02em;border-radius:0!important;transition:color .2s ease}
#explore .days button.day-btn.event::after,#explore .days button.day-btn.selected::after,#explore .days button.event.selected::after{content:none!important;display:none!important}
#explore .days .day-btn-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative;z-index:1;width:100%}
#explore .days .day-num{display:block;font-size:16px;line-height:26px;font-weight:500;letter-spacing:-0.02em}
#explore .days .day-dot{width:4px;height:4px;border-radius:50%;background:#ff511f;flex-shrink:0}
#explore .days .day-btn.has-event:not(.selected) .day-dot{background:#ff511f}
/* Figma 15301:2436 — day on (pill + white type + white dot) */
#explore .days .day-btn.selected{color:#fff!important}
#explore .days .day-btn.selected::before{content:'';display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(3.5em,80%);aspect-ratio:1/1;height:auto;background-color:#ff511f;border-radius:50%;z-index:0;pointer-events:none}
#explore .days .day-btn.selected .day-num{color:#fff}
#explore .days .day-btn.selected .day-dot{background:#fff}
#explore .days .day-btn.selected:not(.has-event) .day-btn-inner{gap:0}
#explore .days button.day-btn:not(.selected):hover::before,#explore .days button.day-btn:not(.selected):focus-visible::before{content:'';display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(3.5em,80%);aspect-ratio:1/1;height:auto;background:rgba(255,81,31,.14);border-radius:50%;z-index:0;pointer-events:none}
#explore .days button.day-btn:not(.selected):hover,#explore .days button.day-btn:not(.selected):focus-visible{color:#ff511f}
/* calendar-result — Figma 15301:2488 */
#explore .calendar-result{border-top:1px solid #eee;margin-top:0!important;padding-top:30px;min-height:0!important;font-size:inherit;display:flex;flex-direction:column;align-items:flex-start;gap:20px;width:100%;margin-bottom:0;box-sizing:border-box}
#explore .calendar-result-head{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:nowrap;width:auto;max-width:100%}
#explore .calendar-result-date{margin:0;font-size:18px;line-height:28px;font-weight:500;color:#2c2c2c;letter-spacing:-0.02em;white-space:nowrap}
#explore .calendar-result-divider{display:block;width:1px;height:12px;background:#dfdfdf;flex-shrink:0;align-self:center}
#explore .calendar-result-summary{margin:0;font-size:18px;line-height:28px;font-weight:500;color:#2c2c2c;letter-spacing:-0.02em;white-space:nowrap}
#explore .calendar-result-count{font-weight:500;color:#ff511f}
#explore .calendar-event-list{display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:100%;max-width:665px;margin:0;padding:0;list-style:none}
#explore .calendar-event-row{display:flex;align-items:center;gap:20px;width:100%;max-width:665px;color:inherit;text-decoration:none;box-sizing:border-box}
#explore .calendar-event-thumb{flex:0 0 131px;width:131px;height:100px;overflow:hidden;background:#eee;position:relative}
#explore .calendar-event-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
#explore .calendar-event-row:hover .calendar-event-thumb img,#explore .calendar-event-row:active .calendar-event-thumb img{transform:scale(1.04)}
#explore .calendar-event-text{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
#explore .calendar-event-titles{display:flex;flex-direction:column;align-items:flex-start;width:100%;min-width:0}
#explore .calendar-event-type{margin:0;font-size:16px;line-height:26px;font-weight:500;color:#ff511f;letter-spacing:-0.02em}
#explore .calendar-event-title{margin:0;font-size:20px;line-height:34px;font-weight:500;color:#2c2c2c;letter-spacing:-0.02em;white-space:normal;word-break:keep-all;transition:color .2s ease}
#explore .calendar-event-row:hover .calendar-event-title,#explore .calendar-event-row:focus-visible .calendar-event-title{color:#ff511f}
#explore .calendar-event-dates{margin:0;font-size:16px;line-height:26px;font-weight:400;color:#bbb;letter-spacing:-0.02em}
#explore .calendar-result-empty{margin:0;font-size:16px;line-height:26px;font-weight:400;color:#878787;letter-spacing:-0.02em}
#explore .calendar-result small{display:none!important}
#explore .calendar-result-panel{width:100%;min-height:0}
#explore .explore-nearby{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:30px}
#explore .nearby-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin:0}
#explore .nearby-head h3{margin:0;font-size:32px;line-height:46px;font-weight:600;letter-spacing:-0.02em;color:#2c2c2c}
#explore .region-select-wrap{position:relative;display:inline-flex;align-items:center;gap:16px;flex-shrink:0}
#explore #region{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0 24px 0 0;margin:0;font-size:18px;line-height:28px;font-weight:500;color:#505050;letter-spacing:-0.02em;cursor:pointer;max-width:160px}
#explore .region-chevron{position:absolute;right:0;top:50%;transform:translateY(-50%);pointer-events:none;width:16px;height:16px;object-fit:contain}
#explore .region-btn{display:none}
#explore .region-select-wrap.is-custom #region{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;opacity:0;pointer-events:none}
#explore .region-select-wrap.is-custom .region-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-width:136px;padding:10px 16px 10px 20px;border:1px solid #dfdfdf;border-radius:80px;background:#fff;font-family:inherit;font-size:16px;line-height:24px;font-weight:500;letter-spacing:-0.02em;color:#505050;cursor:pointer;transition:border-color .2s ease,color .2s ease,box-shadow .2s ease}
#explore .region-select-wrap.is-custom .region-btn:hover,#explore .region-select-wrap.is-custom .region-btn:focus-visible{border-color:#2c2c2c;color:#2c2c2c;outline:none}
#explore .region-select-wrap.is-open .region-btn{border-color:#2c2c2c;color:#2c2c2c;box-shadow:0 4px 14px rgba(0,0,0,.06)}
#explore .region-select-wrap.is-custom .region-chevron{position:static;transform:none;transition:transform .25s ease}
#explore .region-select-wrap.is-open .region-chevron{transform:rotate(180deg)}
#explore .region-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:20;min-width:100%;margin:0;padding:10px;list-style:none;background:#fff;border:1px solid #dfdfdf;border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.1);box-sizing:border-box;animation:region-panel-in .22s cubic-bezier(.22,1,.36,1)}
#explore .region-panel[hidden]{display:none}
#explore .region-option{padding:10px 14px;border-radius:8px;font-size:16px;line-height:24px;font-weight:500;letter-spacing:-0.02em;color:#505050;white-space:nowrap;cursor:pointer;outline:none;transition:background .15s ease,color .15s ease}
#explore .region-option:hover,#explore .region-option:focus{background:#fff4f0;color:#ff511f}
#explore .region-option.is-selected{color:#ff511f;font-weight:600}
@keyframes region-panel-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
#explore .nearby-body{display:flex;flex-direction:column;width:100%;flex:1;min-height:0}
#explore .map-box{position:relative;width:100%;flex:1 1 auto;min-height:280px;overflow:hidden;background:#e8e8e8}
#explore .explore-roughmap{width:100%;max-width:none;min-height:280px;line-height:0;position:relative;z-index:0;overflow:hidden}
#explore .explore-roughmap .root_daum_roughmap{width:100%!important;max-width:none!important;height:100%!important;min-height:280px}
#explore .explore-roughmap .root_daum_roughmap_landing{width:100%!important;height:100%!important}
#explore .explore-roughmap iframe{display:block;width:100%!important;max-width:none!important;height:100%!important;min-height:280px;border:0;vertical-align:top}
#explore .map-locate-btn{position:absolute;right:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;justify-content:center;padding:12px;border:0;border-radius:8px;background:#ff511f;box-shadow:2px 2px 2px rgba(0,0,0,.16);text-decoration:none;line-height:0;cursor:pointer;color:inherit}
#explore .map-locate-btn:disabled{opacity:.65;cursor:wait}
#explore .map-locate-btn.is-active{box-shadow:0 0 0 2px #fff,0 0 0 4px #ff511f}
#explore .map-locate-btn img{width:20px;height:20px;object-fit:contain;display:block}
#explore .near-list{width:100%;margin:0}
#explore .near-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 12px;margin:0 -12px;border-bottom:1px solid #eee;color:inherit;text-decoration:none;width:calc(100% + 24px);box-sizing:border-box;transition:background .2s ease}
#explore .near-row:hover,#explore .near-row:focus-visible{background:#fafafa}
#explore .near-row-main{display:flex;align-items:center;gap:24px;flex:1 1 0;min-width:0}
#explore .near-row .num{flex-shrink:0;font-size:18px;line-height:28px;font-weight:500;color:#ff511f;letter-spacing:-0.02em}
#explore .near-row-text{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0}
#explore .near-row-title{font-size:20px;line-height:34px;font-weight:500;color:#2c2c2c;letter-spacing:-0.02em;transition:color .2s ease}
#explore .near-row:hover .near-row-title,#explore .near-row:focus-visible .near-row-title{color:#ff511f}
#explore .near-row-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:16px;line-height:26px;font-weight:400;color:#878787;letter-spacing:-0.02em}
#explore .near-meta-divider{width:1px;height:12px;background:#dfdfdf;flex-shrink:0}
#explore .near-row-arrow{flex-shrink:0;width:24px;height:24px;object-fit:contain;display:block;transition:transform .2s ease}
#explore .near-row:hover .near-row-arrow,#explore .near-row:focus-visible .near-row-arrow{transform:translateX(4px)}
#explore .empty-state{margin:0;padding:22px 0;font-size:16px;line-height:26px;color:#878787}
#artwork-artist-page .artwork-list-panel:has(.artwork-empty:not([hidden])){display:flex;flex-direction:column;justify-content:center;min-height:520px}
#artwork-artist-page .artwork-empty{display:flex;align-items:center;justify-content:center;min-height:280px;margin:0;text-align:center;font-size:18px;line-height:28px;font-weight:500;letter-spacing:-0.02em;color:#676767}
#artwork-artist-page .artwork-empty[hidden]{display:none!important}

/* Notice — Figma 15299:1823 (sunday.css .notice / .notice-row 레거시 무력화) */
.notice.section{display:block; grid-template-columns:none; gap:0; width:100%; max-width:none; margin:0; padding:120px 0 140px; background:#fafafa}
#notice .notice-inner{display:flex; flex-direction:row; align-items:stretch; gap:200px; width:100%;}
#notice .notice-head{display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; align-self:stretch; flex:0 0 auto; min-width:0; margin:0; padding:0}
#notice .notice-head .map-head-tt{gap:10px}
#notice .notice-head .sec-label{text-transform:none; font-size:18px; line-height:28px; font-weight:500; color:#ff511f; margin:0}
#notice .notice-head .sec-title{font-size:52px; line-height:1.27em; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; margin:0; white-space:nowrap}
#notice .notice-more-link{display:inline-flex; align-items:center; gap:12px; margin-top:auto; padding:0 0 8px; border:0; border-bottom:1px solid #2c2c2c; border-radius:0; background:none; font-size:18px; line-height:28px; font-weight:600; letter-spacing:-0.02em; color:#2c2c2c; text-decoration:none; cursor:pointer; white-space:nowrap; transition:color .2s,border-color .2s}
#notice .notice-more-link .text-link-icon{width:16px; height:16px; flex-shrink:0; display:block; object-fit:contain; transition:filter .2s}
#notice .notice-list{flex:1 1 0; min-width:0; display:flex; flex-direction:column; align-items:stretch; border-top:1px solid #2c2c2c; margin:0; padding:0; list-style:none}
#notice a.notice-row,#notice-list-page a.notice-row{display:flex; flex-direction:row; flex-wrap:nowrap; align-items:center; justify-content:space-between; gap:24px; padding:28px 16px; margin:0 -16px; border:0; border-bottom:1px solid #dfdfdf; border-radius:0; background:none; color:inherit; text-decoration:none; width:calc(100% + 32px); cursor:pointer; transition:background .2s ease}
#notice a.notice-row:first-child,#notice-list-page a.notice-row:first-child{padding-top:28px}
#notice a.notice-row:hover,#notice a.notice-row:focus-visible,#notice-list-page a.notice-row:hover,#notice-list-page a.notice-row:focus-visible{background:#fff}
#notice a.notice-row:hover .notice-row-title,#notice a.notice-row:focus-visible .notice-row-title,#notice-list-page a.notice-row:hover .notice-row-title,#notice-list-page a.notice-row:focus-visible .notice-row-title{text-decoration:none;color:#ff511f}
#notice .notice-row-main{display:flex; flex-direction:row; flex-wrap:nowrap; align-items:center; flex:1 1 0; min-width:0; gap:0; margin:0; padding:0}
#notice a.notice-row span.notice-row-cat,#notice-list-page a.notice-row span.notice-row-cat{flex:0 0 120px; width:120px; max-width:120px; margin:0; padding:0; font-size:20px; line-height:34px; font-weight:500; letter-spacing:-0.02em; color:#ff511f; white-space:nowrap}
#notice a.notice-row span.notice-row-title,#notice-list-page a.notice-row span.notice-row-title{flex:0 1 auto; min-width:0; margin:0; padding:0; font-size:22px; line-height:36px; font-weight:500; letter-spacing:-0.02em; color:#2c2c2c; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; transition:color .2s ease}
#notice a.notice-row time.notice-row-date,#notice-list-page a.notice-row time.notice-row-date{flex:0 0 auto; margin:0 0 0 24px; padding:0; font-size:16px; line-height:26px; font-weight:400; letter-spacing:-0.02em; color:#bbb; font-style:normal; white-space:nowrap}

#toast.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#171717;color:#fff;padding:13px 22px;z-index:100;font-size:14px;max-width:90vw;text-align:center}
#toast.toast.hidden{display:none}

/* sub */
.sub-visual {position:relative;  height:clamp(220px, calc(520 / var(--inner) * 100vw), 520px);  text-align:center;  color:#fff;  overflow:hidden;  background:#333; }
.sub-visual .bg {position:absolute;  top:0;  left:0;  width:100%;  height:100%;  overflow:hidden;  transition:2s;  opacity:1;  transform:scale(1.1);  background-repeat:no-repeat;  background-position:50% 0;  background-size:cover; }
.sub-visual .inner {position:absolute;  top:50%;  left:0;  width:100%;  padding:0 20px;  transform:translateY(-50%); }
.sub-visual .inner .tit {font-size:var(--font-size-72);  font-weight:700;  letter-spacing:-.03em;  line-height:1.33em; }
.sub-visual .bg1 {background-image:url("/images/common/sv1.jpg"); }
.sub-visual .bg2 {background-image:url("/images/common/sv2.jpg"); }
.sub-visual .bg3 {background-image:url("/images/common/sv3.jpg"); }
.sub-visual .bg4 {background-image:url("/images/common/sv4.jpg"); }
.loaded .sub-visual .bg {transform:scale(1);  opacity:1; }

.lnb-wrap {position:absolute;  left:0;  width:100%;  bottom:var(--space-30);  z-index:2;  padding:0 var(--space-30); }
.lnb {max-width:1700px;  margin:0 auto; }
.lnb ul {display:flex;  justify-content:center;  gap:var(--space-10); } 
.lnb ul li {width:auto; }
.lnb ul li a {min-width:190px;  display:flex;  align-items:center;  justify-content:center;  height:clamp(40px, calc(56 / var(--inner) * 100vw), 56px);  padding:0 12px;  border-radius:16px;  background:rgba(255, 255, 255, 0.2);  color:#fff;  font-size:var(--font-size-16);  font-weight:500;  line-height:1.5em;  letter-spacing:-0.03em;  text-align:center;  white-space:nowrap; }
.lnb ul li.active a {background:var(--color-primary);  color:#fff; }

#contArea {max-width:1500px;  padding-left:var(--space-container);  padding-right:var(--space-container); padding-top: clamp(64px, 8.3vw, 120px);  margin:0 auto; }
#contArea.wide {max-width:100%;  padding-left:0;  padding-right:0; }
#contArea.wide .sub-title {padding-left:10px;  padding-right:10px; }

#contArea:has(.sub-hero) {padding-top:0;}

.sub-title {padding:var(--space-120) 0 var(--space-100);  text-align:center; }
.sub-title h2 {font-size:var(--font-size-48);  font-weight:700;  letter-spacing:-.03em;  line-height:1.3em; }

.real-cont {min-height:300px;  padding-bottom:var(--space-150); }

/* footer */
#footer{padding:0; background:#121212; color:#fff; text-align:left}
#footer .contain.sunday-footer-wrap{max-width:none; width:100%; margin:0; padding-left:var(--sunday-gutter); padding-right:var(--sunday-gutter); display:flex; flex-direction:column}
#footer .footer-main{display:flex; justify-content:space-between; align-items:stretch; gap:48px; padding:50px 0; box-sizing:border-box}
#footer .footer-brand{display:flex; flex:1; flex-direction:column; justify-content:space-between; align-items:flex-start; min-width:0; min-height:140px}
#footer .footer-logo{display:block; width:210px; height:64px; flex-shrink:0}
#footer .footer-logo img{width:100%; height:100%; object-fit:contain; object-position:left center}
#footer .footer-legal{display:flex; flex-wrap:wrap; gap:24px; margin-top:auto; padding-top:32px}
#footer .footer-legal button{font-size:18px; line-height:28px; font-weight:500; letter-spacing:-0.02em; color:#fff; padding:0; border:0; background:none; cursor:pointer; font-family:inherit}
#footer .footer-legal button:hover{text-decoration:underline}
/* Footer meta — Figma 15297:1256 */
#footer .footer-meta{flex:0 1 auto; max-width:100%; display:flex; flex-direction:column; align-items:flex-end; gap:10px; margin:0; padding:0; border:0; text-align:right; font-size:18px; line-height:28px; font-weight:400; letter-spacing:-0.02em; white-space:nowrap}
#footer .footer-meta-row{display:flex; flex-direction:row; gap:10px; align-items:center; justify-content:flex-end; margin:0; flex-wrap:nowrap}
#footer .footer-meta dt{font-size:inherit; line-height:inherit; font-weight:500; letter-spacing:inherit; color:rgba(255,255,255,.4); margin:0;  flex-shrink:0}
#footer .footer-meta dd{font-size:inherit; line-height:inherit; font-weight:400; letter-spacing:inherit; color:rgba(255,255,255,.64); margin:0; }
#footer .footer-meta dd a{color:inherit; font-weight:inherit; text-decoration:none}
#footer .footer-meta dd a:hover{text-decoration:underline}
#footer .footer-bottom{display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid rgba(255,255,255,.1); margin:0; padding:30px 0 40px; font-size:16px; line-height:30px; letter-spacing:-0.02em}
#footer .footer-bottom .copyright{color:#878787; margin:0}
#footer .footer-bottom .copyright .design-credit{color:inherit; font-size:inherit}
#footer .socials{display:flex; flex-wrap:wrap; gap:30px; margin:0; color:#fff}
#footer .socials a{display:flex; align-items:center; gap:8px; font-size:18px; line-height:32px; font-weight:500; letter-spacing:-0.02em; color:#fff; text-decoration:none}
#footer .socials a:hover{text-decoration:underline}
#footer .socials .icon{width:24px; height:24px; flex-shrink:0; object-fit:contain; display:block}
/* 메인 비주얼: 페이지 빌더 위젯(.mv-item + Slick/Swiper)을 유니온 정적 마크업(100vh - 헤더 풀스크린)과 동일하게 표시 */
#main .main-visual .pb-widget-main-visual {display:block; width:100%; height:100%; }
#main .main-visual .pb-widget-main-visual > [id^="pbMV"] {height:100%; min-height:calc(100vh - var(--header-height)); }
#main .main-visual .mv-wrap {position:relative; width:100%; height:100%; min-height:calc(100vh - var(--header-height)); }
#main .main-visual .pb-mv-swiper {width:100%; height:calc(100vh - var(--header-height)) !important; }
#main .main-visual .pb-mv-swiper .swiper-wrapper,
#main .main-visual .pb-mv-swiper .swiper-slide {height:100% !important; }
#main .main-visual .mv-items .slick-list,
#main .main-visual .mv-items .slick-track,
#main .main-visual .mv-items .slick-slide {height:calc(100vh - var(--header-height)) !important; }
#main .main-visual .mv-item.image,
#main .main-visual .mv-item.video,
#main .main-visual .mv-item.youtube {position:relative; height:100% !important; min-height:calc(100vh - var(--header-height)) !important; padding-bottom:0 !important; background:#000; }
#main .main-visual .mv-item.video .video-js,
#main .main-visual .mv-item video {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
#main .main-visual .mv-item.image figure,
#main .main-visual .mv-item.image .slide-image {position:absolute; top:0; left:0; width:100%; height:100%; margin:0; }
#main .main-visual .mv-item.image .slide-image > a {display:block; width:100%; height:100%; }
#main .main-visual .mv-item.image .slide-image img {position:absolute; top:50%; left:0; width:100%; height:auto !important; max-width:100%; min-height:100%; -webkit-transform:translateY(-50%); transform:translateY(-50%); object-fit:cover; }
#main .main-visual .mv-item.youtube iframe {position:absolute; top:50%; left:50%; width:100vw; height:100vh; border:0; -webkit-transform:translate(-50%, -50%); transform:translate(-50%, -50%); }
@media (min-aspect-ratio:16/9) {
#main .main-visual .mv-item.youtube iframe {height:56.25vw; }
}
@media (max-aspect-ratio:16/9) {
#main .main-visual .mv-item.youtube iframe {width:177.78vh; }
}

/* 원본 유니온 화면(index.php)에는 상단 이동 버튼 없음 — 기본 푸터 제거 + DB 푸터 잔존 시에도 미표시 */
.scroll-top {display:none !important; visibility:hidden; width:0 !important; height:0 !important; padding:0 !important; margin:0 !important; overflow:hidden; pointer-events:none; position:absolute !important; clip:rect(0,0,0,0); }

/* 레거시 GNB 배경용 .submenu-bg: 스타일 누락 시 빈 블록이 헤더 영역을 밀 수 있어 플로우에서 제거 */
#header .submenu-bg {display:none; margin:0; padding:0; height:0; line-height:0; font-size:0; overflow:hidden; border:0; position:absolute; left:0; top:100%; width:100%; pointer-events:none; }

/* 페이지 빌더 메인(#container 생략): 첫 래퍼 상단 불필요 여백 방지 */
#main #wrapper > #pb-page-wrap {margin-top:0; padding-top:0; }
/* overflow-x:hidden 단독은 스펙상 overflow-y→auto 로 이중 세로 스크롤 유발 가능 — page_builder.css 와 동일 원칙(clip+visible) */
#pb-page-wrap {overflow-x:clip; overflow-y:visible; }

/* 고정 헤더가 뷰포트 최상단에 붙도록 */
#header {margin:0; top:0; }

/* 공통 제품 상세 레이어 — 유니온 헤더는 /css/layout.css 미연결이므로 여기에 동일 규칙 유지 (푸터 근처 마크업이 문서 흐름에 노출되지 않게) */
.detail-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.55); z-index:99998; }
.detail-modal {display:none; position:fixed; top:50%; left:50%; transform:translate(-50%, -50%); width:92%; max-width:920px; max-height:90vh; background:#fff; border-radius:12px; box-shadow:0 10px 40px rgba(0,0,0,0.25); z-index:99999; overflow:hidden; flex-direction:column; }
.detail-modal.show {display:flex; }
.detail-modal .modal-header {display:flex; align-items:center; justify-content:space-between; padding:14px 20px; border-bottom:1px solid #e3e6f0; background:#f8f9fc; }
.detail-modal .modal-header h2 {font-size:18px; color:#333; margin:0; }
.detail-modal .modal-close {background:none; border:none; font-size:26px; line-height:1; cursor:pointer; color:#858796; padding:4px 10px; }
.detail-modal .modal-close:hover {color:#e74a3b; }
.detail-modal .modal-body {flex:1; overflow-y:auto; padding:20px; }
.detail-loading {text-align:center; padding:50px; color:#858796; }
.detail-section {margin-bottom:22px; }
.detail-section h3 {font-size:15px; color:#4e73df; margin-bottom:10px; padding-bottom:6px; border-bottom:1px solid #e3e6f0; }
.detail-main-img {text-align:center; margin-bottom:18px; }
.detail-main-img img {max-width:100%; max-height:320px; border-radius:8px; }
.detail-main-img .no-img {color:#ccc; font-size:80px; }
.detail-meta-table {width:100%; border-collapse:collapse; }
.detail-meta-table th {width:120px; padding:8px 12px; background:#f8f9fc; text-align:left; font-size:13px; color:#5a5c69; border-bottom:1px solid #e3e6f0; }
.detail-meta-table td {padding:8px 12px; font-size:13px; color:#333; border-bottom:1px solid #e3e6f0; }
.detail-content {font-size:14px; line-height:1.7; color:#444; }
.detail-content img {max-width:100%; height:auto; }
.detail-thumbs {display:flex; gap:8px; flex-wrap:wrap; }
.detail-thumbs img {width:80px; height:80px; object-fit:cover; border-radius:6px; border:1px solid #e3e6f0; cursor:pointer; }
.detail-files {display:flex; flex-direction:column; gap:6px; }
.detail-files a {color:#4e73df; font-size:13px; text-decoration:none; }
.detail-files a:hover {text-decoration:underline; }
.detail-rel {display:flex; gap:8px; flex-wrap:wrap; }
.detail-rel span {background:#e8f0fe; color:#4e73df; padding:4px 10px; border-radius:12px; font-size:12px; cursor:pointer; }
.detail-rel span:hover {background:#4e73df; color:#fff; }
.pb-product-detail-err {color:#e74a3b; padding:16px; }
.pb-widget-products .pb-open-product-detail {cursor:pointer; text-decoration:none; color:inherit; }
.pb-widget-products a.pb-open-product-detail:hover {opacity:0.88; }
