/*
 * Tenant Magazine
 * Original, tenant-safe global market community layout for EB 4.7.11.
 */

.tm-site {
    --tm-navy:#0a0b0e;
    --tm-navy-soft:#17191f;
    --tm-ink:#15171c;
    --tm-muted:#637083;
    --tm-line:#dce2e8;
    --tm-paper:#f3f5f7;
    --tm-white:#fff;
    --tm-accent:#e2232e;
    position:relative;
    min-width:280px;
    overflow:hidden;
    background:var(--tm-white);
    color:var(--tm-ink);
    font-family:"Pretendard","Noto Sans KR","Malgun Gothic",Arial,sans-serif;
    line-height:1.65;
}

.tm-site *,
.tm-site *::before,
.tm-site *::after {box-sizing:border-box}
.tm-site a {color:inherit;text-decoration:none}
.tm-site img {display:block;max-width:100%}
.tm-site h1,
.tm-site h2,
.tm-site h3,
.tm-site p,
.tm-site ul,
.tm-site dl,
.tm-site dd {margin:0}
.tm-site ul {padding:0;list-style:none}
.tm-container {width:calc(100% - 64px);max-width:1600px;margin-right:auto;margin-left:auto}
.tm-sr-only {position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.tm-skip-link {position:absolute;left:18px;top:-100px;z-index:9999;padding:11px 18px;background:#fff;color:#071a2d;font-weight:800;box-shadow:0 4px 18px rgba(0,0,0,.2)}
.tm-skip-link:focus {top:12px}
.tm-site a:focus-visible,
.tm-site button:focus-visible,
.tm-site select:focus-visible,
.tm-site summary:focus-visible {outline:3px solid var(--tm-accent);outline-offset:3px}

/* Header */
.tm-header {position:relative;z-index:50;background:var(--tm-white)}
.tm-utility {background:#041321;color:#c4cfda;font-size:13px;letter-spacing:.02em}
.tm-utility-inner {display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:24px}
.tm-utility-copy {white-space:nowrap;color:#8092a4}
.tm-account-menu {display:flex;align-items:center;justify-content:flex-end;min-height:38px}
.tm-account-menu > li {display:flex;align-items:center;min-height:38px;border-left:1px solid rgba(255,255,255,.09)}
.tm-account-menu > li > a {display:flex;align-items:center;min-height:38px;padding:0 13px;color:#d5dee7;transition:color .2s ease,background .2s ease}
.tm-account-menu > li > a:hover {background:rgba(255,255,255,.06);color:#fff}
.tm-public-id {gap:6px;padding:0 13px;color:#d5dee7}
.tm-public-id > span:first-child {font-size:12px;letter-spacing:.12em;color:var(--tm-accent)}
.tm-public-id strong {color:#fff;font-size:13px;font-weight:800}
.tm-public-id a {color:#d5dee7}
.tm-public-divider {margin:0 2px;color:#52687a}
.tm-public-contact-label {color:var(--tm-accent);font-size:12px;font-weight:800;letter-spacing:.1em}
.tm-public-contact {display:inline-block;overflow:hidden;min-width:0;max-width:180px;color:#fff!important;font-size:13px;font-weight:700;line-height:1.4;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}
.tm-public-id > a.tm-public-contact {display:inline-block;min-height:0;padding:0;background:transparent}
.tm-public-id > a.tm-public-contact:hover {background:transparent;color:#fff!important}
.tm-language-item {padding:0 0 0 9px}
.tm-language-select {height:32px;max-width:140px;border:0;background:#10283e;color:#f5f7fa;padding:0 26px 0 9px;font:inherit;font-size:13px;cursor:pointer}

.tm-masthead {background:var(--tm-navy);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.tm-masthead-inner {display:grid;grid-template-columns:minmax(240px,1fr) minmax(340px,1.3fr) minmax(185px,.55fr);align-items:center;gap:38px;min-height:122px}
.tm-brand {display:inline-flex;align-items:center;gap:14px;min-width:0;color:#fff}
.tm-brand img {max-width:260px;max-height:74px;object-fit:contain;object-position:left center}
.tm-brand-mark {display:inline-grid;overflow:hidden;place-items:center;flex:0 0 47px;width:47px;height:47px;background:var(--tm-accent);color:#fff;line-height:1}
.tm-brand-mark img {display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
.tm-brand-copy {display:flex;min-width:0;flex-direction:column;line-height:1.18}
.tm-brand-copy strong {overflow:hidden;color:#fff;font-family:Georgia,"Malgun Gothic",serif;font-size:25px;font-weight:800;letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap}
.tm-brand-copy small {margin-top:7px;color:#8fa0af;font-size:13px;font-weight:700;letter-spacing:.23em}
.tm-headline {display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;min-width:0;padding:15px 20px;border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1)}
.tm-headline-label {color:var(--tm-accent);font-family:Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.14em}
.tm-headline p {overflow:hidden;color:#e7edf2;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.tm-headline-link {display:flex;min-width:0;align-items:center;gap:10px;padding-right:8px;color:inherit!important;text-decoration:none}
.tm-headline-link > span:first-child,
.tm-headline-copy {display:block;overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}
.tm-headline-link > span:first-child {flex:1 1 auto}
.tm-headline-link > span:last-child {flex:0 0 auto;color:var(--tm-accent);font-weight:900;transform:translateX(-4px);transition:transform .2s ease}
.tm-headline-link:hover > span:first-child {text-decoration:underline;text-underline-offset:3px}
.tm-headline-link:hover > span:last-child {transform:translateX(0)}
.tm-masthead-contact {display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.tm-masthead-contact span {margin-bottom:7px;color:#8799a9;font-size:13px;letter-spacing:.1em}
.tm-masthead-contact strong {color:#fff;font-size:20px;font-weight:800}

.tm-primary-nav {position:relative;background:#fff;border-bottom:1px solid var(--tm-line);box-shadow:0 6px 20px rgba(7,26,45,.06)}
.tm-nav-inner {display:flex;min-height:64px;align-items:stretch;justify-content:space-between;gap:24px}
.tm-desktop-nav {display:flex;align-items:stretch}
.tm-desktop-nav li {display:flex;align-items:stretch}
.tm-desktop-nav a {position:relative;display:flex;align-items:center;padding:0 29px;color:#27364a;font-size:17px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.tm-desktop-nav li:first-child a {padding-left:0;padding-right:34px}
.tm-desktop-nav a::after {content:"";position:absolute;right:28px;bottom:0;left:28px;height:3px;background:var(--tm-accent);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.tm-desktop-nav li:first-child a::after {left:0;right:33px}
.tm-desktop-nav a:hover::after {transform:scaleX(1)}
.tm-nav-actions {display:flex;align-self:center;gap:8px}
.tm-nav-cta {display:flex;align-items:center;align-self:center;gap:10px;padding:11px 15px;background:var(--tm-navy);color:#fff!important;font-size:13px;font-weight:800;letter-spacing:.02em;white-space:nowrap;transition:background .2s ease}
.tm-nav-cta-signup {background:var(--tm-accent)}
.tm-nav-cta:hover {background:#28384a}
.tm-nav-cta-signup:hover {background:var(--tm-navy)}
.tm-mobile-nav {display:none;position:relative;align-self:center}

/* Hero */
.tm-main {display:block;float:none!important;width:100%!important;min-height:420px;margin:0!important}
.tm-hero {position:relative;background:#e8edf2}
.tm-hero-feature {position:relative;min-height:610px;overflow:hidden;background-color:var(--tm-navy);color:#fff}
.tm-hero-viewport {position:relative;min-height:610px}
/* Grid overlap lets every translated slide contribute to one shared tallest height. */
.tm-hero-slides {display:grid;position:relative;min-height:610px}
.tm-hero-slide {position:relative;grid-area:1 / 1;min-width:0;z-index:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility 0s linear .55s}
.tm-hero-slide.is-active {z-index:1;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.tm-hero-carousel .tm-hero-copy {padding-bottom:150px}
.tm-hero-media {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% center}
.tm-hero-shade {position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,5,8,.96) 0%,rgba(4,5,8,.82) 38%,rgba(4,5,8,.38) 66%,rgba(4,5,8,.12) 100%)}
.tm-hero-feature::after {content:"";position:absolute;right:0;bottom:0;left:0;height:160px;background:linear-gradient(0deg,rgba(4,17,31,.6),transparent);pointer-events:none}
.tm-hero-copy {position:relative;z-index:1;display:flex;min-height:610px;flex-direction:column;justify-content:center;padding-top:28px;padding-bottom:98px}
.tm-kicker {margin-bottom:19px!important;color:var(--tm-accent);font-family:Arial,sans-serif;font-size:13px;font-weight:900;letter-spacing:.25em}
.tm-hero-copy h2 {max-width:780px;color:#fff;font-family:Georgia,"Noto Serif KR","Malgun Gothic",serif;font-size:clamp(42px,5.2vw,72px);font-weight:700;letter-spacing:-.06em;line-height:1.14;text-shadow:0 2px 22px rgba(0,0,0,.22);word-break:keep-all}
.tm-hero-description {max-width:650px;margin-top:24px!important;color:#d8e0e7;font-size:17px;line-height:1.8;word-break:keep-all}
.tm-hero-disclaimer {max-width:650px;margin-top:12px!important;color:#929ba5;font-size:14px;line-height:1.6}
.tm-hero-actions {display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.tm-button {display:inline-flex;min-height:49px;align-items:center;justify-content:center;gap:20px;padding:0 23px;border:1px solid transparent;font-size:13px;font-weight:800;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.tm-button:hover {transform:translateY(-2px)}
.tm-button-accent {background:var(--tm-accent);color:#fff!important}
.tm-button-accent:hover {background:#fff;color:var(--tm-navy)!important}
.tm-button-ghost {border-color:rgba(255,255,255,.5);background:rgba(0,0,0,.08);color:#fff!important}
.tm-button-ghost:hover {border-color:#fff;background:#fff;color:var(--tm-navy)!important}
.tm-hero-controls {position:absolute;left:50%;bottom:92px;z-index:7;display:none;align-items:center;justify-content:flex-end;gap:12px;transform:translateX(-50%);color:#fff;pointer-events:none}
.tm-hero-carousel.is-enhanced .tm-hero-controls {display:flex}
.tm-hero-controls button {pointer-events:auto}
.tm-hero-arrows,
.tm-hero-dots {display:flex;align-items:center;gap:6px}
.tm-hero-arrows button,
.tm-hero-pause {display:inline-grid;width:46px;min-width:46px;height:46px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.72);background:rgba(4,5,8,.78);color:#fff;font:inherit;font-size:20px;line-height:1;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.tm-hero-arrows button:hover,
.tm-hero-pause:hover {border-color:#fff;background:#fff;color:var(--tm-navy);transform:translateY(-2px)}
.tm-hero-count {min-width:68px;color:#fff;font-family:Arial,sans-serif;font-size:16px;letter-spacing:.06em;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.8)}
.tm-hero-dots button {display:inline-grid;width:40px;height:46px;place-items:center;padding:0;border:0;background:transparent;cursor:pointer}
.tm-hero-dots button > span {display:block;width:10px;height:10px;border:2px solid #fff;border-radius:999px;background:rgba(4,5,8,.7);box-shadow:0 1px 4px rgba(0,0,0,.7);transition:width .2s ease,background .2s ease}
.tm-hero-dots button[aria-current="true"] > span {width:28px;background:var(--tm-accent)}
.tm-hero-pause {font-size:16px}
.tm-hero-index {position:absolute;right:0;bottom:112px;display:flex;align-items:center;gap:12px;font-family:Arial,sans-serif;color:#fff}
.tm-hero-index strong {font-size:18px}
.tm-hero-index small {color:#9ba9b6;font-size:13px}
.tm-hero-index span {display:block;width:68px;height:1px;background:rgba(255,255,255,.5)}
.tm-hero-rail {position:relative;z-index:3;display:grid;grid-template-columns:1.45fr .75fr;margin-top:-75px;box-shadow:0 22px 50px rgba(7,26,45,.18)}
.tm-hero-rail-card {display:grid;grid-template-columns:210px 1fr;min-height:150px;background:#fff}
.tm-hero-rail-card picture {display:block;height:100%}
.tm-hero-rail-card img {width:100%;height:100%;min-height:150px;object-fit:cover}
.tm-hero-rail-card > div {display:flex;flex-direction:column;justify-content:center;padding:25px 32px}
.tm-hero-rail-card span,
.tm-hero-rail-note > span {color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.16em}
.tm-hero-rail-card h3 {margin-top:6px;color:var(--tm-ink);font-size:19px;letter-spacing:-.04em}
.tm-hero-rail-card p {margin-top:8px;color:var(--tm-muted);font-size:13px;word-break:keep-all}
.tm-hero-rail-note {display:flex;flex-direction:column;justify-content:center;padding:25px 34px;background:var(--tm-navy);color:#fff}
.tm-hero-rail-note strong {margin-top:8px;color:#fff;font-size:21px;letter-spacing:-.03em}
.tm-hero-rail-links {display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:10px}
.tm-hero-rail-note a {color:#cdd7e0;font-size:13px;font-weight:700}
.tm-hero-rail-note a:hover {color:var(--tm-accent)}

/* Sections */
.tm-section {padding:110px 0}
.tm-section-heading {margin-bottom:43px}
.tm-section-heading > p:first-child,
.tm-section-heading > div > p:first-child {margin-bottom:10px;color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.18em}
.tm-section-heading h2 {color:var(--tm-ink);font-family:Georgia,"Noto Serif KR","Malgun Gothic",serif;font-size:39px;font-weight:700;letter-spacing:-.055em;line-height:1.25}
.tm-section-heading h2 em {color:var(--tm-accent);font-style:normal}
.tm-section-heading-row {display:flex;align-items:flex-end;justify-content:space-between;gap:60px}
.tm-section-lead {max-width:470px;color:var(--tm-muted);font-size:15px;word-break:keep-all}

.tm-overview {padding-top:125px;background:#fff}
.tm-overview-grid {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--tm-line);border-left:1px solid var(--tm-line)}
.tm-overview-card {position:relative;display:flex;min-height:315px;flex-direction:column;padding:34px 30px;border-right:1px solid var(--tm-line);border-bottom:1px solid var(--tm-line);background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.tm-overview-card:hover {z-index:2;transform:translateY(-5px);box-shadow:0 20px 42px rgba(7,26,45,.12)}
.tm-card-number {color:#aab4bf;font-family:Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.08em}
.tm-overview-card h3 {margin-top:38px;color:var(--tm-ink);font-size:23px;letter-spacing:-.05em}
.tm-overview-card p {margin-top:14px;color:var(--tm-muted);font-size:14px;word-break:keep-all}
.tm-overview-card > a {margin-top:auto;padding-top:24px;color:var(--tm-ink);font-size:13px;font-weight:800}
.tm-overview-card-dark {border-color:var(--tm-navy);background:var(--tm-navy);color:#fff}
.tm-overview-card-dark .tm-card-number {color:#6f8598}
.tm-overview-card-dark h3,
.tm-overview-card-dark > a {color:#fff}
.tm-overview-card-dark p {color:#b6c1cb}
.tm-overview-card-accent {border-color:var(--tm-accent);background:var(--tm-accent)}
.tm-overview-card-accent .tm-card-number {color:rgba(255,255,255,.72)}
.tm-overview-card-accent h3,
.tm-overview-card-accent p,
.tm-overview-card-accent > a {color:#fff}

/* Platform */
.tm-platform {background:#f5f6f8}
.tm-platform-grid {display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:center;gap:76px}
.tm-platform-media {position:relative;margin:0;overflow:hidden;background:#0a0b0e;box-shadow:0 28px 65px rgba(8,10,15,.18)}
.tm-platform-media picture {display:block}
.tm-platform-media::after {content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.tm-platform-media img {width:100%;aspect-ratio:16/9;object-fit:cover}
.tm-platform-copy > p:first-child {color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.18em}
.tm-platform-copy h2 {margin-top:12px;color:var(--tm-ink);font-family:Georgia,"Noto Serif KR","Malgun Gothic",serif;font-size:42px;letter-spacing:-.055em;line-height:1.23}
.tm-platform-copy h2 + p {margin-top:22px;color:var(--tm-muted);font-size:15px;word-break:keep-all}
.tm-platform-copy ul {margin-top:30px;border-top:1px solid var(--tm-line)}
.tm-platform-copy li {display:grid;grid-template-columns:130px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--tm-line)}
.tm-platform-copy li strong {color:var(--tm-ink);font-size:13px}
.tm-platform-copy li span {color:var(--tm-muted);font-size:13px}
.tm-platform-copy > .tm-text-link {display:inline-flex;margin-top:24px;padding-top:0}
.tm-inline-links {display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:24px}
.tm-inline-links .tm-text-link {display:inline-flex;margin-top:0;padding-top:0}

/* Learning and community */
.tm-learning {position:relative;background:var(--tm-navy);color:#fff}
.tm-learning .tm-section-lead {color:#aeb5bf}
.tm-learning-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tm-learning-story {overflow:hidden;background:#15171c;border:1px solid rgba(255,255,255,.1)}
.tm-learning-story picture {display:block}
.tm-learning-story img {width:100%;aspect-ratio:16/9;object-fit:cover;filter:saturate(.88)}
.tm-learning-story > div {padding:28px 30px 31px}
.tm-learning-story span {color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.18em}
.tm-learning-story h3 {margin-top:8px;color:#fff;font-size:23px;letter-spacing:-.04em}
.tm-learning-story p {margin-top:11px;color:#aeb5bf;font-size:14px;word-break:keep-all}
.tm-principle-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px;border-top:1px solid rgba(255,255,255,.13);border-left:1px solid rgba(255,255,255,.13)}
.tm-principle-grid article {min-height:210px;padding:27px 25px;border-right:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
.tm-principle-grid strong {color:var(--tm-accent);font-size:13px;letter-spacing:.1em}
.tm-principle-grid h3 {margin-top:28px;color:#fff;font-size:18px}
.tm-principle-grid p {margin-top:10px;color:#99a3ad;font-size:13px;word-break:keep-all}
.tm-study-path {display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.8fr);gap:34px;margin-top:22px;padding:30px;background:#fff;color:var(--tm-ink)}
.tm-study-path>header>p {color:#c91624;font-size:14px;font-weight:900;letter-spacing:.16em}
.tm-study-path>header h3 {margin-top:10px;color:var(--tm-ink);font-size:23px;line-height:1.4;word-break:keep-all}
.tm-study-path>header .tm-inline-links {gap:8px 18px;margin-top:18px}
.tm-study-path>header .tm-text-link {color:var(--tm-ink);font-size:15px}
.tm-study-flow {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tm-line);border-left:1px solid var(--tm-line)}
.tm-study-flow article {min-height:190px;padding:23px 20px;border-right:1px solid var(--tm-line);border-bottom:1px solid var(--tm-line)}
.tm-study-flow strong {display:block;color:#c91624;font-size:14px;letter-spacing:.08em}
.tm-study-flow h4 {margin:25px 0 0;color:var(--tm-ink);font-size:17px}
.tm-study-flow p {margin-top:9px;color:#536473;font-size:15px;line-height:1.7;word-break:keep-all}

/* Four-step external-service guide */
.tm-onboarding {background:#fff}
.tm-step-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--tm-line);border-left:1px solid var(--tm-line)}
.tm-step-grid article {min-height:260px;padding:32px 28px;border-right:1px solid var(--tm-line);border-bottom:1px solid var(--tm-line)}
.tm-step-grid strong {color:var(--tm-accent);font-size:13px;letter-spacing:.1em}
.tm-step-grid h3 {margin-top:34px;color:var(--tm-ink);font-size:22px}
.tm-step-grid p {margin-top:12px;color:var(--tm-muted);font-size:13px;word-break:keep-all}
.tm-onboarding-note {display:flex;align-items:center;justify-content:space-between;gap:34px;margin-top:24px;padding:24px 28px;background:var(--tm-paper);border-left:4px solid var(--tm-accent)}
.tm-onboarding-note > p {max-width:650px;color:var(--tm-muted);font-size:13px;word-break:keep-all}
.tm-onboarding-note .tm-inline-links {flex:0 0 auto;margin-top:0}
.tm-button-outline {border-color:var(--tm-navy);background:transparent;color:var(--tm-navy)!important}
.tm-button-outline:hover,
.tm-onboarding .tm-button-accent:hover {background:var(--tm-navy);color:#fff!important}

/* Tenant-aware community channel hub */
.tm-channel-hub {background:#eef2f5}
.tm-channel-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tm-channel-card {display:flex;min-height:285px;flex-direction:column;padding:30px;border:1px solid #d7dee5;background:#fff;box-shadow:0 10px 28px rgba(7,26,45,.04);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.tm-channel-card:hover {transform:translateY(-4px);border-color:var(--tm-accent);box-shadow:0 20px 40px rgba(7,26,45,.1)}
.tm-channel-card>div {display:flex;align-items:center;justify-content:space-between;gap:18px}
.tm-channel-card>div>span {color:#c91624;font-size:14px;font-weight:900;letter-spacing:.1em}
.tm-channel-card>div>small {color:#536473;font-size:14px;font-weight:900;letter-spacing:.12em}
.tm-channel-card h3 {margin-top:31px;color:var(--tm-ink);font-size:23px;letter-spacing:-.04em}
.tm-channel-card p {margin-top:13px;color:#536473;font-size:15px;line-height:1.75;word-break:keep-all}
.tm-channel-card>strong {margin-top:auto;padding-top:24px;color:var(--tm-ink);font-size:15px}
.tm-channel-card:hover>strong {color:#c91624}
.tm-channel-policy {display:grid;grid-template-columns:190px 1fr;gap:28px;margin-top:24px;padding:29px 31px;background:var(--tm-navy);color:#fff}
.tm-channel-policy>strong {color:#ff5963;font-size:14px;letter-spacing:.15em}
.tm-channel-policy>div {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tm-channel-policy article+article {padding-left:24px;border-left:1px solid rgba(255,255,255,.14)}
.tm-channel-policy h3 {color:#fff;font-size:17px}
.tm-channel-policy p {margin-top:8px;color:#bec9d2;font-size:15px;line-height:1.7;word-break:keep-all}

.tm-premium {position:relative;background:var(--tm-navy);color:#fff}
.tm-premium::before {content:"";position:absolute;top:0;right:0;width:36%;height:100%;background:linear-gradient(135deg,transparent,rgba(255,255,255,.035));pointer-events:none}
.tm-section-heading-light h2 {color:#fff}
.tm-premium-grid {position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14)}
.tm-premium-grid article {min-height:275px;padding:37px 34px;background:var(--tm-navy);transition:background .2s ease}
.tm-premium-grid article:hover {background:var(--tm-navy-soft)}
.tm-premium-grid span {display:block;color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.2em}
.tm-premium-grid h3 {margin-top:57px;color:#fff;font-size:23px;letter-spacing:-.045em}
.tm-premium-grid p {margin-top:15px;color:#afbdca;font-size:14px;word-break:keep-all}

.tm-news {background:var(--tm-paper)}
.tm-news-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tm-news-card {display:flex;min-height:290px;flex-direction:column;padding:30px;background:#fff;border:1px solid #e5e9ee;transition:transform .2s ease,box-shadow .2s ease}
.tm-news-card:hover {transform:translateY(-4px);box-shadow:0 18px 36px rgba(7,26,45,.09)}
.tm-news-card-featured {background:var(--tm-navy);border-color:var(--tm-navy);color:#fff}
.tm-news-meta {display:flex;align-items:center;justify-content:space-between;gap:12px;color:#909ba8;font-size:12px;font-weight:800;letter-spacing:.09em}
.tm-news-meta span {color:var(--tm-accent)}
.tm-news-card h3 {margin-top:34px;color:var(--tm-ink);font-size:20px;letter-spacing:-.04em;line-height:1.45;overflow-wrap:anywhere}
.tm-news-card-featured h3 {color:#fff}
.tm-news-card p {margin-top:14px;color:var(--tm-muted);font-size:13px;word-break:keep-all;overflow-wrap:anywhere}
.tm-news-card-featured p {color:#afbdca}
.tm-text-link {margin-top:auto;padding-top:24px;color:var(--tm-ink);font-size:13px;font-weight:900}
.tm-news-card-featured .tm-text-link {color:#fff}

/* Fixed allowlist of official external references */
.tm-official {background:var(--tm-navy);color:#fff}
.tm-official .tm-section-lead {color:#aeb5bf}
.tm-source-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.14)}
.tm-source-grid article {display:flex;min-height:230px;flex-direction:column;padding:30px;background:var(--tm-navy)}
.tm-source-grid h3 {color:#fff;font-size:19px}
.tm-source-grid p {margin-top:10px;color:#9da8b3;font-size:13px;word-break:keep-all}
.tm-source-grid a {margin-top:auto;padding-top:18px;color:#fff;font-size:13px;font-weight:900}
.tm-source-grid a + a {margin-top:0;padding-top:8px}
.tm-source-grid a:hover {color:var(--tm-accent)}

.tm-ea-inquiry {padding:52px 0;background:var(--tm-paper)}
.tm-ea-inquiry__card {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:42px;padding:38px 42px;border-left:6px solid var(--tm-accent);background:var(--tm-navy);color:#fff;box-shadow:0 18px 44px rgba(7,26,45,.12)}
.tm-ea-inquiry__copy>p {color:#ff6670;font-size:16px;font-weight:900;letter-spacing:.16em}
.tm-ea-inquiry__copy h2 {margin-top:8px;color:#fff;font-size:30px;letter-spacing:-.045em}
.tm-ea-inquiry__prices {display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:17px}
.tm-ea-inquiry__prices strong {color:#fff;font-size:18px}
.tm-ea-inquiry__prices strong+strong {padding-left:22px;border-left:1px solid rgba(255,255,255,.28)}
.tm-ea-inquiry__copy small {display:block;margin-top:14px;color:#c4ced7;font-size:16px;line-height:1.65;word-break:keep-all}
.tm-ea-inquiry__actions {display:grid;min-width:220px;gap:10px}
.tm-ea-inquiry__cta {display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:16px;padding:0 22px;background:var(--tm-accent);color:#fff!important;font-size:16px;font-weight:900;white-space:nowrap}
.tm-ea-inquiry__cta:hover {background:#fff;color:var(--tm-navy)!important}
.tm-ea-inquiry__telegram {border:1px solid rgba(255,255,255,.45);background:transparent}

.tm-contact {padding:100px 0;background:#dfe5ea;color:var(--tm-ink)}
.tm-contact-grid {display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:90px}
.tm-contact-copy > p:first-child {color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.18em}
.tm-contact-copy h2 {margin-top:12px;color:var(--tm-ink);font-family:Georgia,"Noto Serif KR","Malgun Gothic",serif;font-size:45px;font-weight:700;letter-spacing:-.06em;line-height:1.2}
.tm-contact-copy h2 + p {max-width:560px;margin-top:20px;color:#5f6e7c;word-break:keep-all}
.tm-contact-copy .tm-button {margin-top:31px}
.tm-contact-copy .tm-button-accent:hover {background:var(--tm-navy);color:#fff!important}
.tm-contact-list {border-top:2px solid var(--tm-navy)}
.tm-contact-list > div {display:grid;grid-template-columns:115px 1fr;gap:20px;padding:22px 5px;border-bottom:1px solid #bdc7d0}
.tm-contact-list dt {color:#596979;font-size:13px;font-weight:800}
.tm-contact-list dd {color:var(--tm-ink);font-size:16px;font-weight:700;word-break:break-word}
.tm-contact-list a:hover {color:var(--tm-accent)}
.tm-risk {padding:27px 0;background:#111318;color:#9da5af;border-top:1px solid #252832}
.tm-risk .tm-container {display:grid;grid-template-columns:120px 1fr;gap:25px}
.tm-risk strong {color:var(--tm-accent);font-size:13px;letter-spacing:.16em}
.tm-risk p {font-size:14px;line-height:1.7;word-break:keep-all}

/* Inner pages */
.tm-page-main {background:var(--tm-paper)}
.tm-page-heading {padding:62px 0;background:var(--tm-navy);color:#fff}
.tm-page-heading span {color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.18em}
.tm-page-heading h2 {margin-top:8px;color:#fff;font-family:Georgia,"Noto Serif KR","Malgun Gothic",serif;font-size:36px;letter-spacing:-.05em}
.tm-page-content {min-height:480px;margin-top:45px;margin-bottom:70px;padding:38px;background:#fff;border:1px solid #e1e6eb}
.tm-safe-side {padding:28px;background:var(--tm-navy);color:#fff}.tm-safe-side p{color:var(--tm-accent);font-size:13px;font-weight:900;letter-spacing:.16em}.tm-safe-side h2{margin:7px 0 18px;color:#fff;font-size:22px}.tm-safe-side a{display:inline-flex;padding:10px 15px;background:var(--tm-accent);color:#fff!important;font-weight:800}

/* Footer */
.tm-footer {background:#051422;color:#aebbc7}
.tm-footer-main {padding:67px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.tm-footer-grid {display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:70px}
.tm-footer-brand {display:flex;align-items:flex-start;gap:15px}
.tm-footer-brand strong {display:block;max-width:380px;color:#fff;font-family:Georgia,"Malgun Gothic",serif;font-size:24px;line-height:1.3}
.tm-footer-brand small {display:block;margin-top:9px;color:#748798;font-size:13px;letter-spacing:.12em}
.tm-footer-logo {max-width:240px;max-height:72px;object-fit:contain;object-position:left top}
.tm-footer-column h2 {margin:0 0 19px;color:#fff;font-size:13px;font-weight:900;letter-spacing:.17em}
.tm-footer-column li + li {margin-top:7px}
.tm-footer-column a {color:#aebbc7;font-size:13px}
.tm-footer-column a:hover {color:#fff}
.tm-footer-contact p,
.tm-footer-contact address {margin:0;color:#aebbc7;font-size:13px;font-style:normal;word-break:keep-all}
.tm-footer-contact p + p,
.tm-footer-contact p + address {margin-top:8px}
.tm-footer-contact .tm-footer-phone,
.tm-footer-contact .tm-footer-phone a {color:#fff;font-size:22px;font-weight:800}
.tm-footer-contact .tm-footer-telegram a {display:inline-flex;min-height:48px;align-items:center;gap:10px;color:#fff!important;font-size:16px;font-weight:800}
.tm-footer-legal {padding:22px 0 24px;background:#03101b;color:#718494;font-size:13px}
.tm-footer-legal-inner {display:flex;align-items:center;justify-content:space-between;gap:30px}
.tm-footer-legal nav {display:flex;flex-wrap:wrap;gap:18px}
.tm-footer-legal nav a {color:#9baab7}
.tm-footer-legal nav a:nth-child(2) {color:#fff;font-weight:800}
.tm-translate-note {margin-top:12px;color:#657988;line-height:1.5}
.tm-footer-risk {margin-top:8px;color:#65717d;font-size:13px;line-height:1.6}
.tm-translate-widget {position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.tm-member-dock,
.tm-member-drawer-layer {display:none}
.tm-member-dock {position:fixed;left:22px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:40;min-width:146px;min-height:48px;align-items:center;justify-content:space-between;gap:14px;padding:0 18px;border:1px solid rgba(255,255,255,.28);background:var(--tm-navy);color:#fff!important;font:inherit;font-size:16px;font-weight:900;box-shadow:0 8px 24px rgba(7,26,45,.2);cursor:pointer}
.tm-member-dock:hover {background:var(--tm-accent)}
.tm-member-drawer-layer[hidden] {display:none!important}
.tm-member-drawer-backdrop {position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(2,10,18,.64);cursor:pointer}
.tm-member-drawer {position:absolute;top:0;right:0;width:min(390px,calc(100vw - 30px));height:100%;overflow:auto;padding:22px 20px calc(28px + env(safe-area-inset-bottom,0px));background:#f4f6f8;color:var(--tm-ink);box-shadow:-18px 0 45px rgba(2,10,18,.3);transform:translateX(100%);transition:transform .24s ease}
.tm-member-drawer-layer.is-open .tm-member-drawer {transform:translateX(0)}
.tm-member-drawer-head {display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--tm-line)}
.tm-member-drawer-head span {color:var(--tm-accent);font-size:16px;font-weight:900;letter-spacing:.14em}
.tm-member-drawer-head h2 {margin-top:3px;color:var(--tm-ink);font-size:25px;line-height:1.25}
.tm-member-drawer-head button {display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--tm-line);background:#fff;color:var(--tm-ink);font-size:28px;line-height:1;cursor:pointer}
.tm-member-card {margin-top:20px;padding:20px;border:1px solid var(--tm-line);background:#fff}
.tm-member-card>span {display:block;color:var(--tm-accent);font-size:16px;font-weight:900;letter-spacing:.08em}
.tm-member-card>strong {display:block;margin-top:7px;color:var(--tm-ink);font-size:22px}
.tm-member-card>small {display:block;margin-top:4px;color:var(--tm-muted);font-size:16px}
.tm-member-primary {display:flex;min-height:50px;margin-top:18px;align-items:center;justify-content:space-between;padding:0 16px;background:var(--tm-accent);color:#fff!important;font-size:16px;font-weight:900}
.tm-member-login {display:grid;grid-template-columns:1fr;gap:7px;margin-top:15px}
.tm-member-login label {color:#3e4b5c;font-size:16px;font-weight:800}
.tm-member-login input {width:100%;height:48px;border:1px solid #cfd7df;background:#fff;padding:0 13px;color:var(--tm-ink);font:inherit;font-size:16px}
.tm-member-login button {height:50px;margin-top:5px;border:0;background:var(--tm-navy);color:#fff;font:inherit;font-size:16px;font-weight:900;cursor:pointer}
.tm-member-social {margin-top:20px;padding-top:18px;border-top:1px solid var(--tm-line)}
.tm-member-social>p {margin:0 0 11px;color:#3e4b5c;font-size:16px;font-weight:900}
.tm-member-social-list {display:grid;grid-template-columns:1fr;gap:9px}
.tm-member-social-button {display:flex;min-height:50px;align-items:center;justify-content:flex-start;padding:8px 16px;border:1px solid transparent;color:#fff!important;font-size:16px;font-weight:900;line-height:1.35;text-decoration:none!important}
.tm-member-social-button img {display:block;width:28px;height:28px;flex:0 0 28px;margin-right:13px;object-fit:contain}
.tm-member-social-button:focus-visible {outline:3px solid #1f78d1;outline-offset:2px}
.tm-member-social-google {border-color:#cfd7df;background:#fff;color:#172637!important}
.tm-member-social-naver {background:#03c75a}
.tm-member-social-kakao {background:#fee500;color:#191919!important}
.tm-member-inline-links {display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:15px}
.tm-member-inline-links a {color:#38485a;font-size:16px;font-weight:700;text-decoration:underline}
.tm-member-quick {margin-top:20px;padding:20px;background:var(--tm-navy);color:#fff}
.tm-member-quick h3 {margin:0 0 10px;color:#93a3b2;font-size:16px;letter-spacing:.13em}
.tm-member-quick a {display:flex;min-height:48px;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.13);color:#fff!important;font-size:16px;font-weight:800}
.tm-member-drawer-note {margin-top:18px!important;color:#566578;font-size:16px;line-height:1.65}
body.tm-member-drawer-open {overflow:hidden}
.tm-backtop {position:fixed;right:22px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:40;display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.2);background:var(--tm-navy);color:#fff!important;font-size:17px;box-shadow:0 8px 24px rgba(7,26,45,.18)}
.tm-backtop:hover {background:var(--tm-accent)}

/* Google Translate may add an inline top offset after a language change. */
body {top:0!important}
.modal {display:none}
.goog-te-banner-frame.skiptranslate,
iframe.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-ORHb-OEVmcd.skiptranslate {display:none!important;visibility:hidden!important}
#goog-gt-tt,
.goog-te-balloon-frame,
.VIpgJd-yAWNEb-L7lbkb,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf {display:none!important}
.goog-text-highlight {background:transparent!important;box-shadow:none!important}

@media (max-width:1120px) {
    .tm-masthead-inner {grid-template-columns:1fr 1fr;gap:28px}
    .tm-masthead-contact {display:none}
    .tm-desktop-nav a {padding-right:20px;padding-left:20px}
    .tm-desktop-nav li:first-child a {padding-right:24px}
    .tm-overview-grid {grid-template-columns:repeat(2,1fr)}
    .tm-platform-grid {gap:45px}
    .tm-principle-grid {grid-template-columns:repeat(2,1fr)}
    .tm-study-path {grid-template-columns:1fr}
    .tm-study-flow {grid-template-columns:repeat(2,1fr)}
    .tm-step-grid {grid-template-columns:repeat(2,1fr)}
    .tm-footer-grid {grid-template-columns:1.2fr .7fr 1fr;gap:40px}
}

@media (min-width:861px) and (max-width:1120px) {
    .tm-nav-inner {gap:8px}
    .tm-desktop-nav a {padding-right:12px;padding-left:12px}
    .tm-desktop-nav li:first-child a {padding-right:12px}
    .tm-nav-cta {gap:6px;padding-right:10px;padding-left:10px}
}

@media (max-width:860px) {
    .tm-member-dock {display:inline-flex}
    .tm-member-drawer-layer {position:fixed;inset:0;z-index:2100;display:block}
    .tm-container {width:min(100% - 30px,1280px)}
    .tm-utility-copy {display:none}
    .tm-utility-inner {justify-content:flex-end}
    .tm-account-menu {max-width:100%;flex-wrap:wrap}
    .tm-public-id {max-width:250px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
    .tm-masthead-inner {display:flex;min-height:92px;gap:18px}
    .tm-brand {max-width:47%}
    .tm-brand-copy strong {font-size:20px}
    .tm-headline {margin-left:auto;max-width:50%;grid-template-columns:1fr;padding:10px 0 10px 18px;border-right:0}
    .tm-headline-label {display:none}
    .tm-headline p {font-size:14px}
    .tm-desktop-nav {display:none}
    .tm-mobile-nav {display:block}
    .tm-mobile-nav summary {display:flex;min-width:110px;min-height:64px;align-items:center;justify-content:space-between;gap:22px;color:var(--tm-ink);font-size:13px;font-weight:900;cursor:pointer;list-style:none}
    .tm-mobile-nav summary::-webkit-details-marker {display:none}
    .tm-mobile-nav ul {position:absolute;top:64px;left:0;z-index:90;width:220px;background:#fff;border:1px solid var(--tm-line);box-shadow:0 15px 36px rgba(7,26,45,.14)}
    .tm-mobile-nav li + li {border-top:1px solid var(--tm-line)}
    .tm-mobile-nav a {display:block;padding:13px 16px;color:var(--tm-ink);font-size:13px;font-weight:700}
    .tm-hero-feature,
    .tm-hero-copy {min-height:560px}
    .tm-hero-viewport,
    .tm-hero-slides {min-height:560px}
    .tm-hero-carousel .tm-hero-copy {padding-bottom:145px}
    .tm-hero-controls {bottom:84px}
    .tm-hero-rail {grid-template-columns:1fr}
    .tm-hero-rail-note {min-height:135px}
    .tm-section {padding:85px 0}
    .tm-section-heading-row {display:block}
    .tm-section-lead {margin-top:17px!important}
    .tm-platform-grid {grid-template-columns:1fr}
    .tm-learning-grid {grid-template-columns:1fr}
    .tm-premium-grid {grid-template-columns:1fr}
    .tm-premium-grid article {min-height:auto}
    .tm-premium-grid h3 {margin-top:28px}
    .tm-news-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
    .tm-channel-grid {grid-template-columns:repeat(2,1fr)}
    .tm-channel-policy {grid-template-columns:1fr}
    .tm-source-grid {grid-template-columns:repeat(2,1fr)}
    .tm-onboarding-note {align-items:flex-start;flex-direction:column}
    .tm-onboarding-note .tm-inline-links {flex:1 1 auto}
    .tm-contact-grid {grid-template-columns:1fr;gap:55px}
    .tm-footer-grid {grid-template-columns:1fr 1fr}
    .tm-footer-brand {grid-column:1/-1}
}

@media (max-width:560px) {
    .tm-container {width:calc(100% - 24px)}
    .tm-utility-inner {width:100%}
    .tm-account-menu {width:100%;justify-content:stretch}
    .tm-account-menu > li {flex:1 0 auto;justify-content:center}
    .tm-account-menu > li > a {justify-content:center;padding:0 8px}
    .tm-public-id {order:-1;width:100%;max-width:none;flex-basis:100%!important;min-height:36px!important;border-bottom:1px solid rgba(255,255,255,.08);padding:0 10px}
    .tm-public-contact {max-width:145px}
    .tm-language-item {padding:0 4px!important}
    .tm-language-select {max-width:116px;padding-left:6px}
    .tm-masthead-inner {min-height:80px;flex-wrap:wrap;padding-bottom:12px}
    .tm-brand {max-width:100%;transform:translateY(9px)}
    .tm-brand-mark {flex-basis:39px;width:39px;height:39px;font-size:25px}
    .tm-brand-copy strong {font-size:17px}
    .tm-brand-copy small {font-size:12px}
    .tm-headline {display:grid;order:2;width:100%;max-width:none;flex:1 0 100%;margin:0;padding:11px 0 0;border-top:1px solid rgba(255,255,255,.1);border-left:0}
    .tm-headline p {font-size:16px}
    .tm-nav-inner {min-height:58px}
    .tm-mobile-nav summary {min-height:58px}
    .tm-mobile-nav ul {top:58px}
    .tm-nav-actions {gap:5px}
    .tm-nav-cta {padding:9px 9px;font-size:12px}
    .tm-hero-feature,
    .tm-hero-copy {min-height:540px}
    .tm-hero-copy {padding-top:24px;padding-bottom:80px}
    .tm-hero-carousel .tm-hero-viewport,
    .tm-hero-carousel .tm-hero-slides,
    .tm-hero-carousel .tm-hero-feature,
    .tm-hero-carousel .tm-hero-copy {min-height:680px}
    .tm-hero-carousel .tm-hero-copy {padding-top:24px;padding-bottom:160px}
    .tm-hero-controls {bottom:58px;justify-content:center;gap:4px}
    .tm-hero-arrows {gap:4px}
    .tm-hero-arrows button,
    .tm-hero-pause {width:44px;min-width:44px;height:44px}
    .tm-hero-dots {gap:0}
    .tm-hero-dots button {width:32px;height:44px}
    .tm-hero-count {min-width:62px;font-size:16px}
    .tm-hero-copy h2 {font-size:38px;line-height:1.2}
    .tm-hero-description {font-size:14px;line-height:1.7}
    .tm-hero-media {object-position:72% center}
    .tm-button {min-height:45px;padding:0 17px}
    .tm-hero-index {display:none}
    .tm-hero-rail {margin-top:-48px}
    .tm-hero-rail-card {grid-template-columns:115px 1fr;min-height:150px}
    .tm-hero-rail-card > div {padding:18px}
    .tm-hero-rail-card h3 {font-size:16px}
    .tm-hero-rail-card p {display:none}
    .tm-section {padding:68px 0}
    .tm-overview {padding-top:88px}
    .tm-section-heading {margin-bottom:30px}
    .tm-section-heading h2 {font-size:31px}
    .tm-overview-grid {grid-template-columns:1fr}
    .tm-overview-card {min-height:245px}
    .tm-overview-card h3 {margin-top:24px}
    .tm-platform-copy h2 {font-size:33px}
    .tm-platform-copy li {grid-template-columns:1fr;gap:4px}
    .tm-learning-story > div {padding:22px}
    .tm-principle-grid {grid-template-columns:1fr}
    .tm-principle-grid article {min-height:175px}
    .tm-study-path {padding:22px}
    .tm-study-flow {grid-template-columns:1fr}
    .tm-study-flow article {min-height:0}
    .tm-step-grid {grid-template-columns:1fr}
    .tm-step-grid article {min-height:auto}
    .tm-channel-grid {grid-template-columns:1fr}
    .tm-channel-card {min-height:250px;padding:25px}
    .tm-channel-policy {padding:25px}
    .tm-channel-policy>div {grid-template-columns:1fr;gap:20px}
    .tm-channel-policy article+article {padding-top:20px;padding-left:0;border-top:1px solid rgba(255,255,255,.14);border-left:0}
    .tm-source-grid {grid-template-columns:1fr}
    .tm-source-grid article {min-height:210px}
    .tm-ea-inquiry {padding:38px 0}
    .tm-ea-inquiry__card {grid-template-columns:1fr;gap:25px;padding:28px 24px}
    .tm-ea-inquiry__prices {display:grid;grid-template-columns:1fr;gap:9px}
    .tm-ea-inquiry__prices strong+strong {padding-top:9px;padding-left:0;border-top:1px solid rgba(255,255,255,.28);border-left:0}
    .tm-ea-inquiry__actions {min-width:0}
    .tm-ea-inquiry__cta {width:100%;min-height:48px;white-space:normal;text-align:center}
    .tm-news-grid {grid-template-columns:minmax(0,1fr)}
    .tm-news-card {min-height:260px}
    .tm-contact {padding:70px 0}
    .tm-contact-copy h2 {font-size:36px}
    .tm-contact-list > div {grid-template-columns:82px 1fr;gap:12px}
    .tm-risk .tm-container {grid-template-columns:1fr;gap:8px}
    .tm-page-heading {padding:44px 0}
    .tm-page-heading h2 {font-size:29px}
    .tm-page-content {width:calc(100% - 24px);margin-top:25px;margin-bottom:45px;padding:20px}
    .tm-footer-main {padding:50px 0}
    .tm-footer-grid {grid-template-columns:1fr;gap:34px}
    .tm-footer-brand {grid-column:auto}
    .tm-footer-legal-inner {display:block}
    .tm-footer-legal-inner p {margin-top:12px}
    .tm-member-dock {left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));min-height:48px;padding:0 16px}
    .tm-backtop {right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
}

/* Readability floor: keep body hierarchy while making utility text legible. */
.tm-public-id > span:first-child,
.tm-public-contact-label,
.tm-brand-copy small,
.tm-headline-label,
.tm-masthead-contact span,
.tm-kicker,
.tm-hero-index small,
.tm-hero-rail-card span,
.tm-hero-rail-note > span,
.tm-section-heading > div > p:first-child,
.tm-card-number,
.tm-platform-copy > p:first-child,
.tm-learning-story span,
.tm-principle-grid strong,
.tm-step-grid strong,
.tm-premium-grid span,
.tm-news-meta,
.tm-study-path>header>p,
.tm-study-flow strong,
.tm-channel-card>div>span,
.tm-channel-card>div>small,
.tm-channel-policy>strong,
.tm-contact-copy > p:first-child,
.tm-contact-list dt,
.tm-risk strong,
.tm-page-heading span,
.tm-safe-side p,
.tm-footer-brand small,
.tm-footer-column h2,
.tm-footer-legal,
.tm-footer-risk {font-size:16px}

.tm-utility,
.tm-public-id strong,
.tm-public-contact,
.tm-language-select,
.tm-nav-cta,
.tm-button,
.tm-hero-rail-card p,
.tm-hero-rail-note a,
.tm-overview-card > a,
.tm-platform-copy li strong,
.tm-platform-copy li span,
.tm-principle-grid p,
.tm-step-grid p,
.tm-onboarding-note > p,
.tm-news-card p,
.tm-study-flow p,
.tm-channel-card p,
.tm-channel-card>strong,
.tm-channel-policy p,
.tm-text-link,
.tm-source-grid p,
.tm-source-grid a,
.tm-footer-column a,
.tm-footer-contact p,
.tm-footer-contact address,
.tm-mobile-nav summary,
.tm-mobile-nav a {font-size:17px}

.tm-utility-copy {min-width:0;overflow:hidden;text-overflow:ellipsis}
.tm-news-meta {flex-wrap:wrap}
.tm-card-number,
.tm-news-meta {color:#5f6b77}
.tm-footer-risk {color:#8999a8}
.tm-skip-link {font-size:16px}
.tm-contact-copy h2 + p {font-size:17px}

@media (min-width:561px) and (max-width:860px) {
    .tm-public-id {max-width:360px}
}

@media (max-width:560px) {
    .tm-brand-copy small {font-size:16px;letter-spacing:.08em}
    .tm-language-select {font-size:16px}
    .tm-nav-inner {gap:6px}
    .tm-mobile-nav summary {min-width:104px;gap:8px;font-size:16px}
    .tm-nav-actions {gap:4px}
    .tm-nav-cta {padding:9px 7px;font-size:16px;letter-spacing:-.04em}
}

/* Tenant board readability floor: compact metadata stays at least 14px. */
.tm-site .board-list,
.tm-site .board-view,
.tm-site .board-write,
.tm-site .view-comment,
.tm-site .comment-area {font-size:17px}

.tm-site .board-list .board-setup-btn,
.tm-site .board-list .gl-label,
.tm-site .board-list .wl-label,
.tm-site .board-list .poll-label,
.tm-site .board-list .label,
.tm-site .board-list .rating,
.tm-site .board-list .rating-selected,
.tm-site .board-list .gallery-item-bottom,
.tm-site .board-view .board-setup-btn,
.tm-site .board-view .btn-mbmemo,
.tm-site .board-view .bl-label,
.tm-site .board-view .board-view-btn,
.tm-site .board-write .board-setup-btn,
.tm-site .board-write .write-option-btn,
.tm-site .board-write #autosave_pop li,
.tm-site .board-write #autosave_pop strong,
.tm-site .board-write #tag-box::before,
.tm-site .view-comment .view-comment-best-label,
.tm-site .view-comment .btn-mbmemo,
.tm-site .view-comment .comment-ip,
.tm-site .view-comment .dropdown-menu a small,
.tm-site .comment-area .comment-write-footer,
.tm-site .comment-area textarea::placeholder,
.tm-site .board-list .f-s-12r,
.tm-site .board-list .f-s-13r,
.tm-site .board-view .f-s-12r,
.tm-site .board-view .f-s-13r,
.tm-site .board-write .f-s-12r,
.tm-site .board-write .f-s-13r,
.tm-site .view-comment .f-s-12r,
.tm-site .view-comment .f-s-13r {font-size:16px!important}

@media (prefers-reduced-motion:reduce) {
    .tm-site *,
    .tm-site *::before,
    .tm-site *::after {scroll-behavior:auto!important;transition:none!important}
    .tm-hero-slide {transition:none!important}
}

/* Mobile smallest-text lift: raise only visible copy that still falls below 16px. */
@media (max-width:560px) {
    .tm-hero-description,
    .tm-hero-disclaimer,
    .tm-section-lead,
    .tm-overview-card p,
    .tm-platform-copy h2 + p,
    .tm-learning-story p,
    .tm-premium-grid p,
    .tm-risk p {font-size:16px;overflow-wrap:anywhere}

    .tm-site .board-view .board-view-good-btn .board-view-act-gng .act-gng-btn h5,
    .tm-site .view-comment .comment-btn-wrap .comment-btn,
    .tm-site .comment-area .comment-write-heading .cmt-point-info-btn,
    .tm-site .board-write #tag-cloud div,
    .tm-site .board-list .f-s-14r,
    .tm-site .board-list .f-s-15r,
    .tm-site .board-view .f-s-14r,
    .tm-site .board-view .f-s-15r,
    .tm-site .board-write .f-s-14r,
    .tm-site .board-write .f-s-15r,
    .tm-site .view-comment .f-s-14r,
    .tm-site .view-comment .f-s-15r {font-size:16px!important}

    .tm-site .view-comment .comment-btn-wrap .comment-btn {display:inline-flex;height:auto;min-height:32px;align-items:center;line-height:1.3}
    .tm-site .comment-area .comment-write-heading .cmt-point-info-btn {position:static;display:inline-flex;margin-top:8px;line-height:1.4}
    .tm-site .board-write #tag-cloud div {line-height:1.3;overflow-wrap:anywhere}
    .tm-site .board-list .gl-label,
    .tm-site .board-list .wl-label,
    .tm-site .board-list .poll-label,
    .tm-site .board-list .label {width:auto!important;min-width:80px;height:auto!important;min-height:28px;padding:4px 8px;line-height:1.25!important}
    .tm-site .view-comment .view-comment-best-label {width:auto;min-width:88px;height:auto;min-height:28px;padding:4px 8px;line-height:1.25}
}

/* Optional public-board AdSense unit (disabled by default in tenant/config.php). */
.tenant-board-ad {clear:both;width:100%;max-width:1100px;margin:28px auto;padding:12px 0;border-top:1px solid #e4e8ec;border-bottom:1px solid #e4e8ec;text-align:center;overflow:hidden}
.tenant-board-ad__label {display:block;margin:0 0 8px;color:#68727d;font-size:14px;font-weight:600;line-height:1.4;letter-spacing:.08em}
.tenant-board-ad__unit {width:100%;text-align:center}
.tenant-board-ad__unit[data-ad-status="unfilled"] {display:none!important}
@media (max-width:560px) {
    .tenant-board-ad {margin:20px auto;padding:10px 0}
    .tenant-board-ad__label {font-size:16px}
}

/* 320~360px 소형 단말: 가독성 규칙이 헤더 CTA 를 16px 로 올리면서
   '공식 가입 / 상담 문의' 두 버튼이 헤더 폭을 넘어선다. 여백만 좁혀 맞춘다. */
@media (max-width:360px) {
    .tm-nav-inner {gap:4px}
    .tm-nav-actions {min-width:0;gap:3px}
    .tm-nav-cta {gap:5px;padding-right:5px;padding-left:5px;letter-spacing:-.06em}
}

/* 자동번역(Google 번역)은 원문보다 긴 단어를 만들어 카드·목록 텍스트를
   밀어내므로, 본문 텍스트 블록은 어디서든 줄바꿈되도록 허용한다. */
.tm-news-card h3,
.tm-news-card p,
.tm-overview-card h3,
.tm-channel-grid h3,
.tm-channel-grid p,
.tm-step-grid p,
.tm-principle-grid p {overflow-wrap:anywhere}

/* ============================================================
   REFINEMENT LAYER
   레이아웃·문구는 그대로 두고 깊이감, 타이포 디테일, 모션 품질만 올린다.
   기존 규칙을 덮어쓰지 않도록 파일 끝에 덧붙이며, 미디어쿼리로 이미
   조정된 값(패딩·폰트크기)은 건드리지 않는다.
   ============================================================ */

.tm-site {
    --tm-ease:cubic-bezier(.22,.61,.36,1);
    --tm-shadow-sm:0 1px 2px rgba(10,11,14,.05),0 6px 16px rgba(10,11,14,.07);
    --tm-shadow-md:0 2px 4px rgba(10,11,14,.05),0 16px 36px rgba(10,11,14,.11);
    --tm-shadow-lg:0 4px 10px rgba(10,11,14,.07),0 30px 64px rgba(10,11,14,.17);
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}

/* 숫자가 흔들리지 않도록 라벨·카운터는 등폭 숫자를 쓴다. */
.tm-card-number,
.tm-hero-count,
.tm-hero-index strong,
.tm-news-meta time {font-variant-numeric:tabular-nums}

/* 섹션 라벨 앞 편집형 룰 */
.tm-section-heading > p:first-child,
.tm-section-heading > div > p:first-child {display:flex;align-items:center;gap:12px}
.tm-section-heading > p:first-child::before,
.tm-section-heading > div > p:first-child::before {content:"";flex:none;width:26px;height:2px;background:var(--tm-accent)}

/* 디스플레이 헤드라인 균형 잡기 */
.tm-hero-copy h2,
.tm-section-heading h2 {text-wrap:balance}

/* 히어로: 가장자리로 갈수록 살짝 어두워지는 비네트 */
.tm-hero-feature::before {content:"";position:absolute;inset:0;background:radial-gradient(125% 95% at 74% 45%,transparent 42%,rgba(4,5,8,.34) 100%);pointer-events:none}
.tm-kicker {display:inline-flex;align-items:center;gap:13px}
.tm-kicker::after {content:"";width:46px;height:1px;background:linear-gradient(90deg,var(--tm-accent),rgba(226,35,46,0))}
.tm-hero-rail {box-shadow:var(--tm-shadow-lg)}

/* 카드: 호버 시 상단 액센트 바가 그어지고 2단 그림자로 떠오른다. */
.tm-overview-card,
.tm-news-card {transition:transform .45s var(--tm-ease),box-shadow .45s var(--tm-ease),border-color .45s var(--tm-ease)}
.tm-overview-card::before,
.tm-news-card::before {content:"";position:absolute;top:0;left:0;width:0;height:2px;background:var(--tm-accent);transition:width .5s var(--tm-ease)}
.tm-news-card {position:relative}
.tm-overview-card:hover::before,
.tm-news-card:hover::before {width:100%}
.tm-overview-card:hover {transform:translateY(-6px);box-shadow:var(--tm-shadow-md)}
.tm-news-card:hover {transform:translateY(-6px);box-shadow:var(--tm-shadow-lg)}

/* 버튼·링크 모션 정돈 */
.tm-button {transition:background .35s var(--tm-ease),border-color .35s var(--tm-ease),color .35s var(--tm-ease),transform .35s var(--tm-ease),box-shadow .35s var(--tm-ease)}
.tm-button:hover {transform:translateY(-2px);box-shadow:var(--tm-shadow-sm)}
.tm-text-link {background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .45s var(--tm-ease)}
.tm-text-link:hover {background-size:100% 1px}

/* 데스크톱에서만 섹션 호흡을 조금 더 준다. */
@media (min-width:1200px) {
    .tm-section {padding:124px 0}
    .tm-section-heading {margin-bottom:50px}
}
