:root{--blue:#0000ff;--black:#090909;--white:#fff;--paper:#f4f4f1;--line:rgba(9,9,9,.18);--sans:Arial,"Helvetica Neue","Noto Sans KR",sans-serif;--serif:"Times New Roman","Noto Serif KR",serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--black);font-family:var(--sans);-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit}
.skip-link{position:fixed;top:10px;left:10px;z-index:1000;padding:10px 14px;background:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.site-header{position:sticky;top:0;z-index:100;height:78px;padding:0 clamp(20px,3vw,48px);display:flex;align-items:center;justify-content:space-between;background:rgba(244,244,241,.96);border-bottom:1px solid var(--black);backdrop-filter:blur(10px)}
.brand img{width:clamp(170px,15vw,230px);height:auto}
.desktop-nav{display:flex;gap:clamp(20px,3vw,48px);font-size:.7rem;font-weight:800;letter-spacing:.08em}
.desktop-nav a{padding:28px 0 25px;border-bottom:3px solid transparent}
.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--blue);border-color:var(--blue)}
.menu-button,.mobile-nav{display:none}
.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);border-bottom:1px solid var(--black)}
.hero-copy{padding:clamp(26px,4vw,64px);display:flex;flex-direction:column;justify-content:space-between;background:var(--blue);color:#fff}
.hero-meta{display:flex;justify-content:space-between;font-size:.65rem;font-weight:800;letter-spacing:.12em}
.hero h1{margin:clamp(56px,10vh,110px) 0 60px;font-size:clamp(4rem,8.1vw,9.4rem);line-height:.76;letter-spacing:-.075em;font-weight:900}
.hero h1 em,.about h2 i,.section-heading h2 i,.editor-intro h2 i,.partners h2 i,.site-directory h2 i{font-family:var(--serif);font-weight:400}
.hero-bottom{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}
.hero-bottom p{margin:0;font-size:clamp(.95rem,1.1vw,1.2rem);font-weight:700;line-height:1.55;word-break:keep-all}
.hero-actions{display:flex;flex-direction:column;align-items:flex-end;gap:18px}
.button{min-height:50px;padding:0 18px;display:inline-flex;align-items:center;justify-content:space-between;gap:36px;border:1px solid currentColor;font-size:.72rem;font-weight:900;letter-spacing:.06em;transition:.18s ease}
.button-dark{background:var(--black);color:#fff;border-color:var(--black)}
.button-dark:hover,.button-dark:focus-visible{background:#fff;color:var(--blue)}
.text-link{font-size:.67rem;font-weight:900;letter-spacing:.08em;border-bottom:1px solid currentColor;padding-bottom:4px}
.hero-visual{position:relative;margin:0;overflow:hidden;background:#d8d8d5}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-visual figcaption{position:absolute;right:20px;bottom:18px;padding:7px 9px;background:#fff;font-size:.58rem;font-weight:900;letter-spacing:.08em}
.quick-index{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--black)}
.quick-index a{min-height:150px;padding:24px clamp(18px,2.5vw,36px);display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:8px 20px;border-right:1px solid var(--black);transition:.18s ease}
.quick-index a:last-child{border-right:0}
.quick-index a:hover,.quick-index a:focus-visible{background:var(--blue);color:#fff}
.quick-index span{font-size:.62rem;font-weight:800}
.quick-index strong{align-self:center;font-size:clamp(1rem,1.6vw,1.5rem);letter-spacing:-.04em}
.quick-index small{grid-column:2;font-size:.72rem}
.section-dark,.site-directory{padding:clamp(72px,9vw,150px) clamp(20px,5vw,80px);background:var(--black);color:#fff}
.section-light{padding:clamp(72px,9vw,150px) clamp(20px,5vw,80px);background:var(--paper)}
.section-kicker{display:grid;grid-template-columns:32px auto 1fr;gap:14px;align-items:center;margin-bottom:clamp(54px,7vw,100px);font-size:.65rem;font-weight:900;letter-spacing:.1em}
.section-kicker:after{content:"";height:1px;background:currentColor;opacity:.45}
.section-kicker p{margin:0}
.section-kicker-light{color:#fff}
.about-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.55fr);gap:clamp(60px,10vw,180px);align-items:end}
.about h2,.section-heading h2,.partners h2,.site-directory h2{margin:0;font-size:clamp(3rem,6.4vw,7.5rem);line-height:.9;letter-spacing:-.065em}
.about-copy p{margin:24px 0 0;font-size:1rem;line-height:1.75;word-break:keep-all;color:rgba(255,255,255,.66)}
.about-copy .lead{margin-top:0;color:#fff;font-size:clamp(1.1rem,1.5vw,1.45rem);font-weight:700;line-height:1.6}
.principles{margin-top:clamp(80px,10vw,150px);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.4)}
.principles article{min-height:230px;padding:22px 22px 26px 0;border-right:1px solid rgba(255,255,255,.25)}
.principles article:not(:first-child){padding-left:22px}
.principles article:last-child{border-right:0}
.principles span{font-size:.62rem}
.principles h3{margin:65px 0 12px;font-size:clamp(1.05rem,1.7vw,1.6rem)}
.principles p{margin:0;color:rgba(255,255,255,.6);font-size:.85rem;line-height:1.55;word-break:keep-all}
.section-heading{display:grid;grid-template-columns:1.25fr .55fr;gap:clamp(60px,10vw,180px);align-items:end}
.section-heading p,.partners-layout>div>p{margin:0;font-size:clamp(1rem,1.4vw,1.3rem);font-weight:600;line-height:1.65;word-break:keep-all}
.editorial-grid{margin-top:clamp(70px,9vw,130px);display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--black);border-left:1px solid var(--black)}
.editorial-grid a{min-height:260px;padding:28px;display:grid;grid-template-columns:40px 1fr auto;gap:24px;border-right:1px solid var(--black);border-bottom:1px solid var(--black);transition:.18s ease}
.editorial-grid a:hover,.editorial-grid a:focus-visible{background:var(--blue);color:#fff}
.card-number{font-size:.62rem;font-weight:900}
.editorial-grid h3{margin:70px 0 12px;font-size:clamp(1.3rem,2.3vw,2.3rem);letter-spacing:-.04em}
.editorial-grid p{max-width:450px;margin:0;font-size:.9rem;line-height:1.6;word-break:keep-all}
.editorial-grid b{font-size:1.2rem}
.large-link{margin-top:26px;padding:22px 0;display:flex;justify-content:space-between;border-top:1px solid var(--black);border-bottom:1px solid var(--black);font-size:.75rem;font-weight:900;letter-spacing:.08em}
.large-link:hover,.large-link:focus-visible{color:var(--blue)}
.editor-program{display:grid;grid-template-columns:1fr 1fr;background:var(--blue);color:#fff}
.editor-intro,.editor-details{padding:clamp(72px,8vw,130px) clamp(20px,5vw,80px)}
.editor-intro{border-right:1px solid rgba(255,255,255,.55)}
.editor-intro h2{margin:clamp(70px,11vw,180px) 0 0;font-size:clamp(4rem,7.2vw,8.2rem);line-height:.78;letter-spacing:-.075em}
.editor-details{display:flex;flex-direction:column;justify-content:flex-end}
.editor-details>.lead{margin:0 0 clamp(60px,8vw,110px);font-size:clamp(1.1rem,1.6vw,1.55rem);font-weight:700;line-height:1.65;word-break:keep-all}
.editor-details ol{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.6)}
.editor-details li{padding:22px 0;display:grid;grid-template-columns:42px 1fr;border-bottom:1px solid rgba(255,255,255,.6)}
.editor-details li>span{font-size:.62rem;font-weight:900}
.editor-details strong{font-size:1rem}
.editor-details li p{margin:7px 0 0;color:rgba(255,255,255,.72);font-size:.84rem}
.editor-actions{margin-top:36px;display:flex;align-items:center;gap:28px}
.button-light{background:#fff;color:var(--blue);border-color:#fff}
.button-light:hover,.button-light:focus-visible{background:var(--black);color:#fff;border-color:var(--black)}
.text-link-light{color:#fff}
.partners-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,10vw,180px);align-items:end}
.partners-layout>div>p{max-width:650px;margin-top:46px}
.partner-menu{border-top:1px solid var(--black)}
.partner-menu a{min-height:118px;padding:24px 0;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;align-items:center;border-bottom:1px solid var(--black)}
.partner-menu a:hover,.partner-menu a:focus-visible{color:var(--blue)}
.partner-menu span{font-size:clamp(1.1rem,2vw,2rem);font-weight:900;letter-spacing:-.04em}
.partner-menu small{font-size:.78rem}
.partner-menu b{grid-column:2;grid-row:1/3;font-size:1.3rem}
.site-directory h2{max-width:1100px}
.directory-list{margin-top:clamp(70px,9vw,130px);border-top:1px solid rgba(255,255,255,.55)}
.directory-list a{min-height:110px;padding:20px 0;display:grid;grid-template-columns:60px 1fr 1fr auto;align-items:center;border-bottom:1px solid rgba(255,255,255,.55);transition:.18s ease}
.directory-list a:hover,.directory-list a:focus-visible{padding-left:18px;background:var(--blue)}
.directory-list span{font-size:.62rem}
.directory-list strong{font-size:clamp(1.2rem,2.6vw,2.6rem);letter-spacing:-.045em}
.directory-list small{font-size:.8rem;color:rgba(255,255,255,.65)}
.directory-list b{font-size:1.2rem}
.site-footer{padding:clamp(50px,6vw,90px) clamp(20px,5vw,80px) 28px;display:grid;grid-template-columns:1fr auto;gap:80px;background:#fff;border-top:7px solid var(--blue)}
.site-footer>div:first-child{display:flex;align-items:center;gap:28px}
.footer-logo{width:76px;height:32px;object-fit:cover;object-position:top}
.site-footer>div:first-child p{margin:0;font-size:.78rem;font-weight:900;line-height:1.45}
.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-size:.7rem;font-weight:900;letter-spacing:.08em}
.footer-contact span{color:var(--blue)}
.footer-contact a{border-bottom:1px solid}
.copyright{grid-column:1/-1;margin:40px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:.58rem;font-weight:800;letter-spacing:.08em}

@media(max-width:980px){
  .desktop-nav{display:none}
  .menu-button{display:flex;align-items:center;gap:12px;border:0;background:transparent;font-size:.7rem;font-weight:900;letter-spacing:.08em;cursor:pointer}
  .menu-line{display:block;width:24px;height:2px;background:var(--black);position:relative}
  .menu-line:after{content:"";position:absolute;left:0;top:7px;width:24px;height:2px;background:var(--black)}
  .mobile-nav{position:fixed;inset:78px 0 0;z-index:99;padding:28px 20px;background:var(--blue);color:#fff;flex-direction:column}
  .mobile-nav:not([hidden]){display:flex}
  .mobile-nav a{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.55);font-size:clamp(1.5rem,6vw,3rem);font-weight:900;letter-spacing:-.04em}
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-copy{min-height:700px}
  .hero-visual{height:78vw;max-height:850px}
  .quick-index{grid-template-columns:repeat(2,1fr)}
  .quick-index a:nth-child(2){border-right:0}
  .quick-index a:nth-child(-n+2){border-bottom:1px solid var(--black)}
  .about-layout,.section-heading,.partners-layout{grid-template-columns:1fr;gap:55px}
  .principles{grid-template-columns:repeat(2,1fr)}
  .principles article:nth-child(2){border-right:0}
  .principles article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.25)}
  .principles article:nth-child(3){padding-left:0}
  .editor-program{grid-template-columns:1fr}
  .editor-intro{border-right:0;border-bottom:1px solid rgba(255,255,255,.55)}
  .editor-intro h2{margin-top:100px}
  .editor-details>.lead{margin-bottom:60px}
}

@media(max-width:620px){
  .site-header{height:66px;padding:0 16px}
  .brand img{width:154px}
  .mobile-nav{inset:66px 0 0}
  .hero-copy{min-height:620px;padding:24px 18px 28px}
  .hero h1{margin:76px 0 58px;font-size:clamp(3.25rem,17vw,5.4rem);line-height:.79}
  .hero-bottom{grid-template-columns:1fr;gap:30px}
  .hero-actions{align-items:stretch}
  .hero-visual{height:125vw}
  .quick-index a{min-height:124px;padding:18px 14px;grid-template-columns:22px 1fr;gap:6px 8px}
  .quick-index strong{font-size:.95rem}
  .quick-index small{font-size:.65rem}
  .section-dark,.site-directory,.section-light,.editor-intro,.editor-details{padding:70px 18px}
  .section-kicker{margin-bottom:50px}
  .about h2,.section-heading h2,.partners h2,.site-directory h2{font-size:clamp(2.8rem,14vw,4.5rem)}
  .about-layout{gap:42px}
  .principles{margin-top:70px;grid-template-columns:1fr}
  .principles article,.principles article:not(:first-child){min-height:160px;padding:18px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}
  .principles h3{margin:38px 0 8px}
  .editorial-grid{margin-top:62px;grid-template-columns:1fr}
  .editorial-grid a{min-height:220px;padding:20px;grid-template-columns:28px 1fr auto;gap:12px}
  .editorial-grid h3{margin-top:54px}
  .large-link{gap:18px;font-size:.62rem}
  .editor-intro h2{margin-top:70px;font-size:clamp(3.7rem,18vw,5.5rem)}
  .editor-actions{align-items:stretch;flex-direction:column}
  .partner-menu{margin-top:14px}
  .partner-menu a{min-height:100px}
  .directory-list a{min-height:96px;grid-template-columns:32px 1fr auto;gap:8px}
  .directory-list small{grid-column:2}
  .directory-list b{grid-column:3;grid-row:1/3}
  .site-footer{padding:46px 18px 22px;grid-template-columns:1fr;gap:40px}
  .site-footer>div:first-child{gap:18px}
  .footer-contact{align-items:flex-start}
  .copyright{margin-top:12px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
