/*
Theme Name: NicoTime
Theme URI: https://nicotime.local/
Author: NicoTime
Description: Tema editoriale a blocchi per news, guide e analisi sul settore della nicotina.
Version: 0.5.9
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: nicotime
*/

@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("assets/fonts/PlusJakartaSans-VariableFont_wght.ttf") format("truetype-variations");
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}

@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("assets/fonts/PlusJakartaSans-Italic-VariableFont_wght.ttf") format("truetype-variations");
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
}

:root {
  --nt-font-core: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --nt-font-editorial: var(--nt-font-core);
  --nt-indigo: #5b54e8;
  --nt-indigo-ink: #3a30cc;
  --nt-orange: #ff5b28;
  --nt-orange-ink: #b43c1f;
  --nt-red: #ff2e57;
  --nt-lime: #5ef38c;
  --nt-lime-ink: #1a7a3a;
  --nt-yellow: #ffd600;
  --nt-cyan: #00cfff;
  --nt-ink: #110b11;
  --nt-paper: #fff;
  --nt-muted: #625c62;
  --nt-on-dark-muted: #c8c5c8;
  --nt-border: rgba(17, 11, 17, .08);
  --nt-surface: rgba(17, 11, 17, .03);
  --nt-radius: 14px;
  --nt-shadow: 0 8px 24px rgba(17, 11, 17, .09);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--nt-paper); color: var(--nt-ink); font-family: var(--nt-font-core); letter-spacing: -.01em; }
a { color: var(--nt-indigo); text-underline-offset: .18em; }
a:hover { color: var(--nt-indigo-ink); }

.wp-site-blocks { overflow: clip; }
.nt-shell { width: min(100% - 48px, 1240px); margin-inline: auto; }
.nt-site-header { position: sticky; z-index: 30; top: 0; background: var(--nt-paper); }
.nt-site-header > .nt-header-desktop,
.nt-site-header > .nt-header-mobile { width: 100%; max-width: none !important; margin-block: 0; }
.nt-header-mobile { display: none; }
.nt-header-band { width: 100%; border-bottom: 1px solid var(--nt-border); }
.nt-header-service { height: 27px; background: var(--nt-surface); }
.nt-header-primary { height: 59px; }
.nt-header-topics { height: 43px; }
.nt-header-inner { display: flex; width: min(calc(100% - 32px), 1240px); margin-inline: auto; align-items: center; }
.nt-header-service .nt-header-inner { display: grid; height: 100%; grid-template-columns: 1fr auto 1fr; }
.nt-header-date,
.nt-header-service-actions a { color: var(--nt-muted); font-size: 11px; font-weight: 500; line-height: 1.35; text-decoration: none; }
.nt-header-manifesto { color: var(--nt-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-header-service-actions { display: flex; justify-self: end; gap: 16px; align-items: center; }
.nt-header-primary .nt-header-inner { position: relative; height: 100%; gap: 24px; }
.nt-figma-wordmark { display: inline-flex; flex: 0 0 auto; }
.nt-figma-wordmark img { display: block; width: 122.486px; height: 24px; }
.nt-mainnav { display: flex; min-width: 0; flex: 1 1 auto; justify-content: center; gap: 20px; }
.nt-mainnav a { flex: 0 0 auto; padding-bottom: 6px; border-bottom: 2px solid transparent; color: var(--nt-muted); font-size: 13px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-decoration: none; transition: color .15s ease, border-color .15s ease; }
.nt-mainnav a:hover { color: var(--nt-ink); }
.nt-section-news .nt-mainnav .nt-nav-news { border-color: var(--nt-cyan); color: var(--nt-ink); }
.nt-section-guide .nt-mainnav .nt-nav-guide { border-color: var(--nt-indigo); color: var(--nt-ink); }
.nt-section-trends .nt-mainnav .nt-nav-trends { border-color: var(--nt-lime); color: var(--nt-ink); }
.nt-section-academy .nt-mainnav .nt-nav-academy { border-color: var(--nt-yellow); color: var(--nt-ink); }
.nt-section-glossario .nt-mainnav .nt-nav-glossary { border-color: var(--nt-orange); color: var(--nt-ink) !important; }
.nt-section-newsletter .nt-mainnav .nt-nav-newsletter { border-color: var(--nt-indigo); color: var(--nt-ink); }
.nt-header-actions { display: flex; flex: 0 0 auto; gap: 8px; align-items: center; }
.nt-figma-icon-button { display: inline-flex; width: 26px; height: 26px; align-items: center; justify-content: center; border: 1px solid var(--nt-border); border-radius: 6px; color: var(--nt-ink); font-size: 13px; line-height: 1; text-decoration: none; cursor: pointer; list-style: none; }
.nt-figma-icon-button::-webkit-details-marker, .nt-mobile-search::-webkit-details-marker { display: none; }
.nt-search-glyph { position: relative; display: block; width: 14px; height: 14px; }
.nt-search-glyph::before { position: absolute; top: 1px; left: 1px; width: 8px; height: 8px; border: 1.5px solid currentColor; border-radius: 50%; content: ''; }
.nt-search-glyph::after { position: absolute; right: 1px; bottom: 2px; width: 6px; height: 1.5px; border-radius: 2px; background: currentColor; content: ''; transform: rotate(45deg); transform-origin: center; }
.nt-header-search { position: relative; }
.nt-header-search[open] { z-index: 5; }
.nt-header-search[open] > summary { border-color: var(--nt-indigo); background: rgba(102,98,255,.08); color: var(--nt-indigo); }
.nt-header-search-panel { position: absolute; z-index: 10; top: calc(100% + 16px); right: 0; width: min(480px, calc(100vw - 32px)); padding: 22px; border: 1px solid var(--nt-border); border-radius: 12px; background: white; box-shadow: var(--nt-shadow); }
.nt-header-search-panel form { display: flex; flex-direction: column; gap: 9px; }
.nt-header-search-panel label { color: var(--nt-ink); font-size: 12px; font-weight: 800; }
.nt-header-search-panel form > div { display: grid; grid-template-columns: 1fr auto; }
.nt-header-search-panel input { width: 100%; min-width: 0; height: 46px; padding: 0 14px; border: 1px solid var(--nt-border); border-right: 0; border-radius: 8px 0 0 8px; color: var(--nt-ink); font: inherit; }
.nt-header-search-panel input:focus { position: relative; z-index: 1; border-color: var(--nt-indigo); outline: 3px solid rgba(102,98,255,.16); }
.nt-header-search-panel button { min-width: 76px; border: 0; border-radius: 0 8px 8px 0; background: var(--nt-ink); color: white; font: 700 11px/1 var(--nt-font-core); letter-spacing: .05em; cursor: pointer; text-transform: uppercase; }
.nt-header-search-panel p { margin: 0; color: var(--nt-muted); font-size: 10px; line-height: 1.45; }
.nt-figma-primary-button { display: inline-flex; padding: 6px 12px; border-radius: 6px; background: var(--nt-indigo); color: white; font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-decoration: none; transition: background .15s ease, transform .15s ease; }
.nt-figma-primary-button:hover { background: var(--nt-indigo-ink); color: white; }
.nt-figma-primary-button:active { transform: scale(.97); }
.nt-header-topics .nt-header-inner { height: 100%; gap: 16px; overflow: hidden; }
.nt-topics-label { flex: 0 0 auto; color: var(--nt-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-topic-list { display: flex; min-width: 0; gap: 6px; align-items: center; overflow-x: auto; scrollbar-width: none; }
.nt-topic-list::-webkit-scrollbar { display: none; }
.nt-topic-list a { display: inline-flex; flex: 0 0 auto; gap: 4px; align-items: center; padding: 4px 10px; border: 1px solid var(--nt-border); border-radius: 999px; background: var(--nt-surface); color: var(--nt-ink); font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-decoration: none; }
.nt-topic-list i { width: 6px; height: 6px; border-radius: 50%; background: var(--nt-topic-color, var(--nt-indigo)); }

.nt-hero, .nt-section, .nt-archive, .nt-article { width: min(100% - 48px, 1240px); margin-inline: auto; }
.nt-hero { padding-block: clamp(32px, 4vw, 56px) 40px; }
.nt-hero-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(260px, .76fr); gap: clamp(28px, 5vw, 64px); align-items: start; }
.nt-kicker { display: flex; gap: 10px; align-items: center; color: var(--nt-muted); font-size: .75rem; font-weight: 800; letter-spacing: .055em; line-height: 1.2; text-transform: uppercase; }
.nt-kicker::before { width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; background: var(--nt-indigo); content: ''; }
.nt-hero h1 { margin: 16px 0; max-width: 18ch; font-size: clamp(2.35rem, 5.5vw, 4.65rem); font-weight: 800; letter-spacing: -.066em; line-height: 1.01; }
.nt-hero-media { display: block; width: 100%; height: 240px; margin: 20px 0; overflow: hidden; border-radius: 16px; }
.nt-hero-media img, .nt-card-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.nt-hero-media:hover img, .nt-card-media:hover img { transform: scale(1.02); }
.nt-hero-media-fallback, .nt-card-media-fallback { background: var(--nt-accent); opacity: .16; }
.nt-hero .nt-summary { max-width: 67ch; color: var(--nt-muted); font-size: clamp(1rem, 1.5vw, 1.16rem); line-height: 1.6; }
.nt-hero-footer { display: flex; gap: 24px; align-items: center; width: 100%; margin-top: 18px; }
.nt-hero-byline { display: flex; gap: 10px; align-items: center; color: var(--nt-muted); font-size: 13px; line-height: 1.35; }
.nt-hero-avatar { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: rgba(102,98,255,.14); color: var(--nt-indigo-ink); font-size: 11px; font-weight: 700; letter-spacing: .04em; }
.nt-hero-byline b { color: var(--nt-ink); }
.nt-hero-byline i { font-style: normal; }
.nt-hero-byline small { display: block; margin-top: 2px; font-size: 12px; }
.nt-hero-cta { margin-left: auto; padding: 10px 20px; font-size: 13px; }
.nt-hero-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.nt-hero-tags a, .nt-category-pill { display: inline-flex; gap: 6px; align-items: center; padding: 4px 10px; border: 1px solid var(--nt-border); border-radius: 999px; color: var(--nt-ink); font-size: 11px; font-weight: 600; line-height: 1.35; text-decoration: none; }
.nt-hero-tags i { width: 6px; height: 6px; border-radius: 50%; background: var(--nt-topic-color, var(--nt-indigo)); }.nt-category-pill i { width: 6px; height: 6px; border-radius: 50%; background: var(--nt-accent, var(--nt-indigo)); }
.nt-news-card .nt-category-pill::before, .nt-guide-cards .nt-category-pill::before { display: none; }
.nt-meta { color: var(--nt-muted); font-size: .75rem; line-height: 1.45; }
.nt-hero-link { display: inline-flex; margin-top: 20px; color: var(--nt-indigo); font-size: .88rem; font-weight: 800; text-decoration: none; }
.nt-hero-link:hover { text-decoration: underline; }
.nt-latest { border-top: 2px solid var(--nt-ink); }
.nt-latest-title { display: flex; justify-content: space-between; padding: 13px 0; color: var(--nt-muted); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.nt-latest-item { display: grid; grid-template-columns: 44px 1fr; gap: 12px; padding: 17px 0; border-top: 1px solid var(--nt-border); }
.nt-latest-item time { color: var(--nt-muted); font-size: .68rem; font-weight: 800; }
.nt-latest-item a { color: var(--nt-ink); font-size: .92rem; font-weight: 700; line-height: 1.32; text-decoration: none; }
.nt-latest-item a:hover { color: var(--nt-indigo); }
.nt-ticker-wrap { width: min(100% - 48px, 1240px); margin: -16px auto 0; }
.nt-ticker { display: flex; height: 46px; overflow: hidden; border: 1px solid var(--nt-border); border-radius: 10px; background: var(--nt-surface); }
.nt-ticker-label { display: flex; flex: 0 0 auto; gap: 8px; align-items: center; justify-content: center; padding: 0 16px; background: var(--nt-ink); color: white; font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-ticker-label i { width: 6px; height: 6px; border-radius: 50%; background: var(--nt-red); }
.nt-ticker-items { min-width: 0; padding: 0 24px; overflow: hidden; }
.nt-ticker-items::-webkit-scrollbar { display: none; }
.nt-ticker-track { display: flex; width: max-content; min-width: 100%; height: 100%; gap: 32px; align-items: center; animation: nt-ticker-scroll 36s linear infinite; }
.nt-ticker-items a { display: flex; flex: 0 0 auto; gap: 10px; align-items: center; color: var(--nt-ink); font-size: 13px; line-height: 1.6; text-decoration: none; white-space: nowrap; }
.nt-ticker-items a:hover span { text-decoration: underline; text-decoration-color: var(--nt-indigo); text-underline-offset: .16em; }
.nt-ticker-items time { color: var(--nt-muted); font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; }
.nt-ticker-items b { width: 4px; height: 4px; border-radius: 50%; background: var(--nt-orange); }
.nt-ticker:hover .nt-ticker-track, .nt-ticker:focus-within .nt-ticker-track { animation-play-state: paused; }
@keyframes nt-ticker-scroll { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .nt-ticker-items { overflow-x: auto; scrollbar-width: thin; } .nt-ticker-track { animation: none; } }

.nt-section {
  padding-block: clamp(16px, 2vw, 28px);
}.nt-landing-intro { width: min(100% - 48px, 1240px); margin: 0 auto; padding: clamp(48px, 7vw, 96px) 0 8px; }
.nt-landing-intro .nt-kicker::before { background: var(--nt-accent); }
.nt-landing-intro h1 { max-width: 14ch; margin: 14px 0; font-size: clamp(2.6rem, 6vw, 4.8rem); font-weight: 800; letter-spacing: -.066em; line-height: 1.01; }
.nt-landing-intro p { max-width: 62ch; margin: 0; color: var(--nt-muted); font-size: 16px; line-height: 1.6; }
.nt-section + .nt-section { border-top: 1px solid var(--nt-border); }
.nt-section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; min-height: 60px; margin-bottom: 32px; padding-bottom: 12px; border-bottom: 1px solid var(--nt-border); }
.nt-section-head .nt-kicker { gap: 6px; font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; }
.nt-section-head .nt-kicker::before { width: 6px; height: 6px; flex-basis: 6px; background: var(--nt-accent, var(--nt-indigo)); }
.nt-section-head h2 { margin: 6px 0 0; font-size: 24px; font-weight: 700; letter-spacing: -.032em; line-height: 1.15; }
.nt-archive-header h1 { margin: 8px 0 0; font-size: clamp(1.8rem, 3.5vw, 2.75rem); font-weight: 800; letter-spacing: -.055em; line-height: 1.05; }
.nt-section-head > a { color: var(--nt-muted); font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-decoration: none; white-space: nowrap; }
.nt-section-head > a:hover { color: var(--nt-indigo); }
.nt-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.nt-card { display: flex; flex-direction: column; min-height: 100%; padding-bottom: 18px; border-bottom: 1px solid var(--nt-border); }
.nt-card-media { display: block; aspect-ratio: 16 / 9; margin-bottom: 17px; overflow: hidden; border-radius: var(--nt-radius); }
.nt-card .nt-kicker { margin-bottom: 10px; }
.nt-card .nt-kicker::before { background: var(--nt-accent, var(--nt-indigo)); }
.nt-news-layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 48px; }
.nt-news-main { display: grid; gap: 24px; }
.nt-news-lead { display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 24px; padding-bottom: 24px; border-bottom: 1px solid var(--nt-border); }
.nt-news-lead .nt-rubric-label { display: inline-flex; width: auto; padding: 0 0 0 8px; border-left: 2px solid var(--nt-red); border-radius: 0; color: var(--nt-ink); font-size: 10px; line-height: 1.35; }
.nt-news-lead .nt-rubric-label::before { display: none; }
.nt-news-badge, .nt-guide-level { display: inline-flex; margin-left: 10px; padding: 2px 6px; border-radius: 4px; background: rgba(0,207,255,.16); color: #00728f; font-size: 9px; font-weight: 700; letter-spacing: .07em; line-height: 1.35; text-transform: uppercase; }
.nt-news-lead h3 { margin: 12px 0; font-size: 24px; letter-spacing: -.032em; line-height: 1.15; }
.nt-news-lead h3 a, .nt-news-card h3 a, .nt-guide-cards h3 a { color: var(--nt-ink); text-decoration: none; }
.nt-news-lead p { margin: 0 0 10px; color: var(--nt-muted); font-size: 15px; line-height: 1.6; }
.nt-news-lead small, .nt-news-card small { color: var(--nt-muted); font-size: 11px; }
.nt-news-lead-media .nt-card-media { width: 220px; height: 165px; margin: 0; border-radius: 12px; }
.nt-news-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; }
.nt-news-card { display: flex; flex-direction: column; gap: 10px; }
.nt-news-card .nt-card-media { height: 175px; margin: 0 0 6px; border-radius: 10px; }
.nt-news-card h3 { margin: 0; font-size: 20px; letter-spacing: -.032em; line-height: 1.35; }
.nt-news-card p { margin: 0; color: var(--nt-muted); font-size: 13px; line-height: 1.6; }
.nt-news-rail { display: grid; align-content: start; border-top: 1px solid var(--nt-border); }
.nt-news-rail > b { padding: 10px 0; color: var(--nt-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.nt-news-rail > a { padding: 12px 0; border-top: 1px solid var(--nt-border); color: var(--nt-ink); font-size: 13px; font-weight: 700; line-height: 1.35; text-decoration: none; }
.nt-news-rail > a:hover { color: var(--nt-indigo); }
.nt-news-rail .nt-news-archive { color: var(--nt-indigo); font-size: 11px; letter-spacing: .04em; }
.nt-guide-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.nt-guide-cards article { display: flex; min-height: 271px; flex-direction: column; gap: 12px; padding: 24px; border: 1px solid var(--nt-border); border-radius: 12px; }
.nt-guide-cards h3 { margin: 0; font-size: 20px; letter-spacing: -.032em; line-height: 1.35; }
.nt-guide-cards p { margin: 0; color: var(--nt-muted); font-size: 13px; line-height: 1.6; }
.nt-guide-cards footer { display: flex; gap: 16px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--nt-border); }
.nt-guide-cards footer span { display: grid; gap: 2px; color: var(--nt-ink); font-size: 13px; }
.nt-guide-cards footer b { color: var(--nt-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.nt-guide-cards > article > small { color: var(--nt-muted); font-size: 11px; }
.nt-guide-paths { margin-top: 32px; }
.nt-guide-paths > b { color: var(--nt-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.nt-guide-paths > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.nt-guide-paths a { display: grid; gap: 8px; min-height: 123px; padding: 20px; border: 1px solid var(--nt-border); border-radius: 10px; color: var(--nt-ink); text-decoration: none; }
.nt-guide-paths i { width: 24px; height: 3px; border-radius: 99px; background: var(--nt-orange); }
.nt-guide-paths a:nth-child(2) i { background: var(--nt-red); }.nt-guide-paths a:nth-child(3) i { background: var(--nt-cyan); }.nt-guide-paths a:nth-child(4) i { background: var(--nt-yellow); }
.nt-guide-paths strong { font-size: 15px; line-height: 1.35; }.nt-guide-paths span { color: var(--nt-muted); font-size: 13px; line-height: 1.6; }

/* Homepage: rubric and glossary ----------------------------------------- */
.nt-rubric-section { padding-block: clamp(24px, 3vw, 40px); }
.nt-rubric-highlight { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; min-height: 369px; padding: 48px; border-radius: 16px; background: var(--nt-ink); color: var(--nt-paper); }
.nt-rubric-highlight-copy { display: flex; flex-direction: column; gap: 16px; }
.nt-rubric-highlight-topline { display: flex; gap: 12px; align-items: center; color: rgba(255,255,255,.80); font-size: 11px; font-weight: 500; letter-spacing: -.01em; line-height: 1.35; }
.nt-rubric-highlight-topline span { padding-left: 8px; border-left: 2px solid var(--nt-indigo); color: white; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.nt-rubric-highlight h2 { max-width: 18ch; margin: 0; font-size: 32px; font-weight: 700; letter-spacing: -.032em; line-height: 1.15; }
.nt-rubric-highlight h2 a { color: white; text-decoration: none; }
.nt-rubric-highlight h2 a:hover { color: white; text-decoration: underline; text-decoration-color: var(--nt-indigo); text-underline-offset: .15em; }
.nt-rubric-highlight-copy > p { max-width: 59ch; margin: 0; color: rgba(255,255,255,.80); font-size: 15px; line-height: 1.6; }
.nt-rubric-highlight-byline { display: flex; gap: 24px; align-items: center; margin-top: 0; color: rgba(255,255,255,.80); font-size: 12px; line-height: 1.35; }
.nt-rubric-highlight-byline .nt-figma-primary-button { padding: 6px 12px; font-size: 11px; }
.nt-rubric-highlight blockquote { margin: 0; padding-left: 24px; border-left: 2px solid var(--nt-indigo); color: white; font-family: var(--nt-font-editorial); font-size: 34px; font-style: italic; letter-spacing: -.018em; line-height: 1.3; }
.nt-glossary-section { padding-top: 56px; }
.nt-glossary-widget { display: flex; flex-direction: column; gap: 32px; }
.nt-glossary-widget-head { width: 100%; margin: 0; }
.nt-glossary-widget-search { display: flex; width: min(520px, 100%); height: 34px; gap: 10px; align-items: center; padding: 0 16px; border: 1px solid var(--nt-border); border-radius: 999px; background: var(--nt-surface); }
.nt-glossary-widget-search:focus-within { border-color: var(--nt-indigo); outline: 3px solid rgba(102,98,255,.16); }
.nt-glossary-widget-search svg { width: 15px; height: 15px; flex: 0 0 15px; fill: none; stroke: var(--nt-muted); stroke-linecap: round; stroke-width: 1.6; }
.nt-glossary-widget-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--nt-ink); font: 400 13px/1.6 var(--nt-font-core); letter-spacing: -.01em; }
.nt-glossary-widget-search input::placeholder { color: var(--nt-muted); opacity: 1; }
.nt-glossary-widget-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; width: 100%; }
.nt-glossary-widget-term { display: flex; min-width: 0; min-height: 166px; flex-direction: column; gap: 12px; padding: 24px; border: 1px solid var(--nt-border); border-radius: 12px; background: white; }
.nt-glossary-widget-term header, .nt-glossary-widget-term footer { display: flex; gap: 12px; align-items: center; justify-content: space-between; }
.nt-glossary-widget-term h3 { margin: 0; font-size: 20px; font-weight: 700; letter-spacing: -.032em; line-height: 1.35; }
.nt-glossary-widget-term h3 a { color: var(--nt-ink); text-decoration: none; }
.nt-glossary-widget-term h3 a:hover { color: var(--nt-indigo); }
.nt-glossary-widget-term header span { padding: 2px 6px; border-radius: 4px; background: var(--nt-surface); color: var(--nt-muted); font-size: 9px; font-weight: 700; letter-spacing: .07em; line-height: 1.35; text-transform: uppercase; white-space: nowrap; }
.nt-glossary-widget-term > p { margin: 0; color: var(--nt-muted); font-size: 13px; line-height: 1.6; }
.nt-glossary-widget-term footer { margin-top: auto; padding-top: 10px; border-top: 1px solid var(--nt-border); }
.nt-glossary-widget-term small { color: var(--nt-muted); font-size: 11px; font-weight: 500; line-height: 1.35; }
.nt-glossary-widget-term footer a { color: var(--nt-indigo); font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-decoration: none; white-space: nowrap; }
.nt-glossary-widget-term footer a:hover { color: var(--nt-indigo-ink); text-decoration: underline; }
.nt-focus-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(360px, .96fr); gap: 48px; }
.nt-focus-rubric-label { padding-left: 8px; border-left: 2px solid var(--nt-orange); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-focus-deadlines > h3 { margin: 12px 0 0; font-size: 20px; letter-spacing: -.032em; line-height: 1.35; }
.nt-focus-deadlines article { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--nt-border); }
.nt-focus-deadlines strong { display: block; font-size: 13px; line-height: 1.35; }
.nt-focus-deadlines small { display: flex; gap: 6px; align-items: center; margin-top: 6px; color: var(--nt-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-focus-deadlines small::before { width: 6px; height: 6px; border-radius: 50%; background: var(--nt-red); content: ''; }
.nt-focus-deadlines small.is-medio::before { background: var(--nt-yellow); }
.nt-focus-deadlines h4, .nt-retail-kit h4 { margin: 0; font-size: 15px; letter-spacing: -.032em; line-height: 1.35; }
.nt-focus-deadlines p { margin: 6px 0 0; color: var(--nt-muted); font-size: 13px; line-height: 1.6; }
.nt-focus-tools { display: flex; flex-direction: column; gap: 12px; }
.nt-checklist-card { padding: 24px; border: 1px solid var(--nt-border); border-radius: 12px; background: var(--nt-surface); }
.nt-checklist-card header { display: flex; justify-content: space-between; color: var(--nt-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-checklist-card header b { font-size: 11px; letter-spacing: .04em; }
.nt-checklist-progress { height: 4px; margin: 12px 0; overflow: hidden; border-radius: 99px; background: rgba(17,11,17,.05); }
.nt-checklist-progress i { display: block; height: 100%; border-radius: inherit; background: var(--nt-indigo); transition: width .18s ease; }
.nt-checklist-card ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.nt-checklist-card li { display: flex; gap: 8px; align-items: center; color: var(--nt-ink); font-size: 13px; line-height: 1.6; }
.nt-checklist-card button { display: grid; width: 18px; height: 18px; flex: 0 0 18px; place-items: center; padding: 0; border: 1px solid var(--nt-border); border-radius: 4px; background: var(--nt-surface); color: white; cursor: pointer; }
.nt-checklist-card button[aria-pressed="true"] { border-color: var(--nt-indigo); background: var(--nt-indigo); }
.nt-checklist-card button:focus-visible { outline: 3px solid rgba(102,98,255,.27); outline-offset: 2px; }
.nt-retail-kit { display: grid; gap: 12px; }
.nt-retail-kit > span { color: var(--nt-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-retail-kit article { display: flex; gap: 12px; align-items: center; padding: 16px; border: 1px solid var(--nt-border); border-radius: 10px; }
.nt-retail-kit article > b { padding: 4px 6px; border-radius: 4px; background: rgba(102,98,255,.14); color: var(--nt-indigo-ink); font-size: 9px; letter-spacing: .07em; }
.nt-retail-kit article > div { min-width: 0; flex: 1; }
.nt-retail-kit h4 { font-size: 13px; }
.nt-retail-kit small { color: var(--nt-muted); font-size: 11px; line-height: 1.35; }
.nt-retail-kit em { color: var(--nt-muted); font-size: 13px; font-style: normal; white-space: nowrap; }
.nt-pulse .nt-kicker { color: var(--nt-on-dark-muted); }
.nt-card h3 { margin: 0; font-size: 1.18rem; letter-spacing: -.036em; line-height: 1.17; }
.nt-card h3 a { color: var(--nt-ink); text-decoration: none; }
.nt-card h3 a:hover { color: var(--nt-indigo); }
.nt-card p { margin: 10px 0 14px; color: var(--nt-muted); font-size: .9rem; line-height: 1.55; }
.nt-card .nt-meta { margin-top: auto; }

.nt-intents { display: grid; grid-template-columns: repeat(4, 1fr); border-block: 1px solid var(--nt-border); }
.nt-intent { display: block; min-height: 142px; padding: 22px; border-right: 1px solid var(--nt-border); color: var(--nt-ink); text-decoration: none; }
.nt-intent:last-child { border-right: 0; }
.nt-intent:hover { background: var(--nt-surface); color: var(--nt-ink); }
.nt-intent strong { display: block; margin: 12px 0 7px; font-size: 1rem; letter-spacing: -.03em; }
.nt-intent span { color: var(--nt-muted); font-size: .79rem; line-height: 1.5; }

.nt-pulse { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 70px); padding: clamp(28px, 5vw, 58px); border-radius: 18px; background: var(--nt-ink); color: var(--nt-paper); }
.nt-pulse h2 { margin: 10px 0; max-width: 12ch; font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.06em; line-height: 1.02; }
.nt-pulse p { color: var(--nt-on-dark-muted); line-height: 1.55; }
.nt-kpis { display: grid; grid-template-columns: repeat(3, 1fr); align-self: center; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; overflow: hidden; }
.nt-kpi { min-height: 160px; padding: 22px; border-right: 1px solid rgba(255,255,255,.14); }
.nt-kpi:last-child { border-right: 0; }
.nt-kpi span { display: block; color: var(--nt-on-dark-muted); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nt-kpi strong { display: block; margin: 18px 0 8px; font-size: clamp(1.45rem, 3vw, 2.2rem); letter-spacing: -.055em; }
.nt-kpi em { color: var(--nt-lime); font-size: .78rem; font-style: normal; font-weight: 800; }

.nt-newsletter { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: end; padding: 32px; border: 1px solid rgba(102,98,255,.33); border-radius: 16px; background:  ; border-radius: 16px; background: rgba(102,98,255,12%); }; }
.nt-newsletter-label { color: var(--nt-indigo); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.nt-newsletter h2 { max-width: 23ch; margin: 8px 0; font-size: 24px; letter-spacing: -.032em; line-height: 1.15; }
.nt-newsletter p { max-width: 55ch; margin: 0; color: var(--nt-muted); font-size: 13px; line-height: 1.6; }
.nt-newsletter form { display: grid; width: 280px; gap: 6px; }
.nt-newsletter label { color: var(--nt-muted); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.nt-newsletter form > div { display: flex; gap: 8px; align-items: center; }
.nt-newsletter input { width: 100%; min-width: 0; height: 36px; padding: 0 12px; border: 1px solid var(--nt-border); border-radius: 6px; background: var(--nt-surface); color: var(--nt-ink); font: 500 13px/1.6 var(--nt-font-core); }
.nt-newsletter input:focus { border-color: var(--nt-indigo); outline: 3px solid rgba(102,98,255,.16); }
.nt-newsletter button { height: 36px; padding: 0 16px; border: 0; border-radius: 6px; background: var(--nt-indigo); color: white; font: 700 13px/1 var(--nt-font-core); cursor: pointer; }.nt-newsletter button:hover { background: var(--nt-indigo-ink); }
.nt-newsletter small { color: var(--nt-muted); font-size: 11px; }

.nt-archive { padding-block: clamp(48px, 7vw, 88px); }
.nt-archive-header { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 48px; margin-bottom: 46px; padding-bottom: 30px; border-bottom: 2px solid var(--nt-ink); }
.nt-archive-header p { margin: 10px 0 0; max-width: 58ch; color: var(--nt-muted); line-height: 1.6; }
.nt-archive .wp-block-query { max-width: 880px; }
.nt-archive .wp-block-post-template { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.nt-archive .wp-block-post { padding: 20px; border: 1px solid var(--nt-border); border-radius: var(--nt-radius); }
.nt-archive .wp-block-post-title { margin: 8px 0 9px; font-size: 1.25rem; line-height: 1.15; }
.nt-archive .wp-block-post-title a { color: var(--nt-ink); text-decoration: none; }
.nt-archive .wp-block-post-excerpt { color: var(--nt-muted); font-size: .9rem; line-height: 1.55; }
.nt-archive .wp-block-post-date { color: var(--nt-muted); font-size: .75rem; }
.nt-archive .wp-block-query-pagination { margin-top: 30px; font-weight: 700; }

.nt-article { max-width: 900px; padding-block: clamp(48px, 7vw, 88px); }
.nt-article .wp-block-post-title { margin: 16px 0; max-width: 17ch; font-size: clamp(2.35rem, 6vw, 4.9rem); font-weight: 800; letter-spacing: -.067em; line-height: 1.01; }
.nt-article .wp-block-post-date, .nt-article .wp-block-post-author-name { color: var(--nt-muted); font-size: .78rem; }
.nt-article .wp-block-post-content { max-width: 700px; margin-top: 38px; font-size: 1.08rem; line-height: 1.7; }
.nt-article .wp-block-post-content > * { max-width: 100%; }
.nt-article .wp-block-post-content h2 { margin-top: 1.9em; font-size: 1.7em; letter-spacing: -.045em; line-height: 1.15; }
.nt-article .wp-block-post-content a { font-weight: 700; }
.nt-article .wp-block-quote { margin: 2.3em 0; padding: 20px 24px; border-left: 4px solid var(--nt-indigo); background: var(--nt-surface); font-family: var(--nt-font-editorial); font-size: 1.32em; line-height: 1.35; }

.nt-glossary { width: min(100% - 48px, 960px); margin: 0 auto; padding-block: 72px; }
.nt-glossary h1 { font-size: clamp(2.4rem, 6vw, 4.8rem); letter-spacing: -0.05em; }
.nt-glossary .wp-block-details { padding: 17px 0; border-bottom: 1px solid var(--nt-border); }
.nt-glossary summary { cursor: pointer; font-weight: 800; }
.nt-glossary p { max-width: 64ch; color: var(--nt-muted); line-height: 1.6; }

@media (max-width: 900px) {
  .nt-hero-grid, .nt-pulse, .nt-archive-header { grid-template-columns: 1fr; }
  .nt-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nt-intents { grid-template-columns: repeat(2, 1fr); }
  .nt-intent:nth-child(2) { border-right: 0; }
  .nt-intent:nth-child(-n + 2) { border-bottom: 1px solid var(--nt-border); }
  .nt-kpis { max-width: 680px; }
  .nt-newsletter { grid-template-columns: 1fr; }
  .nt-news-layout { grid-template-columns: 1fr; }
  .nt-news-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; }
  .nt-news-rail > b, .nt-news-rail .nt-news-archive { grid-column: 1 / -1; }
  .nt-guide-paths > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .nt-header-desktop { display: none; }
  .nt-header-mobile { display: block; }
  .nt-mobile-bar { display: flex; position: relative; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 16px; border-bottom: 1px solid var(--nt-border); }
  .nt-mobile-bar .nt-figma-wordmark { position: absolute; left: 50%; transform: translateX(-50%); }
  .nt-mobile-bar .nt-figma-wordmark img { width: 91.864px; height: 18px; }
  .nt-mobile-menu { position: relative; z-index: 2; }
  .nt-mobile-menu summary { display: block; color: var(--nt-ink); font-size: 20px; font-weight: 700; letter-spacing: -.032em; line-height: 1.35; cursor: pointer; list-style: none; }
  .nt-mobile-menu summary::-webkit-details-marker { display: none; }
  .nt-mobile-menu nav { display: grid; position: absolute; top: 36px; left: -16px; width: 100vw; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; padding: 8px 16px 16px; border-bottom: 1px solid var(--nt-border); background: white; box-shadow: 0 8px 24px rgba(17,11,17,.08); }
  .nt-mobile-menu nav a { padding: 10px 0; border-bottom: 1px solid var(--nt-border); color: var(--nt-ink); font-size: 13px; font-weight: 700; text-decoration: none; }
  .nt-header-search-mobile { position: static; margin-left: auto; }
  .nt-mobile-search { display: grid; width: 26px; height: 26px; place-items: center; color: var(--nt-ink); text-decoration: none; cursor: pointer; list-style: none; }
  .nt-header-search-mobile .nt-header-search-panel { top: calc(100% + 1px); right: 0; left: 0; width: 100%; padding: 16px; border-width: 0 0 1px; border-radius: 0; box-shadow: 0 8px 24px rgba(17,11,17,.08); }
  .nt-mobile-topics { width: 100%; padding: 10px 16px; border-bottom: 1px solid var(--nt-border); }
}

@media (max-width: 640px) {
  .nt-shell, .nt-hero, .nt-section, .nt-archive, .nt-article, .nt-glossary { width: min(100% - 32px, 1240px); }
  .nt-card-grid, .nt-archive .wp-block-post-template, .nt-intents, .nt-kpis { grid-template-columns: 1fr; }
  .nt-intent, .nt-intent:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--nt-border); }
  .nt-intent:last-child { border-bottom: 0; }
  .nt-kpi { min-height: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .nt-kpi:last-child { border-bottom: 0; }
  .nt-hero { padding-top: 42px; }
  .nt-hero-byline { align-items: flex-start; }
  .nt-hero-footer { flex-wrap: wrap; }
  .nt-hero-cta { margin-left: 0; }
  .nt-news-lead { grid-template-columns: 1fr; }
  .nt-news-lead-media .nt-card-media { width: 100%; height: auto; aspect-ratio: 16 / 9; }
  .nt-news-cards, .nt-guide-cards, .nt-guide-paths > div { grid-template-columns: 1fr; }
  .nt-news-rail { grid-template-columns: 1fr; }
  .nt-newsletter { padding: 24px; }
  .nt-newsletter form { width: 100%; }
  .nt-section-head { align-items: flex-start; flex-direction: column; }
  .nt-archive .wp-block-post { padding: 17px; }
  .nt-site-footer { margin-top: 64px; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Editorial templates ----------------------------------------------------- */
.nt-editorial-article { width: min(100% - 48px, 1240px); margin-inline: auto; padding: 32px 0 0; }
.nt-editorial-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 64px; align-items: start; }
.nt-editorial-main { min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.nt-article-header { display: flex; flex-direction: column; gap: 20px; }
.nt-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--nt-muted); font-size: .72rem; font-weight: 700; }
.nt-breadcrumb a { color: inherit; text-decoration: none; }
.nt-breadcrumb a:hover { color: var(--nt-indigo); }
.nt-article-labels { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.nt-category-pill, .nt-rubric-label { display: inline-flex; align-items: center; gap: 6px; width: fit-content; padding: 5px 10px; border-radius: 999px; font-size: .67rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.nt-category-pill { background: color-mix(in srgb, var(--nt-section-color, var(--nt-indigo)) 18%, white); color: var(--nt-ink); }
.nt-category-pill::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--nt-section-color, var(--nt-indigo)); }
.nt-rubric-label { padding-left: 0; color: var(--nt-muted); }
.nt-rubric-label::before { content: ''; width: 22px; height: 3px; border-radius: 99px; background: var(--nt-indigo); }
.nt-article-header h1 { max-width: 760px; margin: 0; font-size: 40px; line-height: 1.15; letter-spacing: -.032em; }
.nt-article-lead { max-width: 760px; margin: 0; color: var(--nt-muted); font-family: var(--nt-font-core); font-size: 20px; line-height: 1.55; }
.nt-article-meta { display: flex; align-items: center; gap: 12px; padding: 16px 0; border-block: 1px solid var(--nt-border); }
.nt-article-meta > span:nth-child(2) { display: flex; flex-direction: column; gap: 2px; }
.nt-article-meta strong { font-size: .78rem; }
.nt-article-meta small { color: var(--nt-muted); font-size: .69rem; }
.nt-author-avatar { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 50%; background: var(--nt-ink); color: white; font-size: .75rem; font-weight: 800; }
.nt-meta-spacer { flex: 1; }
.nt-article-meta button { width: 34px; height: 34px; border: 1px solid var(--nt-border); border-radius: 50%; background: white; color: var(--nt-ink); cursor: pointer; font-size: 1rem; }
.nt-article-meta button:hover, .nt-article-meta button:focus-visible { border-color: var(--nt-indigo); color: var(--nt-indigo); outline: none; }
.nt-callout { max-width: 700px; padding: 20px 22px; border: 1px solid var(--nt-border); border-left: 4px solid var(--nt-indigo); border-radius: 12px; background: var(--nt-surface); }
.nt-callout > span, .nt-eyebrow { display: block; color: var(--nt-muted); font-size: .65rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.nt-callout p { margin: 8px 0 0; font-size: .92rem; line-height: 1.6; }
.nt-callout-data { border-left-color: var(--nt-lime-ink); }
.nt-callout-data ul { margin: 10px 0 0; padding-left: 20px; color: var(--nt-muted); font-size: .88rem; line-height: 1.6; }
.nt-article-figure { max-width: 700px; margin: 0; }
.nt-article-figure > div { aspect-ratio: 16 / 9; border-radius: 16px; background: var(--nt-section-color); opacity: .16; }
.nt-article-figure figcaption { margin-top: 8px; color: var(--nt-muted); font-size: .68rem; }
.nt-article-body { max-width: 700px; font-family: var(--nt-font-core); font-size: 1.08rem; line-height: 1.72; }
.nt-article-body > *:first-child { margin-top: 0; }
.nt-article-body h2 { margin: 1.9em 0 .7em; font-family: var(--wp--preset--font-family--sans); font-size: 1.65rem; line-height: 1.15; }
.nt-article-body blockquote { margin: 2em 0; padding: 20px 24px; border-left: 4px solid var(--nt-section-color); background: var(--nt-surface); font-size: 1.35rem; line-height: 1.4; }
.nt-guide-facts { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; padding: 16px 0; border-block: 1px solid var(--nt-border); font-size: .78rem; }
.nt-guide-facts span { display: flex; flex-direction: column; min-width: 95px; font-weight: 700; }
.nt-guide-facts small { color: var(--nt-muted); font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nt-guide-facts strong { margin-left: auto; padding: 5px 9px; border-radius: 999px; background: rgba(94, 243, 140, .2); color: var(--nt-lime-ink); font-size: .68rem; }
.nt-data-lead { display: grid; grid-template-columns: minmax(180px, .6fr) 1fr; gap: 24px; align-items: center; max-width: 700px; padding: 30px; border: 1px solid var(--nt-border); border-radius: 16px; background: var(--nt-surface); }
.nt-data-lead > div { display: flex; flex-direction: column; gap: 6px; }
.nt-data-lead strong { color: var(--nt-lime-ink); font-size: clamp(3rem, 8vw, 5rem); line-height: 1; letter-spacing: -.07em; }
.nt-data-lead span { color: var(--nt-muted); font-size: .72rem; line-height: 1.5; }
.nt-data-lead svg { width: 100%; color: var(--nt-lime-ink); }
.nt-chapters, .nt-method, .nt-sources, .nt-topic-row { display: flex; flex-direction: column; gap: 12px; max-width: 700px; }
.nt-chapters > div { display: flex; gap: 14px; padding: 16px; border: 1px solid var(--nt-border); border-radius: 10px; }
.nt-chapters > div > strong { color: var(--nt-indigo); }
.nt-chapters > div > span { display: flex; flex-direction: column; gap: 3px; }
.nt-chapters small, .nt-method p, .nt-sources, .nt-topic-row { color: var(--nt-muted); font-size: .82rem; line-height: 1.55; }
.nt-method h2 { margin: 0; font-size: 1.65rem; }
.nt-method p, .nt-sources ol { margin: 0; }
.nt-topic-row > div { display: flex; flex-wrap: wrap; gap: 7px; }
.nt-topic-row a { padding: 5px 9px; border: 1px solid var(--nt-border); border-radius: 999px; color: var(--nt-muted); font-size: .7rem; font-weight: 700; text-decoration: none; }
.nt-topic-row a:hover { border-color: var(--nt-indigo); color: var(--nt-indigo); }
.nt-article-rail { position: sticky; top: 92px; display: flex; flex-direction: column; gap: 12px; }
.nt-rail-card { display: flex; flex-direction: column; gap: 12px; padding: 20px; border: 1px solid var(--nt-border); border-radius: 12px; background: white; }
.nt-rail-card > a { padding-left: 10px; border-left: 2px solid transparent; color: var(--nt-muted); font-size: .78rem; font-weight: 650; line-height: 1.4; text-decoration: none; }
.nt-rail-card > a:hover, .nt-rail-card > a.is-active { border-color: var(--nt-indigo); color: var(--nt-indigo); }
.nt-glossary-mini strong, .nt-glossary-mini small { display: block; }
.nt-glossary-mini small { margin-top: 3px; color: var(--nt-muted); font-weight: 400; }
.nt-rail-accent { background: rgba(102, 98, 255, .06); }
.nt-rail-accent h3, .nt-rail-accent p { margin: 0; }
.nt-rail-accent p { color: var(--nt-muted); font-size: .8rem; line-height: 1.5; }
.nt-rail-accent > a { padding: 0; border: 0; color: var(--nt-indigo); font-weight: 800; }
.nt-related { margin-top: 64px; padding: 48px 0 72px; border-top: 1px solid var(--nt-border); }
.nt-related header { margin-bottom: 24px; }
.nt-related h2 { margin: 8px 0 0; font-size: 2rem; }
.nt-related > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.nt-related article { padding: 20px; border: 1px solid var(--nt-border); border-radius: 12px; }
.nt-related h3 { margin: 14px 0 8px; font-size: 1.1rem; line-height: 1.2; }
.nt-related h3 a { color: var(--nt-ink); text-decoration: none; }
.nt-related p { margin: 0; color: var(--nt-muted); font-size: .8rem; line-height: 1.5; }

/* Glossary --------------------------------------------------------------- */
.nt-glossary-directory, .nt-term-page { width: min(100% - 48px, 1240px); margin-inline: auto; padding: 32px 0 96px; }
.nt-page-header { display: flex; flex-direction: column; gap: 12px; padding-bottom: 24px; border-bottom: 2px solid var(--nt-ink); }
.nt-page-header .nt-eyebrow::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--nt-section-color); }
.nt-page-header h1 { margin: 0; font-size: 40px; line-height: 1.15; letter-spacing: -.032em; }
.nt-page-header p { max-width: 760px; margin: 0; color: var(--nt-muted); font-family: var(--nt-font-editorial); font-size: 20px; line-height: 1.55; }
.nt-page-header small { color: var(--nt-muted); }
.nt-glossary-controls { display: grid; grid-template-columns: 1fr 220px; gap: 20px; margin: 32px 0 20px; }
.nt-glossary-controls > div, .nt-glossary-controls > form { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.nt-glossary-controls label { color: var(--nt-muted); font-size: .65rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.nt-glossary-controls input, .nt-glossary-controls select { min-height: 48px; width: 100%; padding: 10px 13px; border: 1px solid var(--nt-border); border-radius: 10px; background: white; color: var(--nt-ink); font: inherit; }
.nt-glossary-controls input:focus, .nt-glossary-controls select:focus { border-color: var(--nt-indigo); outline: 3px solid rgba(102,98,255,.18); }
.nt-glossary-search-field { position: relative; }
.nt-glossary-search-field input { padding-right: 88px; }
.nt-glossary-search-field button { position: absolute; top: 50%; width: 32px; height: 32px; padding: 0; transform: translateY(-50%); border: 0; border-radius: 50%; background: var(--nt-surface); color: var(--nt-muted); font-size: 20px; cursor: pointer; }
.nt-glossary-search-field .nt-glossary-submit { right: 8px; background: var(--nt-ink); color: white; font-size: 18px; }
.nt-glossary-search-field .nt-glossary-clear { right: 44px; }
.nt-glossary-search-field button:hover, .nt-glossary-search-field button:focus-visible { background: var(--nt-ink); color: white; outline: none; }
.nt-alpha-index { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 32px; }
.nt-alpha-index button { min-width: 30px; height: 30px; padding: 0 7px; border: 1px solid var(--nt-border); border-radius: 6px; background: transparent; color: var(--nt-ink); font-size: .7rem; font-weight: 800; cursor: pointer; }
.nt-alpha-index button:disabled { cursor: not-allowed; opacity: .28; }
.nt-alpha-index button.is-active { border-color: var(--nt-ink); background: var(--nt-ink); color: white; }
.nt-glossary-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.nt-glossary-card { display: flex; flex-direction: column; gap: 14px; min-height: 230px; padding: 22px 20px; border: 1px solid var(--nt-border); border-radius: 12px; }
.nt-glossary-card[hidden], .nt-glossary-empty[hidden] { display: none !important; }
.nt-glossary-card:hover { border-color: rgba(102,98,255,.45); }
.nt-glossary-card header { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.nt-glossary-card h2 { margin: 0; font-size: 1.15rem; }
.nt-glossary-card h2 a { color: var(--nt-ink); text-decoration: none; }
.nt-glossary-card h2 a:hover { color: var(--nt-indigo); }
.nt-glossary-card header span { padding: 4px 8px; border-radius: 999px; background: var(--nt-surface); color: var(--nt-muted); font-size: .63rem; font-weight: 800; text-transform: uppercase; }
.nt-glossary-card p { margin: 0; color: var(--nt-muted); font-size: .82rem; line-height: 1.6; }
.nt-glossary-card footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--nt-border); }
.nt-glossary-card footer small { color: var(--nt-muted); font-size: .65rem; }
.nt-glossary-card footer a { font-size: .67rem; font-weight: 800; text-decoration: none; }
.nt-glossary-empty { padding: 42px; border: 1px dashed var(--nt-border); text-align: center; color: var(--nt-muted); }
.nt-glossary-empty strong { display: block; color: var(--nt-ink); font-size: 1rem; }
.nt-glossary-empty p { margin: 8px 0 18px; }
.nt-glossary-empty button { padding: 10px 14px; border: 0; border-radius: 8px; background: var(--nt-ink); color: white; font: 700 11px/1 var(--nt-font-core); letter-spacing: .04em; cursor: pointer; text-transform: uppercase; }
.nt-glossary-how { margin-top: 64px; padding-top: 48px; border-top: 1px solid var(--nt-border); }
.nt-glossary-how h2 { margin: 8px 0 24px; font-size: 2rem; }
.nt-glossary-how > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.nt-glossary-how article { padding: 20px; border: 1px solid var(--nt-border); border-radius: 12px; }
.nt-glossary-how b { color: var(--nt-indigo); font-size: .72rem; text-transform: uppercase; }
.nt-glossary-how p { color: var(--nt-muted); font-size: .82rem; line-height: 1.55; }
.nt-back-link { display: inline-block; margin-bottom: 28px; color: var(--nt-muted); font-size: .76rem; font-weight: 800; text-decoration: none; }
.nt-term-page > header { display: flex; flex-direction: column; gap: 16px; max-width: 800px; padding-bottom: 32px; border-bottom: 2px solid var(--nt-ink); }
.nt-term-page h1 { margin: 0; font-size: clamp(2.6rem, 7vw, 5rem); }
.nt-term-page > header p { margin: 0; color: var(--nt-muted); font-family: var(--nt-font-editorial); font-size: 1.3rem; line-height: 1.5; }
.nt-term-grid { display: grid; grid-template-columns: minmax(0, 700px) 300px; gap: 64px; margin-top: 40px; }
.nt-term-definition { font-family: var(--nt-font-editorial); font-size: 1.08rem; line-height: 1.72; }

/* Search ----------------------------------------------------------------- */
.nt-search-page { width: min(100% - 48px, 1240px); margin-inline: auto; padding: 64px 0 96px; }
.nt-search-hero { max-width: 920px; padding-bottom: 40px; border-bottom: 2px solid var(--nt-ink); }
.nt-search-hero .nt-eyebrow::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--nt-indigo); }
.nt-search-hero h1 { margin: 12px 0 10px; font-size: clamp(2.5rem, 6vw, 4.8rem); line-height: 1; letter-spacing: -.06em; }
.nt-search-hero > p { max-width: 640px; margin: 0; color: var(--nt-muted); font-family: var(--nt-font-editorial); font-size: 20px; line-height: 1.5; }
.nt-search-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; max-width: 820px; margin-top: 28px; }
.nt-search-form input { min-width: 0; height: 60px; padding: 0 18px; border: 1px solid var(--nt-border); border-right: 0; border-radius: 10px 0 0 10px; color: var(--nt-ink); font: 600 16px/1 var(--nt-font-core); }
.nt-search-form input:focus { position: relative; z-index: 1; border-color: var(--nt-indigo); outline: 4px solid rgba(102,98,255,.15); }
.nt-search-form button { display: inline-flex; gap: 8px; align-items: center; justify-content: center; min-width: 120px; padding: 0 20px; border: 0; border-radius: 0 10px 10px 0; background: var(--nt-indigo); color: white; font: 800 12px/1 var(--nt-font-core); letter-spacing: .05em; cursor: pointer; text-transform: uppercase; }
.nt-search-form button:hover { background: var(--nt-indigo-ink); }
.nt-search-hero .nt-search-summary { margin-top: 18px; font-family: var(--nt-font-core); font-size: 13px; }
.nt-search-summary strong { color: var(--nt-ink); }
.nt-search-section { margin-top: 56px; }
.nt-search-section > header { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 7px 24px; margin-bottom: 22px; }
.nt-search-section > header .nt-eyebrow { grid-column: 1 / -1; }
.nt-search-section > header h2 { margin: 0; font-size: 28px; line-height: 1.15; letter-spacing: -.035em; }
.nt-search-section > header > a { font-size: 12px; font-weight: 800; text-decoration: none; }
.nt-search-glossary { padding: 28px; border-radius: 16px; background: rgba(255,91,40,.055); }
.nt-search-glossary-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.nt-search-glossary-grid article { display: flex; min-height: 190px; padding: 18px; flex-direction: column; border: 1px solid rgba(255,91,40,.18); border-radius: 10px; background: white; }
.nt-search-glossary-grid article > span { color: var(--nt-orange-ink); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nt-search-glossary-grid h3 { margin: 9px 0 6px; font-size: 18px; }
.nt-search-glossary-grid h3 a { color: var(--nt-ink); text-decoration: none; }
.nt-search-glossary-grid p { margin: 0 0 16px; color: var(--nt-muted); font-size: 13px; line-height: 1.5; }
.nt-search-glossary-grid article > a { margin-top: auto; font-size: 11px; font-weight: 800; text-decoration: none; }
.nt-search-results { border-top: 1px solid var(--nt-border); }
.nt-search-result { display: grid; position: relative; grid-template-columns: 160px minmax(0, 1fr) 42px; gap: 28px; align-items: center; padding: 24px 18px 24px 22px; border-bottom: 1px solid var(--nt-border); }
.nt-search-result::before { content: ''; position: absolute; top: 24px; bottom: 24px; left: 0; width: 3px; border-radius: 99px; background: var(--nt-result-color, var(--nt-indigo)); }
.nt-search-result:hover { background: var(--nt-surface); }
.nt-search-result-meta { display: flex; flex-direction: column; gap: 5px; align-self: start; }
.nt-search-result-meta span { color: var(--nt-ink); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nt-search-result-meta time, .nt-search-result-meta small { color: var(--nt-muted); font-size: 11px; }
.nt-search-result h3 { margin: 0; font-size: 20px; line-height: 1.22; letter-spacing: -.025em; }
.nt-search-result h3 a { color: var(--nt-ink); text-decoration: none; }
.nt-search-result h3 a:hover { color: var(--nt-indigo); }
.nt-search-result p { max-width: 760px; margin: 8px 0 0; color: var(--nt-muted); font-family: var(--nt-font-editorial); font-size: 15px; line-height: 1.5; }
.nt-search-result-arrow { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid var(--nt-border); border-radius: 50%; color: var(--nt-ink); text-decoration: none; }
.nt-search-result:hover .nt-search-result-arrow { border-color: var(--nt-indigo); background: var(--nt-indigo); color: white; }
.nt-search-pagination { margin-top: 30px; }
.nt-search-pagination ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.nt-search-pagination a, .nt-search-pagination span { display: grid; min-width: 36px; height: 36px; padding: 0 10px; place-items: center; border: 1px solid var(--nt-border); border-radius: 7px; font-size: 12px; font-weight: 700; text-decoration: none; }
.nt-search-pagination .current { border-color: var(--nt-ink); background: var(--nt-ink); color: white; }
.nt-search-empty { max-width: 760px; margin-top: 56px; padding: 48px; border: 1px dashed var(--nt-border); border-radius: 14px; text-align: center; }
.nt-search-empty > span { display: block; color: var(--nt-indigo); font-size: 32px; }
.nt-search-empty h2 { margin: 12px 0 8px; font-size: 24px; }
.nt-search-empty p { margin: 0; color: var(--nt-muted); line-height: 1.55; }
.nt-search-empty div, .nt-search-shortcuts { display: flex; flex-wrap: wrap; gap: 7px; justify-content: center; margin-top: 22px; }
.nt-search-empty a, .nt-search-shortcuts a { padding: 7px 11px; border: 1px solid var(--nt-border); border-radius: 999px; color: var(--nt-ink); font-size: 11px; font-weight: 800; text-decoration: none; }
.nt-search-shortcuts { justify-content: flex-start; margin-top: 36px; }
.nt-search-shortcuts span { align-self: center; margin-right: 4px; color: var(--nt-muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }

@media (max-width: 900px) {
  .nt-editorial-grid, .nt-term-grid { grid-template-columns: 1fr; gap: 36px; }
  .nt-article-rail { position: static; display: grid; grid-template-columns: repeat(2, 1fr); }
  .nt-related > div, .nt-glossary-grid, .nt-glossary-how > div { grid-template-columns: repeat(2, 1fr); }
  .nt-search-glossary-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .nt-rubric-highlight { grid-template-columns: 1fr; gap: 34px; }
  .nt-glossary-widget-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nt-focus-grid { grid-template-columns: 1fr; gap: 32px; }
}

@media (max-width: 640px) {
  .nt-editorial-article, .nt-glossary-directory, .nt-term-page, .nt-search-page { width: min(100% - 32px, 1240px); padding-top: 28px; }
  .nt-ticker-wrap { width: min(100% - 32px, 1240px); margin-top: -12px; }
  .nt-ticker { height: 42px; }
  .nt-ticker-label { padding-inline: 12px; font-size: 9px; }
  .nt-ticker-items { gap: 20px; padding-inline: 14px; }
  .nt-ticker-items a { font-size: 12px; }
  .nt-article-header h1 { font-size: 40px; }
  .nt-article-meta { align-items: flex-start; }
  .nt-meta-spacer { display: none; }
  .nt-article-meta button:first-of-type { margin-left: auto; }
  .nt-data-lead, .nt-glossary-controls { grid-template-columns: 1fr; }
  .nt-article-rail, .nt-related > div, .nt-glossary-grid, .nt-glossary-how > div { grid-template-columns: 1fr; }
  .nt-glossary-card { min-height: 0; }
  .nt-section-head { min-height: 0; margin-bottom: 24px; }
  .nt-section-head > a { font-size: 10px; }
  .nt-rubric-section { padding-block: 24px; }
  .nt-rubric-highlight { min-height: 0; padding: 28px 24px; }
  .nt-rubric-highlight h2 { font-size: 27px; }
  .nt-rubric-highlight blockquote { padding-left: 16px; font-size: 28px; }
  .nt-rubric-highlight-byline { flex-wrap: wrap; gap: 14px; }
  .nt-glossary-widget-list { grid-template-columns: 1fr; gap: 14px; }
  .nt-glossary-widget-term { min-height: 0; padding: 20px; }
  .nt-focus-deadlines article { grid-template-columns: 1fr; gap: 8px; }
  .nt-checklist-card { padding: 20px; }
  .nt-related { padding-bottom: 40px; }
  .nt-search-form { grid-template-columns: minmax(0,1fr) 92px; }
  .nt-search-form input { height: 54px; padding-inline: 13px; font-size: 14px; }
  .nt-search-form button { min-width: 0; padding-inline: 10px; }
  .nt-search-glossary { padding: 20px 16px; }
  .nt-search-glossary-grid { grid-template-columns: 1fr; }
  .nt-search-section > header { grid-template-columns: 1fr; align-items: start; }
  .nt-search-result { grid-template-columns: 1fr 36px; gap: 12px; padding: 20px 10px 20px 18px; }
  .nt-search-result-meta { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; gap: 8px; }
  .nt-search-result-arrow { grid-column: 2; grid-row: 2; }
  .nt-search-empty { padding: 34px 20px; }
}

/* Editorial corrections — September 2026. */
.nt-latest-item { grid-template-columns: 78px minmax(0, 1fr); }
.nt-latest-item time { line-height: 1.5; }
.nt-latest-title { gap: 12px; flex-wrap: wrap; }
.nt-newsletter button:hover, .nt-newsletter button:focus-visible,
.nt-newsletter .nt-figma-primary-button:hover, .nt-newsletter .nt-figma-primary-button:focus-visible { background: #242238; color: #fff; }
.nt-article-figure img { display: block; width: 100%; height: auto; border-radius: 16px; }
.nt-article-body h2[id] { scroll-margin-top: 120px; }
.nt-topic-row a { display: inline-flex; align-items: center; gap: 6px; }
.nt-topic-row a i { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--nt-topic-color, var(--nt-indigo)); }
.nt-search-result-arrow { align-self: center; justify-self: end; padding: 0; line-height: 1; font-family: var(--nt-font-core); }
.nt-landing-news { padding-top: clamp(28px, 4vw, 48px); }
.nt-landing-news + .nt-section-news { padding-top: 28px; }

/* Figma 45:186: editorial rail, adapted to latest news and publication dates. */
.nt-latest { border-top: 0; border-left: 1px solid var(--nt-border); padding-left: 24px; }
.nt-latest-title { padding: 0 0 16px; color: var(--nt-indigo); font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; }
.nt-latest-item { display: flex; flex-direction: column; gap: 8px; padding: 16px 0; }
.nt-latest-title + .nt-latest-item { padding-top: 0; border-top: 0; }
.nt-latest-rubric { padding-left: 8px; border-left: 2px solid var(--nt-rubric-color); font-size: 10px; font-weight: 700; line-height: 1.35; letter-spacing: .08em; text-transform: uppercase; }
.nt-latest-item h2 { margin: 0; font-size: 15px; line-height: 1.35; letter-spacing: -.032em; }
.nt-latest-item h2 a { font-size: inherit; line-height: inherit; }
.nt-latest-item p { margin: 0; color: var(--nt-muted); font-size: 13px; line-height: 1.6; letter-spacing: -.01em; }
.nt-latest-meta, .nt-latest-item time { color: var(--nt-muted); font-size: 11px; font-weight: 500; line-height: 1.35; }
.nt-latest-all { display: inline-block; margin-top: 8px; font-size: 11px; font-weight: 700; text-decoration: none; }
@media (max-width: 960px) {
  .nt-latest { border-left: 0; border-top: 1px solid var(--nt-border); padding: 20px 0 0; }
}

/* Fixed-size search icon: centering is independent of font glyph metrics. */
.nt-search-result-arrow { display: flex; align-items: center; justify-content: center; box-sizing: border-box; }
.nt-search-result-arrow svg { display: block; width: 16px; height: 16px; flex: 0 0 16px; }

/* Article sidebar — supplied editorial reference. */
.nt-article-rail .nt-rail-card { gap: 12px; padding: 24px 22px; border-radius: 12px; }
.nt-article-rail .nt-eyebrow { color: var(--nt-muted); font-size: 10px; font-weight: 600; line-height: 1.35; letter-spacing: .08em; text-transform: uppercase; }
.nt-rail-toc > a { padding-left: 10px; border-left-width: 2px; font-size: 13px; font-weight: 400; line-height: 1.5; }
.nt-rail-toc > a.is-active { color: var(--nt-indigo); border-left-color: var(--nt-indigo); font-weight: 700; }
.nt-rail-glossary > .nt-glossary-mini { padding: 0; border: 0; }
.nt-rail-glossary .nt-glossary-mini strong { color: var(--nt-indigo); font-size: 13px; font-weight: 600; line-height: 1.35; }
.nt-rail-glossary .nt-glossary-mini small { margin-top: 3px; font-size: 11px; font-weight: 400; line-height: 1.35; }
.nt-article-rail .nt-rail-accent { gap: 10px; padding: 20px 18px; background: #f8f8f8; }
.nt-rail-premium { display: flex; align-items: center; gap: 6px; }
.nt-rail-premium::before { content: ''; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--nt-indigo); }
.nt-rail-accent h3 { font-size: 15px; font-weight: 700; line-height: 1.35; letter-spacing: -.03em; }
.nt-rail-accent p { color: var(--nt-ink); font-size: 13px; line-height: 1.6; }
.nt-rail-kit-cta { align-self: flex-start; display: inline-flex; align-items: center; padding: 5px 10px; border: 1px solid #d4d2ff; border-radius: 5px; background: #faf9ff; color: var(--nt-indigo); font-size: 11px; font-weight: 600; line-height: 1.35; text-decoration: none; }
.nt-rail-kit-cta:hover { background: var(--nt-indigo); border-color: var(--nt-indigo); color: white; }
.nt-article-rail a:focus-visible { outline: 2px solid var(--nt-indigo); outline-offset: 3px; }

/* Editable navigation, footer contacts and consistent editorial typography. */
.nt-menu { list-style:none; margin:0; padding:0; }
.nt-mainnav>.nt-menu { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 20px; }
.nt-menu li { position:relative; margin:0; padding:0; }
.nt-mainnav .sub-menu { position:absolute; z-index:30; top:100%; left:0; display:none; min-width:200px; padding:12px; list-style:none; background:var(--nt-paper); border:1px solid var(--nt-border); box-shadow:0 8px 24px #0002; }
.nt-mainnav li:hover>.sub-menu,.nt-mainnav li:focus-within>.sub-menu { display:block; }
.nt-mainnav .sub-menu a { display:block; padding:8px; }
.nt-mainnav .sub-menu .sub-menu { position:static; border:0; box-shadow:none; padding-left:12px; }
.nt-mainnav .current-menu-item>a { color:var(--nt-ink); border-color:var(--nt-indigo); }
.nt-menu .sub-menu { list-style:none; }
.nt-mobile-menu .nt-menu a { display:block; }
.nt-editorial-article { --nt-font-editorial:var(--nt-font-core); --wp--preset--font-family--editorial:var(--nt-font-core); }
.nt-article-body :where(p,li,blockquote,h2,h3,h4,h5,h6),.editor-styles-wrapper .wp-block-post-content { font-family:var(--nt-font-core); }
@media (max-width: 760px) {
  .nt-mobile-menu nav>.nt-menu { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
}

/* Footer: proportions from the supplied Figma reference, without logos/disclaimer. */
.nt-site-footer {
  --nt-footer-muted: #ffffff;
  margin-top: 96px;
  padding: 0;
  background: #120e12;
  color: var(--nt-paper);
  font-family: var(--nt-font-core);
}
.nt-site-footer > .nt-footer-desktop,
.nt-site-footer > .nt-footer-mobile { width:100%; max-width:1440px !important; margin-inline:auto; }
.nt-footer-desktop { display:flex; flex-direction:column; gap:48px; padding:64px 96px 48px; }
.nt-footer-mobile { display:none; }
.nt-footer-top { display:grid; grid-template-columns:minmax(280px, 440px) minmax(0, 1fr); align-items:start; gap:48px; min-height:200px; }
.nt-footer-brand { display:flex; flex-direction:column; align-items:flex-start; gap:16px; min-width:0; }
.nt-footer-brand p { max-width:320px; margin:0; color:var(--nt-footer-muted); font-size:13px; font-weight:400; line-height:1.6; }
.nt-footer-eyebrow { display:block; color:var(--nt-footer-muted); font-size:12px; font-weight:bold; line-height:1.35; letter-spacing:.08em; text-transform:uppercase; }
.nt-footer-nav { display:grid; min-width:0; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; }
.nt-footer-column { display:flex; min-width:0; flex-direction:column; gap:12px; }
.nt-site-footer .nt-menu { display:flex; flex-direction:column; gap:10px; list-style:none; padding:0; margin:0; }
.nt-site-footer .nt-menu li { padding:0; margin:0; }
.nt-site-footer .nt-menu a { display:block; color:var(--nt-footer-muted); font-size:13px; font-weight:400; letter-spacing:-.01em; line-height:1.6; text-decoration:none; overflow-wrap:anywhere; }
.nt-site-footer .nt-menu a:hover,
.nt-site-footer .nt-menu a:focus-visible,
.nt-site-footer .nt-menu .current-menu-item>a { color:var(--nt-paper); }
.nt-site-footer .sub-menu { display:flex; flex-direction:column; gap:10px; list-style:none; margin:10px 0 0; padding-left:12px; }
.nt-footer-legal { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:54px; padding-top:24px; border-top:1px solid rgba(255,255,255,.08); }
.nt-footer-legal>.nt-footer-copyright { margin:0; color:var(--nt-footer-muted); font-family:var(--nt-font-core); font-size:13px; font-weight:400; letter-spacing:-.01em; line-height:1.6; white-space:nowrap; }
.nt-footer-contacts { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin:0; }
.nt-footer-contacts a { color:var(--nt-footer-muted); font-size:12px; font-weight:400; text-decoration:none; }
.nt-footer-contacts a:hover { color:var(--nt-paper); }
.nt-instagram { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; }
.nt-instagram svg { display:block; width:18px; height:18px; }
.nt-site-footer a:focus-visible { outline:2px solid var(--nt-paper); outline-offset:4px; }
@media (min-width:1440px) { .nt-footer-nav { gap:48px; } }
@media (min-width:1025px) and (max-width:1279px) {
  .nt-footer-desktop { padding-inline:64px; }
  .nt-footer-top { grid-template-columns:minmax(240px, 32%) minmax(0, 1fr); gap:40px; }
  .nt-footer-nav { gap:24px; }
}
@media (min-width:721px) and (max-width:1024px) {
  .nt-footer-desktop { padding:48px 32px 32px; gap:36px; }
  .nt-footer-top { grid-template-columns:1fr; gap:32px; }
  .nt-footer-brand p { max-width:440px; }
  .nt-footer-nav { gap:24px; }
}
@media (max-width:720px) {
  .nt-site-footer { margin-top:64px; }
  .nt-footer-desktop { display:none; }
  .nt-footer-mobile { display:flex; flex-direction:column; gap:32px; padding:40px 24px 28px; }
  .nt-footer-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 24px; }
  .nt-footer-legal { flex-wrap:wrap; gap:16px; }
  .nt-footer-legal>span { margin-left:auto; }
  .nt-instagram { width:44px; height:44px; }
}

.nt-footer-logo { display:inline-flex; align-items:center; width:fit-content; margin:0 0 8px; padding:0; }
.nt-footer-logo img { display:block; width:123px; height:24px; object-fit:contain; }

/* Also style copyright markup saved before the dedicated class was introduced. */
.nt-site-footer .nt-footer-legal > span,
.nt-site-footer .nt-footer-legal .nt-footer-copyright {
  margin:0; color:color:var(--nt-footer-muted) !important; !important; font-family:var(--nt-font-core) !important;
  font-size:13px !important; font-weight:400 !important; letter-spacing:-.01em; line-height:1.6 !important;
}
.nt-site-header .nt-header-manifesto { display:none !important; }

.nt-site-footer .nt-footer-legal > p { margin:0; }
.nt-site-footer .nt-footer-legal > p:last-child { margin-left:auto; }
