@charset "utf-8";
/* ============================================================
   코리아빌드 매거진 — 워드프레스(Avada) 전용 CSS
   ============================================================ */

/* ====================
   [Tokens]
==================== */
:root {
  --mg-palette-white: #ffffff;
  --mg-palette-black: #000000;
  --mg-palette-gray-50: #f9f9fb;
  --mg-palette-gray-100: #eeeeee;
  --mg-palette-gray-200: #e6e6e6;
  --mg-palette-gray-300: #d8d8d8;
  --mg-palette-gray-400: #9ca3af;
  --mg-palette-gray-500: #666666;
  --mg-palette-gray-700: #333333;
  --mg-palette-gray-900: #222222;
  --mg-palette-gray-950: #121212;
  --mg-palette-orange-400: #fb7038;
  --mg-palette-orange-500: #fb4007;
  --mg-palette-orange-600: #e23a06;
  --mg-palette-orange-vivid: #ff5c00;
  --mg-palette-blue-500: #0000aa;
  --mg-palette-blue-600: #000088;
  --mg-palette-blue-300: #5c5cff;
  --mg-palette-navy-700: #181f28;
  --mg-palette-navy-800: #142842;
  --mg-bg: var(--mg-palette-white);
  --mg-bg-soft: var(--mg-palette-gray-50);
  --mg-bg-muted: var(--mg-palette-gray-100);
  --mg-bg-muted-hover: var(--mg-palette-gray-200);
  --mg-bg-inverse: var(--mg-palette-black);
  --mg-bg-inverse-hover: var(--mg-palette-gray-900);
  --mg-text: var(--mg-palette-black);
  --mg-text-body: var(--mg-palette-gray-700);
  --mg-text-desc: var(--mg-palette-gray-500);
  --mg-text-dot: var(--mg-palette-gray-400);
  --mg-text-inverse: var(--mg-palette-white);
  --mg-text-on-image: var(--mg-palette-white);
  --mg-border: var(--mg-palette-gray-200);
  --mg-border-strong: var(--mg-palette-gray-700);
  --mg-border-heavy: var(--mg-palette-black);
  --mg-primary: var(--mg-palette-orange-500);
  --mg-primary-hover: var(--mg-palette-orange-400);
  --mg-badge-hover-bg: var(--primary-500, var(--mg-primary));
  --mg-secondary: var(--mg-palette-blue-500);
  --mg-stripe: var(--mg-palette-orange-vivid);
  --mg-secondary-hover: var(--mg-palette-blue-600);
  --mg-overlay: rgba(0, 0, 0, 0.85);
  --mg-hero-dot: rgba(0, 0, 0, 0.18);
  --mg-hero-dot-mob: var(--mg-palette-gray-300);
  --mg-banner-bg: var(--mg-palette-navy-700);
  --mg-banner-bg-mob: var(--mg-palette-navy-800);
  --mg-font: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --mg-font-mono: 'Geist Mono', 'Pretendard', monospace;
  --mg-font-display: 'Archivo Black', 'Pretendard', sans-serif;
  --mg-font-normal: 400;
  --mg-font-medium: 500;
  --mg-font-semibold: 600;
  --mg-font-bold: 700;
  --mg-font-extrabold: 800;
  --mg-max: 100rem;
  --mg-gutter: clamp(1.25rem, 8.333vw, 10rem);
  --mg-grid-gap: 2rem;
  --mg-radius: 0.25rem;
  --mg-module-title: 2rem;
  --mg-module-title-lh: 2.75rem;
  --mg-module-rule: 3px;
}
:root[data-theme='dark'] {
  color-scheme: dark;
  --mg-bg: var(--mg-palette-gray-950);
  --mg-bg-soft: #1a1a1d;
  --mg-bg-muted: #2a2a2e;
  --mg-bg-muted-hover: #3a3a3f;
  --mg-bg-inverse: var(--mg-palette-white);
  --mg-bg-inverse-hover: var(--mg-palette-gray-200);
  --mg-text: var(--mg-palette-white);
  --mg-text-body: #d4d4d8;
  --mg-text-desc: #a1a1aa;
  --mg-text-dot: #71717a;
  --mg-text-inverse: var(--mg-palette-black);
  --mg-border: #2e2e33;
  --mg-border-strong: #a1a1aa;
  --mg-border-heavy: var(--mg-palette-white);
  --mg-secondary: var(--mg-palette-blue-300);
  --mg-secondary-hover: #7a7aff;
  --mg-hero-dot: rgba(255, 255, 255, 0.25);
  --mg-hero-dot-mob: #3a3a3f;
}

/* ==================== */
/* [WP reset]           */
/* ==================== */
/* body .mg_wp 요소 = (0,1,2) : Avada 의 .post-content h3 등 (0,1,1) 보다 높고, 본문 규칙 .mg_wp .mg_xxx (0,2,0) 보다는 낮음 */
.mg_wp {
  font-family:
    'Pretendard Variable',
    'Pretendard',
    -apple-system,
    BlinkMacSystemFont,
    system-ui,
    sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  color: var(--mg-text);
  background-color: var(--mg-bg);
  word-break: keep-all;
  letter-spacing: 0;
  text-align: left;
  -webkit-font-smoothing: antialiased;
}
body .mg_wp *,
body .mg_wp *::before,
body .mg_wp *::after {
  box-sizing: border-box;
}
body .mg_wp h1,
body .mg_wp h2,
body .mg_wp h3,
body .mg_wp h4,
body .mg_wp h5,
body .mg_wp p,
body .mg_wp ul,
body .mg_wp ol,
body .mg_wp li,
body .mg_wp figure {
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  letter-spacing: 0;
  text-transform: none;
}
body .mg_wp ul,
body .mg_wp ol,
body .mg_wp li {
  list-style: none;
}
body .mg_wp a {
  color: inherit;
  text-decoration: none;
  box-shadow: none;
  outline: 0;
}
body .mg_wp a:hover,
body .mg_wp a:focus {
  text-decoration: none;
}
body .mg_wp img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
body .mg_wp b,
body .mg_wp strong {
  font-weight: 700;
}
body .mg_wp i {
  font-style: normal;
}
body .mg_wp button,
body .mg_wp input,
body .mg_wp label {
  font: inherit;
  color: inherit;
  letter-spacing: 0;
  margin: 0;
  text-transform: none;
}
body .mg_wp button {
  background: none;
  border: 0;
  padding: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  line-height: inherit;
  min-height: 0;
  height: auto;
  width: auto;
}
body .mg_wp input[type='search'] {
  -webkit-appearance: none;
  appearance: none;
  width: auto;
  min-height: 0; /* height 는 본문 규칙(.mg_search input { height:100% })이 담당 — 여기서 지정하면 특이성(0,2,2)이 본문(0,2,1)을 이겨버림 */
  margin: 0;
  padding: 1px 2px; /* 브라우저 기본값과 동일(로컬과 일치) */
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  outline: 0;
}
body .mg_wp input[type='search']::-webkit-search-cancel-button,
body .mg_wp input[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
}
body .mg_wp .material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

/* ==================== */
/* [Swiper core] (scoped) — swiper-bundle.css 미로드 대비 최소 규칙 */
/* ==================== */
.mg_wp .swiper {
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
  display: block;
}
.mg_wp .swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  box-sizing: content-box;
  transition-property: transform;
  transform: translate3d(0, 0, 0);
}
.mg_wp .swiper-horizontal {
  touch-action: pan-y;
}
.mg_wp .swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.mg_wp .swiper-pagination-bullet {
  display: inline-block;
  cursor: pointer;
}
.mg_wp .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.mg_wp .swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
  margin: 0 4px;
} /* swiper-bundle.css 와 동일 (로컬 PC 히어로 dot 간격) */
.mg_wp .swiper-pagination-lock,
.mg_wp .swiper-button-lock {
  display: none;
}

/* ==================== */
/* [Main] main.css (scoped) */
/* ==================== */
.mg_wp .mg_section {
  width: 100%;
  padding: 0 var(--mg-gutter);
}
.mg_wp:not(.mg_full_bleed):not(.mg_preview_feed) .mg_section {
  padding-right: 0;
  padding-left: 0;
}
.mg_wp .mg_section.bg_gray {
  background-color: var(--mg-bg-soft);
}
.mg_wp .mg_section.bg_black {
  background-color: var(--mg-bg-inverse);
  color: var(--mg-text-inverse);
}
.mg_wp .mg_inner {
  --gap: var(--mg-grid-gap);
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--gap);
  row-gap: var(--row-gap, 4rem);
  width: 100%;
  max-width: var(--mg-max);
  margin: 0 auto;
}
.mg_wp:not(.mg_full_bleed):not(.mg_preview_feed) .mg_inner {
  max-width: none;
}
.mg_wp .mg_module {
  grid-column: span var(--span, 12);
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.mg_wp .mg_module.span_3 {
  --span: 3;
}
.mg_wp .mg_module.span_4 {
  --span: 4;
}
.mg_wp .mg_module.span_6 {
  --span: 6;
}
.mg_wp .mg_module.span_8 {
  --span: 8;
}
.mg_wp .mg_module.span_9 {
  --span: 9;
}
.mg_wp .mg_module.span_12 {
  --span: 12;
}
.mg_wp .mg_inner.gap_lg {
  --gap: 5rem;
}
.mg_wp .pt_0 {
  padding-top: 0 !important;
}
.mg_wp .pt_40 {
  padding-top: 2.5rem;
}
.mg_wp .pt_64 {
  padding-top: 4rem;
}
.mg_wp .pb_64 {
  padding-bottom: 4rem;
}
.mg_wp .py_64 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.mg_wp .mg_module_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
.mg_wp .mg_module_head.rule {
  border-bottom: var(--mg-module-rule) solid var(--mg-border-heavy);
}
.mg_wp .mg_module_title {
  font-size: var(--mg-module-title);
  line-height: var(--mg-module-title-lh);
  font-weight: var(--mg-font-bold);
  color: var(--mg-text);
  white-space: nowrap;
}
.mg_wp .mg_module_actions {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-shrink: 0;
}
.mg_wp .mg_module_body {
  margin-top: var(--body-gap, 2rem);
  min-width: 0;
}
.mg_wp .mg_more_link {
  font-size: 0.875rem;
  font-weight: var(--mg-font-bold);
  line-height: 1.5;
  color: var(--primary-500, var(--mg-primary));
  white-space: nowrap;
}
.mg_wp .mg_more_link:hover {
  text-decoration: underline;
  text-underline-offset: 0.19rem;
}
.mg_wp .material-symbols-outlined {
  font-variation-settings:
    'FILL' 0,
    'wght' 400,
    'GRAD' 0,
    'opsz' 24;
  font-size: 1.5rem;
  line-height: 1;
  display: inline-block;
  vertical-align: middle;
  user-select: none;
}
.mg_wp .mg_nav {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.mg_wp .mg_nav_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background-color: var(--mg-bg-muted);
  color: var(--mg-text-desc);
  transition: background-color 0.2s;
}
.mg_wp .mg_nav_btn i {
  font-size: 1.5rem;
}
.mg_wp .mg_nav_btn:hover {
  background-color: var(--mg-bg-muted-hover);
}
.mg_wp .mg_nav_btn.swiper-button-disabled {
  opacity: 0.4;
  cursor: default;
}
.mg_wp .mg_pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 0.625rem 1.25rem;
  border-radius: 3.875rem;
  font-size: 1rem;
  font-weight: var(--mg-font-semibold);
  line-height: 1.5;
  white-space: nowrap;
  border: 1px solid transparent;
  transition:
    background-color 0.2s,
    color 0.2s,
    border-color 0.2s;
}
.mg_wp .mg_pill.black {
  background-color: var(--mg-bg-inverse);
  color: var(--mg-text-inverse);
}
.mg_wp .mg_pill.black:hover {
  background-color: var(--mg-bg-inverse-hover);
}
.mg_wp .mg_pill.secondary {
  background-color: var(--mg-secondary);
  color: var(--mg-text-on-image);
}
.mg_wp .mg_pill.secondary:hover {
  background-color: var(--mg-secondary-hover);
}
.mg_wp .mg_pill.outline_white {
  border: 1.5px solid var(--mg-text-on-image);
  color: var(--mg-text-on-image);
  background-color: transparent;
}
.mg_wp .mg_pill.outline_white:hover {
  background-color: var(--mg-text-on-image);
  color: var(--mg-palette-black);
}
.mg_wp .mg_badge {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.625rem;
  border-radius: var(--mg-radius);
  background-color: var(--mg-overlay);
  backdrop-filter: blur(0.75rem);
  -webkit-backdrop-filter: blur(0.75rem);
  color: var(--mg-text-on-image);
  font-size: 0.875rem;
  font-weight: var(--mg-font-bold);
  line-height: 1.5;
  white-space: nowrap;
}
.mg_wp .mg_badge.primary {
  background-color: var(--mg-primary);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.mg_wp .mg_card .mg_badge {
  transition: background-color 0.3s ease;
}
.mg_wp .mg_card:hover .mg_badge {
  background-color: var(--mg-badge-hover-bg);
}
.mg_wp .mg_badge.lg {
  padding: 0.25rem 0.75rem;
  font-size: 1rem;
}
.mg_wp .mg_meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--mg-text-desc);
  white-space: nowrap;
}
.mg_wp .mg_meta .author {
  font-weight: var(--mg-font-bold);
}
.mg_wp .mg_meta .dot {
  color: var(--mg-text-dot);
  font-size: 0.875rem;
  line-height: 1;
}
.mg_wp .mg_meta .views {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.mg_wp .mg_meta .views b {
  font-weight: var(--mg-font-bold);
}
.mg_wp .mg_meta.inverse {
  color: var(--mg-text-inverse);
}
.mg_wp .mg_meta.inverse .date,
.mg_wp .mg_meta.inverse .views span {
  opacity: 0.5;
}
.mg_wp .mg_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  padding-top: 0.5rem;
}
.mg_wp .mg_tag {
  display: inline-flex;
  padding: 0.125rem 0.5rem;
  border-radius: 0.125rem;
  background-color: var(--mg-bg-soft);
  color: var(--mg-text-desc);
  font-size: 0.875rem;
  font-weight: var(--mg-font-normal);
  line-height: 1.5;
  white-space: nowrap;
}
.mg_wp .mg_card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
  color: inherit;
}
.mg_wp .mg_card_thumb {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: var(--mg-radius);
  background-color: var(--mg-bg);
  transition: transform 0.3s ease;
}
.mg_wp .mg_card:hover .mg_card_thumb {
  transform: translateY(-0.63rem);
}
.mg_wp .mg_card_thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.mg_wp .mg_card_thumb .mg_badge {
  position: absolute;
  top: 0.625rem;
  left: 0.625rem;
  z-index: 1;
}
.mg_wp .mg_card_body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}
.mg_wp .mg_card_title {
  font-size: 1.5rem;
  font-weight: var(--mg-font-bold);
  line-height: 1.5;
  color: var(--mg-text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mg_wp .mg_card_desc {
  font-size: 1rem;
  font-weight: var(--mg-font-medium);
  line-height: 1.5;
  color: var(--mg-text-desc);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mg_wp .mg_cards {
  display: grid;
  grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr));
  gap: var(--cards-gap, 2rem);
}
.mg_wp .mg_stripe {
  height: 0.38rem;
  background-color: var(--mg-stripe);
}
.mg_wp .mg_intro {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.mg_wp .mg_intro_block {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
}
.mg_wp .mg_intro_lead {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2.5rem;
  width: 100%;
  min-width: 0;
}
.mg_wp .mg_intro_title {
  font-size: 4rem;
  line-height: 4.625rem;
  font-weight: var(--mg-font-bold);
  color: var(--mg-text);
  white-space: nowrap;
}
.mg_wp .mg_intro_desc {
  display: flex;
  align-items: center;
  min-height: 4rem;
  padding-left: 1.5rem;
  border-left: 0.19rem solid var(--mg-border-strong);
  font-size: 1.125rem;
  font-weight: var(--mg-font-medium);
  line-height: 1.5;
  color: var(--mg-text-body);
}
.mg_wp .mg_intro_desc span {
  display: block;
}
.mg_wp .mg_filter {
  position: sticky;
  top: 0;
  z-index: 50;
  background-color: var(--mg-bg);
  border-top: 1px solid var(--mg-border-strong);
  border-bottom: 1px solid var(--mg-border-strong);
}
.mg_wp .mg_filter_inner {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  width: 100%;
  max-width: var(--mg-max);
  margin: 0 auto;
}
.mg_wp .mg_tabs_swiper {
  flex: 1 1 0;
  min-width: 0;
  overflow: hidden;
  padding-right: 1.5rem;
}
.mg_wp .mg_tabs {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  width: auto;
  height: auto;
  padding: 0.75rem 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.mg_wp .mg_tabs::-webkit-scrollbar {
  display: none;
}
.mg_wp .mg_tabs_swiper.swiper-initialized .mg_tabs {
  gap: 0;
  overflow: visible;
}
.mg_wp .mg_tab {
  display: inline-flex;
  align-items: center;
  width: auto;
  height: auto;
  line-height: 1.38rem;
  padding: 0.5rem 1rem;
  border: 1px solid var(--mg-border-strong);
  border-radius: 10rem;
  font-size: 1rem;
  font-weight: var(--mg-font-semibold);
  color: var(--mg-text);
  white-space: nowrap;
  flex-shrink: 0;
  transition:
    background-color 0.2s,
    color 0.2s;
}
.mg_wp .mg_tab:hover {
  background-color: var(--mg-bg-soft);
}
.mg_wp .mg_tab.active {
  background-color: var(--mg-bg-inverse);
  border-color: var(--mg-bg-inverse);
  border-radius: 3.125rem;
  color: var(--mg-text-inverse);
}
.mg_wp .mg_search_form {
  display: flex;
  align-items: stretch;
  flex-shrink: 0;
}
.mg_wp .mg_search {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  width: 18.875rem;
  flex-shrink: 0;
  border-left: 1px solid var(--mg-border-heavy);
  border-right: 1px solid var(--mg-border-heavy);
  padding: 0.625rem 1.125rem;
  background-color: var(--mg-bg);
  outline: 2px solid transparent;
  outline-offset: -2px;
  cursor: text;
  transition:
    background-color 0.2s,
    border-color 0.2s,
    outline-color 0.2s;
}
.mg_wp .mg_search:hover {
  background-color: var(--mg-bg-soft);
  border-color: var(--mg-border-strong);
}
.mg_wp .mg_search:focus-within {
  background-color: var(--mg-bg);
  border-color: var(--primary-500, var(--mg-primary));
  outline-color: var(--primary-500, var(--mg-primary));
}
.mg_wp .mg_search i {
  font-size: 1.25rem;
  color: var(--mg-text);
  flex-shrink: 0;
  font-variation-settings:
    'FILL' 0,
    'wght' 500,
    'GRAD' 0,
    'opsz' 20;
  transition: color 0.2s;
}
.mg_wp .mg_search:focus-within i {
  color: var(--primary-500, var(--mg-primary));
}
.mg_wp .mg_search input {
  flex: 1 1 0;
  min-width: 0;
  height: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 1rem;
  font-weight: var(--mg-font-medium);
  line-height: 1.5;
  color: var(--mg-text);
  caret-color: var(--primary-500, var(--mg-primary));
}
.mg_wp .mg_search input::placeholder {
  color: var(--mg-text-desc);
}
.mg_wp .mg_search input::-webkit-search-cancel-button,
.mg_wp .mg_search input::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
}
.mg_wp .mg_search_clear {
  display: none;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  border-radius: 62.44rem;
  background-color: var(--mg-bg-soft);
  color: var(--mg-text-body);
  font-size: 1rem;
  line-height: 1;
  font-weight: var(--mg-font-normal);
  transition: background-color 0.2s;
}
.mg_wp .mg_search_clear:hover {
  background-color: var(--mg-bg-muted-hover);
}
.mg_wp .mg_search:has(input:not(:placeholder-shown)) .mg_search_clear {
  display: inline-flex;
}
.mg_wp .mg_hero {
  padding-top: 2.5rem;
  padding-bottom: 4rem;
}
.mg_wp .mg_hero_swiper {
  width: 100%;
  height: 33.75rem;
  border-radius: var(--mg-radius);
  overflow: hidden;
}
.mg_wp .mg_hero_slide {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  padding: 4rem;
  color: var(--mg-text-on-image);
  overflow: hidden;
}
.mg_wp .mg_hero_slide > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.mg_wp .mg_hero_slide::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background-image:
    linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%),
    linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%);
  pointer-events: none;
}
.mg_wp .mg_hero_content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  max-width: 58.75rem;
}
.mg_wp .mg_hero_title {
  font-size: 3rem;
  line-height: 3.625rem;
  font-weight: var(--mg-font-bold);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mg_wp .mg_hero_desc {
  font-size: 1.125rem;
  font-weight: var(--mg-font-medium);
  line-height: 1.5;
  color: var(--mg-text-on-image);
  opacity: 0.85;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mg_wp .mg_hero_pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  height: 1.25rem;
  padding-top: 0.875rem;
}
.mg_wp .mg_hero_pagination .swiper-pagination-bullet {
  width: 0.38rem;
  height: 0.38rem;
  margin: 0;
  border-radius: 0.19rem;
  background-color: var(--mg-hero-dot);
  opacity: 1;
  transition:
    width 0.3s,
    background-color 0.3s;
}
.mg_wp .mg_hero_pagination .swiper-pagination-bullet-active {
  width: 1.5rem;
  background-color: var(--mg-primary);
}
.mg_wp .mg_banner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 3rem;
  border-radius: var(--mg-radius);
  overflow: hidden;
  color: var(--mg-text-on-image);
  background: var(--mg-banner-bg) url('../img/banner_bg.png') no-repeat center / cover;
}
.mg_wp .mg_banner_text {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.mg_wp .mg_banner_label {
  font-size: 1rem;
  font-weight: var(--mg-font-bold);
  line-height: 1.5;
  color: var(--mg-primary);
}
.mg_wp .mg_banner_title {
  font-size: 1.75rem;
  font-weight: var(--mg-font-bold);
  line-height: 1.5;
  color: var(--mg-text-on-image);
}
.mg_wp .mg_banner .mg_pill {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}
.mg_wp .mg_mustread .mg_cards {
  --cols: 3;
  --cards-gap: 2rem;
}
.mg_wp .mg_mustread .mg_card_thumb {
  height: 15rem;
  border: 1px solid var(--mg-border);
}
.mg_wp .mg_mustread .mg_card_thumb .mg_badge {
  top: 0.6875rem;
  left: 0.6875rem;
}
.mg_wp .mg_mustread .swiper-slide {
  height: auto;
}
.mg_wp .mg_mustread .swiper {
  padding-top: 0.75rem;
  margin-top: -0.75rem;
}
.mg_wp .mg_mustread .swiper-initialized .swiper-wrapper {
  display: flex;
  gap: 0;
}
.mg_wp .mg_mustread .swiper:not(.swiper-initialized) .swiper-wrapper {
  display: grid;
}
.mg_wp .mg_mustread .swiper:not(.swiper-initialized) .swiper-slide {
  width: auto;
}
.mg_wp .mg_magazine {
  --body-gap: 1.5rem;
}
.mg_wp .mg_magazine .mg_module_head {
  padding-bottom: 1rem;
}
.mg_wp .mg_module_titles {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.mg_wp .mg_magazine .mg_module_title {
  font-family: var(--mg-font-display);
  font-size: 3rem;
  line-height: 3.625rem;
  font-weight: var(--mg-font-normal);
  letter-spacing: 0;
}
.mg_wp .mg_module_sub {
  font-size: 1.125rem;
  font-weight: var(--mg-font-normal);
  line-height: 1.5;
  color: var(--mg-text);
}
.mg_wp .mg_magazine .mg_card_thumb {
  border-radius: 0.375rem;
}
.mg_wp .mg_ranking {
  --body-gap: 1.75rem;
}
.mg_wp .mg_ranking_list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mg_wp .mg_ranking_item {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mg_wp .mg_ranking_item:not(:last-child) {
  border-bottom: 1px solid var(--mg-border);
}
.mg_wp .mg_ranking_item > a {
  display: flex;
  align-items: flex-start;
  gap: 1.125rem;
  color: inherit;
}
.mg_wp .mg_ranking_num {
  flex-shrink: 0;
  font-family: var(--mg-font-mono);
  font-size: 1.25rem;
  font-weight: var(--mg-font-medium);
  line-height: normal;
  color: var(--mg-primary);
}
.mg_wp .mg_ranking_text {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  flex: 1 1 0;
  min-width: 0;
}
.mg_wp .mg_ranking_title {
  font-size: 1.125rem;
  font-weight: var(--mg-font-bold);
  line-height: 1.4;
  color: var(--mg-text-body);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: all 0.2s;
}
.mg_wp .mg_ranking_item:not(:last-child) > a {
  padding-bottom: 0.75rem;
}
.mg_wp .mg_ranking_item > a:hover .mg_ranking_title {
  color: var(--mg-primary);
}
.mg_wp .mg_feature {
  --body-gap: 1.25rem;
}
.mg_wp .mg_feature .mg_module_body {
  flex: 1 1 auto;
  display: flex;
}
.mg_wp .mg_feature_box {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  width: 100%;
  min-height: 20.75rem;
  padding: 0.25rem 0.25rem 0.25rem 2.5rem;
  border-radius: var(--mg-radius);
  background-color: var(--mg-bg-inverse);
  color: var(--mg-text-inverse);
  overflow: hidden;
}
.mg_wp .mg_feature_content {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  padding: 2.5rem 0;
}
.mg_wp .mg_feature_cate {
  font-size: 0.875rem;
  font-weight: var(--mg-font-semibold);
  line-height: 1.5;
  color: var(--mg-primary);
}
.mg_wp .mg_feature_title {
  font-size: 2rem;
  line-height: 2.5rem;
  font-weight: var(--mg-font-bold);
  color: var(--mg-text-inverse);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mg_wp .mg_feature_desc {
  font-size: 1rem;
  font-weight: var(--mg-font-medium);
  line-height: 1.5;
  color: var(--mg-text-inverse);
  opacity: 0.6;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mg_wp .mg_feature_img {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  align-self: stretch;
  border-radius: var(--mg-radius);
  overflow: hidden;
}
.mg_wp .mg_feature_img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 35% center;
  transition: transform 0.4s ease;
}
.mg_wp .mg_latest {
  --body-gap: 1.5rem;
}
.mg_wp .mg_latest .mg_cards {
  --cols: 4;
  --cards-gap: 1.5rem;
}
.mg_wp .mg_latest .mg_card {
  gap: 0.875rem;
}
.mg_wp .mg_latest .mg_card_thumb {
  height: 11.875rem;
}
.mg_wp .mg_latest .mg_card_body {
  gap: 0.375rem;
}
.mg_wp .mg_latest .mg_card_title {
  font-size: 1.25rem;
  color: var(--mg-text-body);
}
.mg_wp .mg_list_toolbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  row-gap: 0.5rem;
  margin-bottom: 2rem;
}
.mg_wp .mg_list_count {
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--mg-text-desc);
  font-weight: var(--mg-font-bold);
  white-space: nowrap;
}
.mg_wp .mg_list_count i {
  font-size: 1.25rem;
  color: var(--mg-text-body);
  vertical-align: -0.3rem;
  margin-right: 0.5rem;
}
.mg_wp .mg_list_count b {
  font-weight: var(--mg-font-bold);
  color: var(--mg-primary);
}
.mg_wp .mg_list .mg_cards {
  --cols: 3;
  --cards-gap: 2rem;
}
.mg_wp .mg_list .mg_card_thumb {
  height: 15rem;
  border: 1px solid var(--mg-border);
  border-radius: 0.375rem;
}
.mg_wp .mg_list .mg_card_thumb .mg_badge {
  top: 0.6875rem;
  left: 0.6875rem;
}
.mg_wp .mg_list .mg_meta {
  font-size: 0.875rem;
}
.mg_wp .mg_meta .views i {
  font-size: 0.875rem;
  color: inherit;
  font-variation-settings:
    'FILL' 0,
    'wght' 400,
    'GRAD' 0,
    'opsz' 20;
}
.mg_wp .mg_pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.5rem;
  margin-top: 4rem;
}
.mg_wp .mg_pagination_group {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.mg_wp .mg_page_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  border: 2px solid var(--mg-bg-muted);
  background-color: var(--mg-bg);
  color: var(--mg-text-desc);
  font-size: 1rem;
  font-weight: var(--mg-font-bold);
  line-height: 1;
  transition:
    background-color 0.2s,
    border-color 0.2s,
    color 0.2s;
}
.mg_wp .mg_page_btn i {
  font-size: 1.5rem;
  color: var(--mg-text);
}
.mg_wp .mg_page_btn:hover {
  border-color: var(--mg-border-strong);
}
.mg_wp .mg_page_btn.active,
.mg_wp .mg_page_btn[aria-current='page'] {
  background-color: var(--mg-primary);
  border-color: var(--mg-primary);
  color: var(--mg-text-on-image);
}
.mg_wp .mg_page_btn:disabled {
  opacity: 0.4;
  cursor: default;
}
.mg_wp .mg_page_btn:disabled:hover {
  border-color: var(--mg-bg-muted);
}
@media (max-width: 1440px) {
  .mg_wp .mg_intro_title {
    font-size: 3.25rem;
    line-height: 1.2;
  }
  .mg_wp .mg_intro_desc {
    height: auto;
    padding: 0.25rem 0 0.25rem 1.25rem;
  }
}
@media (max-width: 1280px) {
  .mg_wp .mg_mustread .mg_cards,
  .mg_wp .mg_list .mg_cards {
    --cols: 2;
  }
  .mg_wp .mg_latest .mg_cards {
    --cols: 3;
  }
}
@media (max-width: 1024px) {
  :root {
    --mg-grid-gap: 1.5rem;
  }
  .mg_wp .mg_inner,
  .mg_wp .mg_inner.gap_lg {
    --gap: var(--mg-grid-gap);
    grid-template-columns: minmax(0, 1fr);
  }
  .mg_wp .mg_module {
    grid-column: 1 / -1;
  }
  .mg_wp .mg_intro_block {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  .mg_wp .mg_intro_lead {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.25rem;
  }
  .mg_wp .mg_intro_desc br {
    display: none;
  }
  .mg_wp .mg_intro_desc b {
    font-weight: var(--mg-font-medium);
  }
  .mg_wp .mg_search {
    width: 14rem;
    padding-left: 0.875rem;
    padding-right: 0.875rem;
  }
  .mg_wp .mg_hero_swiper {
    height: 28rem;
  }
  .mg_wp .mg_hero_slide {
    padding: 2.5rem;
  }
  .mg_wp .mg_hero_title {
    font-size: 2.25rem;
    line-height: 1.25;
  }
  .mg_wp .mg_banner {
    flex-direction: column;
    align-items: flex-start;
    padding: 2rem;
  }
  .mg_wp .mg_banner_title {
    font-size: 1.5rem;
  }
  .mg_wp .mg_feature_box {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 0;
    padding: 0.25rem;
  }
  .mg_wp .mg_feature_content {
    padding: 1.5rem 1.25rem 1.75rem;
  }
  .mg_wp .mg_feature_img {
    flex: none;
    height: 16rem;
  }
}
@media (max-width: 640px) {
  :root {
    --mg-gutter: 1.25rem;
    --mg-grid-gap: 1.5rem;
    --mg-radius: 0.25rem;
  }
  .mg_wp .mg_inner {
    --row-gap: 2.75rem;
  }
  .mg_wp .mg_stripe {
    height: 0.31rem;
    background-color: var(--mg-primary);
  }
  .mg_wp .py_64 {
    padding-top: 2.75rem;
    padding-bottom: 2.75rem;
  }
  .mg_wp .pb_64 {
    padding-bottom: 2.75rem;
  }
  .mg_wp .pt_64 {
    padding-top: 2.75rem;
  }
  .mg_wp .mg_intro {
    padding: 0;
  }
  .mg_wp .mg_intro_block {
    position: relative;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .mg_wp .mg_intro_lead {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
  }
  .mg_wp .mg_intro_title {
    display: flex;
    align-items: center;
    height: 4rem;
    padding: 0 1.25rem;
    font-size: 1.5rem;
    line-height: 1.5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .mg_wp .mg_intro_desc {
    min-height: 0;
    height: auto;
    padding: 1.75rem 1.25rem 1.5rem;
    border-left: 0;
    font-size: 1rem;
    line-height: 1.5;
  }
  .mg_wp .mg_filter {
    padding: 0;
    border-top: 1px solid var(--mg-border);
    border-bottom: 1px solid var(--mg-border);
  }
  .mg_wp .mg_filter_inner {
    flex-direction: column;
    gap: 0;
  }
  .mg_wp .mg_tabs_swiper {
    flex: none;
    width: 100%;
    padding: 0;
  }
  .mg_wp .mg_tabs {
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
  }
  .mg_wp .mg_tabs_swiper.swiper-initialized .mg_tabs {
    padding: 0.75rem 0;
  }
  .mg_wp .mg_tab {
    padding: 0.44rem 0.75rem;
    border-color: var(--mg-border);
    font-size: 0.88rem;
    font-weight: var(--mg-font-medium);
    line-height: 1.2rem;
  }
  .mg_wp .mg_tab.active {
    border-color: var(--mg-bg-inverse);
  }
  .mg_wp .mg_search_form {
    padding: 1rem 1.25rem;
  }
  .mg_wp .mg_search {
    width: 100%;
    height: 3rem;
    gap: 0.63rem;
    padding: 0.75rem 1rem;
    border: 1px solid var(--mg-border-heavy);
  }
  .mg_wp .mg_search i {
    font-size: 1.25rem;
  }
  .mg_wp .mg_search input {
    font-size: 0.88rem;
    font-weight: var(--mg-font-normal);
  }
  .mg_wp .mg_search_clear {
    width: 1.5rem;
    height: 1.5rem;
    font-size: 1rem;
  }
  .mg_wp .mg_hero {
    padding: 0 0 2.25rem;
  }
  .mg_wp .mg_hero_swiper {
    height: 29.38rem;
    border-radius: 0;
  }
  .mg_wp .mg_hero_slide {
    padding: 1.25rem;
  }
  .mg_wp .mg_hero_slide::after {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.85) 100%);
  }
  .mg_wp .mg_hero_content {
    gap: 1.5rem;
    max-width: none;
  }
  .mg_wp .mg_badge.lg {
    padding: 0.42rem 0.75rem;
    font-size: 1rem;
  }
  .mg_wp .mg_hero_title {
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: var(--mg-font-extrabold);
  }
  .mg_wp .mg_hero_desc {
    font-size: 1rem;
  }
  .mg_wp .mg_hero_pagination {
    height: auto;
    gap: 0.38rem;
    padding-top: 0.88rem;
  }
  .mg_wp .mg_hero_pagination .swiper-pagination-bullet {
    width: 0.31rem;
    height: 0.31rem;
    background-color: var(--mg-hero-dot-mob);
    margin: 0 !important;
  }
  .mg_wp .mg_hero_pagination .swiper-pagination-bullet-active {
    width: 1.5rem;
    background-color: var(--mg-primary);
  }
  .mg_wp .mg_module_head {
    flex-wrap: wrap;
    gap: 0.75rem;
    padding-bottom: 0.56rem;
  }
  .mg_wp .mg_module_head.rule_mob {
    border-bottom: var(--mg-module-rule) solid var(--mg-border-heavy);
  }
  .mg_wp .mg_module_title {
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .mg_wp .mg_pill {
    padding: 0.63rem 1.25rem;
    font-size: 1rem;
  }
  .mg_wp .mg_nav {
    gap: 0.75rem;
  }
  .mg_wp .mg_nav_btn {
    width: 2.75rem;
    height: 2.75rem;
  }
  .mg_wp .mg_nav_btn i {
    font-size: 1.5rem;
  }
  .mg_wp .mg_badge {
    padding: 0.25rem 0.56rem;
    font-size: 0.69rem;
    line-height: normal;
  }
  .mg_wp .mg_card_thumb .mg_badge {
    top: 0.63rem;
    left: 0.63rem;
  }
  .mg_wp .mg_meta {
    font-size: 0.81rem;
  }
  .mg_wp .mg_cards,
  .mg_wp .mg_mustread .mg_cards,
  .mg_wp .mg_latest .mg_cards,
  .mg_wp .mg_list .mg_cards {
    --cols: 1;
  }
  .mg_wp .mg_list_toolbar {
    margin-bottom: 1rem;
  }
  .mg_wp .mg_list_count {
    font-size: 0.81rem;
  }
  .mg_wp .mg_list .mg_cards {
    --cards-gap: 1.5rem;
  }
  .mg_wp .mg_list .mg_card {
    gap: 1rem;
  }
  .mg_wp .mg_list .mg_card_thumb {
    height: 13.75rem;
    border: 0;
    border-radius: 0.25rem;
  }
  .mg_wp .mg_list .mg_card_thumb img {
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .mg_wp .mg_list .mg_card_body {
    gap: 1rem;
  }
  .mg_wp .mg_list .mg_card_title {
    font-size: 1.25rem;
  }
  .mg_wp .mg_list .mg_card_desc {
    font-size: 1rem;
  }
  .mg_wp .mg_list .mg_meta {
    font-size: 0.81rem;
  }
  .mg_wp .mg_pagination {
    gap: 1rem;
    margin-top: 2.5rem;
  }
  .mg_wp .mg_pagination_group {
    gap: 0.38rem;
  }
  .mg_wp .mg_page_btn {
    width: 2.25rem;
    height: 2.25rem;
    font-size: 0.75rem;
  }
  .mg_wp .mg_page_btn i {
    font-size: 1rem;
  }
  .mg_wp .mg_mustread {
    --body-gap: 1.5rem;
  }
  .mg_wp .mg_mustread .mg_module_head {
    display: contents;
  }
  .mg_wp .mg_mustread .mg_module_title {
    order: 0;
    width: 100%;
  }
  .mg_wp .mg_mustread .mg_module_actions {
    order: 1;
    justify-content: flex-start;
    gap: 1.5rem;
    margin-top: 1.875rem;
  }
  .mg_wp .mg_mustread .mg_module_body {
    order: 2;
    margin-top: 1rem;
  }
  .mg_wp .mg_mustread .mg_card {
    gap: 1rem;
  }
  .mg_wp .mg_mustread .mg_card_thumb {
    height: 13.75rem;
    border: 0;
  }
  .mg_wp .mg_mustread .mg_card_thumb img {
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .mg_wp .mg_mustread .mg_card_body {
    gap: 1rem;
  }
  .mg_wp .mg_mustread .mg_card_title {
    font-size: 1.25rem;
  }
  .mg_wp .mg_mustread .mg_card_desc {
    font-size: 1rem;
  }
  .mg_wp .mg_mustread .mg_tags {
    display: none;
  }
  .mg_wp .mg_magazine .mg_module_titles {
    order: 0;
    width: 100%;
  }
  .mg_wp .mg_magazine .mg_module_title {
    font-size: 2rem;
    line-height: 1.25;
  }
  .mg_wp .mg_module_sub {
    font-size: 1rem;
  }
  .mg_wp .mg_banner {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 1rem;
    height: 18.69rem;
    padding: 1.5rem;
    background: var(--mg-banner-bg-mob) url('../img/banner_bg_mob.png') no-repeat center bottom / cover;
  }
  .mg_wp .mg_banner_text {
    gap: 1rem;
  }
  .mg_wp .mg_banner_label {
    font-size: 0.75rem;
    font-weight: var(--mg-font-extrabold);
    line-height: normal;
  }
  .mg_wp .mg_banner_title {
    font-size: 1.25rem;
  }
  .mg_wp .mg_ranking {
    --body-gap: 1.13rem;
  }
  .mg_wp .mg_ranking_list {
    gap: 1.125rem;
  }
  .mg_wp .mg_ranking_item {
    gap: 0.63rem;
  }
  .mg_wp .mg_ranking_item > a {
    gap: 0.88rem;
  }
  .mg_wp .mg_ranking_item:not(:last-child) > a {
    padding-bottom: 0.63rem;
  }
  .mg_wp .mg_ranking_num {
    width: 1.75rem;
    font-size: 1.13rem;
  }
  .mg_wp .mg_ranking_text {
    gap: 0.31rem;
  }
  .mg_wp .mg_ranking_title {
    font-size: 1.13rem;
    line-height: 1.5;
  }
  .mg_wp .mg_ranking .mg_meta {
    font-size: 0.75rem;
  }
  .mg_wp .mg_feature {
    --body-gap: 1.13rem;
  }
  .mg_wp .mg_feature_box {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 0;
    min-height: 0;
    padding: 0;
  }
  .mg_wp .mg_feature_img {
    flex: none;
    height: 10rem;
    border-radius: 0;
  }
  .mg_wp .mg_feature_img img {
    object-position: center;
  }
  .mg_wp .mg_feature_content {
    gap: 0.75rem;
    padding: 1.5rem;
  }
  .mg_wp .mg_feature_cate {
    font-size: 0.75rem;
    font-weight: var(--mg-font-bold);
    line-height: normal;
  }
  .mg_wp .mg_feature_title {
    font-size: 1.25rem;
    line-height: 1.5;
  }
  .mg_wp .mg_feature .mg_meta {
    font-size: 0.75rem;
    color: var(--mg-text-inverse);
    opacity: 0.6;
  }
  .mg_wp .mg_feature .mg_meta .date,
  .mg_wp .mg_feature .mg_meta .views span {
    opacity: 1;
  }
  .mg_wp .mg_feature_desc {
    font-size: 0.75rem;
    line-height: 1.55;
    opacity: 0.5;
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }
  .mg_wp .mg_latest {
    --body-gap: 1.5rem;
  }
  .mg_wp .mg_latest .mg_cards {
    --cards-gap: 1.5rem;
  }
  .mg_wp .mg_latest .mg_more_link {
    display: none;
  }
  .mg_wp .mg_latest .mg_card {
    gap: 0.69rem;
  }
  .mg_wp .mg_latest .mg_card_thumb {
    height: 13.13rem;
  }
  .mg_wp .mg_latest .mg_card_body {
    gap: 0.69rem;
  }
  .mg_wp .mg_latest .mg_meta {
    font-size: 0.75rem;
  }
  .mg_wp .mg_latest .mg_card_title {
    font-size: 1.25rem;
    line-height: 1.69rem;
    font-weight: var(--mg-font-extrabold);
  }
}

/* ==================== */
/* [WP fix] Avada 컨테이너 안에서의 보정 */
/* ==================== */
.mg_wp .mg_filter {
  z-index: 20;
} /* Avada 스티키 헤더(z-index 높음) 아래에 오도록 */
.mg_wp .mg_hero_pagination {
  justify-content: center;
}
.mg_wp .mg_tab,
.mg_wp .mg_pill,
.mg_wp .mg_badge,
.mg_wp .mg_tag,
.mg_wp .mg_more_link {
  transition-property: background-color, color, border-color;
}

/* ==================== */
/* [K-Farm board fix]   */
/* ==================== */
.mg_wp.mg_full_bleed {
  position: relative;
  width: 100vw;
  max-width: none;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

@media (max-width: 640px) {
  .mg_wp.mg_board_filter,
  .mg_wp.mg_board_list {
    font-size: 16px;
    line-height: 1.5;
  }
  .mg_wp.mg_board_filter .mg_stripe {
    height: 5px;
  }
  .mg_wp.mg_board_filter .mg_tabs {
    gap: 8px;
    padding: 12px 20px;
  }
  .mg_wp.mg_board_filter .mg_tabs_swiper.swiper-initialized .mg_tabs {
    padding: 12px 0;
  }
  .mg_wp.mg_board_filter .mg_tab {
    padding: 7px 12px;
    font-size: 14px;
    line-height: 19px;
  }
  .mg_wp.mg_board_filter .mg_search_form {
    padding: 16px 20px;
  }
  .mg_wp.mg_board_filter .mg_search {
    height: 48px;
    gap: 10px;
    padding: 12px 16px;
  }
  .mg_wp.mg_board_filter .mg_search i {
    font-size: 20px;
  }
  .mg_wp.mg_board_filter .mg_search input {
    font-size: 14px;
  }
  .mg_wp.mg_board_filter .mg_search_clear {
    width: 24px;
    height: 24px;
    font-size: 16px;
  }
  .mg_wp.mg_board_list {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
  .mg_wp.mg_board_list .mg_section {
    padding-right: 0;
    padding-left: 0;
  }
  .mg_wp.mg_board_list .py_64 {
    padding-top: 44px;
    padding-bottom: 44px;
  }
  .mg_wp.mg_board_list .mg_list_toolbar {
    margin-bottom: 16px;
  }
  .mg_wp.mg_board_list .mg_list_count,
  .mg_wp.mg_board_list .mg_list .mg_meta {
    font-size: 13px;
  }
  .mg_wp.mg_board_list .mg_list .mg_cards {
    gap: 24px;
  }
  .mg_wp.mg_board_list .mg_list .mg_card {
    gap: 16px;
  }
  .mg_wp.mg_board_list .mg_list .mg_card_thumb {
    height: 220px;
  }
  .mg_wp.mg_board_list .mg_list .mg_card_body {
    gap: 16px;
  }
  .mg_wp.mg_board_list .mg_list .mg_card_title {
    font-size: 20px;
  }
  .mg_wp.mg_board_list .mg_list .mg_card_desc {
    font-size: 16px;
  }
  .mg_wp.mg_board_list .mg_pagination {
    gap: 16px;
    margin-top: 40px;
  }
  .mg_wp.mg_board_list .mg_pagination_group {
    gap: 6px;
  }
  .mg_wp.mg_board_list .mg_page_btn {
    width: 36px;
    height: 36px;
    font-size: 12px;
  }
  .mg_wp.mg_board_list .mg_page_btn i {
    font-size: 16px;
  }
}
