/* DESIGN.md visual system. Geometry, breakpoints and motion belong to existing CSS/JS. */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500&family=Inter:wght@400;500;600;800;900&family=Noto+Serif+KR:wght@400&display=swap');
:root {
 --ds-primary:#cc785c; --ds-primary-active:#a9583e;
 --ds-ink:#141413; --ds-body:#3d3d3a; --ds-body-strong:#252523;
 --ds-muted:#6c6a64; --ds-muted-soft:#8e8b82;
 --ds-hairline:#e6dfd8; --ds-hairline-soft:#ebe6df;
 --ds-canvas:#faf9f5; --ds-soft:#f5f0e8; --ds-card:#efe9de;
 --ds-cream-strong:#e8e0d2; --ds-dark:#181715;
 --ds-dark-elevated:#252320; --ds-dark-soft:#1f1e1b;
 --ds-on-primary:#ffffff; --ds-on-dark:#faf9f5; --ds-on-dark-soft:#a09d96;
 --ds-display:'Cormorant Garamond','Noto Serif KR',serif;
 --ds-sans:'Inter','Pretendard',-apple-system,BlinkMacSystemFont,sans-serif;
 --font-sans:var(--ds-sans); --weight-heading:400;
 --color-background:var(--ds-canvas); --color-text:var(--ds-body);
 --color-brand:var(--ds-ink); --color-muted:var(--ds-muted); --color-accent:var(--ds-primary);
}
body,body.editorial-home,body.course-page,body.news-page { background:var(--ds-canvas); color:var(--ds-body); font-family:var(--ds-sans); }
body :is(h1,h2,h3),body .hero-title,body .method-screen-title {
 font-family:var(--ds-display); font-weight:400 !important; letter-spacing:-.025em;
}
body .program-price strong,body .course-price { font-family:'Pretendard',system-ui,sans-serif; font-weight:800; }
/* Restore the original sans numerals for the homepage statistics and grade comparison. */
body .number-value { font-family:'Pretendard',-apple-system,BlinkMacSystemFont,system-ui,sans-serif; font-weight:800; }
body .hero-brand,body .hero-brand-word,body .hero-brand-korean { font-family:'Pretendard',var(--ds-sans); }
body .hero-brand { color:var(--ds-ink); }
body .hero-intro,body .hero-menu { font-weight:500; }
body .faq-toggle { font-family:var(--ds-sans); font-weight:500; }
body .hero .hero-menu .hero-nav-cta,body .hero-menu .hero-nav-cta,body .hero .hero-cta,
.course-page .btn.primary,.news-article-actions .news-consult,
.closing-actions a:first-child,.editorial-home .location-links a:first-child {
 background:var(--ds-primary); color:var(--ds-on-primary); border-color:var(--ds-primary); font-weight:500;
}
body .hero .hero-menu .hero-nav-cta:hover,body .hero-menu .hero-nav-cta:hover,body .hero .hero-cta:hover,
.course-page .btn.primary:hover,.news-article-actions .news-consult:hover,
.closing-actions a:first-child:hover,.editorial-home .location-links a:first-child:hover { background:var(--ds-primary-active); color:var(--ds-on-primary); }
.hero .hero-title .hero-line + .hero-line { color:var(--ds-on-dark); }
.hero .hero-menu a:hover,.hero .hero-contact a:hover { color:var(--ds-cream-strong); }
.editorial-home .hero-intro { color:var(--ds-on-dark); }
.editorial-home .hero,.method-section,.course-page .course-learning { background-color:var(--ds-dark); }
.review-section { background:var(--ds-soft); }
.editorial-home .review-card,.editorial-home .program-card,.editorial-home .location-inner,
.editorial-home .facility-card:last-child,.course-info-card,.news-feature,.news-school-grid section { background:var(--ds-card); }
.editorial-home .review-image-link { background:var(--ds-canvas); }
.editorial-home .closing-inner { background:var(--ds-dark); color:var(--ds-on-dark); }
.editorial-home .closing-title { color:var(--ds-on-dark); }
.editorial-home .closing-award,.editorial-home .closing-actions a:not(:first-child) { color:var(--ds-on-dark-soft); }
.site-footer { background:var(--ds-dark); color:var(--ds-on-dark-soft); }
.site-footer .footer-name,.site-footer a { color:var(--ds-on-dark); }
.news-read,.news-source a,.program-link,.review-more,.news-page .hero-menu a[aria-current='page'] { color:var(--ds-primary-active); }
.news-eyebrow,.news-process { color:var(--ds-body-strong); }
/* Subtle warm paper color, with no new overlays or interaction layers. */
::selection { background:var(--ds-cream-strong); color:var(--ds-ink); }

/* Restore only digit glyphs in mixed titles/body; keep editorial letters unchanged. */

/* Explicit digit spans keep mixed Korean display headings independent of font loading. */
body .original-numeral { font-family: Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif; font-variant-numeric: lining-nums tabular-nums; }
/* Reference peach band, from FAQ through the homepage footer. */
.editorial-home #faq,
.editorial-home #faq ~ section,
.editorial-home .site-footer { background-color:#fecd8c; --color-muted:var(--ds-body); }
.editorial-home #faq { border-top-color:rgba(20,20,19,.16); }
.editorial-home #faq .faq-item,
.editorial-home #news .news-list a { border-color:rgba(20,20,19,.18); }
.editorial-home .closing-inner { background:transparent; color:var(--ds-ink); }
.editorial-home .closing-title { color:var(--ds-ink); }
.editorial-home .closing-award,
.editorial-home .closing-actions a:not(:first-child),
.editorial-home .site-footer { color:var(--ds-body); }
.editorial-home .site-footer .footer-name,
.editorial-home .site-footer a { color:var(--ds-ink); }
.editorial-home .closing-actions a:first-child { background:var(--ds-dark); color:var(--ds-on-dark); border-color:var(--ds-dark); }
.editorial-home .closing-actions a:first-child:hover { background:var(--ds-dark-elevated); }
/* User-selected alternating colors below the peach FAQ. */
.editorial-home #news,
.editorial-home .site-footer {
 background-color:#001317;
 color:#faf9f5;
 --color-brand:#faf9f5;
 --color-text:#faf9f5;
 --color-muted:#c7d0ca;
}
.editorial-home #news .news-list li,
.editorial-home #news .news-list a { border-color:rgba(250,249,245,.22); }
.editorial-home .site-footer .footer-name,
.editorial-home .site-footer a { color:#faf9f5; }
.editorial-home .site-footer { color:#c7d0ca; }
.editorial-home #jdp-cta { background-color:#b9c089; }
.editorial-home #jdp-cta .closing-title { color:#001317; }
.editorial-home #jdp-cta .closing-actions a:first-child { background:#001317; color:#faf9f5; border-color:#001317; }
.editorial-home #jdp-cta .closing-actions a:first-child:hover { background:#173236; }
.editorial-home #faq ~ #news { background-color:#001317; --color-muted:#c7d0ca; }
.editorial-home #faq ~ #jdp-cta { background-color:#b9c089; }
/* Unify the hero's supporting copy and consultation labels with its serif title. */
.editorial-home .hero-intro,
.editorial-home .hero-description,
body.editorial-home .hero .hero-cta,
.editorial-home .hero-contact {
 font-family:var(--ds-display);
 font-weight:400;
}
