/* NomadThrive design layer (brand: navy #2D336B + periwinkle #7886C7, Sora + Nunito Sans)
   Palette: sand #efe6d8, linen #f7f1e7, bark #3d3229, terracotta #c2552b,
   terracotta-deep #a3441f, olive #2f3a2a, espresso #2b1f18, sage #5f6f52, clay #d9b99b */

:root {
	--nt-sand: #f6f7fc;
	--nt-linen: #ffffff;
	--nt-bark: #1f2340;
	--nt-terra: #4f5ba6;
	--nt-terra-deep: #2d336b;
	--nt-olive: #2d336b;
	--nt-espresso: #1b1f45;
	--nt-sage: #5a68b5;
	--nt-clay: #c3caf0;
	--nt-line: rgba(31, 35, 64, .15);
	--nt-serif: "Sora", "Segoe UI", system-ui, sans-serif;
	--nt-sans: "Nunito Sans", "Segoe UI", system-ui, sans-serif;
	--nt-grade: saturate(1.05) contrast(1.03);
	--nt-arch: 999px 999px 0 0;
	--nt-soft-arch: 220px 220px 18px 18px;
	--nt-ease: cubic-bezier(.2, .7, .2, 1);
}

html { scroll-behavior: smooth; }
body { background: var(--nt-sand); color: var(--nt-bark); font-family: var(--nt-sans); -webkit-font-smoothing: antialiased; }
::selection { background: var(--nt-terra); color: var(--nt-linen); }
a { transition: color .2s ease; }
.nt-card, .nt-card:hover, .nt-related-card, .nt-tag, .nt-link, .nt-guides a, .nt-flinks a, .nt-pills a, .nt-post-meta a,
.page-content > article a, .hfe-post-card a, .nt-logo a { text-decoration: none !important; }
:focus-visible { outline: 2px solid var(--nt-terra); outline-offset: 3px; }

/* ---------- type ---------- */
.elementor-widget-heading .elementor-heading-title em,
.nt-related h2 em { font-style: normal; font-weight: inherit; color: var(--nt-terra); }
.nt-h2 .elementor-heading-title { font-size: clamp(2.1rem, 4.2vw, 3.4rem); line-height: 1.06; letter-spacing: -.015em; }
.nt-page-title .elementor-heading-title { font-size: clamp(2.6rem, 5.8vw, 4.9rem); line-height: 1.03; letter-spacing: -.02em; max-width: 14ch; }
.nt-eyebrow .elementor-heading-title,
.nt-kicker {
	font-family: var(--nt-sans); font-weight: 800; font-size: .78rem; letter-spacing: .16em; text-transform: uppercase; color: var(--nt-terra);
}
.nt-grain .nt-eyebrow .elementor-heading-title,
.nt-guides-band .nt-eyebrow .elementor-heading-title,
.nt-hero .nt-eyebrow .elementor-heading-title { color: var(--nt-clay); }
.nt-lead, .nt-lead p { font-size: 1.12rem; line-height: 1.7; }
.nt-lead p:last-child, .nt-note p:last-child, .nt-card-desc p:last-child { margin-bottom: 0; }
.nt-note { max-width: 420px; }
.nt-note p { color: rgba(31, 35, 64, .8); }
.nt-narrow { max-width: 620px; }

/* ---------- buttons ---------- */
.elementor-button { transition: background-color .25s ease, color .25s ease, transform .25s var(--nt-ease); }
.elementor-button:hover { transform: translateY(-2px); }
.nt-btn-outline .elementor-button {
	background: transparent !important; color: var(--nt-bark) !important; box-shadow: inset 0 0 0 1.5px var(--nt-bark);
}
.nt-btn-outline .elementor-button:hover { background: var(--nt-bark) !important; color: var(--nt-linen) !important; }
.nt-btn-light .elementor-button { background: var(--nt-linen) !important; color: var(--nt-terra-deep) !important; }
.nt-btn-light .elementor-button:hover { background: var(--nt-espresso) !important; color: var(--nt-linen) !important; }

/* ---------- header ---------- */
.nt-header { border-bottom: 1px solid var(--nt-line); background: rgba(246, 247, 252, .94) !important; backdrop-filter: saturate(1.2) blur(10px); }
.nt-logo .elementor-heading-title { font-family: var(--nt-serif); font-weight: 600; font-size: 1.7rem; letter-spacing: -.02em; line-height: 1; }
.nt-logo .elementor-heading-title a { color: var(--nt-bark); }
.nt-logo .elementor-heading-title em { font-style: normal; font-weight: inherit; color: var(--nt-terra); }
.nt-logo-light .elementor-heading-title a { color: var(--nt-linen); }
.nt-logo-light .elementor-heading-title em { color: var(--nt-clay); }
.nt-nav .hfe-nav-menu a.hfe-menu-item { font-weight: 700; font-size: .98rem; white-space: nowrap; }
@media (min-width: 1025px) {
	.nt-nav nav.hfe-nav-menu__layout-horizontal > ul.hfe-nav-menu { flex-wrap: nowrap; }
	.nt-nav .hfe-nav-menu > li > a.hfe-menu-item { padding-left: 11px !important; padding-right: 11px !important; }
}
.nt-nav .sub-menu { border-radius: 18px; overflow: hidden; border: 1px solid var(--nt-line); box-shadow: 0 18px 40px -24px rgba(27, 31, 69, .45); min-width: 210px; }
.nt-nav .sub-menu a.hfe-sub-menu-item { font-weight: 600; font-size: .95rem; }
.nt-header-search .hfe-search-icon-toggle i { color: var(--nt-bark); }
.nt-header-cta .elementor-button { padding: 12px 20px; font-size: 12px; }
@media (max-width: 1024px) {
	.nt-header-cta { display: none; }
	.nt-header-right { flex-direction: row-reverse !important; gap: 18px !important; }
	.nt-nav .hfe-nav-menu__toggle { margin: 0 !important; color: var(--nt-bark) !important; border: 0 !important; }
	.nt-nav .hfe-nav-menu__toggle svg { fill: var(--nt-bark) !important; width: 22px; height: 22px; }
	.nt-nav nav.hfe-dropdown { background: var(--nt-linen); border-radius: 0 0 22px 22px; border-top: 1px solid var(--nt-line); }
	.nt-nav nav.hfe-dropdown a.hfe-menu-item, .nt-nav nav.hfe-dropdown a.hfe-sub-menu-item { padding-left: 1.5rem !important; }
}

/* ---------- hero ---------- */
.nt-hero { overflow: hidden; }
.nt-hero-inner { max-width: min(600px, 100%); }
.nt-hero-title .elementor-heading-title {
	font-size: clamp(2.7rem, 6.3vw, 5.4rem); line-height: 1.02; letter-spacing: -.025em; color: var(--nt-linen);
}
.nt-hero-title .elementor-heading-title em {
	color: var(--nt-clay);
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12'%3E%3Cpath d='M2 8 Q 17 1 32 7 T 62 7 T 92 7 T 118 6' fill='none' stroke='%237886c7' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") bottom left / 100% .28em no-repeat;
	padding-bottom: .08em;
}
.nt-hero-lead p { font-size: 1.2rem; line-height: 1.6; color: rgba(255, 255, 255, .9); max-width: 34rem; }
.nt-search { width: 100%; max-width: 520px; }
.nt-search .hfe-search-form__container { position: relative; border-radius: 999px; background: var(--nt-linen); box-shadow: 0 20px 50px -20px rgba(0, 0, 0, .55); }
.nt-search .hfe-search-form__input {
	height: 62px !important; border: 0 !important; border-radius: 999px !important; background: transparent !important;
	padding: 0 64px 0 28px !important; font-family: var(--nt-sans); font-size: 1.05rem !important; color: var(--nt-bark) !important;
}
.nt-search .hfe-search-form__input::placeholder { color: rgba(31, 35, 64, .6); }
.nt-search .hfe-search-form__container::after {
	content: ""; position: absolute; right: 8px; top: 8px; width: 46px; height: 46px; border-radius: 50%; pointer-events: none;
	background: var(--nt-terra) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f7f1e7' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") center / 20px no-repeat;
}
.nt-search #clear { display: none !important; }
.nt-pills p { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.nt-pills span { font-weight: 800; font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--nt-clay); margin-right: 4px; }
.nt-pills a {
	display: inline-block; padding: 7px 14px; border-radius: 999px; font-size: .88rem; font-weight: 700;
	color: var(--nt-linen); background: rgba(255, 255, 255, .12); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .35);
	transition: background-color .25s ease, color .25s ease;
}
.nt-pills a:hover { background: var(--nt-linen); color: var(--nt-terra-deep); }

/* ---------- head rows + cards ---------- */
.nt-headrow { border-bottom: 1px solid var(--nt-line); padding-bottom: 28px !important; }
.nt-grain .nt-headrow, .nt-guides-band .nt-headrow { border-color: rgba(255, 255, 255, .18); }
.nt-arch img, .nt-arch .elementor-widget-container img {
	width: 100%; aspect-ratio: 3 / 4; object-fit: cover; border-radius: var(--nt-arch); filter: var(--nt-grade);
	transition: transform .6s var(--nt-ease);
}
.nt-card { color: inherit; }
.nt-card .elementor-widget-image { overflow: hidden; border-radius: var(--nt-arch); }
.nt-card:hover .nt-arch img { transform: scale(1.04); }
.nt-card-title .elementor-heading-title { font-size: 1.55rem; line-height: 1.15; transition: color .25s ease; }
.nt-card:hover .nt-card-title .elementor-heading-title { color: var(--nt-terra); }
.nt-card-desc p { color: rgba(31, 35, 64, .78); font-size: 1rem; }
.nt-dest .nt-arch img { aspect-ratio: 3 / 4.4; }
.nt-dest .nt-card-desc p { font-weight: 800; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--nt-sage); }

/* ---------- deep sections with grain ---------- */
.nt-grain { position: relative; isolation: isolate; }
.nt-grain::after {
	content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: .07; mix-blend-mode: screen;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.nt-grain > .e-con-inner, .nt-grain > .elementor-element { position: relative; z-index: 1; }

/* ---------- story ---------- */
.nt-story-split .nt-split-a { position: relative; }
.nt-story-split .nt-split-a::before {
	content: ""; position: absolute; z-index: 0; width: 78%; height: 70%; right: -9%; bottom: -7%;
	background: var(--nt-terra); border-radius: 60% 40% 55% 45% / 50% 60% 40% 50%;
	animation: nt-drift 18s ease-in-out infinite alternate;
}
.nt-story-split .nt-split-a > * { position: relative; z-index: 1; }
.nt-portrait img { max-width: 440px; margin-inline: auto; display: block; }
@keyframes nt-drift { to { border-radius: 45% 55% 40% 60% / 60% 40% 55% 45%; transform: translate(-10px, 8px) rotate(4deg); } }
.nt-stats { border-top: 1px solid rgba(255, 255, 255, .18); border-bottom: 1px solid rgba(255, 255, 255, .18); flex-wrap: wrap; }
.nt-stat p { margin: 0; display: flex; flex-direction: column; line-height: 1.2; }
.nt-stat strong { font-family: var(--nt-serif); font-weight: 600; font-size: 2.6rem; color: var(--nt-clay); line-height: 1; }
.nt-stat span { font-size: .8rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; opacity: .8; margin-top: 6px; }

/* ---------- latest posts (UAE Basic Posts) ---------- */
.nt-posts .hfe-post-card { background: var(--nt-linen); border-radius: 28px; overflow: hidden; border: 1px solid var(--nt-line); transition: transform .35s var(--nt-ease); display: flex; flex-direction: column; }
.nt-posts .hfe-post-card:hover { transform: translateY(-4px); }
.nt-posts .hfe-post-image { overflow: hidden; margin: 12px 12px 0; border-radius: var(--nt-soft-arch); }
.nt-posts .hfe-post-image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; filter: var(--nt-grade); transition: transform .6s var(--nt-ease); }
.nt-posts .hfe-post-card:hover .hfe-post-image img { transform: scale(1.05); }
.nt-posts .hfe-post-content { padding: 22px 26px 28px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.nt-posts .hfe-post-title { font-family: var(--nt-serif); font-weight: 600; font-size: 1.45rem; line-height: 1.18; margin: 0; }
.nt-posts .hfe-post-title a { color: var(--nt-bark); }
.nt-posts .hfe-post-title a:hover { color: var(--nt-terra); }
.nt-posts .hfe-post-meta { order: -1; font-weight: 800; font-size: .74rem; letter-spacing: .14em; text-transform: uppercase; color: var(--nt-sage); }
.nt-posts .hfe-post-excerpt { color: rgba(31, 35, 64, .8); font-size: 1rem; line-height: 1.6; }
.nt-posts .hfe-read-more { margin-top: auto; font-weight: 800; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--nt-terra); }
.nt-posts .hfe-read-more::after { content: " \2192"; }

/* ---------- most-read guides ---------- */
.nt-guides ol { list-style: none; margin: 0; padding: 0; counter-reset: g; columns: 2; column-gap: 40px; }
.nt-guides li { counter-increment: g; break-inside: avoid; border-top: 1px solid rgba(255, 255, 255, .28); padding: 18px 0; display: flex; gap: 16px; align-items: baseline; }
.nt-guides li::before { content: counter(g, decimal-leading-zero); font-family: var(--nt-serif); font-size: 1.1rem; color: var(--nt-clay); min-width: 1.8em; }
.nt-guides a { font-family: var(--nt-serif); font-size: 1.28rem; line-height: 1.25; font-weight: 600; color: var(--nt-linen); background: linear-gradient(currentColor, currentColor) 0 100% / 0 1.5px no-repeat; transition: background-size .35s var(--nt-ease); }
.nt-guides a:hover { color: var(--nt-linen); background-size: 100% 1.5px; }
.nt-guides-band .nt-lead p { color: rgba(255, 255, 255, .9); }

/* ---------- newsletter ---------- */
.nt-newsletter .nt-h2 .elementor-heading-title em { color: var(--nt-terra-deep); }
.nt-newsletter .nt-eyebrow .elementor-heading-title { color: var(--nt-terra-deep); }
.nt-checks ul { list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 14px; }
.nt-checks li { position: relative; padding-left: 38px; font-weight: 600; line-height: 1.5; }
.nt-checks li::before {
	content: ""; position: absolute; left: 0; top: 0; width: 26px; height: 26px; border-radius: 50%;
	background: var(--nt-olive) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center / 15px no-repeat;
}

/* ---------- values (about) ---------- */
.nt-value { border-top: 2px solid var(--nt-terra); padding-top: 22px !important; }

/* ---------- footer ---------- */
.nt-footer { color: var(--nt-linen); }
.nt-fdesc p { color: rgba(255, 255, 255, .75); max-width: 30ch; }
.nt-flinks ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.nt-flinks a { color: rgba(255, 255, 255, .82); font-weight: 600; }
.nt-flinks a:hover { color: var(--nt-clay); }
.nt-fbottom { border-top: 1px solid rgba(255, 255, 255, .15); }
.nt-copy, .nt-copy p, .nt-copy .hfe-copyright-wrapper, .nt-copy .hfe-copyright-wrapper a, .nt-copy .hfe-copyright-wrapper span { color: rgba(255, 255, 255, .6) !important; font-size: .88rem; margin: 0; }
.nt-social p { gap: 6px; }
.nt-social a { font-size: .78rem; padding: 6px 12px; }

/* ---------- gentle reveal on scroll (CSS only, no JS) ---------- */
@supports (animation-timeline: view()) {
	.nt-band .nt-headrow, .nt-band .nt-row > .e-con, .nt-band .nt-split > .e-con, .nt-posts .hfe-post-card {
		animation: nt-rise linear both; animation-timeline: view(); animation-range: entry 0% entry 35%;
	}
}
@keyframes nt-rise { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; scroll-behavior: auto !important; }
	/* keep gentle fades and colour changes, remove movement */
	.nt-card:hover .nt-arch img, .nt-posts .hfe-post-card:hover, .nt-posts .hfe-post-card:hover .hfe-post-image img, .page-content > article:hover, .page-content > article:hover img, .elementor-button:hover, .nt-so__panel { transform: none !important; }
}

/* ======================================================
   Blog, archives, search, single posts (Hello Elementor)
   ====================================================== */
body:not(.elementor-page) .site-main { max-width: 1240px; margin-inline: auto; padding: 0 1.5rem; }
body:not(.elementor-page) .site-main > .page-header {
	padding: clamp(3rem, 7vw, 5.5rem) 0 2.5rem; margin-bottom: 3rem; border-bottom: 1px solid var(--nt-line);
}
.site-main .page-header .entry-title {
	font-family: var(--nt-serif); font-weight: 600; font-size: clamp(2.4rem, 5.2vw, 4.4rem); line-height: 1.05; letter-spacing: -.02em; color: var(--nt-bark); margin: 0; max-width: 20ch;
}
.archive-description, .archive-description p { font-size: 1.15rem; color: rgba(31, 35, 64, .8); max-width: 40rem; margin-top: 1rem; }

/* card grid for blog + archives + search */
body.blog .site-main > .page-content,
body.archive .site-main > .page-content,
body.search .site-main > .page-content {
	display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px 28px; padding-bottom: 5rem;
}
body.blog .page-content > article,
body.archive .page-content > article,
body.search .page-content > article {
	display: flex; flex-direction: column; gap: 12px; margin: 0 !important; padding: 12px 12px 26px;
	background: var(--nt-linen); border: 1px solid var(--nt-line); border-radius: 28px; transition: transform .35s var(--nt-ease);
}
body.blog .page-content > article:hover, body.archive .page-content > article:hover, body.search .page-content > article:hover { transform: translateY(-4px); }
.page-content > article > a:has(img) { order: -1; display: block; overflow: hidden; border-radius: var(--nt-soft-arch); }
.page-content > article img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; filter: var(--nt-grade); transition: transform .6s var(--nt-ease); }
.page-content > article:hover img { transform: scale(1.05); }
.page-content > article .entry-title { font-family: var(--nt-serif); font-weight: 600; font-size: 1.4rem; line-height: 1.2; margin: 10px 14px 0; }
.page-content > article .entry-title a { color: var(--nt-bark); }
.page-content > article .entry-title a:hover { color: var(--nt-terra); }
.page-content > article > p { margin: 0 14px; color: rgba(31, 35, 64, .78); font-size: 1rem; line-height: 1.6; }
.site-main .pagination { display: flex; justify-content: center; gap: 10px; padding-bottom: 5rem; }
.site-main .pagination a { padding: 12px 24px; border-radius: 999px; box-shadow: inset 0 0 0 1.5px var(--nt-bark); color: var(--nt-bark); font-weight: 800; text-decoration: none; }
.site-main .pagination a:hover { background: var(--nt-bark); color: var(--nt-linen); }
.site-main .pagination .meta-nav { box-shadow: none !important; padding: 0 !important; }
.site-main .page-header .entry-title em { font-style: normal; font-weight: inherit; color: var(--nt-terra); }

/* single post */
body.single-post .site-main { max-width: 820px; }
body.single-post .site-main > .page-header { border: 0; margin-bottom: 1.5rem; padding-bottom: 0; }
body.single-post .site-main .page-header .entry-title { max-width: none; font-size: clamp(2.3rem, 5vw, 3.9rem); }
.nt-post-meta { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; font-size: .9rem; font-weight: 700; color: rgba(31, 35, 64, .75); margin-bottom: 2rem; }
.nt-post-meta span + span::before { content: "·"; margin-right: 18px; color: var(--nt-terra); }
.nt-tag { padding: 6px 14px; border-radius: 999px; background: var(--nt-clay); color: var(--nt-bark) !important; font-size: .74rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.nt-tag:hover { background: var(--nt-terra); color: var(--nt-linen) !important; }
.nt-post-hero { margin: 0 0 3rem; }
@media (min-width: 1000px) { .nt-post-hero { margin-inline: -110px; } }
.nt-post-hero img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 320px 320px 24px 24px; filter: var(--nt-grade); display: block; }
.nt-prose { font-size: 1.14rem; line-height: 1.8; }
.nt-prose > * { max-width: 68ch; }
.nt-prose h2 { font-family: var(--nt-serif); font-weight: 600; font-size: clamp(1.7rem, 3vw, 2.2rem); line-height: 1.15; margin: 2.6rem 0 1rem; color: var(--nt-bark); }
.nt-prose ul { padding-left: 1.2rem; }
.nt-prose li { margin-bottom: .5rem; }
.nt-prose li::marker { color: var(--nt-terra); }
.nt-prose blockquote {
	margin: 2.5rem 0; padding: 2rem 2.2rem; border: 0; border-radius: 28px; background: var(--nt-olive); color: var(--nt-linen);
	font-family: var(--nt-serif); font-size: 1.45rem; line-height: 1.4;
}
.nt-prose blockquote p { margin: 0; }
.nt-author {
	display: flex; gap: 24px; align-items: flex-start; margin: 4rem 0 0; padding: 28px; border-radius: 28px; background: var(--nt-linen); border: 1px solid var(--nt-line);
}
.nt-author-img { width: 96px !important; height: 120px !important; object-fit: cover; border-radius: var(--nt-arch); flex-shrink: 0; filter: var(--nt-grade); }
.nt-author h3 { font-family: var(--nt-serif); font-weight: 600; font-size: 1.5rem; margin: 4px 0 8px; }
.nt-author p { margin: 0 0 10px; font-size: 1rem; line-height: 1.6; }
.nt-link { font-weight: 800; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; }
.nt-link::after { content: " \2192"; }
.nt-related { margin: 5rem 0 4rem; padding-top: 3rem; border-top: 1px solid var(--nt-line); }
.nt-related h2 { font-family: var(--nt-serif); font-weight: 600; font-size: 2.2rem; margin: 0 0 1.8rem; }
.nt-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.nt-related-card { display: flex; flex-direction: column; gap: 8px; color: var(--nt-bark); }
.nt-related-card img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 160px 160px 14px 14px; filter: var(--nt-grade); }
.nt-related-card h3 { font-family: var(--nt-serif); font-weight: 600; font-size: 1.12rem; line-height: 1.25; margin: 0; }
.nt-related-card:hover h3 { color: var(--nt-terra); }
body.single-post .post-tags, body.single-post #comments { max-width: 820px; }
#comments .comment-reply-title, #comments .title-comments { font-family: var(--nt-serif); }
#comments input[type=submit], .comment-form .submit { background: var(--nt-terra); color: var(--nt-linen); border: 0; border-radius: 999px; padding: 14px 26px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; font-size: .78rem; }
#comments textarea, #comments input[type=text], #comments input[type=email], #comments input[type=url] { border: 1px solid var(--nt-line); border-radius: 16px; background: var(--nt-linen); }

/* plain pages (privacy, contact) */
body.page:not(.elementor-page) .site-main { max-width: 820px; }
body.page:not(.elementor-page) .page-content { font-size: 1.1rem; line-height: 1.75; padding-bottom: 5rem; }

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
	body.blog .site-main > .page-content, body.archive .site-main > .page-content, body.search .site-main > .page-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.nt-row.nt-cards-3, .nt-row.nt-cards-4 { --column-gap: 14px !important; --row-gap: 30px !important; column-gap: 14px !important; row-gap: 30px !important; }
	.nt-cards-3 > .nt-card, .nt-cards-4 > .nt-card { --width: calc(50% - 7px) !important; width: calc(50% - 7px) !important; }
	.nt-card-title .elementor-heading-title { font-size: 1.12rem; }
	.nt-card-desc p { font-size: .88rem; line-height: 1.45; }
	.nt-dest .nt-card-desc p { font-size: .68rem; }
	.nt-hero::before { background-image: linear-gradient(180deg, rgba(27, 31, 69, .55) 0%, rgba(27, 31, 69, .82) 55%, rgba(27, 31, 69, .9) 100%) !important; opacity: 1 !important; }
	.nt-search .hfe-search-form__input { height: 56px !important; }
	.nt-search .hfe-search-form__container::after { width: 42px; height: 42px; top: 7px; right: 7px; }
	.nt-guides ol { columns: 1; }
	.nt-stat strong { font-size: 2.1rem; }
	.nt-stats { gap: 22px !important; }
	body.blog .site-main > .page-content, body.archive .site-main > .page-content, body.search .site-main > .page-content { grid-template-columns: 1fr; }
	.nt-related-grid { grid-template-columns: 1fr; }
	.nt-author { flex-direction: column; }
	.nt-post-hero img { border-radius: 180px 180px 18px 18px; aspect-ratio: 4 / 3; }
	.nt-portrait img { max-width: 320px; }
	.nt-hero-lead p { font-size: 1.05rem; }
}

/* ======================================================
   Brand refinements (v2)
   ====================================================== */
:root { --nt-peri: #7886c7; --nt-mist: #eceef8; --nt-navy: #2d336b; }

/* Sora is geometric: tighter tracking, bolder weights, highlighted words in periwinkle instead of italics */
.elementor-widget-heading .elementor-heading-title,
.site-main .page-header .entry-title, .nt-prose h2, .nt-related h2, .nt-author h3 { letter-spacing: -.03em; }
.nt-h2 .elementor-heading-title, .nt-page-title .elementor-heading-title, .nt-hero-title .elementor-heading-title { font-weight: 700; }
.nt-h2 .elementor-heading-title { font-size: clamp(1.9rem, 3.8vw, 3rem); line-height: 1.1; }
.nt-page-title .elementor-heading-title { font-size: clamp(2.3rem, 5vw, 4.2rem); line-height: 1.06; max-width: 16ch; }
.nt-hero-title .elementor-heading-title { font-size: clamp(2.5rem, 5.6vw, 4.8rem); line-height: 1.04; }
.elementor-widget-heading .elementor-heading-title em { color: var(--nt-terra); }
.nt-grain .elementor-heading-title em, .nt-guides-band .elementor-heading-title em, .nt-hero .elementor-heading-title em { color: var(--nt-peri); }
.nt-hero .elementor-heading-title em { color: #aab4ea; }
.nt-card-title .elementor-heading-title { font-size: 1.3rem; font-weight: 600; }
.nt-posts .hfe-post-title, .page-content > article .entry-title { font-size: 1.22rem; font-weight: 600; letter-spacing: -.02em; }
.nt-guides a { font-size: 1.08rem; }
.nt-guides li::before { font-weight: 700; }

/* logo */
.nt-logo-img img { width: 200px; height: auto; display: block; }
.nt-logo-light img { filter: brightness(0) invert(1); opacity: .95; }
@media (max-width: 767px) { .nt-logo-img img { width: 150px; } }

/* header + dropdowns in brand tones */
.nt-nav .sub-menu { box-shadow: 0 18px 40px -22px rgba(27, 31, 69, .35); }

/* buttons: navy default; light buttons on dark bands */
.nt-btn-light .elementor-button { background: #ffffff !important; color: var(--nt-navy) !important; }
.nt-btn-light .elementor-button:hover { background: var(--nt-peri) !important; color: #ffffff !important; }
.nt-search .hfe-search-form__container::after { background-color: var(--nt-navy); }

/* pills on light backgrounds */
.nt-pills-light span { color: var(--nt-sage); }
.nt-pills-light a { color: var(--nt-navy); background: #ffffff; box-shadow: inset 0 0 0 1px rgba(45, 51, 107, .18); }
.nt-pills-light a:hover { background: var(--nt-navy); color: #ffffff; }

/* cards on white/mist */
.nt-posts .hfe-post-card, body.blog .page-content > article, body.archive .page-content > article, body.search .page-content > article, .nt-author { background: #ffffff; border-color: rgba(45, 51, 107, .12); }
.nt-destinations .nt-card-desc p { color: var(--nt-sage); }

/* dark bands */
.nt-grain::after { opacity: .05; }
.nt-stat strong { color: #aab4ea; }
.nt-guides-band .nt-eyebrow .elementor-heading-title, .nt-grain .nt-eyebrow .elementor-heading-title, .nt-hero .nt-eyebrow .elementor-heading-title { color: #c3caf0; }
.nt-guides li::before { color: #c3caf0; }

/* newsletter on lavender */
.nt-newsletter .nt-eyebrow .elementor-heading-title, .nt-newsletter .nt-h2 .elementor-heading-title em { color: var(--nt-navy); }
.nt-newsletter .nt-h2 .elementor-heading-title em { background: linear-gradient(transparent 62%, rgba(120, 134, 199, .45) 62%); padding: 0 .1em; }
.nt-checks li::before { background-color: var(--nt-navy); }

/* story blob in periwinkle */
.nt-story-split .nt-split-a::before { background: var(--nt-peri); }

/* author box: NT monogram instead of a personal photo */
.nt-author-img { width: 72px !important; height: 72px !important; border-radius: 18px !important; object-fit: contain; background: #ffffff; padding: 6px; filter: none !important; box-shadow: inset 0 0 0 1px rgba(45, 51, 107, .12); }
.nt-tag { background: var(--nt-mist); color: var(--nt-navy) !important; }
.nt-tag:hover { background: var(--nt-navy); color: #ffffff !important; }

/* imported live posts: tidy their inline content */
.nt-prose img { max-width: 100%; height: auto; border-radius: 18px; }
.nt-prose table { width: 100%; border-collapse: collapse; font-size: .95rem; margin: 2rem 0; display: block; overflow-x: auto; }
.nt-prose th, .nt-prose td { border: 1px solid rgba(45, 51, 107, .15); padding: 10px 12px; text-align: left; }
.nt-prose th { background: var(--nt-mist); font-family: var(--nt-serif); font-size: .9rem; }
.nt-prose h3 { font-family: var(--nt-serif); font-weight: 600; font-size: 1.35rem; letter-spacing: -.02em; margin: 2rem 0 .75rem; }
.nt-prose a { color: var(--nt-terra); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.nt-prose blockquote { background: var(--nt-navy); }
.nt-stats { flex-wrap: nowrap !important; gap: 32px !important; }
.nt-stat { flex: 1 1 0; min-width: 0; }
.nt-stat strong { font-size: clamp(1.8rem, 3vw, 2.4rem); }
@media (max-width: 767px) { .nt-stats { gap: 16px !important; } .nt-stat span { font-size: .68rem; letter-spacing: .08em; } }

/* ======================================================
   Search: header button + full-screen overlay
   ====================================================== */
.nt-search-toggle {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	height: 42px; min-width: 42px; padding: 0 14px 0 12px; border-radius: 999px; cursor: pointer;
	background: #ffffff; color: var(--nt-navy); border: 0; box-shadow: inset 0 0 0 1px rgba(45, 51, 107, .18);
	font: 700 .88rem/1 var(--nt-sans); transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.nt-search-toggle:hover, .nt-search-toggle[aria-expanded="true"] { background: var(--nt-navy); color: #ffffff; box-shadow: none; }
.nt-search-toggle kbd { font: 700 .72rem/1 var(--nt-sans); padding: 3px 6px; border-radius: 6px; background: var(--nt-mist); color: var(--nt-navy); }
.nt-search-toggle:hover kbd { background: rgba(255, 255, 255, .18); color: #ffffff; }
@media (max-width: 1024px) { .nt-search-toggle { padding: 0; width: 42px; } .nt-search-toggle span, .nt-search-toggle kbd { display: none; } }

html.nt-so-open { overflow: hidden; }
.nt-so { position: fixed; inset: 0; z-index: 100000; display: flex; justify-content: center; align-items: flex-start; padding: clamp(1rem, 8vh, 6rem) 1.25rem 2rem; }
.nt-so[hidden] { display: none; }
.nt-so__backdrop { position: absolute; inset: 0; background: rgba(27, 31, 69, .72); backdrop-filter: blur(8px); opacity: 0; transition: opacity .22s ease; }
.nt-so__panel {
	position: relative; width: min(760px, 100%); max-height: calc(100dvh - 4rem); overflow: auto;
	background: #ffffff; border-radius: 28px; padding: clamp(1.5rem, 4vw, 2.6rem);
	box-shadow: 0 40px 90px -30px rgba(10, 12, 40, .6);
	opacity: 0; transform: translateY(-14px) scale(.985); transition: opacity .22s ease, transform .28s var(--nt-ease);
}
.nt-so.is-open .nt-so__backdrop { opacity: 1; }
.nt-so.is-open .nt-so__panel { opacity: 1; transform: none; }
.nt-so__close {
	position: absolute; top: 16px; right: 16px; width: 42px; height: 42px; border-radius: 50%; border: 0; cursor: pointer;
	display: grid; place-items: center; background: var(--nt-mist); color: var(--nt-navy); transition: background-color .2s ease, color .2s ease;
}
.nt-so__close:hover { background: var(--nt-navy); color: #ffffff; }
.nt-so__label { display: block; font: 700 clamp(1.5rem, 3.4vw, 2.2rem)/1.15 var(--nt-serif); letter-spacing: -.03em; color: var(--nt-bark); margin: 0 3rem 1.2rem 0; }
.nt-so__field { position: relative; display: flex; align-items: center; gap: 10px; border-radius: 999px; background: var(--nt-sand); box-shadow: inset 0 0 0 1.5px rgba(45, 51, 107, .16); padding: 6px 6px 6px 18px; transition: box-shadow .2s ease; }
.nt-so__field:focus-within { box-shadow: inset 0 0 0 2px var(--nt-peri), 0 0 0 5px rgba(120, 134, 199, .18); }
.nt-so__icon { color: var(--nt-peri); flex-shrink: 0; }
.nt-so__field input[type=search] {
	flex: 1; min-width: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; outline: none;
	font: 500 1.15rem/1.3 var(--nt-sans); color: var(--nt-bark); padding: 12px 4px !important; height: auto !important;
}
.nt-so__field input::placeholder { color: rgba(31, 35, 64, .45); }
.nt-so__field input::-webkit-search-cancel-button { -webkit-appearance: none; }
.nt-so__submit {
	border: 0; cursor: pointer; border-radius: 999px; padding: 14px 22px; background: var(--nt-navy); color: #ffffff;
	font: 800 .78rem/1 var(--nt-sans); letter-spacing: .14em; text-transform: uppercase; transition: background-color .2s ease;
}
.nt-so__submit:hover { background: var(--nt-terra); }
.nt-so__kicker { margin: 1.8rem 0 .8rem; font: 800 .74rem/1 var(--nt-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--nt-sage); }
.nt-so__pills { display: flex; flex-wrap: wrap; gap: 8px; }
.nt-so__pills a { padding: 9px 16px; border-radius: 999px; background: var(--nt-mist); color: var(--nt-navy); font-weight: 700; font-size: .92rem; text-decoration: none; transition: background-color .2s ease, color .2s ease; }
.nt-so__pills a:hover { background: var(--nt-navy); color: #ffffff; }
.nt-so__list { list-style: none; margin: 0; padding: 0; }
.nt-so__list li + li { border-top: 1px solid rgba(45, 51, 107, .1); }
.nt-so__list a {
	display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 4px;
	font: 600 1.02rem/1.35 var(--nt-serif); letter-spacing: -.02em; color: var(--nt-bark); text-decoration: none; transition: color .2s ease, padding .2s ease;
}
.nt-so__list a::after { content: "\2192"; color: var(--nt-peri); transition: transform .2s ease; }
.nt-so__list a:hover, .nt-so__list a:focus-visible { color: var(--nt-terra); padding-left: 10px; }
.nt-so__list a:hover::after { transform: translateX(4px); }
.nt-so__status { margin: 1.6rem 0 0; color: rgba(31, 35, 64, .7); }
.nt-so__all { display: inline-block; margin-top: 1rem; font: 800 .78rem/1 var(--nt-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--nt-terra); text-decoration: none; }
.nt-so__all::after { content: " \2192"; }
@media (max-width: 767px) {
	.nt-so { padding: 0; align-items: stretch; }
	.nt-so__panel { border-radius: 0; max-height: 100dvh; min-height: 100dvh; width: 100%; padding: 1.25rem 1.25rem 2rem; }
	.nt-so__label { font-size: 1.4rem; margin-top: .4rem; }
	.nt-so__submit { padding: 12px 14px; letter-spacing: .08em; }
	.nt-so__field input[type=search] { font-size: 1rem; }
}
@media (prefers-reduced-motion: reduce) { .nt-so__panel, .nt-so__backdrop { transition: none; } }

/* keep brand colours on focus (overrides Hello Elementor default pink button focus) */
.nt-search-toggle:focus { background: #ffffff; color: var(--nt-navy); box-shadow: inset 0 0 0 1px rgba(45, 51, 107, .18); }
.nt-search-toggle:focus-visible, .nt-search-toggle[aria-expanded="true"] { background: var(--nt-navy); color: #ffffff; }
.nt-so__close:focus { background: var(--nt-mist); color: var(--nt-navy); }
.nt-so__close:focus-visible, .nt-so__close:hover { background: var(--nt-navy); color: #ffffff; }
.nt-so__submit:focus { background: var(--nt-navy); color: #ffffff; }
.nt-so__submit:focus-visible, .nt-so__submit:hover { background: var(--nt-terra); color: #ffffff; }

/* Buttons in the search UI: reset Elementor kit button defaults (padding, background, letter-spacing) that apply to every <button> */
.nt-so .nt-so__close, .nt-header .nt-search-toggle, .nt-so .nt-so__submit { box-sizing: border-box; margin: 0; line-height: 1; text-transform: none; letter-spacing: normal; border: 0; }
.nt-so .nt-so__close { width: 44px; height: 44px; min-width: 44px; padding: 0 !important; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--nt-mist); color: var(--nt-navy); top: 16px; right: 16px; }
.nt-so .nt-so__close svg { display: block; width: 20px; height: 20px; flex: none; }
.nt-so .nt-so__close:focus { background: var(--nt-mist); color: var(--nt-navy); }
.nt-so .nt-so__close:hover, .nt-so .nt-so__close:focus-visible { background: var(--nt-navy); color: #ffffff; }
.nt-header .nt-search-toggle { height: 42px; padding: 0 14px 0 12px; background: #ffffff; color: var(--nt-navy); box-shadow: inset 0 0 0 1px rgba(45, 51, 107, .18); font: 700 .88rem/1 var(--nt-sans); }
.nt-header .nt-search-toggle svg { display: block; flex: none; }
.nt-header .nt-search-toggle:focus { background: #ffffff; color: var(--nt-navy); }
.nt-header .nt-search-toggle:hover, .nt-header .nt-search-toggle:focus-visible, .nt-header .nt-search-toggle[aria-expanded="true"] { background: var(--nt-navy); color: #ffffff; box-shadow: none; }
@media (max-width: 1024px) { .nt-header .nt-search-toggle { width: 42px; padding: 0; justify-content: center; } }
.nt-so .nt-so__submit { padding: 14px 22px; background: var(--nt-navy); color: #ffffff; font: 800 .78rem/1 var(--nt-sans); letter-spacing: .14em; text-transform: uppercase; border-radius: 999px; }
.nt-so .nt-so__submit:hover, .nt-so .nt-so__submit:focus-visible { background: var(--nt-terra); color: #ffffff; }
@media (max-width: 767px) { .nt-so .nt-so__submit { padding: 12px 14px; letter-spacing: .08em; } .nt-so .nt-so__close { top: 12px; right: 12px; } }

/* ======================================================
   Tablet + mobile header (<= 1024px, where the menu collapses)
   ====================================================== */
@media (max-width: 1024px) {
	.nt-header.e-con { position: relative; }
	.nt-header > .e-con-inner { position: static; justify-content: space-between !important; }
	.nt-header .nt-logo-img { flex: 0 0 auto; }
	.nt-header .nt-logo-img img { width: 170px; }
	.nt-header .nt-header-right { flex: 0 0 auto !important; width: auto !important; margin-left: auto; position: static !important; flex-direction: row !important; justify-content: flex-end !important; gap: 10px !important; }
	.nt-header .nt-header-search { order: 1; flex: 0 0 auto; width: auto; }
	.nt-header .nt-nav { order: 2; flex: 0 0 auto !important; width: auto !important; position: static !important; }
	.nt-header .nt-nav .elementor-widget-container, .nt-header .nt-nav .hfe-nav-menu { position: static !important; }
	.nt-header .nt-nav .hfe-nav-menu__toggle {
		width: 42px !important; height: 42px !important; margin: 0 !important; padding: 0 !important; display: flex !important; align-items: center; justify-content: center;
		border-radius: 50% !important; background: #ffffff; box-shadow: inset 0 0 0 1px rgba(45, 51, 107, .18); color: var(--nt-navy) !important;
	}
	.nt-header .nt-nav .hfe-nav-menu__toggle.hfe-active-menu { background: var(--nt-navy); box-shadow: none; }
	.nt-header .nt-nav .hfe-nav-menu__toggle.hfe-active-menu svg { fill: #ffffff !important; }
	.nt-header .nt-nav .hfe-nav-menu-icon { display: flex; align-items: center; justify-content: center; line-height: 0; }
	.nt-header .nt-nav .hfe-nav-menu__toggle svg { width: 18px !important; height: 18px !important; fill: var(--nt-navy) !important; }

	/* full-width dropdown panel under the header */
	.nt-header .nt-nav nav.hfe-dropdown {
		position: absolute !important; top: 100% !important; left: 0 !important; right: 0 !important; width: auto !important; margin: 0 !important;
		background: #ffffff; border-top: 1px solid rgba(45, 51, 107, .1); border-radius: 0 0 24px 24px;
		box-shadow: 0 24px 40px -24px rgba(27, 31, 69, .35); max-height: calc(100dvh - 90px); overflow-y: auto; z-index: 50;
	}
	.nt-header .nt-nav nav.hfe-dropdown > ul { max-width: 1240px; margin: 0 auto; padding: 8px 0 16px; }
	.nt-header .nt-nav nav.hfe-dropdown li { text-align: left; border-bottom: 1px solid rgba(45, 51, 107, .08); }
	.nt-header .nt-nav nav.hfe-dropdown li:last-child { border-bottom: 0; }
	.nt-header .nt-nav nav.hfe-dropdown a.hfe-menu-item {
		padding: 15px 24px !important; font: 700 1.05rem/1.3 var(--nt-serif) !important; letter-spacing: -.02em; color: var(--nt-bark) !important;
		display: flex !important; justify-content: space-between; align-items: center;
	}
	.nt-header .nt-nav nav.hfe-dropdown .sub-menu { box-shadow: none !important; border: 0 !important; border-radius: 0 !important; background: var(--nt-sand) !important; min-width: 0 !important; }
	.nt-header .nt-nav nav.hfe-dropdown .sub-menu li { border-bottom: 1px solid rgba(45, 51, 107, .06); }
	.nt-header .nt-nav nav.hfe-dropdown a.hfe-sub-menu-item { padding: 13px 24px 13px 40px !important; font: 600 .98rem/1.3 var(--nt-sans) !important; color: var(--nt-bark) !important; background: transparent !important; }
	.nt-header .nt-nav nav.hfe-dropdown a.hfe-menu-item:hover, .nt-header .nt-nav nav.hfe-dropdown a.hfe-sub-menu-item:hover,
	.nt-header .nt-nav nav.hfe-dropdown .current-menu-item > a { color: var(--nt-terra) !important; }
	.nt-header .nt-nav nav.hfe-dropdown .hfe-menu-toggle { width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--nt-mist); }
}
@media (max-width: 767px) {
	.nt-header .nt-logo-img img { width: 150px; }
	.nt-header .nt-nav nav.hfe-dropdown a.hfe-menu-item { padding: 15px 20px !important; }
	.nt-header .nt-nav nav.hfe-dropdown a.hfe-sub-menu-item { padding-left: 36px !important; }
}



/* ======================================================
   Header behaviour (mode + speed set in Settings → NomadThrive)
   ====================================================== */
body.nt-hdr-smart #masthead, body.nt-hdr-sticky #masthead { position: sticky !important; top: 0; z-index: 999; }
body.nt-hdr-static #masthead { position: relative !important; }
body.admin-bar.nt-hdr-smart #masthead, body.admin-bar.nt-hdr-sticky #masthead { top: 32px; }
@media (max-width: 782px) { body.admin-bar.nt-hdr-smart #masthead, body.admin-bar.nt-hdr-sticky #masthead { top: 46px; } }

body.nt-hdr-smart #masthead {
	transform: translate3d(0, 0, 0);
	transition: transform var(--nt-hdr-speed, 350ms) cubic-bezier(.22, .61, .36, 1), opacity var(--nt-hdr-speed, 350ms) ease !important;
	will-change: transform;
}
body.nt-hdr-smart #masthead.nt-hdr-hidden { transform: translate3d(0, calc(-100% - 48px), 0); }
#masthead .nt-header { transition: box-shadow .3s ease, border-color .3s ease; }
#masthead.nt-hdr-scrolled .nt-header { box-shadow: 0 10px 30px -18px rgba(27, 31, 69, .35); border-bottom-color: transparent; }


/* Search popup switched off in settings */
body.nt-search-off .nt-header-search { display: none !important; }

/* v2 menu (6 items + search + CTA) overflows between the tablet breakpoint and ~1280px.
   Tighten link padding and size in that range only (2026-09-29). */
@media (min-width: 1025px) and (max-width: 1279px) {
	.elementor-57 .elementor-element.nt-nav .hfe-nav-menu > li > a.hfe-menu-item { padding-left: 6px !important; padding-right: 6px !important; font-size: 14.5px; }
	/* Icon-only search button in this range (aria-label="Search" stays for screen readers). */
	.nt-header .nt-search-toggle { width: 42px; padding: 0; }
	.nt-header .nt-search-toggle span, .nt-header .nt-search-toggle kbd { display: none; }
}

/* MailPoet signup (homepage, About, Start Here): match the pill button (2026-09-29). */
.nt-signup .mailpoet_form { margin: 0; padding: 0 !important; }
.nt-signup .mailpoet_paragraph { margin: 0 0 12px; }
.nt-signup input.mailpoet_text { width: 100% !important; max-width: 420px; height: 52px; padding: 0 22px !important; border-radius: 999px !important; border: 1px solid rgba(45, 51, 107, .25) !important; background: #ffffff !important; color: var(--nt-navy); font: 600 1rem/1 var(--nt-sans) !important; box-shadow: none !important; }
.nt-signup input.mailpoet_text:focus { outline: 2px solid var(--nt-navy); outline-offset: 2px; }
.nt-signup .mailpoet_message p { margin: 8px 0 0; font-weight: 700; }

/* Hub-and-spoke "series" box + in-article signup (plugin 1.4.0, 2026-09-29). */
.nt-prose .nt-series { margin: 28px 0; padding: 16px 22px; background: var(--nt-mist, #ECEEF8); border-left: 4px solid var(--nt-navy, #2D336B); border-radius: 0 16px 16px 0; font-weight: 700; line-height: 1.45; }
.nt-prose .nt-series .nt-kicker { display: block; margin: 0 0 4px; font: 800 .7rem/1 var(--nt-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--nt-navy, #2D336B); opacity: .7; }
.nt-prose .nt-series a { color: var(--nt-navy, #2D336B); text-decoration: underline; text-underline-offset: 3px; }
.nt-prose .nt-series ul { margin: 8px 0 0; padding-left: 20px; }
.nt-prose .nt-series li { margin: 4px 0; font-weight: 600; }
.nt-prose .nt-inline-signup { margin: 44px 0; padding: 30px 30px 26px; background: #D5DAF2; border-radius: 24px; }
.nt-prose .nt-inline-signup .nt-kicker { margin: 0; font: 800 .72rem/1 var(--nt-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--nt-navy, #2D336B); }
.nt-prose .nt-inline-signup h3 { margin: 8px 0 6px; }
.nt-prose .nt-inline-signup > p { margin: 0 0 16px; }
@media (max-width: 767px) { .nt-prose .nt-inline-signup { padding: 24px 20px 20px; } }
/* ===== v1.6.0: SVG replacements for the Font Awesome glyphs (FA is no longer loaded) ===== */
.hfe-nav-menu .sub-arrow i.fa { display: inline-flex; align-items: center; justify-content: center; font-style: normal; }
.hfe-nav-menu .sub-arrow i.fa::before {
	content: "" !important; display: block; width: 12px; height: 12px; background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .2s ease;
}
.hfe-nav-menu .sub-menu-active > a .sub-arrow i.fa::before,
.hfe-nav-menu .sub-menu-active > .hfe-has-submenu-container .sub-arrow i.fa::before,
.hfe-nav-menu .menu-active .sub-arrow i.fa::before { transform: rotate(180deg); }
.hfe-nav-menu .sub-menu .sub-arrow i.fa::before { transform: rotate(-90deg); }
i.clearable__clear { font-style: normal; display: inline-block; }
i.clearable__clear::before {
	content: "" !important; display: block; width: 14px; height: 14px; background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat;
}
