.desktop-nav a.active { color: var(--brass); }
.ribbon-item { color: inherit; }
.ribbon-arrow { margin-left: auto; color: var(--brass-light); font-size: 20px; }
.event-item > a, .news-item > a { margin-left: auto; padding: 5px; color: var(--brass-light); font-size: 20px; }
.empty-event { min-height: 210px; padding: 32px 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.empty-event small { color: var(--brass-light); font-size: 10px; letter-spacing: .13em; font-weight: 800; }.empty-event h3 { margin: 12px 0 9px; font-family: var(--serif); font-size: 24px; letter-spacing: -.05em; }.empty-event p { color: #b9c2d0; font-size: 13px; margin-bottom: 20px; }

.subpage { min-height: calc(100vh - 234px); background: var(--paper); }.sub-hero, .join-page-hero, .member-detail-hero { padding: 102px max(46px, calc((100vw - 1348px)/2)) 78px; background: var(--ivory); position: relative; overflow: hidden; }.sub-hero::after, .join-page-hero::after { content: 'BAEKNYEON'; position: absolute; right: max(46px, calc((100vw - 1348px)/2)); bottom: -10px; color: rgba(184,137,61,.12); font-family: var(--serif); font-size: clamp(72px, 13vw, 190px); line-height: 1; pointer-events: none; }.sub-hero > *, .join-page-hero > * { position: relative; z-index: 1; }.sub-hero h1, .join-page-hero h1, .member-detail-hero h1 { max-width: 780px; margin: 12px 0 16px; font-size: clamp(40px, 4vw, 62px); }.sub-hero h1 em, .join-page-hero h1 em { color: var(--brass); font-style: normal; }.sub-hero > p:last-child, .join-page-hero > p:last-child { max-width: 550px; color: #626972; line-height: 1.9; font-size: 15px; }
.directory-section, .list-section, .join-page-grid { max-width: 1348px; padding: 70px 46px 120px; margin: 0 auto; }.directory-filters { display: grid; grid-template-columns: minmax(260px, 1fr) 170px 140px 120px; gap: 8px; padding: 16px; background: #fff; border-top: 3px solid var(--brass); box-shadow: 0 15px 32px rgba(25,36,49,.08); }.directory-filters input, .directory-filters select { width: 100%; min-height: 48px; padding: 0 12px; border: 1px solid #d8d8d4; color: var(--ink); background: #fff; outline-color: var(--brass); }.result-count { margin: 24px 0 17px; color: #737981; font-size: 13px; }.result-count strong { color: var(--brass); font-size: 18px; }.directory-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }.directory-card { min-height: 245px; display: flex; flex-direction: column; padding: 26px; background: #fff; border: 1px solid #e2ddd4; transition: transform .2s ease, box-shadow .2s ease; }.directory-card:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(31,45,66,.1); }.directory-card-top { display: flex; justify-content: space-between; color: var(--brass); font-size: 11px; font-weight: 800; }.directory-card-top small { color: #879099; }.directory-card h2 { margin: 19px 0 7px; font-family: var(--serif); font-size: 25px; letter-spacing: -.06em; }.directory-card h2 a:hover { color: var(--brass); }.member-school { color: #77808a; font-size: 11px; }.directory-card > p:not(.member-school) { color: #6f767d; font-size: 13px; line-height: 1.7; margin: 12px 0 20px; }.directory-card .text-link { margin-top: auto; }
.empty-state { grid-column: 1 / -1; padding: 54px 24px; text-align: center; border: 1px dashed #c9c2b6; background: #faf8f2; }.empty-state h2 { margin: 0 0 8px; font-size: 25px; }.empty-state p { color: #737981; font-size: 14px; }.empty-state a { color: var(--navy); font-weight: 800; font-size: 13px; }.empty-state.compact { padding: 30px 18px; text-align: left; }

.back-link { display: inline-flex; margin-bottom: 35px; color: #66707a; font-size: 13px; font-weight: 700; }.back-link:hover { color: var(--brass); }.member-detail-hero { background: var(--navy); color: #fff; }.member-detail-hero .section-kicker { color: var(--brass-light); }.member-detail-hero h1 { color: #fff; }.member-detail-hero .member-school { color: #bbc6d5; }.detail-lead { max-width: 670px; color: #d6dde6; line-height: 1.9; font-size: 16px; }.detail-body { max-width: 1348px; padding: 76px 46px 120px; margin: 0 auto; display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; }.detail-body article h2, .detail-body aside h2 { font-family: var(--serif); font-size: 28px; color: var(--navy); }.detail-body article p { white-space: pre-line; color: #616972; font-size: 15px; line-height: 2; }.detail-body aside { padding: 28px; border-top: 3px solid var(--brass); background: var(--ivory); align-self: start; }.detail-body dl { margin: 21px 0 26px; }.detail-body dl div { display: flex; gap: 25px; padding: 12px 0; border-top: 1px solid #d9d2c5; font-size: 13px; }.detail-body dt { width: 70px; color: #7c8288; }.detail-body dd { margin: 0; color: var(--navy); font-weight: 700; }.detail-body dd a { color: var(--brass); }

.news-list, .event-page-list { border-top: 2px solid var(--navy); }.notice-row { display: grid; grid-template-columns: 180px 1fr; gap: 35px; padding: 31px 0; border-bottom: 1px solid var(--line); }.notice-row time { color: var(--brass); font-family: var(--serif); font-size: 15px; }.notice-row span, .event-page-card > div > span { color: var(--brass); font-size: 11px; font-weight: 800; }.notice-row h2 { margin: 8px 0; font-size: 25px; }.notice-row p { margin: 0; color: #737981; line-height: 1.75; font-size: 14px; }.event-page-card { display: grid; grid-template-columns: 110px 1fr auto; gap: 35px; align-items: center; padding: 30px 0; border-bottom: 1px solid var(--line); }.event-page-card time { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100px; height: 100px; border-radius: 50%; background: var(--ivory); color: var(--navy); font-family: var(--serif); }.event-page-card time strong { font-size: 38px; line-height: 1; }.event-page-card time span { margin-top: 4px; color: var(--brass); font-size: 11px; }.event-page-card h2 { margin: 7px 0; font-size: 27px; }.event-page-card p { margin: 0 0 9px; color: #70777e; line-height: 1.7; font-size: 14px; }.event-page-card small { color: #6f767d; }

.join-page-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; }.join-guide h2, .inquiry-form h2 { margin-bottom: 26px; font-family: var(--serif); font-size: 32px; color: var(--navy); }.join-guide ol { padding: 0; margin: 0; list-style: none; border-top: 1px solid var(--navy); }.join-guide li { display: flex; gap: 18px; padding: 23px 0; border-bottom: 1px solid var(--line); }.join-guide li > span { color: var(--brass); font-family: var(--serif); }.join-guide li p { margin: 3px 0 0; color: #747b83; font-size: 13px; }.benefit-box { margin-top: 30px; padding: 24px; background: var(--navy); color: #fff; }.benefit-box p { margin: 7px 0 0; color: #d4dde8; font-size: 13px; line-height: 1.7; }.inquiry-form, .admin-form-card { padding: 35px; background: #fff; border-top: 3px solid var(--brass); box-shadow: 0 16px 36px rgba(26,39,57,.08); }.inquiry-form label, .admin-form-card label { display: block; color: #4f5962; font-size: 12px; font-weight: 800; }.inquiry-form input, .inquiry-form textarea, .admin-form-card input, .admin-form-card textarea { width: 100%; margin-top: 8px; padding: 12px; border: 1px solid #dadbd7; outline-color: var(--brass); background: #fff; font: inherit; font-size: 13px; resize: vertical; }.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin-bottom: 16px; }.inquiry-form > label:not(.consent), .admin-form-card > label:not(.consent) { margin-bottom: 16px; }.consent { display: flex !important; align-items: flex-start; gap: 8px; margin: 19px 0 !important; color: #68717a !important; line-height: 1.55; font-weight: 500 !important; }.consent input { width: auto !important; margin: 2px 0 0 !important; }.form-status { min-height: 19px; margin: 13px 0 0; color: var(--brass); font-size: 12px; line-height: 1.5; }

.admin-login-page { min-height: 100vh; display: grid; place-items: center; align-content: center; gap: 25px; background: var(--navy); padding: 25px; }.admin-wordmark { color: #fff; font-family: var(--serif); font-size: 24px; }.admin-wordmark span { color: var(--brass-light); font-family: var(--sans); font-size: 10px; letter-spacing: .15em; }.admin-login-card { width: min(100%, 460px); padding: 42px; background: var(--paper); border-top: 3px solid var(--brass); }.admin-login-card h1 { margin: 11px 0 13px; font-size: 38px; }.admin-login-card > p { color: #6c747c; line-height: 1.75; font-size: 14px; }.config-note { margin: 24px 0; padding: 18px; background: var(--ivory); color: #68717a; font-size: 13px; line-height: 1.6; }.config-note p { margin: 5px 0 0; }.admin-page { min-height: 100vh; background: var(--paper); }.admin-header { min-height: 74px; display: flex; justify-content: space-between; align-items: center; padding: 0 max(28px, calc((100vw - 1300px)/2)); background: var(--navy); color: #fff; }.admin-header > div { display: flex; align-items: center; gap: 14px; color: #d4dce6; font-size: 12px; }.admin-header form { margin: 0; }.admin-header button { border: 1px solid rgba(255,255,255,.3); color: #fff; background: transparent; padding: 7px 11px; font-size: 11px; }.admin-intro, .admin-stats, .admin-workspace { max-width: 1300px; margin: 0 auto; padding-left: 28px; padding-right: 28px; }.admin-intro { padding-top: 65px; padding-bottom: 36px; }.admin-intro h1 { margin: 9px 0; font-size: 43px; }.admin-intro p:last-child { color: #737a81; font-size: 14px; }.admin-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }.admin-stats div { padding: 22px; background: #fff; border-top: 2px solid var(--brass); }.admin-stats span { display: block; color: #79818a; font-size: 12px; }.admin-stats strong { display: block; margin-top: 8px; color: var(--navy); font-family: var(--serif); font-size: 35px; }.admin-workspace { display: grid; grid-template-columns: .84fr 1.16fr; gap: 22px; padding-top: 36px; padding-bottom: 80px; }.admin-form-card h2, .inquiry-panel h2 { margin: 0 0 8px; color: var(--navy); font-family: var(--serif); font-size: 27px; }.admin-form-card > p { margin: 0 0 22px; color: #747b82; font-size: 13px; line-height: 1.6; }.inquiry-panel { padding: 31px; background: #fff; border: 1px solid #e1ddd4; }.admin-inquiry-list { margin-top: 25px; border-top: 1px solid var(--line); }.admin-inquiry-list article { display: flex; justify-content: space-between; gap: 15px; padding: 16px 0; border-bottom: 1px solid var(--line); }.admin-inquiry-list strong, .admin-inquiry-list span, .admin-inquiry-list small { display: block; }.admin-inquiry-list strong { color: var(--navy); font-size: 14px; }.admin-inquiry-list span { margin-top: 4px; color: #66717b; font-size: 12px; }.admin-inquiry-list small { margin-top: 3px; color: #939aa0; font-size: 11px; }.inquiry-status { align-self: center; min-width: 92px; padding: 7px; border: 1px solid #d8d8d4; background: #fff; font-size: 11px; }.admin-hint { margin: 17px 0 0; color: #7c858c; font-size: 11px; }.error-page { min-height: 100vh; display: grid; place-items: center; align-content: center; padding: 25px; background: var(--ivory); text-align: center; }.error-page h1 { margin: 12px 0; }.error-page p { max-width: 480px; color: #6e767e; line-height: 1.8; margin-bottom: 25px; }
.policy-copy { max-width: 760px; color: #5f6871; font-size: 15px; line-height: 1.9; }.policy-copy h2 { margin: 42px 0 10px; color: var(--navy); font-family: var(--serif); font-size: 27px; }.policy-copy h2:first-child { margin-top: 0; }.policy-copy p { margin: 0; }
.member-feature-image { display: block; width: 100%; max-height: 520px; margin: 0 0 30px; object-fit: contain; background: #f2efe7; border: 1px solid #e0dbd1; }

@media (max-width: 760px) { .sub-hero, .join-page-hero, .member-detail-hero { padding: 65px 20px 54px; }.sub-hero::after, .join-page-hero::after { right: 20px; font-size: 70px; }.sub-hero h1, .join-page-hero h1, .member-detail-hero h1 { font-size: 36px; }.sub-hero > p:last-child, .join-page-hero > p:last-child { font-size: 13px; }.directory-section, .list-section, .join-page-grid { padding: 42px 20px 75px; }.directory-filters { grid-template-columns: 1fr 1fr; padding: 12px; }.directory-filters input { grid-column: 1 / -1; }.directory-filters .search-button { min-height: 44px; }.directory-grid { grid-template-columns: 1fr; }.directory-card { min-height: 218px; }.detail-body { display: block; padding: 45px 20px 70px; }.detail-body article { margin-bottom: 34px; }.detail-body aside { padding: 22px; }.notice-row { grid-template-columns: 1fr; gap: 10px; padding: 24px 0; }.notice-row h2 { font-size: 21px; }.event-page-card { grid-template-columns: 70px 1fr; gap: 16px; }.event-page-card time { width: 62px; height: 62px; }.event-page-card time strong { font-size: 25px; }.event-page-card > .outline-button { grid-column: 1 / -1; justify-self: start; }.event-page-card h2 { font-size: 22px; }.join-page-grid { display: block; }.join-guide { margin-bottom: 35px; }.inquiry-form, .admin-form-card { padding: 24px; }.form-row { grid-template-columns: 1fr; gap: 0; }.admin-header { padding: 0 20px; }.admin-header > div span { display: none; }.admin-intro, .admin-stats, .admin-workspace { padding-left: 20px; padding-right: 20px; }.admin-intro { padding-top: 45px; }.admin-intro h1 { font-size: 35px; }.admin-stats { grid-template-columns: 1fr 1fr; }.admin-workspace { display: block; padding-top: 20px; }.admin-form-card { margin-bottom: 18px; }.inquiry-panel { padding: 22px; }.admin-inquiry-list article { display: block; }.inquiry-status { margin-top: 10px; }.admin-login-card { padding: 30px 24px; } }
