/*
 Theme Name: Flatsome Child – GỖ HÓA THẠCH Magazine
 Theme URI: https://gohoathach.info
 Description: Flatsome child theme cho trang tạp chí khoa học địa chất gohoathach.info
 Brand identity: Mộc Ngọc luxury natural art
 Author: Mộc Ngọc
 Author URI: https://mocngoc.com
 Template: flatsome
 Version: 1.1.0
 Text Domain: gohoathach
*/

:root {
 --mn-bg: #fbf9f4;
 --mn-bg-soft: #f5f3ee;
 --mn-surface: #ffffff;
 --mn-surface-2: #f0eee9;
 --mn-border: #d2c4bb;
 --mn-border-soft: #e6ddd4;
 --mn-text: #1b1c19;
 --mn-text-soft: #4e453e;
 --mn-text-mute: #80756d;
 --mn-primary: #322214;
 --mn-primary-soft: #705a49;
 --mn-accent: #dec1ac;
 --mn-inverse: #30312e;
 --mn-inverse-text: #f2f1ec;
 --font-display: 'Newsreader', Georgia, serif;
 --font-body: 'Be Vietnam Pro', system-ui, -apple-system, sans-serif;
 --font-label: 'Be Vietnam Pro', system-ui, -apple-system, sans-serif;
 --max-width: 1280px;
 --content-width: 760px;
 --sidebar-width: 300px;
 --radius-sm: 4px;
 --radius: 6px;
 --radius-lg: 10px;
 --shadow-soft: 0 18px 40px rgba(27, 28, 25, 0.04);
 --transition: 300ms ease;
}

*, *::before, *::after { box-sizing: border-box; }
html { font-size: 16px; scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
 margin: 0;
 font-family: var(--font-body);
 font-size: 16px;
 line-height: 1.75;
 color: var(--mn-text);
 background: var(--mn-bg);
 -webkit-font-smoothing: antialiased;
 text-rendering: optimizeLegibility;
}
body,
button,
input,
select,
textarea,
.nav > li > a,
.mobile-sidebar-levels-2 .nav > li > ul > li > a {
 font-family: var(--font-body) !important;
}
h1, h2, h3, h4, h5, h6,
.heading-font,
.banner h1,
.banner h2,
.off-canvas-center .nav-sidebar.nav-vertical > li > a {
 font-family: var(--font-display) !important;
}
img { max-width: 100%; height: auto; display: block; }
a {
 color: var(--mn-primary-soft);
 text-decoration: none;
 transition: color var(--transition), opacity var(--transition), transform var(--transition);
}
a:hover { color: var(--mn-primary); }
p { margin: 0 0 1rem; }
h1, h2, h3, h4, h5, h6 {
 margin: 0;
 font-family: var(--font-display);
 font-weight: 500;
 line-height: 1.12;
 letter-spacing: -0.02em;
 color: var(--mn-primary);
}

body .mfp-content,
body .off-canvas,
body .off-canvas-center,
body .off-canvas-left,
body .off-canvas-right { font-family: var(--font-body); }

.header-wrapper,
.nav-bar-wrapper,
#wide-nav,
#masthead,
.header { display: none !important; }

.container-width,
.full-width .ubermenu-nav,
.row.row-collapse,
.row.row-small,
.row.row-large,
.row { max-width: 100%; }

.site-main,
.single-post-wrap,
.archive-shell,
.footer-top,
.footer-bottom-inner,
.mn-topbar .topbar-inner,
.mn-logo-bar .logo-inner,
.mn-nav .nav-inner {
 max-width: var(--max-width);
 margin: 0 auto;
 padding-left: clamp(20px, 3vw, 64px);
 padding-right: clamp(20px, 3vw, 64px);
}

.site-main,
.archive-shell,
.single-post-wrap { padding-top: 48px; padding-bottom: 120px; }
.archive-breadcrumb-wrap {
 max-width: var(--max-width);
 margin: 0 auto;
 padding: 16px clamp(20px, 3vw, 64px) 0;
}
.site-header {
 position: sticky;
 top: 0;
 z-index: 999;
 background: rgba(255,255,255,0.92);
 backdrop-filter: blur(12px);
 border-bottom: 1px solid rgba(210,196,187,0.8);
 transition: transform var(--transition), box-shadow var(--transition), background var(--transition);
}
.site-header.nav-hidden { transform: translateY(-100%); }
.site-header.hide-logo .mn-logo-bar { display: none; }

.mn-topbar {
 background: transparent;
 color: var(--mn-text-mute);
 border-bottom: 1px solid rgba(210,196,187,0.65);
}
.mn-topbar .topbar-inner {
 min-height: 42px;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 16px;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: 0.12em;
 text-transform: uppercase;
}
.mn-topbar .topbar-date { color: var(--mn-text-mute); }
.mn-topbar .topbar-social { display: flex; gap: 18px; }
.mn-topbar .topbar-social a { color: var(--mn-text-mute); }
.mn-topbar .topbar-social a:hover { color: var(--mn-primary); }

.mn-logo-bar {
 background: rgba(251,249,244,0.96);
 border-bottom: 1px solid rgba(210,196,187,0.7);
}
.mn-logo-bar .logo-inner {
 min-height: 88px;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 24px;
}
.mn-logo-bar .logo-inner > a { color: inherit; }
.mn-logo-text {
 font-family: var(--font-display);
 font-size: clamp(28px, 4vw, 42px);
 font-weight: 600;
 font-style: italic;
 line-height: 1;
 color: var(--mn-primary);
}
.mn-logo-text span { color: var(--mn-primary-soft); }
.mn-logo-tagline {
 margin-top: 8px;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 500;
 letter-spacing: 0.08em;
 text-transform: uppercase;
 color: var(--mn-text-mute);
}
.mn-logo-search { min-width: 280px; max-width: 340px; width: 100%; }

.searchform,
.search-form { width: 100%; }
.searchform .flex-row,
.search-form {
 display: flex;
 align-items: center;
 gap: 0;
 background: transparent;
 border-bottom: 1px solid rgba(128,117,109,0.65);
 border-radius: 0;
 overflow: visible;
 box-shadow: none;
}
.searchform .search-field,
.search-form .search-field {
 border: 0;
 background: transparent;
 padding: 12px 0;
 font-family: var(--font-body);
 font-size: 14px;
 color: var(--mn-text);
 box-shadow: none;
}
.searchform .search-field::placeholder,
.search-form .search-field::placeholder { color: var(--mn-text-mute); }
.searchform .search-field:focus,
.search-form .search-field:focus { outline: none; }
.searchform .submit-button,
.search-form .search-submit {
 margin: 0 !important;
 padding: 0 0 0 14px;
 min-width: 0;
 border: 0;
 background: transparent;
 color: var(--mn-primary-soft);
 border-radius: 0;
 box-shadow: none;
}

.mn-nav {
 background: rgba(255,255,255,0.96);
 border-bottom: 1px solid rgba(210,196,187,0.7);
 box-shadow: none;
}
.mn-nav .nav-inner { display: flex; align-items: center; min-height: 60px; }
.mn-nav ul { list-style: none; display: flex; align-items: center; gap: 28px; padding: 0; margin: 0; flex-wrap: wrap; }
.mn-nav ul li { position: relative; }
.mn-nav ul li a {
 position: relative;
 display: inline-flex;
 align-items: center;
 min-height: 40px;
 padding: 0 0 4px;
 border-radius: 0;
 font-family: var(--font-display);
 font-size: 15px;
 font-weight: 500;
 letter-spacing: 0.04em;
 text-transform: uppercase;
 color: var(--mn-text-mute);
}
.mn-nav ul li a:hover,
.mn-nav ul li.current-menu-item > a {
 background: transparent;
 color: var(--mn-primary);
}
.mn-nav ul li.current-menu-item > a::after,
.mn-nav ul li a:hover::after {
 content: '';
 position: absolute;
 left: 0;
 right: 0;
 bottom: 0;
 height: 1px;
 background: currentColor;
}

.site-main-content { display: block; }
.gh-homepage { display: flex; flex-direction: column; gap: 104px; }
.card-thumb-fallback,
.hero-fallback-texture,
.feature-fallback {
 display: flex;
 align-items: end;
 justify-content: flex-start;
 min-height: 100%;
 width: 100%;
 padding: 24px;
 background:
 linear-gradient(180deg, rgba(27,28,25,.04), rgba(27,28,25,.32)),
 radial-gradient(circle at top left, rgba(222,193,172,.9), transparent 28%),
 linear-gradient(135deg, #e9e3da 0%, #cdbba8 100%);
 color: var(--mn-primary);
}
.card-thumb-fallback a,
.card-thumb-fallback span,
.hero-fallback-texture span,
.feature-fallback span {
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .18em;
 text-transform: uppercase;
 color: inherit;
}
.hero-fallback-texture { align-items: flex-end; }
.hero-fallback-texture span { color: #f2f1ec; }
.feature-fallback { aspect-ratio: 4/3; }
.section-block {
 background: transparent;
 border: 0;
 border-top: 1px solid var(--mn-border-soft);
 border-radius: 0;
 padding: 0;
 box-shadow: none;
}
.section-header {
 display: flex;
 align-items: end;
 justify-content: space-between;
 gap: 20px;
 padding-top: 18px;
 margin-bottom: 42px;
}
.section-kicker,
.archive-card-label,
.archive-meta-kicker,
.archive-partner-kicker,
.hero-cat-badge,
.card-cat,
.sc-cat,
.mini-story-cat,
.article-header .art-cat {
 display: inline-flex;
 align-items: center;
 gap: 6px;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--mn-text-mute);
}
.section-kicker { margin-bottom: 12px; }
.section-title { font-size: clamp(36px, 3.5vw, 48px); }
.section-title.light { color: var(--mn-inverse-text); }
.section-note {
 max-width: 340px;
 font-size: 15px;
 line-height: 1.7;
 color: var(--mn-text-soft);
 text-align: right;
}
.panel-heading-wrap { margin-bottom: 22px; }
.panel-heading { font-size: 28px; }

.home-intro {
 display: grid;
 grid-template-columns: 1.15fr .85fr;
 gap: 40px;
 align-items: end;
}
.home-intro .section-kicker,
.section-header .section-kicker,
.archive-header .section-kicker { margin-bottom: 16px; }
.home-intro-title {
 font-size: clamp(46px, 6vw, 72px);
 line-height: 1.02;
 max-width: 860px;
 text-wrap: balance;
}
.home-intro-text {
 font-size: 20px;
 line-height: 1.8;
 color: var(--mn-text-soft);
 max-width: 520px;
 justify-self: end;
}

.hero-editorial {
 display: grid;
 grid-template-columns: minmax(0, 1.7fr) minmax(320px, .8fr);
 gap: 32px;
 align-items: start;
}
.hero-primary,
.hero-secondary-panel,
.sidebar-panel,
.insight-band,
.archive-meta-panel,
.archive-partner-strip,
.archive-card,
.archive-lead-card,
.mn-newsletter {
 border: 1px solid var(--mn-border-soft);
 box-shadow: none;
}
.hero-primary {
 position: relative;
 min-height: 700px;
 overflow: hidden;
 border-radius: 0;
 background: #121212;
}
.hero-primary-media,
.hero-primary-media a,
.hero-primary-media img {
 width: 100%;
 height: 100%;
}
.hero-primary-media img { object-fit: cover; }
.hero-primary-overlay {
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg, rgba(17,17,17,.05) 0%, rgba(17,17,17,.2) 40%, rgba(17,17,17,.72) 100%);
}
.hero-fallback {
 width: 100%;
 height: 100%;
 background: linear-gradient(135deg, #6b6058, #1f1e1c);
}
.hero-primary-content {
 position: absolute;
 left: 0;
 right: 0;
 bottom: 0;
 z-index: 2;
 padding: clamp(28px, 4vw, 56px);
 color: #fff;
}
.hero-primary-content h2 {
 font-size: clamp(42px, 5vw, 72px);
 line-height: 1.02;
 margin-bottom: 18px;
 color: #fff;
 max-width: 900px;
}
.hero-primary-content h2 a { color: inherit; }
.hero-excerpt {
 max-width: 740px;
 font-size: 20px;
 line-height: 1.8;
 color: rgba(255,255,255,.9);
 margin-bottom: 20px;
}
.hero-meta,
.card-meta,
.mini-story-meta,
.lp-date,
.feat-list-date,
.footer-bottom-inner,
.gh-breadcrumbs {
 display: flex;
 flex-wrap: wrap;
 gap: 14px;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .1em;
 color: var(--mn-text-mute);
 text-transform: uppercase;
}
.hero-meta { color: rgba(242,241,236,.75); margin-bottom: 22px; }
.hero-cat-badge,
.card-cat,
.sc-cat,
.mini-story-cat,
.article-header .art-cat {
 padding: 0;
 border-radius: 0;
 background: transparent;
 color: inherit;
}
.btn-hero,
.btn-partner,
.mn-backlink-box .bl-btn,
.mn-newsletter .nl-form button,
.archive-partner-link {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 min-height: 48px;
 padding: 0 22px;
 border: 1px solid var(--mn-primary);
 border-radius: var(--radius-sm);
 background: var(--mn-primary);
 color: #fff;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .16em;
 text-transform: uppercase;
}
.btn-hero:hover,
.btn-partner:hover,
.mn-backlink-box .bl-btn:hover,
.mn-newsletter .nl-form button:hover,
.archive-partner-link:hover {
 transform: translateY(-1px);
 color: #fff;
 background: var(--mn-primary-soft);
 border-color: var(--mn-primary-soft);
}

.hero-secondary-panel,
.sidebar-panel,
.archive-meta-panel,
.archive-partner-strip,
.archive-lead-card,
.archive-card,
.mn-newsletter {
 border-radius: 0;
 background: var(--mn-surface);
 padding: 28px;
}
.sidebar-dark-panel,
.insight-band {
 background: var(--mn-inverse);
 color: var(--mn-inverse-text);
}
.sidebar-dark-panel h3,
.sidebar-dark-panel .section-kicker,
.insight-band .section-kicker,
.insight-band .mini-story-meta,
.insight-band h4 a,
.insight-band p,
.insight-band .insight-feature-link a { color: var(--mn-inverse-text); }
.sidebar-soft-panel { background: var(--mn-bg-soft); }
.sidebar-bullet-list {
 margin: 18px 0 22px;
 padding-left: 18px;
 color: inherit;
}
.sidebar-bullet-list li { margin-bottom: 8px; }

.mini-story-card {
 display: grid;
 grid-template-columns: 1fr 92px;
 gap: 14px;
 align-items: center;
 padding: 18px 0;
 border-top: 1px solid var(--mn-border-soft);
}
.mini-story-card:first-of-type { border-top: 0; padding-top: 0; }
.mini-story-card.compact { grid-template-columns: 1fr; gap: 0; padding: 14px 0; }
.mini-story-card.bordered { border-top-color: var(--mn-border); }
.mini-story-content h4,
.story-list-card h4,
.insight-item h4 { font-size: 24px; line-height: 1.15; }
.mini-story-thumb {
 overflow: hidden;
 background: var(--mn-bg-soft);
 aspect-ratio: 1/1;
}
.mini-story-thumb img { width: 100%; height: 100%; object-fit: cover; }
.mini-story-cat { margin-bottom: 10px; }

.editor-picks-grid,
.breaking-grid,
.related-grid,
.archive-grid {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 24px;
}
.post-card,
.archive-card {
 height: 100%;
 border-radius: 0;
 background: transparent;
 border: 0;
 overflow: hidden;
 box-shadow: none;
 transition: transform var(--transition), opacity var(--transition);
}
.post-card:hover,
.archive-card:hover { transform: translateY(-4px); }
.card-thumb,
.archive-card-media,
.archive-lead-media {
 overflow: hidden;
 background: var(--mn-bg-soft);
}
.card-thumb img,
.archive-card-media img,
.archive-lead-media img {
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform .6s ease;
}
.post-card:hover .card-thumb img,
.archive-card:hover .archive-card-media img,
.strip-card:hover .sc-thumb img,
.feature-story-card:hover img,
.latest-feed-item:hover img,
.archive-lead-card:hover .archive-lead-media img { transform: scale(1.03); }
.card-thumb-lg,
.archive-card-media,
.archive-lead-media { aspect-ratio: 4/3; }
.archive-lead-media.square { aspect-ratio: 1/1; }
.post-card .card-body,
.archive-card-body,
.archive-lead-body { padding: 18px 0 0; }
.card-title,
.archive-card h3 { font-size: 32px; line-height: 1.08; margin: 12px 0; }
.archive-card h3 { font-size: 28px; }
.card-title a,
.archive-card h3 a,
.archive-lead-body h2 a,
.archive-lead-body h3 a { color: var(--mn-primary); }
.card-excerpt,
.archive-card p,
.archive-lead-body p { font-size: 16px; line-height: 1.8; color: var(--mn-text-soft); margin-bottom: 16px; }
.reading-time::before { content: '•'; margin-right: 6px; }

.home-columns {
 display: grid;
 grid-template-columns: minmax(0, 1.45fr) minmax(320px, .72fr);
 gap: 36px;
 align-items: start;
}
.feature-story-card {
 display: grid;
 grid-template-columns: 1.1fr .9fr;
 gap: 28px;
 align-items: stretch;
 margin-bottom: 26px;
}
.feature-story-media,
.latest-feed-thumb,
.sc-thumb { overflow: hidden; background: var(--mn-bg-soft); }
.feature-story-media img,
.latest-feed-thumb img,
.sc-thumb img { width: 100%; height: 100%; object-fit: cover; }
.feature-story-body h3 { font-size: clamp(34px, 4vw, 50px); margin: 14px 0; }
.feature-story-body p { font-size: 17px; color: var(--mn-text-soft); line-height: 1.8; }
.story-list-grid {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 18px 22px;
 padding-top: 22px;
 border-top: 1px solid var(--mn-border-soft);
}
.story-list-card {
 padding-top: 4px;
 border-top: 0;
}
.latest-feed {
 display: flex;
 flex-direction: column;
 gap: 26px;
}
.latest-feed-item {
 display: grid;
 grid-template-columns: 300px 1fr;
 gap: 24px;
 align-items: start;
 padding-bottom: 26px;
 border-bottom: 1px solid var(--mn-border-soft);
}
.latest-feed-item:last-child { border-bottom: 0; padding-bottom: 0; }
.latest-feed-thumb { aspect-ratio: 4/3; }
.latest-feed-body h3 { font-size: 34px; margin: 12px 0; }
.latest-feed-body p { font-size: 16px; color: var(--mn-text-soft); }

.strip-grid {
 display: grid;
 grid-template-columns: repeat(4, minmax(0, 1fr));
 gap: 24px;
}
.strip-card-modern { display: flex; flex-direction: column; }
.sc-thumb { aspect-ratio: 4/3; margin-bottom: 14px; }
.strip-card-body { padding-top: 4px; }
.sc-title { font-family: var(--font-display); font-size: 28px; line-height: 1.15; color: var(--mn-primary); margin: 8px 0 10px; }

.insight-band {
 display: grid;
 grid-template-columns: 1fr .95fr;
 gap: 28px;
 padding: 40px;
}
.insight-main p { max-width: 620px; font-size: 18px; line-height: 1.85; margin: 16px 0 28px; }
.insight-feature-link a {
 font-family: var(--font-display);
 font-size: 34px;
 line-height: 1.15;
}
.insight-list { display: flex; flex-direction: column; }
.insight-item {
 padding: 18px 0;
 border-top: 1px solid rgba(242,241,236,.16);
}
.insight-item:first-child { padding-top: 0; border-top: 0; }

.mn-newsletter {
 display: grid;
 gap: 18px;
 max-width: 860px;
 margin: 0 auto;
 text-align: center;
 background: var(--mn-bg-soft);
}
.mn-newsletter h2 { font-size: clamp(36px, 4vw, 54px); }
.mn-newsletter p,
.mn-newsletter .nl-count { color: var(--mn-text-soft); }
.nl-eyebrow {
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .18em;
 text-transform: uppercase;
 color: var(--mn-text-mute);
}
.mn-newsletter .nl-form {
 display: grid;
 grid-template-columns: 1fr auto;
 gap: 10px;
 max-width: 560px;
 margin: 8px auto 0;
}
.mn-newsletter .nl-form input {
 min-height: 48px;
 border: 1px solid var(--mn-border);
 border-radius: var(--radius-sm);
 padding: 0 16px;
 font: inherit;
 background: #fff;
}

.archive-editorial-shell { display: flex; flex-direction: column; gap: 72px; }
.archive-header {
 display: grid;
 grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr);
 gap: 42px;
 align-items: end;
}
.archive-title {
 font-size: clamp(48px, 6vw, 72px);
 line-height: 1;
 margin-bottom: 18px;
}
.archive-description,
.archive-meta-panel p { font-size: 19px; line-height: 1.85; color: var(--mn-text-soft); }
.archive-meta-panel { align-self: stretch; display: flex; flex-direction: column; justify-content: end; }
.archive-subcats { list-style: none; padding: 0; margin: 10px 0 0; }
.archive-subcats li { margin-bottom: 8px; }
.archive-subcats a { color: var(--mn-text-soft); }
.archive-subcats a:hover { color: var(--mn-primary); }
.archive-lead-grid {
 display: grid;
 grid-template-columns: minmax(0, 1.5fr) minmax(280px, .75fr);
 gap: 28px;
 align-items: start;
}
.archive-lead-card-main .archive-lead-body h2 { font-size: clamp(40px, 4vw, 56px); margin: 14px 0 18px; }
.archive-lead-card-side .archive-lead-body h3 { font-size: 32px; margin: 12px 0 14px; }
.archive-partner-strip {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 24px;
 background: var(--mn-bg-soft);
}
.archive-partner-strip h3 { font-size: 32px; }
.archive-pagination { padding-top: 14px; border-top: 1px solid var(--mn-border-soft); }
.archive-pagination-inner .page-numbers {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 min-width: 40px;
 min-height: 40px;
 margin-right: 8px;
 border: 1px solid transparent;
 color: var(--mn-text-mute);
}
.archive-pagination-inner .page-numbers.current,
.archive-pagination-inner .page-numbers:hover {
 border-color: var(--mn-primary);
 color: var(--mn-primary);
}

.single-layout {
 display: grid;
 grid-template-columns: minmax(0, var(--content-width)) minmax(260px, var(--sidebar-width));
 gap: 56px;
 align-items: start;
}
.single-article { min-width: 0; }
.article-header {
 text-align: center;
 margin: 0 auto 46px;
 max-width: 900px;
}
.article-header h1 {
 font-size: clamp(52px, 6vw, 74px);
 line-height: 1.02;
 margin: 16px 0 22px;
}
.art-lead {
 font-size: 22px;
 line-height: 1.85;
 color: var(--mn-text-soft);
 max-width: 820px;
 margin: 0 auto 24px;
}
.article-meta {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 justify-content: center;
 gap: 12px 18px;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .1em;
 text-transform: uppercase;
 color: var(--mn-text-mute);
}
.meta-author {
 display: inline-flex;
 align-items: center;
 gap: 10px;
}
.meta-author img { border-radius: 999px; }
.share-buttons { display: inline-flex; gap: 8px; }
.share-btn {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 min-height: 38px;
 padding: 0 14px;
 border: 1px solid var(--mn-border);
 color: var(--mn-text-soft);
 background: transparent;
 font: inherit;
 text-transform: uppercase;
 letter-spacing: .08em;
 cursor: pointer;
}
.share-btn:hover { color: var(--mn-primary); border-color: var(--mn-primary); }
.article-featured-img { margin: 0 0 44px; }
.article-featured-img img { width: 100%; aspect-ratio: 21/9; object-fit: cover; }
.article-featured-img figcaption {
 margin-top: 12px;
 font-size: 14px;
 line-height: 1.7;
 font-style: italic;
 color: var(--mn-text-mute);
}
.entry-content {
 font-size: 20px;
 line-height: 1.9;
 color: var(--mn-text-soft);
}
.entry-content > * { max-width: 100%; }
.entry-content p,
.entry-content ul,
.entry-content ol,
.entry-content blockquote,
.entry-content figure { margin-bottom: 28px; }
.entry-content h2,
.entry-content h3,
.entry-content h4 {
 color: var(--mn-primary);
 margin: 54px 0 18px;
}
.entry-content h2 { font-size: clamp(34px, 4vw, 48px); }
.entry-content h3 { font-size: 30px; }
.entry-content h4 { font-size: 24px; }
.entry-content blockquote {
 margin: 56px 0;
 padding: 34px 20px;
 border-top: 1px solid var(--mn-border-soft);
 border-bottom: 1px solid var(--mn-border-soft);
 text-align: center;
}
.entry-content blockquote p {
 margin: 0;
 font-family: var(--font-display);
 font-size: clamp(30px, 3vw, 46px);
 line-height: 1.2;
 color: var(--mn-primary-soft);
 font-style: italic;
}
.entry-content .toc-inline {
 margin: 34px 0;
 padding: 22px 24px;
 border: 1px solid var(--mn-border-soft);
 background: var(--mn-bg-soft);
}
.entry-content .toc-inline strong,
.toc-sidebar h3 {
 display: block;
 margin-bottom: 14px;
 font-family: var(--font-label);
 font-size: 11px;
 font-weight: 700;
 letter-spacing: .16em;
 text-transform: uppercase;
 color: var(--mn-text-mute);
}
.entry-content .toc-inline ol,
.toc-sidebar ol { margin: 0; padding-left: 20px; }
.entry-content .toc-inline a,
.toc-sidebar a {
 font-family: var(--font-display);
 font-size: 20px;
 line-height: 1.4;
 color: var(--mn-primary);
}
.toc-sidebar a.active { color: var(--mn-primary-soft); }
.mn-backlink-box {
 display: grid;
 grid-template-columns: auto 1fr auto;
 gap: 18px;
 align-items: center;
 padding: 28px;
 border: 1px solid var(--mn-border-soft);
 background: var(--mn-bg-soft);
 margin: 48px 0;
}
.mn-backlink-box .bl-icon { font-size: 30px; }
.mn-backlink-box h4 { font-size: 30px; margin-bottom: 8px; }
.mn-backlink-box p { margin: 0; color: var(--mn-text-soft); }
.author-box {
 display: grid;
 grid-template-columns: 72px 1fr;
 gap: 16px;
 align-items: start;
 padding-top: 28px;
 border-top: 1px solid var(--mn-border-soft);
 margin-top: 52px;
}
.author-avatar { border-radius: 999px; }
.author-name { font-family: var(--font-display); font-size: 28px; color: var(--mn-primary); }
.author-role,
.author-bio { color: var(--mn-text-soft); }
.related-posts { margin-top: 72px; }
.related-posts h3 { font-size: 38px; margin-bottom: 28px; text-align: center; }
.site-sidebar { position: sticky; top: 140px; }
.toc-sidebar,
.widget {
 padding: 24px 0;
 border-top: 1px solid var(--mn-border-soft);
}
.widget:first-child,
.toc-sidebar:first-child { padding-top: 0; border-top: 0; }
.widget-title { font-size: 28px; margin-bottom: 18px; }
.list-post {
 display: grid;
 grid-template-columns: 92px 1fr;
 gap: 12px;
 align-items: center;
 margin-bottom: 16px;
}
.lp-thumb { background: var(--mn-bg-soft); overflow: hidden; }
.lp-title { font-family: var(--font-display); font-size: 20px; line-height: 1.25; }

.site-footer {
 border-top: 1px solid var(--mn-border-soft);
 background: var(--mn-bg-soft);
 padding-top: 64px;
}
.footer-top {
 display: grid;
 grid-template-columns: 1.3fr 1fr 1.2fr .9fr;
 gap: 28px;
 padding-bottom: 42px;
}
.footer-logo {
 font-family: var(--font-display);
 font-size: 28px;
 font-style: italic;
 color: var(--mn-primary);
 margin-bottom: 16px;
}
.footer-about,
.footer-col ul,
.footer-recent-post,
.footer-partner,
.frp-date { color: var(--mn-text-soft); }
.footer-col h4 { font-size: 22px; margin-bottom: 16px; }
.footer-col ul { list-style: none; padding: 0; margin: 0; }
.footer-col li { margin-bottom: 10px; }
.footer-recent-post {
 display: grid;
 grid-template-columns: 88px 1fr;
 gap: 12px;
 align-items: center;
 margin-bottom: 14px;
}
.frp-title { font-family: var(--font-display); font-size: 18px; line-height: 1.25; }
.footer-bottom-inner {
 justify-content: space-between;
 padding: 18px clamp(20px, 3vw, 64px) 24px;
 border-top: 1px solid var(--mn-border-soft);
}
.footer-social { display: flex; gap: 16px; }

.gh-breadcrumbs {
 gap: 10px;
 font-size: 10px;
 letter-spacing: .16em;
}
.bc-sep { opacity: 0.55; }

.reading-progress-bar {
 position: fixed;
 top: 0;
 left: 0;
 width: 0;
 height: 2px;
 z-index: 1001;
 background: var(--mn-primary-soft);
}
.reveal {
 opacity: 0;
 transform: translateY(24px);
 transition: opacity .6s ease, transform .6s ease;
}
.reveal.visible {
 opacity: 1;
 transform: translateY(0);
}

@media (max-width: 1180px) {
 .home-intro,
 .hero-editorial,
 .home-columns,
 .archive-header,
 .archive-lead-grid,
 .single-layout,
 .insight-band,
 .footer-top {
  grid-template-columns: 1fr;
 }
 .hero-primary { min-height: 620px; }
 .latest-feed-item,
 .feature-story-card,
 .mn-backlink-box { grid-template-columns: 1fr; }
 .editor-picks-grid,
 .archive-grid,
 .strip-grid,
 .related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .site-sidebar { position: static; }
 .footer-top { gap: 36px; }
}

@media (max-width: 860px) {
 .mn-logo-bar .logo-inner,
 .section-header,
 .archive-partner-strip,
 .footer-bottom-inner {
  flex-direction: column;
  align-items: flex-start;
 }
 .mn-logo-search { min-width: 0; max-width: none; width: 100%; }
 .mn-nav .nav-inner { min-height: 54px; }
 .mn-nav ul { gap: 14px; }
 .mn-nav ul li a { font-size: 13px; }
 .gh-homepage { gap: 72px; }
 .site-main,
 .archive-shell,
 .single-post-wrap { padding-top: 32px; padding-bottom: 84px; }
 .section-header { margin-bottom: 28px; }
 .home-intro-title,
 .archive-title,
 .article-header h1,
 .hero-primary-content h2 { font-size: clamp(34px, 10vw, 54px); }
 .home-intro-text,
 .archive-description,
 .art-lead,
 .entry-content { font-size: 18px; }
 .editor-picks-grid,
 .archive-grid,
 .strip-grid,
 .related-grid { grid-template-columns: 1fr; }
 .latest-feed-item { gap: 16px; }
 .article-featured-img img { aspect-ratio: 16/10; }
 .mn-newsletter .nl-form { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
 .site-main,
 .archive-shell,
 .single-post-wrap,
 .footer-top,
 .footer-bottom-inner,
 .mn-topbar .topbar-inner,
 .mn-logo-bar .logo-inner,
 .mn-nav .nav-inner { padding-left: 18px; padding-right: 18px; }
 .archive-breadcrumb-wrap { padding: 12px 18px 0; }
 .mn-topbar { display: none; }
 .mn-topbar .topbar-inner { min-height: 36px; }
 .mn-logo-bar .logo-inner { min-height: 72px; gap: 14px; }
 .mn-logo-text { font-size: 30px; }
 .mn-logo-tagline { font-size: 10px; letter-spacing: .06em; }
 .hero-primary { min-height: 460px; }
 .hero-primary-content,
 .hero-secondary-panel,
 .sidebar-panel,
 .insight-band,
 .archive-meta-panel,
 .archive-partner-strip,
 .archive-lead-card,
 .archive-card,
 .mn-newsletter,
 .mn-backlink-box { padding: 20px; }
 .home-intro,
 .archive-header,
 .insight-band,
 .hero-editorial,
 .home-columns,
 .archive-lead-grid,
 .single-layout { gap: 24px; }
 .mini-story-card { grid-template-columns: 1fr; }
 .mini-story-content h4,
 .story-list-card h4,
 .insight-item h4,
 .sc-title,
 .latest-feed-body h3,
 .card-title,
 .archive-card h3,
 .archive-lead-card-side .archive-lead-body h3 { font-size: 24px; }
 .feature-story-body h3,
 .archive-lead-card-main .archive-lead-body h2,
 .related-posts h3 { font-size: 32px; }
 .article-header { margin-bottom: 30px; }
 .art-lead { font-size: 19px; }
 .entry-content { font-size: 17px; line-height: 1.85; }
 .entry-content h2 { font-size: 30px; }
 .share-buttons { width: 100%; justify-content: center; }
}
