@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans','Noto Sans KR',sans-serif;color:#232120;background:#f8f6f2;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.wrap{max-width:1280px;margin:auto;padding-left:48px;padding-right:48px}.announcement{height:34px;background:#282324;color:#f4eae1;text-align:center;font-size:11px;letter-spacing:.025em;display:flex;justify-content:center;align-items:center;gap:8px}.announcement span{color:#ed946e}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:800;font-size:25px;letter-spacing:-.09em;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:7px;color:#fff;background:#dd7456;border-radius:50%;font-size:22px;font-weight:400;vertical-align:2px}.brand-dot{color:#d97356}.site-header nav{display:flex;gap:34px;font-size:13px;font-weight:600}.site-header nav a:hover,.header-link:hover{color:#d56a4d}.header-link{font-size:12px;font-weight:700;border:1px solid #d9d4ce;border-radius:30px;padding:11px 18px}.header-link span{margin-left:9px}.hero{min-height:480px;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding-top:26px;padding-bottom:66px;gap:50px}.hero-copy{padding-top:65px}.eyebrow{margin:0 0 21px;font-size:11px;letter-spacing:.18em;color:#bd745d;font-weight:800}.eyebrow-line{display:inline-block;width:22px;height:1px;background:#bd745d;vertical-align:4px;margin-right:7px}.hero h1{font-size:clamp(46px,5vw,70px);line-height:1.22;letter-spacing:-.075em;margin:0 0 25px;font-weight:800}.hero h1 em{font-style:normal;color:#d87657}.hero-description{line-height:1.9;color:#77716c;font-size:15px;margin-bottom:34px}.primary-btn{display:inline-flex;align-items:center;gap:50px;background:#292425;color:#fff;border-radius:40px;padding:16px 23px;font-size:13px;font-weight:700}.primary-btn:hover{background:#d87657}.hero-art{min-height:392px;position:relative;overflow:hidden;border-radius:7px;background:#d3d9ce}.art-disc{width:350px;height:350px;border-radius:50%;position:absolute;left:50%;top:53%;transform:translate(-50%,-50%);background:radial-gradient(circle at 25% 23%,#f8d7b5 0,#e99b79 35%,#cb775e 64%,#a95554 100%);box-shadow:inset -35px -28px 65px #a5515060,35px 30px 30px #6a735b33}.art-orbit{position:absolute;border:1px solid #f8f5e4a6;border-radius:50%;transform:rotate(-25deg);z-index:1}.orbit-one{height:205px;width:590px;left:-38px;top:92px}.orbit-two{height:265px;width:650px;left:-70px;top:55px}.art-star{position:absolute;z-index:3;right:79px;top:60px;color:#f4d4b0;font-size:70px}.art-caption{position:absolute;bottom:27px;left:30px;z-index:3;color:#fff;font-size:16px;font-weight:700;line-height:1.5}.art-number{position:absolute;bottom:31px;right:30px;z-index:3;color:#fff;font-size:11px;letter-spacing:.1em}.discovery{padding-top:30px;padding-bottom:78px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:27px;gap:20px}.section-heading .eyebrow{margin-bottom:11px}.section-heading h2{font-size:30px;letter-spacing:-.055em;margin:0}.section-heading>p{font-size:12px;color:#8b8580;margin:0 0 4px}.filters{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}.search-box,.select-box,.free-filter{height:50px;background:#fff;border:1px solid #e9e5e0;border-radius:5px;display:flex;align-items:center}.search-box{width:35%;min-width:220px;padding:0 16px;gap:10px}.search-box span{font-size:24px;color:#888}.search-box input{border:0;outline:0;width:100%;font-size:13px;background:transparent}.select-box{padding:0 16px;gap:18px;font-size:12px;color:#8d8783}.select-box select{border:0;outline:0;background:transparent;font-size:13px;color:#2f2928;min-width:84px}.free-filter{padding:0 17px;gap:9px;font-size:12px;color:#4b4541}.free-filter input{accent-color:#d87657}.content-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);gap:18px}.calendar-panel,.day-panel{background:#fff;border:1px solid #ece8e2;border-radius:7px;padding:28px 30px;min-height:435px}.calendar-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.panel-kicker{font-size:10px;letter-spacing:.18em;font-weight:800;color:#cf8168;margin:0 0 8px}.calendar-top h3,.day-panel h3{margin:0;font-size:22px;letter-spacing:-.055em}.calendar-nav{display:flex;gap:6px}.calendar-nav button{border:1px solid #ebe7e1;background:#fff;border-radius:4px;padding:7px 10px;font-size:13px}.calendar-nav button:hover{background:#f6eee9}.weekday,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.weekday{padding:11px 0;border-top:1px solid #f0ece8;border-bottom:1px solid #f0ece8;color:#aaa19b;font-size:11px}.calendar-grid{grid-auto-rows:48px;padding-top:10px}.calendar-day{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#3b3734;font-size:13px;position:relative;margin:2px auto;width:41px;border-radius:50%}.calendar-day:hover{background:#f4ede8}.calendar-day.selected{background:#927aa8;color:white}.calendar-day.today:not(.selected){font-weight:800;color:#d46c50}.calendar-day i{width:4px;height:4px;border-radius:50%;background:#e38f64}.calendar-day.selected i{background:white}.calendar-key{display:flex;gap:17px;justify-content:flex-end;font-size:10px;color:#9b948f;margin-top:12px}.calendar-key span{display:flex;align-items:center;gap:6px}.calendar-key i{width:6px;height:6px;border-radius:50%}.dot-orange{background:#e38f64}.dot-purple{background:#927aa8}.day-panel{display:flex;flex-direction:column}.day-summary{font-size:12px;color:#9a918a;margin:7px 0 22px}.day-events{overflow:auto;max-height:315px}.day-event{width:100%;display:flex;flex-direction:column;text-align:left;background:#faf8f5;border:1px solid #f1ece6;border-radius:5px;padding:14px;margin-bottom:9px;gap:5px}.day-event:hover{border-color:#d87657}.day-event-category{color:#c4775d;font-size:10px;font-weight:800}.day-event strong{font-size:12px;line-height:1.55}.day-event small{color:#938b85;font-size:10px}.day-event small span{float:right}.empty-day{flex:1;min-height:190px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#ada59e;text-align:center;line-height:1.7;font-size:12px}.empty-day span{font-size:50px;color:#e6ddd4}.listing{padding-bottom:90px}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.event-card{padding:0;border:1px solid #ece8e2;background:#fff;text-align:left;border-radius:6px;overflow:hidden;transition:transform .18s,box-shadow .18s}.event-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #2c221112}.card-art{height:185px;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center}.card-art.peach{background:#e9c7b2}.card-art.lavender{background:#cfc6d6}.card-art.sage{background:#becdbf}.card-art.blue{background:#b9cbd2}.card-art:before,.card-art:after{content:'';position:absolute;border-radius:50%;border:1px solid #ffffff90;transform:rotate(-35deg)}.card-art:before{width:250px;height:140px}.card-art:after{width:310px;height:190px}.card-shape{font-family:Georgia,serif;font-size:125px;line-height:1;color:#ffffffba;text-shadow:8px 10px 12px #3a282922;z-index:1}.card-index{position:absolute;left:18px;top:18px;font-size:9px;letter-spacing:.12em;font-weight:800;color:#fff;z-index:2}.card-art-label{position:absolute;bottom:18px;right:18px;color:white;font-size:12px;font-weight:700;z-index:2}.card-body{padding:19px}.card-meta{display:flex;justify-content:space-between;gap:8px;color:#c1765c;font-size:10px;font-weight:700}.card-meta span:last-child{color:#918881;white-space:nowrap}.card-body h3{font-size:16px;line-height:1.45;letter-spacing:-.035em;min-height:46px;margin:14px 0 5px}.card-body p{font-size:11px;color:#a19a93;margin:0 0 20px}.card-bottom{border-top:1px solid #f0ece7;padding-top:15px;display:flex;justify-content:space-between;font-size:10px;color:#6e6863}.card-bottom span:last-child{font-weight:800;color:#d17658}.source-note{font-size:11px;color:#99918b;margin-top:20px;line-height:1.7}.empty-results{grid-column:1/-1;padding:45px;text-align:center;background:#fff;color:#8b827b;border-radius:5px}.about-section{background:#ede9e2;padding:70px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-grid h2{font-size:32px;line-height:1.4;letter-spacing:-.06em;margin:0}.about-grid>div:nth-child(2)>p{font-size:13px;color:#736c66;line-height:1.9;margin:29px 0}.about-points{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;font-weight:700}footer{min-height:120px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#8f8781}footer .brand{color:#2c2623;font-size:20px}footer .brand-mark{width:25px;height:25px;font-size:18px}dialog{max-width:510px;width:calc(100% - 32px);border:0;border-radius:8px;padding:36px;box-shadow:0 25px 80px #231b1b45}dialog::backdrop{background:#1d1719a8}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:28px;color:#8e8580}dialog h2{font-size:25px;letter-spacing:-.05em;line-height:1.4;margin:0 0 24px}dialog dl{margin:0}dialog dl div{display:flex;gap:20px;padding:12px 0;border-bottom:1px solid #eee9e5;font-size:12px}dialog dt{width:70px;color:#a59b94;flex:none}dialog dd{margin:0}.dialog-note{line-height:1.7;color:#817973;font-size:12px;margin:22px 0}dialog .primary-btn{gap:25px}@media(max-width:850px){.wrap{padding-left:24px;padding-right:24px}.hero{grid-template-columns:1fr;gap:25px}.hero-copy{padding-top:20px}.hero-art{min-height:300px}.content-grid{grid-template-columns:1fr}.event-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:30px}.site-header nav{display:none}}@media(max-width:600px){.announcement{font-size:9px;padding:0 8px}.site-header{height:70px}.header-link{display:none}.hero{padding-top:12px;padding-bottom:45px}.hero h1{font-size:43px}.hero-art{min-height:260px}.art-disc{width:270px;height:270px}.art-star{right:35px;top:30px}.section-heading{align-items:start;flex-direction:column}.section-heading h2{font-size:25px}.search-box{width:100%}.select-box{flex:1}.free-filter{width:100%;justify-content:center}.calendar-panel,.day-panel{padding:20px}.calendar-top h3{font-size:19px}.calendar-grid{grid-auto-rows:43px}.calendar-day{width:38px}.event-grid{grid-template-columns:1fr}.card-art{height:170px}.about-grid{grid-template-columns:1fr}.about-section{padding:48px 0}footer{padding-top:30px;padding-bottom:30px;flex-direction:column;align-items:start}}
[hidden]{display:none!important}
.show-more{display:block;margin:30px auto 0;padding:14px 28px;border:1px solid #d6c9be;border-radius:30px;background:#fff;color:#5b4b43;font-size:13px;font-weight:700;transition:background .18s,border-color .18s}
.show-more:hover{background:#f2e8e1;border-color:#cc8d75}
.show-more:focus-visible,.event-card:focus-visible,.calendar-day:focus-visible,a:focus-visible{outline:3px solid #927aa8;outline-offset:3px}
.text-link{color:#b6684f;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.footer-details{text-align:right;line-height:1.8}.footer-details p{margin:4px 0}.footer-details a:hover{text-decoration:underline}
.info-page{max-width:900px;margin:0 auto;padding-top:70px;padding-bottom:100px}
.info-page h1{font-size:clamp(34px,5vw,54px);letter-spacing:-.06em;line-height:1.25;margin:0 0 20px}
.info-lead{font-size:16px;line-height:1.9;color:#6e6660;margin:0 0 42px}
.info-card{background:#fff;border:1px solid #e8e1db;border-radius:8px;padding:32px 36px;margin:16px 0}
.info-card h2{font-size:21px;letter-spacing:-.04em;margin:0 0 14px}
.info-card p,.info-card li{font-size:14px;line-height:1.9;color:#5f5954}
.info-card p:last-child{margin-bottom:0}.info-card ul{padding-left:20px;margin:0}
.info-updated{font-size:12px;color:#918780;margin-top:35px}
@media(max-width:600px){.footer-details{text-align:left}.info-page{padding-top:40px;padding-bottom:65px}.info-card{padding:24px}}
.data-status{max-width:1184px;margin:-28px auto 56px;color:#74645d;font-size:12px;line-height:1.7}
.data-status:before{content:'●';font-size:8px;color:#7e9b79;margin-right:8px;vertical-align:2px}
.data-status.is-stale{color:#9d4f35}.data-status.is-stale:before{color:#c76542}
.highlights{padding-bottom:70px}.highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.highlight-card{min-height:170px;padding:22px;border:1px solid #e9ded5;border-radius:7px;background:#fff;text-align:left;display:flex;flex-direction:column;gap:9px;transition:transform .18s,box-shadow .18s}
.highlight-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #2c221112}.highlight-card:focus-visible{outline:3px solid #927aa8;outline-offset:3px}
.highlight-date{color:#b96e55;font-size:12px;font-weight:800;letter-spacing:.06em}.highlight-category{font-size:11px;color:#8b8179}.highlight-card strong{font-size:16px;line-height:1.5;letter-spacing:-.03em}.highlight-link{margin-top:auto;font-size:11px;font-weight:800;color:#b96e55}
.highlight-empty{grid-column:1/-1;background:#fff;border:1px solid #eee7df;border-radius:7px;padding:28px;color:#7f756d;font-size:13px}
.editorial{padding-bottom:85px}.editorial h2{font-size:28px;letter-spacing:-.05em;margin:0 0 24px}.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:20px}
.editorial-grid>div{padding:26px;background:#f0ebe5;border-radius:7px}.editorial-grid h3{font-size:17px;margin:0 0 11px}.editorial-grid p{font-size:13px;line-height:1.9;color:#665e57;margin:0}
@media(max-width:850px){.site-header{height:auto;min-height:88px;flex-wrap:wrap;row-gap:12px;padding-top:17px;padding-bottom:17px}.site-header nav{display:flex;order:3;width:100%;gap:20px;overflow-x:auto;white-space:nowrap;padding-bottom:3px}.highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-status{margin:0 auto 40px}}
@media(max-width:600px){.site-header{min-height:70px}.site-header nav{font-size:12px;gap:18px}.highlight-grid,.editorial-grid{grid-template-columns:1fr}.highlights{padding-bottom:50px}.data-status{font-size:11px;margin:0 auto 28px}.editorial{padding-bottom:60px}}
.card-art.has-poster::before,.card-art.has-poster::after,.card-art.has-poster .card-shape{display:none}
.card-poster{width:100%;height:100%;object-fit:contain;background:#eeece9;position:absolute;inset:0}
.card-poster[hidden]{display:none}
.card-art.has-poster .card-index,.card-art.has-poster .card-art-label{background:#25201fba;border-radius:3px;padding:5px 7px}
.card-body .card-venue{margin-bottom:8px}
.card-body .card-synopsis{font-size:11px;color:#736b65;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:34px;margin-bottom:16px}
.dialog-poster{display:block;max-height:260px;max-width:100%;object-fit:contain;margin:0 auto 20px;border-radius:4px}
.dialog-intro{margin-top:22px}
.dialog-intro h3{font-size:14px;margin:0 0 8px}
.dialog-intro p{font-size:12px;line-height:1.8;color:#655e59;margin:0}
.map-link{display:inline-block;margin-top:6px;color:#b75b42;text-decoration:underline;text-underline-offset:3px}
.contact-email{font-size:clamp(18px,3vw,26px)!important;font-weight:700;color:#a95d46!important;overflow-wrap:anywhere;margin-bottom:14px!important}
.contact-email a,.info-card .text-link{text-decoration:underline;text-underline-offset:3px}
.info-card .primary-btn{margin-top:12px}
.museum-controls{display:flex;gap:10px;margin:22px 0}.museum-controls input,.museum-controls select{background:#fff;border:1px solid #e5ded7;border-radius:5px;padding:12px 15px;font-size:13px}.museum-controls input{flex:1;min-width:0}.museum-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.museum-card{background:#fff;border:1px solid #e8e1db;border-radius:7px;padding:23px;min-width:0}.museum-card .eyebrow{margin-bottom:10px}.museum-card h3{font-size:18px;letter-spacing:-.04em;margin:0 0 11px}.museum-card p{font-size:12px;line-height:1.7;color:#6b625c;margin:0 0 11px}.museum-card dl{font-size:11px;border-top:1px solid #eee6df;padding-top:10px;margin:13px 0}.museum-card dl div{display:flex;gap:10px;margin:5px 0}.museum-card dt{color:#998d84;min-width:55px}.museum-card dd{margin:0;overflow-wrap:anywhere}.museum-card a{color:#b6684f;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:850px){.museum-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.museum-grid{grid-template-columns:1fr}}

.day-more{width:100%;margin-top:14px;padding:12px 16px;border:1px solid #dfd5cc;border-radius:6px;background:#fff;color:#9c5c46;font-size:12px;font-weight:700}.day-more:hover{background:#f5ede7}.day-more[hidden]{display:none}.card-source{font-size:10px;color:#887d74;margin:0 0 15px;line-height:1.5}
.mobile-view-switch{display:none}
@media(max-width:600px){
  .wrap{padding-left:16px;padding-right:16px}
  .announcement,.hero-art{display:none}
  .site-header{height:auto;min-height:0;padding-top:14px;padding-bottom:12px;row-gap:15px}
  .site-header nav{order:2;justify-content:space-between;gap:8px;overflow:visible;padding:0;font-size:11px}
  .site-header nav a:nth-child(n+4){display:none}
  .brand{font-size:23px}
  .hero{display:block;min-height:0;padding-top:17px;padding-bottom:26px}
  .hero-copy{padding-top:0}
  .hero .eyebrow{margin-bottom:10px;font-size:9px}
  .hero h1{font-size:34px;line-height:1.15;margin-bottom:10px}
  .hero-description{font-size:12px;line-height:1.6;margin:0 0 15px}
  .hero-description br{display:none}
  .hero .primary-btn{padding:10px 15px;gap:20px;font-size:11px}
  .data-status{margin:0 auto 22px;font-size:10px}
  .discovery{padding-top:0;padding-bottom:40px}
  .section-heading{margin-bottom:17px;gap:6px}
  .section-heading .eyebrow{margin-bottom:5px;font-size:9px}
  .section-heading h2{font-size:22px}
  .section-heading>p{font-size:10px;line-height:1.55}
  .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:13px}
  .search-box{grid-column:1/-1;width:100%;min-width:0;height:42px}
  .select-box,.free-filter{height:42px;min-width:0;width:auto;padding:0 9px;gap:6px}
  .select-box span{font-size:10px;white-space:nowrap}
  .select-box select{min-width:0;width:100%;font-size:12px}
  .free-filter{justify-content:flex-start;font-size:10px}
  .mobile-view-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 9px;background:#ebe5df;border-radius:7px;padding:4px}
  .mobile-view-switch button{border:0;border-radius:5px;background:transparent;padding:10px;font-size:12px;font-weight:700;color:#736b65}
  .mobile-view-switch button[aria-pressed="true"]{background:#fff;color:#2d2826;box-shadow:0 1px 5px #2d241a1a}
  .content-grid{display:block}
  .content-grid[data-view="calendar"] .day-panel,.content-grid[data-view="day"] .calendar-panel{display:none}
  .calendar-panel,.day-panel{min-height:0;padding:17px}
  .calendar-top{margin-bottom:14px}
  .calendar-top h3,.day-panel h3{font-size:18px}
  .calendar-nav button{padding:6px 9px}
  .calendar-grid{grid-auto-rows:38px;padding-top:5px}
  .calendar-day{width:33px;font-size:12px}
  .calendar-key{margin-top:7px}
  .day-panel{min-height:320px}
  .day-summary{margin-bottom:13px}
  .day-events{max-height:330px}
  .highlights{padding-bottom:40px}
  .highlight-grid{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
  .highlight-card{flex:0 0 82%;min-height:145px;padding:16px;scroll-snap-align:start}
  .highlight-empty{flex:1 0 100%}
  .listing{padding-bottom:48px}
  .event-grid{grid-template-columns:1fr;gap:10px}
  .event-card{display:grid;grid-template-columns:88px minmax(0,1fr);min-height:126px}
  .card-art{height:100%;min-height:126px}
  .card-shape{font-size:58px}
  .card-index,.card-art-label{display:none}
  .card-body{min-width:0;padding:11px 12px}
  .card-meta{font-size:9px;gap:5px}
  .card-meta span:last-child{max-width:84px;overflow:hidden;text-overflow:ellipsis}
  .card-body h3{font-size:14px;line-height:1.35;min-height:0;margin:7px 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .card-body .card-venue{font-size:10px;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .card-body .card-synopsis{display:none}
  .card-body .card-source{font-size:9px;margin:0 0 8px;color:#887d74;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .card-bottom{font-size:9px;padding-top:7px}
  .show-more{margin-top:18px}
  .museum-controls{margin:15px 0;gap:7px}
  .museum-controls input,.museum-controls select{padding:10px;font-size:12px}
  .museum-card{padding:17px}
  .museum-card h3{font-size:16px;margin-bottom:6px}
  .museum-card p{margin-bottom:6px}
  .editorial{padding-bottom:45px}
  .editorial h2{font-size:22px}
  .editorial-grid>div{padding:18px}
  .about-section{padding:35px 0}
  .about-grid h2{font-size:24px}
  .about-grid>div:nth-child(2)>p{margin:12px 0}
}
