:root {
    --nv-terracotta-700: #8e3f2a;
    --nv-terracotta-600: #a54931;
    --nv-terracotta-500: #bf5b3a;
    --nv-olive-700: #435334;
    --nv-olive-600: #566b40;
    --nv-olive-500: #6f804b;
    --nv-sage-300: #a8b78a;
    --nv-cream-50: #faf6ee;
    --nv-cream-100: #f4ede1;
    --nv-sand-200: #e8dac5;
    --nv-charcoal-900: #1f2327;
    --nv-charcoal-700: #2b2f33;
    --nv-charcoal-500: #444a52;
    --nv-white: #fff;
    --nv-sky-500: #316f9f;
    --nv-radius: 16px;
    --nv-radius-xl: 24px;
    --nv-shadow: 0 2px 10px rgba(31, 35, 39, .06), 0 12px 32px rgba(31, 35, 39, .08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.nomadvillage-platform { margin: 0; background: var(--nv-cream-50); color: var(--nv-charcoal-900); font: 16px/1.55 Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.nomadvillage-platform h1,.nomadvillage-platform h2,.nomadvillage-platform h3 { margin: 0 0 .65em; font-family: Manrope, Inter, system-ui, sans-serif; line-height: 1.16; letter-spacing: -.025em; }
.nomadvillage-platform h1 { font-size: clamp(2.45rem, 6vw, 4.8rem); max-width: 14ch; }
.nomadvillage-platform h2 { font-size: clamp(1.9rem, 4vw, 2.7rem); }
.nomadvillage-platform h3 { font-size: 1.2rem; }
.nomadvillage-platform p { margin: 0 0 1.2rem; }
.nomadvillage-platform a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .18em; }
.nv-container { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
.nv-main { min-height: 70vh; }
.nv-skip { position: fixed; z-index: 10000; top: 8px; left: 8px; padding: 10px 16px; transform: translateY(-150%); background: var(--nv-charcoal-900); color: white; border-radius: 8px; }
.nv-skip:focus { transform: none; }
.nv-header { position: sticky; z-index: 50; top: 0; border-bottom: 1px solid rgba(142,63,42,.12); background: rgba(250,246,238,.94); backdrop-filter: blur(16px); }
.admin-bar .nv-header { top: 32px; }
.nv-header-inner { display: flex; min-height: 78px; align-items: center; gap: 28px; }
.nv-brand { display: inline-flex; align-items: center; gap: 12px; margin-right: auto; text-decoration: none !important; }
.nv-brand img { width: 164px; height: auto; object-fit: contain; }
.nv-brand-tagline { padding-left: 12px; border-left: 1px solid var(--nv-sand-200); color: var(--nv-charcoal-500); font-size: .7rem; }
.nv-nav { display: flex; align-items: center; gap: 24px; }
.nv-nav a { text-decoration: none; font-weight: 600; font-size: .9rem; }
.nv-menu-list { display: flex; align-items: center; gap: 22px; margin: 0; padding: 0; list-style: none; }
.nv-menu-list li { position: relative; margin: 0; }
.nv-menu-list .sub-menu { position: absolute; z-index: 70; top: calc(100% + 12px); left: -14px; display: none; min-width: 240px; padding: 9px; border: 1px solid var(--nv-sand-200); border-radius: 14px; background: #fff; box-shadow: var(--nv-shadow); list-style: none; }
.nv-menu-list li:hover > .sub-menu,.nv-menu-list li:focus-within > .sub-menu { display: grid; }
.nv-menu-list .sub-menu a { display: block; padding: 9px 10px; border-radius: 8px; }
.nv-menu-list .sub-menu a:hover { background: var(--nv-cream-100); }
.nv-nav-dropdown { position: relative; }
.nv-nav-dropdown summary { cursor: pointer; font-size: .9rem; font-weight: 650; list-style: none; }
.nv-nav-dropdown summary::-webkit-details-marker { display: none; }
.nv-nav-dropdown summary::after { margin-left: 5px; content: "⌄"; }
.nv-nav-dropdown > div { position: absolute; z-index: 70; top: calc(100% + 15px); left: -16px; display: grid; min-width: 245px; padding: 9px; border: 1px solid var(--nv-sand-200); border-radius: 14px; background: #fff; box-shadow: var(--nv-shadow); }
.nv-nav-dropdown > div a { padding: 9px 10px; border-radius: 8px; }
.nv-nav-dropdown > div a:hover { background: var(--nv-cream-100); }
.nv-mobile-nav { display: none; position: relative; }
.nv-language-menu { position: relative; flex: 0 0 auto; }
.nv-language-menu summary { display: inline-flex; min-height: 40px; align-items: center; gap: 7px; padding: 8px 11px; border: 1px solid var(--nv-sand-200); border-radius: 12px; background: #fff; cursor: pointer; font-size: .78rem; font-weight: 800; list-style: none; }
.nv-language-menu summary::-webkit-details-marker { display: none; }
.nv-language-menu summary::after { content: "⌄"; color: var(--nv-charcoal-500); font-size: .72rem; }
.nv-language-menu[open] summary { border-color: var(--nv-olive-500); }
.nv-language-options { position: absolute; z-index: 80; top: calc(100% + 8px); right: 0; display: grid; min-width: 176px; overflow: hidden; padding: 7px; border: 1px solid var(--nv-sand-200); border-radius: 14px; background: #fff; box-shadow: var(--nv-shadow); }
.nv-language-options a { display: flex; align-items: center; gap: 9px; padding: 9px 11px; border-radius: 9px; text-decoration: none; font-size: .82rem; font-weight: 650; }
.nv-language-options a:hover,.nv-language-options a[aria-current="page"] { background: var(--nv-cream-100); color: var(--nv-olive-700); }
.nomadvillage-platform .nv-btn { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 11px 19px; border: 2px solid transparent !important; border-radius: 14px; background-color: var(--nv-terracotta-600) !important; background-image: none !important; color: #fff !important; box-shadow: var(--nv-shadow); cursor: pointer; text-decoration: none !important; font: 700 .95rem/1 Inter,system-ui,sans-serif; opacity: 1 !important; }
.nomadvillage-platform .nv-btn:hover { background-color: var(--nv-terracotta-700) !important; color: #fff !important; transform: translateY(-1px); }
.nomadvillage-platform .nv-btn-olive { background-color: var(--nv-olive-700) !important; color: #fff !important; }
.nomadvillage-platform .nv-btn-olive:hover { background-color: #344229 !important; }
.nv-btn:focus-visible,.nomadvillage-platform input:focus-visible,.nomadvillage-platform select:focus-visible,.nomadvillage-platform textarea:focus-visible,.nomadvillage-platform a:focus-visible,.nomadvillage-platform button:focus-visible { outline: 3px solid #8fb7d0; outline-offset: 3px; }
.nv-btn-small { min-height: 40px; padding: 9px 14px; border-radius: 11px; font-size: .84rem; }
.nv-btn-wide { width: 100%; }
.nv-btn-link { border: 0; background: transparent; color: var(--nv-terracotta-700); cursor: pointer; font: 700 .84rem Inter,system-ui,sans-serif; }
.nv-check-row { display: flex; flex-wrap: wrap; gap: 9px 18px; margin: 16px 0; }
.nv-hero { overflow: hidden; padding: 76px 0 72px; background: linear-gradient(140deg,var(--nv-cream-50),var(--nv-cream-100)); }
.nv-hero .nv-container { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(340px,.95fr); align-items: center; gap: 58px; }
.nv-hero-copy > p { max-width: 640px; color: var(--nv-charcoal-500); font-size: 1.18rem; }
.nv-hero-photo { position: relative; min-height: 470px; overflow: hidden; margin: 0; border-radius: 42% 42% 18px 18px; box-shadow: var(--nv-shadow); }
.nv-hero-photo::after { position: absolute; inset: auto 0 0; height: 42%; background: linear-gradient(transparent,rgba(20,25,18,.76)); content: ""; }
.nv-hero-photo img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.nv-hero-photo figcaption { position: absolute; z-index: 2; right: 22px; bottom: 18px; left: 22px; color: white; font-size: .78rem; font-weight: 700; }
.nv-trust-row { display: flex; flex-wrap: wrap; gap: 9px 16px; margin-top: 22px; color: var(--nv-olive-700); font-size: .76rem; font-weight: 750; }
.nv-eyebrow { display: inline-block; margin-bottom: 11px; color: var(--nv-terracotta-700); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.nv-hero-art { position: relative; min-height: 430px; overflow: hidden; border-radius: 42% 42% 18px 18px; background: linear-gradient(#f4d9a9 0 48%,#d5c69a 48%); box-shadow: var(--nv-shadow); }
.nv-sun { position: absolute; top: 64px; right: 75px; width: 84px; height: 84px; border-radius: 50%; background: #d88050; box-shadow: 0 0 0 24px rgba(216,128,80,.12); }
.nv-hill { position: absolute; right: -80px; bottom: -105px; width: 560px; height: 330px; border-radius: 50% 50% 0 0; transform: rotate(-5deg); background: var(--nv-olive-600); }
.nv-hill-two { right: 140px; bottom: -180px; background: var(--nv-olive-700); }
.nv-house { position: absolute; z-index: 2; right: 36%; bottom: 95px; color: var(--nv-cream-50); font-size: 7rem; text-shadow: 0 8px 24px rgba(0,0,0,.2); }
.nv-search { position: relative; display: flex; max-width: 720px; gap: 8px; margin-top: 28px; padding: 7px; border: 1px solid var(--nv-sand-200); border-radius: 18px; background: white; box-shadow: var(--nv-shadow); }
.nv-search input { min-width: 0; flex: 1; min-height: 51px; padding: 0 16px; border: 0; background: transparent; font: inherit; }
.nv-search select { min-width: 160px; min-height: 51px; padding: 0 36px 0 13px; border: 0; border-left: 1px solid var(--nv-sand-200); background-color: transparent; color: var(--nv-charcoal-700); font: 650 .84rem/1 Inter,system-ui,sans-serif; }
.nv-suggestions { position: absolute; z-index: 20; top: calc(100% + 7px); right: 0; left: 0; overflow: hidden; border-radius: 14px; background: white; box-shadow: var(--nv-shadow); }
.nv-suggestions:empty { display: none; }
.nv-suggestions a { display: flex; justify-content: space-between; padding: 12px 16px; border-bottom: 1px solid var(--nv-cream-100); text-decoration: none; }
.nv-section { padding: 78px 0; }
.nv-section-tint { background: var(--nv-cream-100); }
.nv-section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.nv-section-head h2 { margin-bottom: 0; }
.nv-grid { display: grid; gap: 22px; }
.nv-grid-places { grid-template-columns: repeat(3,minmax(0,1fr)); }
.nv-grid-listings { grid-template-columns: repeat(3,minmax(0,1fr)); }
.nv-place-card,.nv-listing-card { overflow: hidden; border: 1px solid rgba(67,83,52,.1); border-radius: var(--nv-radius-xl); background: white; box-shadow: 0 8px 28px rgba(31,35,39,.045); text-decoration: none !important; transition: transform .18s ease,box-shadow .18s ease; }
.nv-place-card:hover,.nv-listing-card:hover { transform: translateY(-4px); box-shadow: var(--nv-shadow); }
.nv-place-card { display: grid; grid-template-columns: 42% 58%; min-height: 210px; }
.nv-place-card > div:last-child { padding: 23px; }
.nv-place-card p,.nv-listing-card p { color: var(--nv-charcoal-500); }
.nv-place-card small { color: var(--nv-olive-700); font-weight: 700; }
.nv-card-art { display: flex; min-height: 190px; align-items: end; padding: 18px; background: radial-gradient(circle at 70% 25%,#df9b70 0 12%,transparent 13%),linear-gradient(160deg,#b8c59e 0 43%,#6f804b 44% 70%,#435334 71%); color: white; }
.nv-card-art span { padding: 5px 9px; border-radius: 20px; background: rgba(31,35,39,.42); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.nv-card-photo { position: relative; min-height: 220px; overflow: hidden; }
.nv-card-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.nv-place-card:hover .nv-card-photo img { transform: scale(1.035); }
.nv-card-photo > span,.nv-card-photo > strong { position: absolute; left: 14px; padding: 5px 9px; border-radius: 999px; color: white; font-size: .65rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.nv-card-photo > span { top: 14px; background: rgba(31,35,39,.68); }
.nv-card-photo > strong { bottom: 14px; background: var(--nv-terracotta-600); }
.nv-listing-card img,.nv-listing-art { display: block; width: 100%; height: 220px; object-fit: cover; }
.nv-listing-card-body { padding: 21px; }
.nv-listing-card-body h3 { margin-bottom: 0; }
.nv-card-meta { display: flex; align-items: center; gap: 14px; color: var(--nv-olive-700); font-size: .82rem; }
.nv-card-meta strong { margin-left: auto; color: var(--nv-charcoal-900); font-size: .96rem; }
.nv-story { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; }
.nv-story > div p { max-width: 54ch; color: var(--nv-charcoal-500); font-size: 1.1rem; }
.nv-story ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--nv-sand-200); }
.nv-story li { display: flex; align-items: center; gap: 22px; padding: 19px 5px; border-bottom: 1px solid var(--nv-sand-200); font-size: 1.05rem; font-weight: 700; }
.nv-story li strong { color: var(--nv-terracotta-600); font-size: .8rem; }
.nv-page-hero,.nv-place-hero { padding: 68px 0 56px; background: var(--nv-cream-100); }
.nv-page-hero h1,.nv-place-hero h1 { font-size: clamp(2.4rem,5vw,4rem); }
.nv-page-hero .nv-search { margin-top: 24px; }
.nv-place-hero p { max-width: 780px; color: var(--nv-charcoal-500); font-size: 1.2rem; }
.nv-facts { display: flex; flex-wrap: wrap; gap: 9px; margin: 24px 0 30px; }
.nv-facts span { padding: 8px 12px; border-radius: 999px; background: var(--nv-cream-100); color: var(--nv-olive-700); font-size: .86rem; font-weight: 700; }
.nv-place-hero .nv-facts span { background: white; }
.nv-search-layout { display: grid; grid-template-columns: 240px minmax(0,1fr); gap: 38px; align-items: start; }
.nv-filters { position: sticky; top: 105px; padding: 20px; border-radius: var(--nv-radius); background: white; box-shadow: 0 6px 24px rgba(31,35,39,.05); }
.nomadvillage-platform label { display: grid; gap: 6px; margin-bottom: 15px; color: var(--nv-charcoal-700); font-size: .82rem; font-weight: 700; }
.nomadvillage-platform input,.nomadvillage-platform select,.nomadvillage-platform textarea { width: 100%; min-height: 45px; padding: 10px 12px; border: 1px solid #cfc5b6; border-radius: 10px; background: white; color: var(--nv-charcoal-900); font: 400 1rem/1.4 Inter,system-ui,sans-serif; }
.nomadvillage-platform textarea { resize: vertical; }
.nomadvillage-platform .nv-check { display: flex; align-items: flex-start; gap: 8px; font-weight: 500; }
.nomadvillage-platform .nv-check input { width: 18px; min-height: 18px; margin-top: 2px; }
.nv-result-count { color: var(--nv-charcoal-500); }
.nv-prose { max-width: 780px; font-size: 1.05rem; }
.nv-prose h2 { margin-top: 1.4em; font-size: 1.8rem; }
.nv-prose a { color: var(--nv-sky-500); }
.nv-breadcrumb { margin-bottom: 17px; color: var(--nv-charcoal-500); font-size: .85rem; }
.nv-listing-hero { padding: 38px 0 80px; }
.nv-gallery { display: grid; min-height: 430px; grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; gap: 8px; overflow: hidden; margin-bottom: 44px; border-radius: var(--nv-radius-xl); background: var(--nv-cream-100); }
.nv-gallery img { width: 100%; height: 100%; object-fit: cover; }
.nv-gallery img:first-child { grid-row: 1 / 3; }
.nv-gallery-placeholder { display: grid; grid-column: 1 / 3; grid-row: 1 / 3; place-items: center; background: radial-gradient(circle at 72% 24%,#e8a175 0 9%,transparent 10%),linear-gradient(155deg,#d7ddb9 0 44%,#788c59 45% 70%,#435334 71%); color: white; font: 800 2rem Manrope,system-ui,sans-serif; }
.nv-listing-layout { display: grid; grid-template-columns: minmax(0,1fr) 360px; align-items: start; gap: 56px; }
.nv-listing-layout h1 { font-size: clamp(2.2rem,4.5vw,3.6rem); }
.nv-lead { color: var(--nv-charcoal-500); font-size: 1.18rem; }
.nv-booking-card { position: sticky; top: 105px; padding: 25px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: white; box-shadow: var(--nv-shadow); }
.nv-price { margin-bottom: 20px; }
.nv-price strong { font-size: 1.45rem; }
.nv-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.nv-booking-card small { display: block; margin-top: 13px; color: var(--nv-charcoal-500); text-align: center; }
.nv-form-status { margin: 10px 0 0; color: var(--nv-olive-700); font-size: .85rem; font-weight: 700; }
.nv-form-status.is-error { color: var(--nv-terracotta-700); }
.nv-amenities { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 22px; padding: 0; list-style: none; }
.nv-reviews blockquote { margin: 0 0 14px; padding: 20px; border-left: 4px solid var(--nv-terracotta-500); border-radius: 0 var(--nv-radius) var(--nv-radius) 0; background: white; }
.nv-dashboard-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,.6fr); gap: 50px; align-items: start; }
.nv-dashboard-section { padding-top: 34px; }
.nv-dashboard-shell { display: grid; grid-template-columns: 220px minmax(0,1fr); align-items: start; gap: 30px; }
.nv-role-nav { position: sticky; top: 105px; overflow: hidden; padding: 18px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius); background: white; }
.nv-role-nav > strong { display: block; margin-bottom: 12px; }
.nv-role-nav nav { display: grid; gap: 3px; margin-bottom: 18px; }
.nv-role-nav nav a { padding: 8px 10px; border-radius: 8px; color: var(--nv-charcoal-500); text-decoration: none; font-size: .82rem; }
.nv-role-nav nav a[aria-current="page"] { background: var(--nv-cream-100); color: var(--nv-olive-700); font-weight: 750; }
.nv-dashboard-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-bottom: 30px; }
.nv-dashboard-summary article { padding: 20px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius); background: white; }
.nv-dashboard-summary span,.nv-dashboard-summary strong { display: block; }
.nv-dashboard-summary span { color: var(--nv-charcoal-500); font-size: .78rem; }
.nv-dashboard-summary strong { margin-top: 7px; color: var(--nv-olive-700); font-size: 1.65rem; }
.nv-stack { display: grid; gap: 13px; }
.nv-dashboard-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius); background: white; text-decoration: none !important; }
.nv-dashboard-card h3 { margin: 6px 0; }
.nv-dashboard-card p { margin: 0 0 5px; color: var(--nv-charcoal-500); }
.nv-actions { display: flex; align-items: center; gap: 9px; }
.nv-status { display: inline-block; padding: 4px 8px; border-radius: 999px; background: var(--nv-cream-100); color: var(--nv-olive-700); font-size: .68rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.nv-status-confirmed,.nv-status-completed { background: #e1ebd8; }
.nv-status-declined,.nv-status-cancelled,.nv-status-refunded { background: #f5dfd8; color: var(--nv-terracotta-700); }
.nv-connect { margin-top: 26px; padding: 20px; border-radius: var(--nv-radius); background: var(--nv-olive-700); color: white; }
.nv-connect label { color: white; }
.nv-auth { max-width: 560px; }
.nv-auth form { padding: 26px; border-radius: var(--nv-radius-xl); background: white; box-shadow: var(--nv-shadow); }
.nv-join-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.8fr); align-items: start; gap: 50px; }
.nv-profile-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.nv-profile-grid a { display: flex; min-height: 110px; align-items: flex-end; justify-content: space-between; padding: 20px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius); background: white; text-decoration: none; }
.nv-profile-grid a[aria-current="true"] { border-color: var(--nv-terracotta-500); background: var(--nv-cream-100); box-shadow: var(--nv-shadow); }
.nv-profile-grid a span { color: var(--nv-terracotta-600); }
.nv-onboarding-note { margin-top: 14px; color: var(--nv-charcoal-500); font-size: .8rem; }
.nv-empty { display: grid; min-height: 180px; grid-column: 1 / -1; place-items: center; align-content: center; border: 1px dashed #cbbda8; border-radius: var(--nv-radius); color: var(--nv-charcoal-500); text-align: center; }
.nv-empty span { font-size: 2rem; }
.nv-footer { padding: 0; background: var(--nv-charcoal-900); color: var(--nv-cream-100); }
.nv-footer .nv-container { display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; }
.nv-footer strong { font: 750 1.2rem Manrope,system-ui,sans-serif; }
.nv-footer p,.nv-footer small { color: #c9c2b7; }
.nv-footer nav { display: flex; gap: 22px; }
.nv-footer small { grid-column: 1 / -1; }

.nv-audience-band { padding: 30px 0; background: var(--nv-olive-700); color: white; }
.nv-audience-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; overflow: hidden; border-radius: var(--nv-radius-xl); background: rgba(255,255,255,.2); }
.nv-audience-grid article { padding: 34px; background: var(--nv-olive-700); }
.nv-audience-grid h2 { font-size: clamp(1.55rem,3vw,2.2rem); }
.nv-audience-grid p { max-width: 58ch; color: #e8eddf; }
.nv-audience-grid .nv-eyebrow,.nv-section-dark .nv-eyebrow { color: #efb28e; }
.nomadvillage-platform .nv-btn-secondary { border-color: var(--nv-terracotta-700) !important; background-color: transparent !important; box-shadow: none; color: var(--nv-terracotta-700) !important; }
.nv-audience-grid .nv-btn-secondary,.nv-section-dark .nv-btn-secondary { color: white !important; }
.nomadvillage-platform .nv-audience-grid .nv-btn-secondary,.nomadvillage-platform .nv-section-dark .nv-btn-secondary,.nomadvillage-platform .nv-partner-cta .nv-btn-secondary { border-color: #fff !important; color: #fff !important; }
.nomadvillage-platform .nv-btn-secondary:hover { background-color: rgba(142,63,42,.08) !important; color: var(--nv-terracotta-700) !important; }
.nomadvillage-platform .nv-audience-grid .nv-btn-secondary:hover,.nomadvillage-platform .nv-section-dark .nv-btn-secondary:hover,.nomadvillage-platform .nv-partner-cta .nv-btn-secondary:hover { background-color: rgba(255,255,255,.12) !important; color: #fff !important; }
.nv-section-lead { max-width: 720px; color: var(--nv-charcoal-500); font-size: 1.05rem; }
.nv-ecosystem-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.nv-ecosystem-grid a { min-height: 210px; padding: 28px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: white; text-decoration: none; }
.nv-ecosystem-grid a:nth-child(2) { background: var(--nv-cream-100); }
.nv-ecosystem-grid a:nth-child(3) { background: #e7ecdf; }
.nv-ecosystem-grid span { color: var(--nv-terracotta-600); font-weight: 800; }
.nv-ecosystem-grid h3 { max-width: 15ch; margin-top: 45px; font-size: 1.5rem; }
.nv-section-dark { background: var(--nv-charcoal-900); color: white; }
.nv-section-dark .nv-story > div p { color: #d2cbc1; }
.nv-section-dark .nv-story ol { border-color: rgba(255,255,255,.18); }
.nv-section-dark .nv-story li { border-color: rgba(255,255,255,.18); }
.nv-editorial-hero { padding: 92px 0 76px; background: linear-gradient(135deg,var(--nv-cream-100),#ece5d6); }
.nv-editorial-hero h1 { max-width: 16ch; }
.nv-editorial-hero p { max-width: 760px; color: var(--nv-charcoal-500); font-size: 1.2rem; }
.nv-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.nv-info-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.nv-info-card { min-height: 180px; padding: 25px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius); background: white; }
.nv-info-card p { color: var(--nv-charcoal-500); }
.nv-search select { width: auto; min-width: 125px; border: 0; border-left: 1px solid var(--nv-sand-200); border-radius: 0; }
.nv-result-toolbar { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 24px; color: var(--nv-charcoal-500); }
.nv-result-toolbar span { font-size: .82rem; }
.nv-destination-hero { padding: 46px 0 64px; background: var(--nv-cream-100); }
.nv-destination-hero .nv-container { display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); align-items: center; gap: 52px; }
.nv-destination-copy > p { max-width: 680px; color: var(--nv-charcoal-500); font-size: 1.18rem; }
.nv-destination-hero figure { position: relative; min-height: 520px; overflow: hidden; margin: 0; border-radius: var(--nv-radius-xl); box-shadow: var(--nv-shadow); }
.nv-destination-hero figure img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.nv-destination-hero figcaption { position: absolute; right: 12px; bottom: 12px; padding: 6px 9px; border-radius: 7px; background: rgba(0,0,0,.66); color: white; font-size: .66rem; }
.nv-place-gallery-section { padding: 24px 0 8px; background: var(--nv-cream-100); }
.nv-place-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.nv-place-gallery figure { position: relative; min-height: 240px; overflow: hidden; margin: 0; border-radius: var(--nv-radius); }
.nv-place-gallery img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.nv-place-gallery figcaption { position: absolute; right: 8px; bottom: 8px; padding: 5px 7px; border-radius: 6px; background: rgba(0,0,0,.68); color: white; font-size: .58rem; }
.nv-destination-about { display: grid; grid-template-columns: minmax(0,1fr) 330px; align-items: start; gap: 70px; }
.nv-destination-about aside { padding: 26px; border-radius: var(--nv-radius); background: var(--nv-olive-700); color: white; }
.nv-destination-about aside p { color: #e7ecdf; }
.nv-empty-cta { max-width: 760px; text-align: center; }
.nv-marketplace-hero { background: linear-gradient(125deg,#efe5ce,#dce5d2); }
.nv-villagebox-catalogue { background: #f1eee5; }
.nv-catalogue-filters { display: grid; grid-template-columns: minmax(230px,1.5fr) repeat(3,minmax(150px,.65fr)) auto; gap: 9px; margin-bottom: 18px; padding: 13px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; box-shadow: var(--nv-shadow); }
.nv-catalogue-filters label { margin: 0; }
.nv-catalogue-filters input,.nv-catalogue-filters select { width: 100%; min-height: 48px; }
.nv-product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.nv-product-card { overflow: hidden; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; box-shadow: 0 9px 28px rgba(31,35,39,.05); text-decoration: none !important; transition: transform .18s ease,box-shadow .18s ease; }
.nv-product-card:hover { transform: translateY(-4px); box-shadow: var(--nv-shadow); }
.nv-product-card figure { height: 245px; margin: 0; overflow: hidden; background: var(--nv-cream-100); }
.nv-product-card figure img { width: 100%; height: 100%; object-fit: contain; padding: 12px; }
.nv-product-placeholder { display: grid; width: 100%; height: 100%; min-height: 240px; place-items: center; background: linear-gradient(145deg,#efe4c8,#c8d5b6 55%,#6f804b); color: #fff; font: 850 clamp(1.3rem,3vw,2.2rem) Manrope,system-ui,sans-serif; }
.nv-product-card > div { padding: 23px; }
.nv-product-card p { color: var(--nv-charcoal-500); font-size: .86rem; }
.nv-product-card-meta { display: flex; justify-content: space-between; gap: 15px; padding-top: 13px; border-top: 1px solid var(--nv-sand-200); font-size: .78rem; }
.nv-product-card-meta span { color: var(--nv-charcoal-500); }
.nv-product-card-meta strong { color: var(--nv-terracotta-700); }
.nv-product-hero { padding: 42px 0 72px; background: linear-gradient(135deg,var(--nv-cream-100),#e7eedf); }
.nv-product-hero-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(330px,.95fr); align-items: center; gap: clamp(40px,7vw,88px); margin-top: 26px; }
.nv-product-hero-grid > figure { height: min(620px,60vw); min-height: 420px; overflow: hidden; margin: 0; border-radius: var(--nv-radius-xl); background: #fff; box-shadow: var(--nv-shadow); }
.nv-product-hero-grid > figure img { width: 100%; height: 100%; object-fit: contain; padding: 20px; }
.nv-product-hero-grid h1 { font-size: clamp(2.4rem,5vw,4.6rem); }
.nv-product-facts { display: grid; gap: 0; margin: 24px 0; border-top: 1px solid var(--nv-sand-200); }
.nv-product-facts > div { display: grid; grid-template-columns: 130px 1fr; gap: 15px; padding: 11px 0; border-bottom: 1px solid var(--nv-sand-200); }
.nv-product-facts dt { color: var(--nv-charcoal-500); font-size: .78rem; }
.nv-product-facts dd { margin: 0; font-weight: 750; }
.nv-product-price { display: flex; align-items: baseline; gap: 10px; margin-bottom: 22px; }
.nv-product-price strong { color: var(--nv-olive-700); font: 850 2.2rem Manrope,system-ui,sans-serif; }
.nv-product-price span { color: var(--nv-charcoal-500); }
.nv-product-commerce-note { max-width: 54ch; margin-top: 16px !important; color: var(--nv-charcoal-500); font-size: .72rem; }
.nv-product-content { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,.6fr); align-items: start; gap: 55px; }
.nv-product-content > aside { padding: 28px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; }
.nv-product-content aside dl { display: grid; gap: 12px; }
.nv-product-content aside dl > div { display: grid; grid-template-columns: 1fr auto; gap: 15px; padding-top: 12px; border-top: 1px solid var(--nv-sand-200); }
.nv-product-content aside dt { color: var(--nv-charcoal-500); }
.nv-product-content aside dd { margin: 0; font-weight: 750; }
.nv-stories-hero { background: linear-gradient(125deg,#e5e8dd,#f1dfd2); }
.nv-grid-stories { grid-template-columns: repeat(2,minmax(0,1fr)); }
.nv-story-card { display: grid; grid-template-columns: 42% 58%; overflow: hidden; border-radius: var(--nv-radius-xl); background: white; box-shadow: 0 8px 28px rgba(31,35,39,.05); }
.nv-story-card img { width: 100%; height: 100%; min-height: 260px; padding: 10px; object-fit: contain; background: #f0ece4; }
.nv-story-card > div { padding: 26px; }
.nv-story-card h2 { font-size: 1.45rem; }
.nv-content-hub-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.nv-content-hub-nav a { padding: 9px 14px; border: 1px solid rgba(67,83,52,.25); border-radius: 999px; background: rgba(255,255,255,.68); color: var(--nv-olive-700); text-decoration: none; font-size: .8rem; font-weight: 800; }
.nv-content-hub-nav a[aria-current="page"] { border-color: var(--nv-olive-700); background: var(--nv-olive-700); color: #fff; }
.nv-press-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; align-items: start; gap: 36px; }
.nv-press-contact { position: sticky; top: 110px; padding: 28px; border-radius: var(--nv-radius-xl); background: var(--nv-olive-700); color: #fff; box-shadow: var(--nv-shadow); }
.nv-press-contact p,.nv-press-contact .nv-contact-address { color: #e6eadf; }
.nv-press-assets { display: grid; gap: 8px; margin-top: 26px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.2); }
.nv-press-assets h3 { margin-bottom: 4px; color: #fff; }
.nv-press-assets a { color: #fff; font-size: .8rem; }
.nv-press-placeholder { display: grid; min-height: 260px; place-items: center; background: linear-gradient(145deg,var(--nv-cream-100),var(--nv-sage-300)); color: var(--nv-olive-700); font: 900 2rem Manrope,system-ui,sans-serif; }
.nv-public-empty { grid-column: 1 / -1; padding: 30px; border: 1px dashed var(--nv-sand-200); border-radius: var(--nv-radius); background: #fff; }
.nv-impact-kpis { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.nv-impact-kpis article { padding: 24px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; }
.nv-impact-kpis span,.nv-impact-kpis strong,.nv-impact-kpis small { display: block; }
.nv-impact-kpis span { min-height: 42px; color: var(--nv-charcoal-500); font-size: .78rem; }
.nv-impact-kpis strong { margin: 14px 0 4px; color: var(--nv-olive-700); font: 800 clamp(2rem,4vw,3.4rem) Manrope,system-ui,sans-serif; }
.nv-impact-kpis small { color: var(--nv-charcoal-500); }
.nv-impact-method { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; margin-top: 34px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: var(--nv-sand-200); }
.nv-impact-method article { min-height: 310px; padding: 30px; background: #fff; }
.nv-impact-method p { color: var(--nv-charcoal-500); }
.nv-editor-note,.nv-roadmap-note { margin-top: 30px; padding: 20px 24px; border-left: 4px solid var(--nv-terracotta-500); border-radius: 0 var(--nv-radius) var(--nv-radius) 0; background: var(--nv-cream-100); }
.nv-editor-note p,.nv-roadmap-note p { margin: 0; color: var(--nv-charcoal-500); }
.nv-public-notice { margin-top: 30px; padding: 24px 28px; border-radius: var(--nv-radius); background: #e7ecdf; }
.nv-public-notice p { max-width: 850px; margin: 7px 0 0; color: var(--nv-charcoal-500); }
.nv-pricing-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.nv-pricing-grid article { padding: 30px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: white; }
.nv-pricing-grid h2 { color: var(--nv-olive-700); font-size: 3rem; }
.nv-pricing-audiences { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 24px; }
.nv-price-calculator { display: grid; grid-template-columns: minmax(280px,.75fr) minmax(0,1.25fr); gap: clamp(28px,5vw,65px); margin-top: 30px; padding: clamp(25px,4vw,42px); border-radius: var(--nv-radius-xl); background: var(--nv-olive-700); color: white; }
.nv-price-calculator h2 { color: white; }
.nv-price-calculator > div > p { margin-top: 15px; color: #e1e7d9; font-size: .8rem; }
.nv-price-calculator label { color: white; }
.nv-price-calculator input { margin-top: 7px; border-color: rgba(255,255,255,.34); background: white; color: var(--nv-charcoal-900); }
.nv-price-calculator dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 0; }
.nv-price-calculator dl > div { display: flex; min-height: 88px; flex-direction: column; justify-content: space-between; padding: 17px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(255,255,255,.08); }
.nv-price-calculator dt { color: #dbe3d2; font-size: .76rem; }
.nv-price-calculator dd { margin: 0; font-size: 1.35rem; font-weight: 850; }
.nv-price-calculator .is-total { background: white; color: var(--nv-charcoal-900); }
.nv-price-calculator .is-total dt { color: var(--nv-charcoal-500); }
.nv-footer-grid { grid-template-columns: minmax(240px,1.3fr) repeat(3,minmax(130px,.7fr)) !important; align-items: start !important; }
.nv-footer-grid { padding-block: 52px 34px; }
.nv-footer-brand img { width: 190px; height: auto; filter: invert(1); }
.nv-social-links { display: flex !important; flex-wrap: wrap; gap: 9px !important; margin-top: 20px; }
.nv-social-links a { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(255,255,255,.06); color: #fff !important; transition: background .18s ease,transform .18s ease; }
.nv-social-links a:hover { background: var(--nv-terracotta-600); transform: translateY(-2px); }
.nv-social-links svg { display: block; fill: currentColor; }
.nv-footer nav { display: grid; gap: 9px; }
.nv-footer nav strong { margin-bottom: 5px; color: white; font-size: .82rem; }
.nv-footer nav a { color: #d5cec4; text-decoration: none; font-size: .84rem; }
.nv-footer-grid > small { padding-top: 22px; border-top: 1px solid rgba(255,255,255,.15); }

.nv-partner-cta { padding: 56px 0; background: var(--nv-terracotta-600); color: #fff; }
.nv-partner-cta .nv-container { display: flex; align-items: center; justify-content: space-between; gap: 42px; }
.nv-partner-cta h2 { max-width: 24ch; margin-bottom: 8px; }
.nv-partner-cta p { max-width: 720px; margin: 0; color: #f8eae3; }
.nv-partner-cta .nv-eyebrow { color: #ffe0cf; }
.nv-country-strip { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-bottom: 30px; }
.nv-country-strip a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; padding: 22px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius); background: #fff; text-decoration: none; }
.nv-country-strip a > span { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 50%; background: var(--nv-olive-700); color: #fff; font-size: .75rem; font-weight: 800; }
.nv-country-strip small { color: var(--nv-charcoal-500); }
.nv-country-grid { display: grid; gap: 28px; }
.nv-country-card { display: grid; grid-template-columns: 48% 52%; overflow: hidden; min-height: 390px; border-radius: var(--nv-radius-xl); background: #fff; box-shadow: var(--nv-shadow); text-decoration: none !important; }
.nv-country-card figure { margin: 0; overflow: hidden; }
.nv-country-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.nv-country-card:hover img { transform: scale(1.025); }
.nv-country-card > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(30px,5vw,64px); }
.nv-country-card p { color: var(--nv-charcoal-500); }
.nv-country-card strong { color: var(--nv-terracotta-700); }
.nv-country-hero { position: relative; min-height: 560px; display: flex; align-items: end; overflow: hidden; color: #fff; }
.nv-country-hero::after { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(20,25,18,.82),rgba(20,25,18,.16)); content: ""; }
.nv-country-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.nv-country-hero .nv-container { position: relative; z-index: 2; padding-block: 90px; }
.nv-country-hero p { max-width: 650px; color: #f1ede5; font-size: 1.16rem; }
.nv-country-hero .nv-breadcrumb,.nv-country-hero .nv-eyebrow { color: #ffe0cf; }
.nv-attraction-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.nv-attraction-card { display: grid; grid-template-columns: 45% 55%; overflow: hidden; min-height: 270px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; }
.nv-attraction-card figure { position: relative; min-height: 250px; margin: 0; overflow: hidden; }
.nv-attraction-card figure img { width: 100%; height: 100%; object-fit: cover; }
.nv-attraction-card figcaption { position: absolute; right: 8px; bottom: 8px; left: 8px; padding: 5px 7px; border-radius: 6px; background: rgba(0,0,0,.68); color: #fff; font-size: .58rem; }
.nv-attraction-card > div { padding: 24px; }
.nv-attraction-card p { color: var(--nv-charcoal-500); }
.nv-attraction-link { color: inherit; text-decoration: none !important; }
.nv-text-link { color: var(--nv-terracotta-700) !important; font-weight: 750; text-decoration: none; }
.nv-empty-rich { min-height: 260px; padding: 35px; }
.nv-empty-rich h3 { max-width: 30ch; }
.nv-empty-rich p { max-width: 620px; }
.nv-villagebox-hero { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(300px,.65fr); align-items: center; gap: 60px; }
.nv-villagebox-mark { margin-bottom: 20px; color: var(--nv-olive-700); font: 800 clamp(3.2rem,8vw,6.4rem)/.85 Manrope,system-ui,sans-serif; letter-spacing: -.07em; }
.nv-villagebox-mark span { color: var(--nv-terracotta-600); }
.nv-villagebox-photo { min-height: 470px; overflow: hidden; margin: 0; border-radius: 42% 42% var(--nv-radius-xl) var(--nv-radius-xl); background: var(--nv-cream-100); box-shadow: var(--nv-shadow); }
.nv-villagebox-photo img { display: block; width: 100%; height: 100%; min-height: 470px; object-fit: cover; object-position: center; }
.nv-villagebox-cta { background: var(--nv-olive-700); }
.nv-card-number { display: block; margin-bottom: 34px; color: var(--nv-terracotta-600); font-weight: 800; }
.nv-kyc-card { display: flex; align-items: center; justify-content: space-between; gap: 35px; margin-bottom: 30px; padding: 28px; border: 1px solid #ccd9bc; border-radius: var(--nv-radius-xl); background: #eef2e7; }
.nv-kyc-card h2 { margin-bottom: 7px; font-size: 1.55rem; }
.nv-kyc-card p { max-width: 720px; margin: 0; color: var(--nv-charcoal-500); }
.nv-verified { color: var(--nv-olive-700); white-space: nowrap; }
.nv-about-hero { padding: clamp(68px,9vw,118px) 0; background: linear-gradient(135deg,#eef1e7,var(--nv-cream-50)); }
.nv-about-hero .nv-container { display: grid; grid-template-columns: minmax(0,.9fr) minmax(320px,1.1fr); align-items: end; gap: clamp(36px,7vw,100px); }
.nv-about-hero h1 { font-size: clamp(3.1rem,7vw,6.2rem); }
.nv-about-hero > .nv-container > div > p { max-width: 34ch; color: var(--nv-olive-700); font-size: 1.35rem; font-weight: 700; }
.nv-about-hero blockquote { margin: 0; padding: 32px 0 10px 34px; border-left: 4px solid var(--nv-terracotta-500); color: var(--nv-charcoal-500); font-size: clamp(1.15rem,2vw,1.55rem); line-height: 1.55; }
.nv-about-story { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.nv-about-story article { padding: clamp(28px,4vw,48px); border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; }
.nv-about-story article p { color: var(--nv-charcoal-500); font-size: 1.05rem; }
.nv-principles { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.nv-principles article { min-height: 210px; padding: 27px; border-radius: var(--nv-radius-xl); background: var(--nv-olive-700); color: #fff; }
.nv-principles article:nth-child(even) { background: var(--nv-terracotta-600); }
.nv-principles span { font-size: .72rem; font-weight: 800; opacity: .72; }
.nv-principles h3 { margin-top: 64px; color: #fff; }
.nv-team-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.nv-team .nv-section-head p { max-width: 760px; color: var(--nv-charcoal-500); }
.nv-team-grid article { display: grid; grid-template-columns: 112px 1fr; align-items: start; overflow: hidden; padding: 18px; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: #fff; box-shadow: 0 7px 24px rgba(31,35,39,.045); }
.nv-team-grid img,.nv-team-placeholder { display: grid; width: 112px; height: 112px; place-items: center; object-fit: cover; border-radius: 50%; background: var(--nv-olive-700); color: #fff; font: 800 1.8rem Manrope,sans-serif; }
.nv-team-grid article > div:last-child { padding: 24px; }
.nv-team-grid h3 { margin-bottom: 3px; }
.nv-team-grid strong { color: var(--nv-terracotta-700); font-size: .83rem; }
.nv-team-grid p { margin-top: 13px; color: var(--nv-charcoal-500); }
.nv-team-grid a { color: var(--nv-olive-700); font-weight: 800; }
.nv-research-cta { background: #dfe7d2; }
.nv-research-cta .nv-container { display: flex; align-items: center; justify-content: space-between; gap: 45px; }
.nv-research-cta p { max-width: 720px; color: var(--nv-charcoal-500); }
.nv-about-vertical-logo { display: block; width: 108px; height: 108px; margin-bottom: 30px; object-fit: contain; }
.nv-research-section { background: linear-gradient(135deg,#e5eadf,#f7efe5); }
.nv-research-lockup { display: inline-flex; align-items: flex-end; gap: 12px; margin-bottom: 36px; }
.nv-research-lockup img { width: 245px; height: auto; }
.nv-research-lockup strong { padding: 0 0 8px 13px; border-left: 1px solid rgba(31,35,39,.3); color: var(--nv-terracotta-700); font: 800 .9rem/1 Manrope,sans-serif; letter-spacing: .1em; }
.nv-research-intro { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 45px; margin-bottom: 34px; }
.nv-research-intro p { max-width: 820px; color: var(--nv-charcoal-500); }

/* Long-form public information */
.nv-section-lead { max-width: 850px; margin: -10px 0 30px; color: var(--nv-charcoal-500); font-size: 1.08rem; }
.nv-editorial-steps { display: grid; gap: 0; max-width: 980px; margin: 0; padding: 0; border-top: 1px solid var(--nv-sand-200); list-style: none; }
.nv-editorial-steps li { display: grid; grid-template-columns: 70px minmax(0,1fr); gap: 22px; padding: 24px 0; border-bottom: 1px solid var(--nv-sand-200); }
.nv-editorial-steps li > span { color: var(--nv-terracotta-700); font-weight: 850; }
.nv-editorial-steps h3 { margin: 0 0 5px; }
.nv-editorial-steps p { max-width: 760px; margin: 0; color: var(--nv-charcoal-500); }
.nv-faq { display: grid; gap: 10px; max-width: 920px; }
.nv-faq details { overflow: hidden; border: 1px solid var(--nv-sand-200); border-radius: 14px; background: #fff; }
.nv-faq summary { padding: 18px 20px; cursor: pointer; font-weight: 800; }
.nv-faq details p { padding: 0 20px 20px; margin: 0; color: var(--nv-charcoal-500); }
.nv-editorial-notice { max-width: 920px; margin-top: 24px; padding: 22px 24px; border-left: 5px solid var(--nv-terracotta-600); border-radius: 0 14px 14px 0; background: #fff4ec; color: var(--nv-charcoal-700); }
.nv-editorial-notice p:last-child { margin-bottom: 0; }

/* Support case conversations */
.nv-support-thread { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--nv-sand-200); }
.nv-support-thread-head { display: flex; align-items: start; justify-content: space-between; gap: 18px; }
.nv-support-messages { display: grid; gap: 11px; margin: 18px 0; padding: 0; list-style: none; }
.nv-support-messages li { padding: 15px 17px; border-radius: 12px; background: var(--nv-cream-100); }
.nv-support-messages li > div { display: flex; justify-content: space-between; gap: 15px; }
.nv-support-messages time { color: var(--nv-charcoal-500); font-size: .72rem; }
.nv-support-messages p { margin: 8px 0 0; white-space: normal; }

/* Supporters and funders */
.nv-supporters { padding: 28px 0; border-bottom: 1px solid rgba(255,255,255,.13); background: #f7f4ed; color: var(--nv-charcoal-900); }
.nv-supporters .nv-container { display: block; }
.nv-supporter-logos { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.nv-supporter-logos > a,.nv-supporter-logos > span { display: grid; width: 170px; height: 82px; place-items: center; padding: 12px 16px; border: 1px solid #ded8cd; border-radius: 12px; background: #fff; }
.nv-supporter-logos img { display: block; width: 100%; height: 100%; object-fit: contain; }
.nv-footer-custom { grid-column: span 3; }
.nv-footer-menu-list { display: grid; grid-template-columns: repeat(3,minmax(140px,1fr)); gap: 9px 22px; margin: 0; padding: 0; list-style: none; }
.nv-footer-menu-list .sub-menu { display: grid; gap: 7px; margin: 8px 0 0; padding: 0; list-style: none; }

/* Styled WordPress story detail */
.nv-article-header { padding: clamp(64px,8vw,110px) 0 48px; background: linear-gradient(135deg,#e7eadf,#f5e9dd); }
.nv-article-header h1 { max-width: 18ch; font-size: clamp(2.7rem,6vw,5.4rem); }
.nv-article-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; color: var(--nv-charcoal-500); font-size: .8rem; font-weight: 700; }
.nv-article-hero { display: grid; min-height: 300px; max-height: 720px; place-items: center; overflow: hidden; margin-top: 42px; border-radius: var(--nv-radius-xl); background: #eee9df; }
.nv-article-hero img { display: block; width: 100%; max-height: 720px; object-fit: contain; }
.nv-article-layout { display: grid; grid-template-columns: minmax(0,780px) 260px; align-items: start; gap: clamp(42px,8vw,100px); padding-block: 70px; }
.nv-article-content { min-width: 0; color: var(--nv-charcoal-700); font-size: 1.08rem; }
.nv-article-content > * { max-width: 100%; }
.nv-article-content h2 { margin-top: 1.8em; }
.nv-article-content h3 { margin-top: 1.6em; }
.nv-article-content img { max-width: 100%; height: auto; object-fit: contain; border-radius: 12px; }
.nv-article-content figure { max-width: 100%; margin: 2em 0; }
.nv-article-content blockquote { margin: 2em 0; padding: 22px 28px; border-left: 5px solid var(--nv-terracotta-600); background: var(--nv-cream-100); font-size: 1.2rem; }
.nv-article-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.nv-article-content th,.nv-article-content td { padding: 10px 12px; border: 1px solid var(--nv-sand-200); }
.nv-article-aside { position: sticky; top: 115px; padding: 24px; border-radius: var(--nv-radius-xl); background: var(--nv-olive-700); color: #fff; }
.nv-article-aside p { color: #e5ebdf; font-size: .88rem; }
.nv-home-story-grid article > img { padding: 8px; object-fit: contain; background: #f0ece4; }

/* Complete home experience — 0.3.0 */
.nv-home-hero { padding: clamp(56px,8vw,104px) 0 64px; }
.nv-home-hero .nv-container { align-items: stretch; }
.nv-home-hero .nv-hero-copy { display: flex; flex-direction: column; justify-content: center; }
.nv-home-hero h1 { max-width: 13ch; font-size: clamp(2.9rem,5.2vw,5rem); }
.nv-home-hero .nv-search { margin-top: 12px; }
.nv-interest-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.nv-interest-row a { padding: 7px 11px; border: 1px solid var(--nv-sand-200); border-radius: 999px; background: rgba(255,255,255,.74); color: var(--nv-charcoal-700); text-decoration: none; font-size: .76rem; font-weight: 700; }
.nv-interest-row a:hover { border-color: var(--nv-terracotta-500); color: var(--nv-terracotta-700); }
.nv-verified-line { margin: 13px 0 0 !important; color: var(--nv-charcoal-500); font-size: .78rem !important; }
.nv-hero-carousel { position: relative; min-height: 610px; }
.nv-home-hero .nv-hero-photo { min-height: 610px; }
.nv-hero-slide { position: absolute; inset: 0; visibility: hidden; opacity: 0; transition: opacity .55s ease,visibility .55s ease; }
.nv-hero-slide.is-active { z-index: 1; visibility: visible; opacity: 1; }
.nv-hero-slide figcaption { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 2px 18px; padding: 0 132px 2px 2px; font-size: .84rem; }
.nv-hero-slide figcaption strong { grid-column: 1; font: 800 1.35rem/1.1 Manrope,Inter,sans-serif; }
.nv-hero-slide figcaption span { grid-column: 1; color: rgba(255,255,255,.82); font-weight: 600; }
.nv-hero-slide figcaption a { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: #fff; font-weight: 800; text-decoration: none; }
.nv-hero-carousel-controls { position: absolute; z-index: 3; right: 18px; bottom: 18px; display: flex; align-items: center; gap: 7px; padding: 6px; border-radius: 999px; background: rgba(20,25,18,.72); color: #fff; backdrop-filter: blur(12px); }
.nv-hero-carousel-controls button { display: grid; width: 34px; height: 34px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.14); color: #fff; cursor: pointer; font: 500 1.45rem/1 Inter,sans-serif; }
.nv-hero-carousel-controls button:hover { background: rgba(255,255,255,.28); }
.nv-hero-carousel-controls span { min-width: 43px; text-align: center; font-size: .69rem; font-weight: 800; }
.nv-audiences .nv-section-head { margin-bottom: 24px; }
.nv-audience-grid-three { grid-template-columns: repeat(3,minmax(0,1fr)); box-shadow: var(--nv-shadow); }
.nv-audience-grid-three article { display: flex; min-height: 470px; flex-direction: column; padding: 34px; }
.nv-audience-grid-three article:nth-child(2) { background: #536645; }
.nv-audience-grid-three article:nth-child(3) { background: #2c3830; }
.nv-audience-grid-three h3 { color: white; font-size: clamp(1.5rem,2.2vw,2rem); }
.nv-audience-grid-three ul { display: grid; gap: 9px; margin: 4px 0 28px; padding: 0; color: #e8eddf; list-style: none; font-size: .84rem; }
.nv-audience-grid-three .nv-btn { align-self: flex-start; margin-top: auto; }
.nv-country-showcase { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.nv-country-showcase > a { display: grid; min-height: 450px; grid-template-rows: 53% 47%; overflow: hidden; border-radius: var(--nv-radius-xl); background: white; box-shadow: var(--nv-shadow); text-decoration: none; }
.nv-country-showcase img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.nv-country-showcase a:hover img { transform: scale(1.025); }
.nv-country-showcase a > div { padding: 24px 28px; }
.nv-country-showcase a > div > span { display: inline-grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--nv-olive-700); color: white; font-size: .7rem; font-weight: 800; }
.nv-country-showcase h3 { display: inline; margin-left: 12px; font-size: 1.65rem; }
.nv-country-showcase p { margin: 15px 0 9px; color: var(--nv-charcoal-500); }
.nv-country-showcase strong { color: var(--nv-terracotta-700); font-size: .8rem; }
.nv-pilots .nv-place-card { box-shadow: 0 12px 36px rgba(31,35,39,.08); }
.nv-readiness { overflow: hidden; background: var(--nv-olive-700); color: white; }
.nv-readiness-layout { display: grid; grid-template-columns: minmax(300px,.75fr) minmax(0,1.25fr); align-items: center; gap: clamp(40px,7vw,90px); }
.nv-readiness-layout > div:first-child > p { color: #e4e9dc; font-size: 1.06rem; }
.nv-readiness-layout .nv-eyebrow { color: #efb28e; }
.nv-readiness-layout .nv-btn-olive { border-color: rgba(255,255,255,.85) !important; background: transparent !important; }
.nv-readiness-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: var(--nv-radius-xl); background: rgba(255,255,255,.18); }
.nv-readiness-grid article { min-height: 200px; padding: 26px; background: #4b5d3b; }
.nv-readiness-grid article:nth-child(2),.nv-readiness-grid article:nth-child(3) { background: #415134; }
.nv-readiness-grid span { color: #efb28e; font-size: .75rem; font-weight: 800; }
.nv-readiness-grid h3 { margin-top: 28px; color: white; }
.nv-readiness-grid p { margin: 0; color: #e4e9dc; font-size: .84rem; }
.nv-attraction-grid-home { grid-template-columns: repeat(3,minmax(0,1fr)); }
.nv-attraction-grid-home .nv-attraction-card { display: grid; min-height: 420px; grid-template-columns: 1fr; grid-template-rows: 52% 48%; }
.nv-attraction-grid-home .nv-attraction-card figure { min-height: 0; }
.nv-attraction-grid-home .nv-attraction-card > div { padding: 21px; }
.nv-attraction-grid-home .nv-attraction-card p { font-size: .86rem; }
.nv-villagebox-home { background: linear-gradient(128deg,#e9dfc9 0 52%,#dce6d2 52%); }
.nv-villagebox-home-layout { display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); align-items: center; gap: clamp(45px,8vw,100px); }
.nv-villagebox-home-layout > div:first-child > p { max-width: 660px; color: var(--nv-charcoal-500); font-size: 1.06rem; }
.nv-villagebox-country-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.nv-villagebox-country-grid a { display: flex; min-height: 190px; flex-direction: column; justify-content: flex-end; padding: 24px; border: 1px solid rgba(67,83,52,.16); border-radius: var(--nv-radius-xl); background: rgba(255,255,255,.88); box-shadow: var(--nv-shadow); text-decoration: none; }
.nv-villagebox-country-grid a > span { display: grid; width: 44px; height: 44px; place-items: center; margin-bottom: auto; border-radius: 50%; background: var(--nv-terracotta-600); color: white; font-size: .72rem; font-weight: 800; }
.nv-villagebox-country-grid strong { margin-top: 20px; font-size: 1.2rem; }
.nv-villagebox-country-grid small { color: var(--nv-charcoal-500); }
.nv-villagebox-country-grid .nv-villagebox-coming { grid-column: 1 / -1; min-height: 150px; background: var(--nv-olive-700); color: white; }
.nv-villagebox-country-grid .nv-villagebox-coming small { color: #e6eadf; }
.nv-home-how > .nv-container { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); align-items: start; gap: clamp(44px,8vw,110px); }
.nv-how-intro { position: sticky; top: 112px; }
.nv-how-intro > p { max-width: 620px; color: #d2cbc1; }
.nv-how-steps { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.18); list-style: none; }
.nv-how-steps li { display: grid; grid-template-columns: 54px 1fr; gap: 20px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.18); }
.nv-how-steps > li > strong { color: #efb28e; }
.nv-how-steps h3 { margin: 0 0 6px; color: white; }
.nv-how-steps p { margin: 0; color: #d2cbc1; font-size: .86rem; }
.nv-home-story-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.nv-home-story-grid article { overflow: hidden; border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: white; }
.nv-home-story-grid article > img { width: 100%; height: 230px; object-fit: cover; }
.nv-home-story-grid article > div { padding: 24px; }
.nv-home-story-grid h3 { font-size: 1.35rem; }
.nv-home-story-grid h3 a { text-decoration: none; }
.nv-home-story-grid p { color: var(--nv-charcoal-500); font-size: .88rem; }
.nv-trust-section { background: #ecefe7; }
.nv-trust-heading { display: grid; grid-template-columns: .8fr 1.2fr; gap: 32px; margin-bottom: 34px; }
.nv-trust-heading .nv-eyebrow { grid-column: 1 / -1; }
.nv-trust-heading p { color: var(--nv-charcoal-500); font-size: 1.05rem; }
.nv-trust-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.nv-trust-grid article { min-height: 220px; padding: 24px; border-radius: var(--nv-radius); background: white; }
.nv-trust-grid article > span { display: grid; width: 38px; height: 38px; place-items: center; margin-bottom: 34px; border-radius: 50%; background: #e1ebd8; color: var(--nv-olive-700); font-weight: 900; }
.nv-trust-grid p { color: var(--nv-charcoal-500); font-size: .84rem; }
.nv-final-cta { padding: clamp(60px,8vw,100px) 0; background: var(--nv-terracotta-600); color: white; }
.nv-final-cta .nv-container { display: flex; align-items: flex-end; justify-content: space-between; gap: 50px; }
.nv-final-cta h2 { max-width: 20ch; font-size: clamp(2.2rem,4.5vw,4rem); }
.nv-final-cta p { max-width: 740px; color: #fae8df; }
.nv-final-cta .nv-eyebrow { color: #ffe0cf; }
.nv-final-cta .nv-btn-secondary { border-color: white !important; color: white !important; }

/* Profile onboarding and operational dashboards — 0.3.0 */
.nv-dashboard-notice { margin: 0 0 24px; padding: 18px 22px; border: 1px solid #ccd9bc; border-left: 5px solid var(--nv-olive-700); border-radius: var(--nv-radius); background: #f5f8f1; }
.nv-dashboard-notice p { margin: 5px 0 0; color: var(--nv-charcoal-500); }
.nv-dashboard-notice-cancelled { border-color: #efc3ad; border-left-color: var(--nv-terracotta-600); background: #fff7f2; }
.nv-onboarding-card { margin-bottom: 30px; padding: clamp(24px,4vw,38px); border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: white; box-shadow: 0 12px 38px rgba(31,35,39,.05); }
.nv-onboarding-head { display: flex; align-items: center; justify-content: space-between; gap: 34px; }
.nv-onboarding-head p { max-width: 680px; color: var(--nv-charcoal-500); }
.nv-progress-ring { display: grid; width: 94px; height: 94px; flex: 0 0 94px; place-items: center; border-radius: 50%; background: radial-gradient(closest-side,#fff 74%,transparent 76% 99%),conic-gradient(var(--nv-terracotta-600) calc(var(--nv-progress) * 1%),#ece5d8 0); }
.nv-progress-ring strong { color: var(--nv-olive-700); font-size: 1rem; }
.nv-onboarding-steps { display: flex; overflow-x: auto; gap: 0; margin: 26px 0; padding: 0 0 7px; list-style: none; }
.nv-onboarding-steps li { display: flex; min-width: max-content; align-items: center; gap: 7px; padding: 9px 14px; border-bottom: 2px solid var(--nv-sand-200); color: var(--nv-charcoal-500); font-size: .75rem; }
.nv-onboarding-steps li span { display: grid; width: 22px; height: 22px; place-items: center; border-radius: 50%; background: var(--nv-cream-100); }
.nv-onboarding-steps .is-current { border-color: var(--nv-terracotta-600); color: var(--nv-charcoal-900); font-weight: 800; }
.nv-onboarding-steps .is-done { border-color: var(--nv-olive-700); color: var(--nv-olive-700); }
.nv-onboarding-steps .is-done span { background: var(--nv-olive-700); color: white; }
.nv-onboarding-form { max-width: 840px; }
.nv-onboarding-complete { padding: 14px 18px; border-radius: 10px; background: #e9edde; color: var(--nv-olive-700); font-weight: 800; }
.nv-booking-timeline { width: 100%; margin-top: 12px; border-top: 1px solid var(--nv-sand-200); padding-top: 10px; }
.nv-booking-timeline summary { color: var(--nv-terracotta-700); cursor: pointer; font-size: .78rem; font-weight: 750; }
.nv-booking-timeline ol { display: grid; gap: 7px; margin: 12px 0 0; padding-left: 18px; }
.nv-booking-timeline li strong,.nv-booking-timeline li small { display: block; }
.nv-booking-timeline li small { color: var(--nv-charcoal-500); }
.nv-connect-state { display: grid; grid-template-columns: 1fr auto; gap: 3px 15px; margin: 17px 0; padding: 12px 14px; border-radius: 10px; background: rgba(255,255,255,.1); }
.nv-connect-state strong { text-transform: capitalize; }
.nv-connect-state small { grid-column: 1 / -1; color: #dce4d3; }
.nv-ops-workspace { margin-top: 44px; scroll-margin-top: 100px; }
.nv-ops-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; align-items: start; }
.nv-ops-panel { padding: clamp(22px,3vw,30px); border: 1px solid var(--nv-sand-200); border-radius: var(--nv-radius-xl); background: white; box-shadow: 0 9px 30px rgba(31,35,39,.04); scroll-margin-top: 110px; }
.nv-ops-panel > h3 { margin-top: 0; }
.nv-ops-panel > p { color: var(--nv-charcoal-500); font-size: .85rem; }
.nv-ops-panel form { display: grid; gap: 12px; }
.nv-ops-panel hr { margin: 24px 0; border: 0; border-top: 1px solid var(--nv-sand-200); }
.nv-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.nv-form-actions { display: flex; align-items: center; gap: 12px; }
.nv-mini-list { display: grid; gap: 8px; margin-top: 18px; }
.nv-mini-list > div,.nv-mini-list > a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 14px; padding: 12px 14px; border: 1px solid var(--nv-sand-200); border-radius: 10px; color: inherit; text-decoration: none; }
.nv-mini-list small { grid-column: 1 / -1; overflow-wrap: anywhere; color: var(--nv-charcoal-500); }
.nv-mini-list span { padding: 3px 7px; border-radius: 999px; background: var(--nv-cream-100); font-size: .66rem; font-weight: 750; text-transform: uppercase; }
.nv-mini-list .is-read { opacity: .65; }
.nv-ops-panel input[type="file"] { padding: 10px; border: 1px dashed var(--nv-sand-200); border-radius: 10px; background: var(--nv-cream-100); }
.nv-ops-panel-wide { grid-column: 1 / -1; }
.nv-ops-title { display: flex; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.nv-ops-title h3 { margin: 5px 0; }
.nv-ops-title p { max-width: 720px; margin: 0; color: var(--nv-charcoal-500); font-size: .86rem; }
.nv-dashboard-editor { margin-bottom: 24px; border: 1px solid var(--nv-sand-200); border-radius: 14px; background: var(--nv-cream-100); }
.nv-dashboard-editor > summary { padding: 15px 18px; color: var(--nv-olive-700); cursor: pointer; font-weight: 800; }
.nv-dashboard-editor > form { padding: 4px 18px 20px; }
.nv-product-admin-list { display: grid; gap: 9px; }
.nv-product-admin-list > details { border: 1px solid var(--nv-sand-200); border-radius: 12px; background: #fff; }
.nv-product-admin-list > details > summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 16px; cursor: pointer; list-style-position: inside; }
.nv-product-admin-list > details > summary > span:first-child { display: inline-grid; gap: 2px; margin-right: auto; }
.nv-product-admin-list summary small { color: var(--nv-charcoal-500); font-weight: 400; }
.nv-product-admin-list > details > form { padding: 6px 16px 20px; border-top: 1px solid var(--nv-sand-200); }
.nv-product-admin-list > details > p { margin: 0; padding: 0 16px 18px; }

@media (max-width: 980px) {
    .nv-nav { display: none; }
    .nv-mobile-nav { display: block; }
    .nv-mobile-nav summary { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid var(--nv-sand-200); border-radius: 11px; background: #fff; cursor: pointer; font-size: 1.15rem; list-style: none; }
    .nv-mobile-nav summary::-webkit-details-marker { display: none; }
    .nv-mobile-nav nav { position: absolute; z-index: 90; top: calc(100% + 9px); right: 0; display: grid; min-width: min(330px,calc(100vw - 28px)); max-height: 72vh; overflow-y: auto; gap: 4px; padding: 14px; border: 1px solid var(--nv-sand-200); border-radius: 14px; background: #fff; box-shadow: var(--nv-shadow); }
    .nv-mobile-nav nav > a,.nv-mobile-menu-list a { padding: 9px; text-decoration: none; }
    .nv-mobile-nav nav > strong { margin: 8px 9px 2px; color: var(--nv-terracotta-700); font-size: .7rem; text-transform: uppercase; }
    .nv-mobile-menu-list,.nv-mobile-menu-list .sub-menu { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }
    .nv-hero .nv-container,.nv-story,.nv-listing-layout,.nv-dashboard-grid,.nv-dashboard-shell,.nv-destination-hero .nv-container,.nv-destination-about,.nv-join-layout { grid-template-columns: 1fr; }
    .nv-hero-art { min-height: 330px; }
    .nv-grid-places,.nv-grid-listings { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-booking-card { position: static; }
    .nv-role-nav { position: static; }
    .nv-info-grid,.nv-pricing-grid,.nv-pricing-audiences { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-price-calculator { grid-template-columns: 1fr; }
    .nv-attraction-grid { grid-template-columns: 1fr; }
    .nv-place-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .nv-audience-grid-three,.nv-attraction-grid-home,.nv-home-story-grid,.nv-trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-ops-grid { grid-template-columns: 1fr; }
    .nv-ops-panel-wide { grid-column: auto; }
    .nv-article-layout,.nv-product-hero-grid,.nv-product-content { grid-template-columns: 1fr; }
    .nv-catalogue-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-catalogue-filters > :first-child { grid-column: 1 / -1; }
    .nv-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-article-aside { position: static; }
    .nv-research-intro { grid-template-columns: 1fr; }
    .nv-readiness-layout,.nv-villagebox-home-layout,.nv-home-how > .nv-container,.nv-press-layout { grid-template-columns: 1fr; }
    .nv-press-contact { position: static; }
    .nv-impact-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .nv-how-intro { position: static; }
}
@media (max-width: 680px) {
    .nv-container { width: min(100% - 26px,1240px); }
    .admin-bar .nv-header { top: 46px; }
    .nv-header-inner { min-height: 68px; gap: 10px; }
    .nv-brand-tagline { display: none; }
    .nv-brand img { width: 138px; }
    .nv-language-menu { margin-left: auto; }
    .nv-hero { padding: 46px 0; }
    .nv-hero .nv-container { gap: 32px; }
    .nv-hero-art { min-height: 250px; }
    .nv-search { display: grid; }
    .nv-search select { min-width: 0; border-top: 1px solid var(--nv-sand-200); border-left: 0; }
    .nv-grid-places,.nv-grid-listings,.nv-grid-stories,.nv-info-grid,.nv-pricing-grid,.nv-ecosystem-grid,.nv-audience-grid,.nv-country-strip,.nv-country-card,.nv-villagebox-hero,.nv-catalogue-filters,.nv-product-grid { grid-template-columns: 1fr; }
    .nv-pricing-audiences,.nv-price-calculator dl { grid-template-columns: 1fr; }
    .nv-catalogue-filters > :first-child { grid-column: auto; }
    .nv-product-hero-grid > figure { min-height: 300px; height: 72vw; }
    .nv-place-card { grid-template-columns: 38% 62%; }
    .nv-section { padding: 54px 0; }
    .nv-search-layout { grid-template-columns: 1fr; }
    .nv-filters { position: static; }
    .nv-gallery { min-height: 280px; grid-template-columns: 1fr; grid-template-rows: 1fr; }
    .nv-gallery img:not(:first-child) { display: none; }
    .nv-gallery img:first-child,.nv-gallery-placeholder { grid-column: 1; grid-row: 1; }
    .nv-form-row,.nv-amenities { grid-template-columns: 1fr; }
    .nv-dashboard-card { align-items: flex-start; flex-direction: column; }
    .nv-footer .nv-container { grid-template-columns: 1fr; }
    .nv-footer small { grid-column: auto; }
    .nv-footer-grid { grid-template-columns: 1fr !important; }
    .nv-hero-photo,.nv-destination-hero figure { min-height: 320px; }
    .nv-story-card { grid-template-columns: 1fr; }
    .nv-profile-grid { grid-template-columns: 1fr; }
    .nv-dashboard-summary { grid-template-columns: 1fr; }
    .nv-result-toolbar { display: block; }
    .nv-partner-cta .nv-container,.nv-kyc-card { align-items: flex-start; flex-direction: column; }
    .nv-attraction-card { grid-template-columns: 1fr; }
    .nv-place-gallery { grid-template-columns: 1fr; }
    .nv-country-card { min-height: auto; }
    .nv-country-card figure { min-height: 270px; }
    .nv-trust-heading { grid-template-columns: 1fr; text-align: left; }
    .nv-audience-grid-three,.nv-country-showcase,.nv-readiness-grid,.nv-attraction-grid-home,.nv-villagebox-country-grid,.nv-home-story-grid,.nv-trust-grid,.nv-about-story,.nv-principles,.nv-team-grid,.nv-about-hero .nv-container,.nv-impact-kpis,.nv-impact-method { grid-template-columns: 1fr; }
    .nv-audience-grid-three article { min-height: auto; }
    .nv-hero-carousel,.nv-home-hero .nv-hero-photo { min-height: 410px; }
    .nv-hero-slide figcaption { grid-template-columns: 1fr; padding-right: 2px; padding-bottom: 54px; }
    .nv-hero-slide figcaption a { grid-column: 1; grid-row: auto; margin-top: 5px; }
    .nv-hero-carousel-controls { right: auto; bottom: 15px; left: 15px; }
    .nv-villagebox-country-grid .nv-villagebox-coming { grid-column: auto; }
    .nv-final-cta .nv-container { align-items: flex-start; flex-direction: column; }
    .nv-research-cta .nv-container { align-items: flex-start; flex-direction: column; }
    .nv-onboarding-head { align-items: flex-start; flex-direction: column; }
    .nv-form-grid { grid-template-columns: 1fr; }
    .nv-product-admin-list > details > summary { align-items: flex-start; flex-direction: column; }
    .nv-team-grid article { grid-template-columns: 82px 1fr; }
    .nv-team-grid img,.nv-team-placeholder { width: 82px; height: 82px; }
    .nv-team-grid article > div:last-child { padding: 2px 0 2px 16px; }
    .nv-research-lockup { align-items: flex-start; flex-direction: column; }
    .nv-research-lockup strong { padding: 8px 0 0; border-top: 1px solid rgba(31,35,39,.3); border-left: 0; }
    .nv-editorial-steps li { grid-template-columns: 46px 1fr; }
    .nv-footer-menu-list { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    *,*::before,*::after { scroll-behavior: auto !important; transition: none !important; }
}
