@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable.css");
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&display=swap");

:root{
  --mineral:#F7F8FA;
  --white:#FFF;
  --graphite:#12161C;
  --navy:#202A35;
  --steel:#626C78;
  --steel-light:#8B949F;
  --line:#DCE1E6;
  --spring:#2F7D59;
  --summer:#2459A9;
  --summer-soft:#E9F0FA;
  --font:"Pretendard Variable",Pretendard,Inter,-apple-system,BlinkMacSystemFont,sans-serif;
  --mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
  --ease:cubic-bezier(.2,.8,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;color:var(--graphite);background:var(--mineral);font-family:var(--font);line-height:1.68;letter-spacing:-.018em;word-break:keep-all;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.insights-shell{width:min(calc(100% - 64px),1160px);margin-inline:auto}
.skip-link{position:fixed;z-index:200;left:16px;top:-60px;padding:10px 14px;color:var(--white);background:var(--graphite);border-radius:6px;transition:top 120ms var(--ease)}
.skip-link:focus{top:16px}
a:focus-visible,button:focus-visible{outline:3px solid rgba(36,89,169,.32);outline-offset:4px}

/* Header base styles; site-nav.css supplies the menu treatment. */
.header{position:sticky;z-index:30;top:0;border-bottom:1px solid var(--line);background:rgba(247,248,250,.92);backdrop-filter:blur(12px)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{min-height:44px;display:inline-flex;align-items:center;gap:12px;font-size:17px;font-weight:720;letter-spacing:-.03em;margin-right:auto}
.mark{width:34px;height:34px;position:relative;flex:0 0 34px;border-radius:5px;background:linear-gradient(135deg,#2F7D59 0 33%,#2459A9 33% 66%,#BD4949 66% 100%)}
.nav-links{display:none;align-items:center;gap:26px;color:var(--steel);font-size:14px;font-weight:560}
.nav-links a{min-height:44px;display:inline-flex;align-items:center}
.nav-links a:hover{color:var(--graphite)}
.nav-links .nav-cta{min-height:44px;height:44px;padding:0 18px;border-radius:6px;color:var(--white);background:var(--summer);display:inline-flex}
.nav-links .nav-cta:hover{background:#194783}
@media(min-width:980px){.nav-links{display:flex}}
.nav-cta-mobile{min-height:44px;height:44px;padding:0 16px;border-radius:6px;color:var(--white);background:var(--summer);font-size:13px;font-weight:650;display:inline-flex;align-items:center}
@media(min-width:980px){.nav-cta-mobile{display:none}}

.insight-eyebrow{margin:0;color:var(--summer);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;line-height:1.4;text-transform:uppercase}

/* Index */
.insights-hero{border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(23,32,42,.032) 1px,transparent 1px),linear-gradient(rgba(23,32,42,.032) 1px,transparent 1px),var(--mineral);background-size:32px 32px}
.insights-hero__inner{min-height:470px;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:64px;align-items:center;padding:76px 0 72px}
.insights-hero h1{max-width:760px;margin:20px 0 22px;font-size:clamp(42px,6vw,70px);font-weight:720;line-height:1.15;letter-spacing:-.055em}
.insights-hero h1 em{font-style:normal;color:var(--summer)}
.insights-hero__lead{max-width:640px;margin:0;color:var(--steel);font-size:16px;line-height:1.82}
.insights-hero__signal{padding:22px 0 22px 26px;border-left:1px solid var(--line);display:grid;align-content:center;gap:6px;color:var(--steel);font-family:var(--mono);font-size:10px;letter-spacing:.035em}
.insights-hero__signal-label{color:var(--steel-light);font-size:9px;letter-spacing:.08em}
.insights-hero__signal strong{color:var(--graphite);font-size:58px;font-weight:500;line-height:1;letter-spacing:-.08em}
.insights-hero__rule{width:60px;height:2px;margin:18px 0 10px;background:linear-gradient(90deg,var(--spring),var(--summer),#BD4949)}
.insights-hero__signal small{color:var(--steel-light);font-size:9px}
.insights-library{padding:86px 0 116px;background:var(--white)}
.insights-library__head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}
.insights-library__head h2{margin:12px 0 0;font-size:clamp(28px,3.6vw,44px);font-weight:700;line-height:1.25;letter-spacing:-.045em}
.insights-library__desc{max-width:36ch;margin:0;color:var(--steel);font-size:13.5px;line-height:1.7;text-align:right}
.insights-filters{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0 28px;border-top:2px solid var(--graphite)}
.insight-filter{min-height:36px;padding:0 13px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--steel);font-family:var(--mono);font-size:10px;letter-spacing:.02em;cursor:pointer;transition:color 160ms ease,background 160ms ease,border-color 160ms ease}
.insight-filter:hover{border-color:#AAB4BE;color:var(--graphite)}
.insight-filter.is-active{border-color:var(--summer);color:var(--white);background:var(--summer)}
.insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}
.insight-card{min-width:0;background:var(--white)}
.insight-card[hidden]{display:none}
.insight-card__link{height:100%;display:flex;flex-direction:column;transition:background 180ms ease}
.insight-card__link:hover{background:#FAFBFC}
.insight-card__media{aspect-ratio:1.8/1;overflow:hidden;background:#EDEFF2}
.insight-card__media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform 420ms var(--ease)}
.insight-card__link:hover .insight-card__media img{transform:scale(1.025)}
.insight-card__media--empty{display:grid;place-items:center;color:var(--steel-light);font-family:var(--mono);font-size:10px;letter-spacing:.08em}
.insight-card__body{padding:25px 26px 27px;display:flex;flex:1;flex-direction:column}
.insight-card__meta{display:flex;justify-content:space-between;gap:18px;color:var(--summer);font-family:var(--mono);font-size:9px;letter-spacing:.035em;text-transform:uppercase}
.insight-card__meta time{color:var(--steel-light)}
.insight-card h2{margin:16px 0 10px;font-size:23px;line-height:1.38;letter-spacing:-.035em}
.insight-card p{margin:0;color:var(--steel);font-size:13.5px;line-height:1.7}
.insight-card__read{margin-top:auto;padding-top:22px;color:var(--summer);font-family:var(--mono);font-size:10px;letter-spacing:.04em}
.insight-card__read span{display:inline-block;margin-left:4px;transition:transform 160ms ease}
.insight-card__link:hover .insight-card__read span{transform:translate(3px,-3px)}
.insight-empty{margin:0;padding:48px 0;color:var(--steel);text-align:center}

/* Detail */
.insight-detail-hero{padding:75px 0 66px;border-bottom:1px solid var(--line);background:var(--mineral)}
.insight-back{display:inline-flex;margin-bottom:52px;color:var(--summer);font-family:var(--mono);font-size:10px;letter-spacing:.04em}
.insight-detail-hero h1{max-width:960px;margin:18px 0 18px;font-size:clamp(36px,5vw,66px);font-weight:720;line-height:1.18;letter-spacing:-.055em}
.insight-detail-hero__lead{max-width:720px;margin:0;color:var(--steel);font-size:16px;line-height:1.8}
.insight-detail-hero__meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:28px;padding-top:16px;border-top:1px solid var(--line);color:var(--steel-light);font-family:var(--mono);font-size:9px;letter-spacing:.045em;text-transform:uppercase}
.insight-detail{padding:76px 0 116px;background:var(--white)}
.insight-detail__layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:72px;align-items:start;justify-content:center}
.insight-detail__aside{position:sticky;top:108px;padding-top:4px;color:var(--steel);font-size:12px;line-height:1.7}
.insight-detail__aside-label{margin-bottom:10px;color:var(--steel-light);font-family:var(--mono);font-size:9px;letter-spacing:.08em}
.insight-detail__aside p{margin:0 0 28px}
.insight-detail__tag-group{padding:15px 0;border-top:1px solid var(--line)}
.insight-detail__tag-group>span{display:block;margin-bottom:9px;color:var(--steel-light);font-family:var(--mono);font-size:8px;letter-spacing:.08em}
.insight-detail__tag-group>div{display:flex;flex-wrap:wrap;gap:5px}
.insight-chip{display:inline-flex;padding:4px 6px;border:1px solid var(--line);border-radius:3px;color:var(--summer);font-family:var(--mono);font-size:8px;line-height:1.35;letter-spacing:.03em}
.insight-body{min-width:0;font-size:16px;line-height:1.92}
.insight-body h2,.insight-body h3{margin:42px 0 16px;color:var(--graphite);font-size:26px;line-height:1.35;letter-spacing:-.04em}
.insight-body h2:first-child,.insight-body h3:first-child{margin-top:0}
.insight-body p{margin:0 0 20px;color:#3E4853}
.insight-body strong{color:var(--graphite);font-weight:700}
.insight-body em{font-style:italic}
.insight-body ol,.insight-body ul{margin:0 0 25px;padding-left:1.5em;color:#3E4853}
.insight-body li{padding-left:5px;margin:5px 0}
.insight-body hr{margin:40px 0;border:0;border-top:1px solid var(--line)}
.insight-inline-image{margin:30px 0 36px}
.insight-inline-image img{width:auto;max-width:100%;height:auto;display:block;margin:0 auto;background:#F1F3F5}
.insight-inline-image figcaption{margin-top:8px;color:var(--steel-light);font-family:var(--mono);font-size:9px;letter-spacing:.03em}
.insight-table-wrap{margin:32px 0 38px;overflow-x:auto;border:1px solid var(--line)}
.insight-table-wrap table{width:100%;min-width:620px;border-collapse:collapse;color:#3E4853;font-size:12.5px;line-height:1.55}
.insight-table-wrap th,.insight-table-wrap td{padding:12px 13px;vertical-align:top;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}
.insight-table-wrap th{color:var(--graphite);font-weight:700;background:var(--mineral)}
.insight-table-wrap tr:last-child td{border-bottom:0}
.insight-table-wrap th:last-child,.insight-table-wrap td:last-child{border-right:0}
.insight-table-wrap p{margin:0;color:inherit;font-size:inherit;line-height:inherit}
.insight-body a{color:var(--summer);text-decoration:underline;text-decoration-color:rgba(36,89,169,.32);text-underline-offset:3px}
.insight-body a:hover{text-decoration-color:var(--summer)}

.insights-footer{border-top:1px solid var(--line);background:var(--mineral)}
.insights-footer__inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--steel-light);font-family:var(--mono);font-size:9px;letter-spacing:.05em}
.insights-footer__inner a{color:var(--summer)}

@media(max-width:780px){
  .insights-shell{width:min(calc(100% - 36px),1160px)}
  .insights-hero__inner{min-height:0;grid-template-columns:1fr;gap:38px;padding:58px 0 54px}
  .insights-hero h1{font-size:clamp(37px,11vw,54px)}
  .insights-hero__lead{font-size:14.5px}
  .insights-hero__signal{padding:18px 0 0;border-top:1px solid var(--line);border-left:0;grid-template-columns:auto auto;align-items:end;column-gap:15px}
  .insights-hero__signal-label,.insights-hero__signal small{grid-column:1/-1}
  .insights-hero__signal strong{font-size:48px}
  .insights-hero__rule{margin:10px 0 4px}
  .insights-library{padding:62px 0 80px}
  .insights-library__head{display:block;margin-bottom:24px}
  .insights-library__desc{margin-top:13px;text-align:left}
  .insights-grid{grid-template-columns:1fr}
  .insight-card h2{font-size:21px}
  .insight-detail-hero{padding:55px 0 48px}
  .insight-back{margin-bottom:38px}
  .insight-detail-hero h1{font-size:clamp(34px,9vw,52px)}
  .insight-detail-hero__lead{font-size:14.5px}
  .insight-detail{padding:52px 0 76px}
  .insight-detail__layout{display:flex;flex-direction:column;gap:36px}
  .insight-detail__aside{position:static;width:100%;padding:0 0 24px;border-bottom:1px solid var(--line)}
  .insight-body{font-size:15px;line-height:1.85}
  .insight-body h2,.insight-body h3{margin-top:34px;font-size:23px}
  .insight-inline-image{margin:24px 0 30px}
  .insights-footer__inner{min-height:78px;display:block;padding:20px 0;font-size:8px;line-height:2}
  .insights-footer__inner a{display:block}
}

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