@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Instrument+Serif:ital@0;1&family=Inter:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");

/* -------------------------------------------------------------------------- */
/* Nomad Studio — dark canvas (matches main Nomad Capital static site)         */
/* studio-i18n.css is linked last in <head> so these beat Framer tokens.       */
/* -------------------------------------------------------------------------- */

:root {
    color-scheme: dark;
    --nomad-canvas: #000000;
    --nomad-canvas-warm: #0a0a0a;
    --nomad-ink: #f0f0f0;
    --nomad-ink-muted: rgba(240, 240, 240, 0.65);
    --nomad-surface: #1a1a1a;
    --nomad-border: rgba(255, 255, 255, 0.1);
    --nomad-mono: "IBM Plex Mono", ui-monospace, monospace;
    --nomad-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
    --nomad-violet: #a855f7;
    /* Lime used in Framer tiles (“no tech…”) and POV list hover */
    --nomad-lime: #c8ff00;
    --token-9038913d-9542-4e7c-8f1d-6d793c435842: var(--nomad-canvas) !important;
    --token-b6079f2c-86e5-4fdb-b1bc-5a74a51795f3: var(--nomad-canvas) !important;
}

html {
    background-color: var(--nomad-canvas);
}

html body {
    background-color: var(--nomad-canvas) !important;
}

body {
    --token-b6079f2c-86e5-4fdb-b1bc-5a74a51795f3: var(--nomad-canvas) !important;
    --token-9038913d-9542-4e7c-8f1d-6d793c435842: var(--nomad-canvas-warm) !important;
    --token-e51f1380-eb96-4a17-bf57-27d2709c2f2b: var(--nomad-canvas-warm) !important;
}

[data-framer-root] {
    position: relative;
    background-color: var(--nomad-canvas);
    color: var(--nomad-ink);
}

/* Framer export: outer scroll shell is #main; editorial nav is injected as its first child */
#main {
    position: relative;
}

/* Absolute vs outer #main (studio home) or framer-root (POV/About subpages) — scrolls with page */
#main > [data-nomad-header-util],
[data-framer-root] > [data-nomad-header-util] {
    position: absolute !important;
    top: clamp(18px, 2.5vw, 28px);
    right: clamp(16px, 4vw, 56px);
    z-index: 100;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: clamp(20px, 3vw, 32px);
    font-family: var(--nomad-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: lowercase;
    line-height: 1;
}

#main > [data-nomad-header-util] a,
[data-framer-root] > [data-nomad-header-util] a {
    color: rgba(240, 240, 240, 0.58);
    text-decoration: none;
}

#main > [data-nomad-header-util] a:hover,
[data-framer-root] > [data-nomad-header-util] a:hover {
    color: var(--nomad-violet);
}

#main > [data-nomad-header-util] a[aria-current="page"],
[data-framer-root] > [data-nomad-header-util] a[aria-current="page"] {
    color: var(--nomad-ink);
    pointer-events: none;
}

/* [nomad] home — standalone POV / About pages (scrolls with page) */
[data-framer-root] > a.nomad-subpage-home {
    position: absolute;
    top: clamp(18px, 2.5vw, 28px);
    left: clamp(16px, 4vw, 56px);
    z-index: 100;
    font-family: "Instrument Serif", Georgia, "Times New Roman", serif;
    font-size: clamp(1.15rem, 2.2vw, 1.4rem);
    font-weight: 400;
    letter-spacing: 0.02em;
    color: var(--nomad-ink);
    text-decoration: none;
}

[data-framer-root] > a.nomad-subpage-home:hover {
    color: var(--nomad-violet);
}

.nomad-subpage-main {
    min-height: 100vh;
    padding-top: clamp(72px, 12vw, 120px);
}

/* POV index: centered — padding handled by inner column */
.nomad-subpage-main--pov-index {
    padding-left: 0;
    padding-right: 0;
}

/* About page column — match POV index (.nomad-pov-index) width + padding + rhythm */
[data-framer-root] .nomad-editorial-block {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 clamp(20px, 4vw, 40px) clamp(64px, 10vw, 120px);
    border-top: none;
    scroll-margin-top: 72px;
}

[data-framer-root] .nomad-editorial-block .nomad-pov-index__header {
    margin-bottom: clamp(36px, 6vw, 52px);
}

[data-framer-root] .nomad-editorial-block .nomad-pov-index__header .nomad-cred.nomad-article__date {
    margin-bottom: 0;
}

/* About body copy — match POV list summaries (.nomad-article-list__summary) */
[data-framer-root] .nomad-about-index-body {
    font-family: var(--nomad-sans);
    font-size: clamp(15px, 1.4vw, 17px);
    font-weight: 400;
    line-height: 1.55;
    color: rgba(240, 240, 240, 0.58);
    max-width: 100%;
    margin: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: clamp(28px, 4vw, 44px);
}

[data-framer-root] .nomad-about-index-body p {
    margin: 0 0 1.35em;
}

[data-framer-root] .nomad-about-index-body p:last-child {
    margin-bottom: 0;
}

[data-framer-root] .nomad-editorial-block__body {
    max-width: 100%;
    margin: 0;
}

/* POV article — Nomad Capital “ideas”-style list / detail */
[data-framer-root] .nomad-article {
    width: 100%;
    max-width: 40rem;
    margin: 0 auto;
    padding: 0 clamp(20px, 4vw, 40px) clamp(64px, 10vw, 120px);
    scroll-margin-top: 72px;
}

[data-framer-root] .nomad-article__label {
    display: inline-block;
    font-family: var(--nomad-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: lowercase;
    color: rgba(240, 240, 240, 0.52);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 7px;
    text-decoration-color: rgba(240, 240, 240, 0.35);
    margin: 0 0 clamp(28px, 5vw, 44px);
}

[data-framer-root] .nomad-article__title {
    font-family: var(--nomad-sans);
    font-size: clamp(1.65rem, 4vw, 2.35rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.15;
    color: var(--nomad-ink);
    margin: 0 0 14px;
}

[data-framer-root] .nomad-article__date {
    font-family: var(--nomad-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: none;
    color: rgba(240, 240, 240, 0.45);
    margin: 0 0 clamp(36px, 6vw, 56px);
}

[data-framer-root] .nomad-article__body {
    font-family: var(--nomad-sans);
    font-size: clamp(16px, 1.55vw, 18px);
    font-weight: 400;
    line-height: 1.65;
    color: rgba(240, 240, 240, 0.82);
}

[data-framer-root] .nomad-article__body p {
    margin: 0 0 1.35em;
}

[data-framer-root] .nomad-article__body p:last-child {
    margin-bottom: 0;
}

/* POV index — Nomad Capital “ideas”: centered column, serif tagline, sans list */
[data-framer-root] .nomad-pov-index {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 clamp(20px, 4vw, 40px) clamp(64px, 10vw, 120px);
    scroll-margin-top: 72px;
}

[data-framer-root] .nomad-pov-index__header {
    margin-bottom: clamp(36px, 6vw, 52px);
}

/* “ideas”-style small label — sans, muted (not mono underline) */
[data-framer-root] .nomad-pov-index__eyebrow {
    font-family: var(--nomad-sans);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: lowercase;
    color: rgba(240, 240, 240, 0.48);
    margin: 0 0 clamp(16px, 2.5vw, 22px);
}

[data-framer-root] .nomad-pov-index__tagline {
    font-family: "Instrument Serif", Georgia, "Times New Roman", serif;
    font-size: clamp(1.85rem, 4.5vw, 2.85rem);
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.12;
    color: var(--nomad-ink);
    margin: 0 0 clamp(14px, 2vw, 20px);
}

[data-framer-root] .nomad-pov-index__deck {
    font-family: var(--nomad-sans);
    font-size: clamp(15px, 1.45vw, 17px);
    line-height: 1.6;
    color: rgba(240, 240, 240, 0.58);
    margin: 0;
    max-width: 36rem;
}

[data-framer-root] .nomad-article-list {
    list-style: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    display: block;
}

[data-framer-root] .nomad-article-list__item {
    display: block;
    margin: 0;
    padding: clamp(28px, 4vw, 44px) 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

[data-framer-root] .nomad-article-list__item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

[data-framer-root] .nomad-article-list__link {
    display: block;
    text-decoration: none;
    color: var(--nomad-ink);
    outline-offset: 4px;
    cursor: pointer;
}

[data-framer-root] .nomad-article-list__link:visited {
    color: var(--nomad-ink);
}

[data-framer-root] .nomad-article-list__title {
    font-family: var(--nomad-sans);
    font-size: clamp(1.2rem, 2.5vw, 1.55rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.28;
    color: var(--nomad-ink) !important;
    margin: 0 0 clamp(12px, 2vw, 16px);
    width: fit-content;
    max-width: 100%;
    text-decoration: none;
    transition: color 0.15s ease;
}

/* Lime title + underline — scoped under .nomad-pov-index; hex + webkit fill for stubborn UAs */
[data-framer-root] .nomad-pov-index .nomad-article-list__link:hover .nomad-article-list__title,
[data-framer-root] .nomad-pov-index .nomad-article-list__title:hover,
[data-framer-root] .nomad-pov-index .nomad-article-list__link:focus-visible .nomad-article-list__title,
[data-framer-root] .nomad-pov-index .nomad-article-list__link:active .nomad-article-list__title {
    color: #c8ff00 !important;
    -webkit-text-fill-color: #c8ff00;
    text-decoration: underline !important;
    text-decoration-color: #c8ff00 !important;
    text-underline-offset: 5px;
    text-decoration-thickness: 1px;
    text-decoration-skip-ink: auto;
}

[data-framer-root] .nomad-article-list__summary {
    font-family: var(--nomad-sans);
    font-size: clamp(15px, 1.4vw, 17px);
    font-weight: 400;
    line-height: 1.55;
    color: rgba(240, 240, 240, 0.58) !important;
    margin: 0 0 clamp(14px, 2vw, 18px);
}

[data-framer-root] .nomad-article-list__date {
    font-family: var(--nomad-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: rgba(240, 240, 240, 0.48) !important;
    margin: 0;
}

/* Headings & copy */
[data-framer-root] p.framer-text,
[data-framer-root] h1.framer-text,
[data-framer-root] h2.framer-text,
[data-framer-root] h3.framer-text,
[data-framer-root] h4.framer-text,
[data-framer-root] h5.framer-text,
[data-framer-root] h6.framer-text,
[data-framer-root] li.framer-text {
    color: var(--nomad-ink) !important;
}

/* Mono / labels: pale gray on black (Framer inlines) */
[data-framer-root] [style*="rgba(250, 250, 250, 0.3)"] {
    color: rgba(255, 255, 255, 0.35) !important;
}

[data-framer-root] [style*="rgba(250, 250, 250, 0.5)"] {
    color: rgba(255, 255, 255, 0.5) !important;
}

[data-framer-root] [style*="rgba(250, 250, 250, 0.7)"] {
    color: var(--nomad-ink-muted) !important;
}

[data-framer-root] [style*="rgba(250, 250, 250, 0.8)"] {
    color: rgba(255, 255, 255, 0.85) !important;
}

/* Who we help: after removing injected paragraphs, keep section breathing room */
[data-framer-root] #is-ts-2 ul {
    margin-bottom: clamp(18px, 3vw, 28px) !important;
}

/* Hairline borders on dark */
[data-framer-root] [style*="border-color:rgba(250, 250, 250, 0.3)"] {
    --border-color: var(--nomad-border) !important;
    border-color: var(--nomad-border) !important;
}

/* FAQ accordion rows */
[data-framer-root] [data-framer-name="Variant 1"] {
    background-color: var(--nomad-surface) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

/*
 * FAQ list: Framer sets .ssr-variant { display: contents }, so flex items are the inner
 * framer-*-container divs — margins on .ssr-variant do not create spacing between rows.
 * Accordion answer slots (.framer-15ssd7a) can still occupy height when the row is not in
 * the open variant (.framer-v-niip13), which reads as “dead space” between headers.
 */
[data-framer-root] [data-framer-name="FAQs"] {
    padding-bottom: clamp(24px, 3vw, 32px) !important;
}

[data-framer-root] [data-framer-name="FAQs"] > .ssr-variant {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-block: 0 !important;
    min-height: 0 !important;
}

[data-framer-root] [data-framer-name="FAQs"] > .ssr-variant:nth-last-child(2) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

[data-framer-root] [data-framer-name="FAQs"] > .ssr-variant > div[class*="framer-"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-block: 0 !important;
    min-height: 0 !important;
    height: auto !important;
}

[data-framer-root] [data-framer-name="FAQs"] [data-framer-name="Variant 1"] {
    min-height: 0 !important;
    margin-block: 0 !important;
}

[data-framer-root] [data-framer-name="FAQs"] .framer-s6yNh {
    min-height: 0 !important;
}

/* Closed accordion: hide answer shell so patched copy does not reserve vertical space */
[data-framer-root] [data-framer-name="FAQs"] .framer-s6yNh:not(.framer-v-niip13) .framer-15ssd7a {
    display: none !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: none !important;
}

/* Orphan FAQ wrappers (deleted canvas items) — no question slot */
[data-framer-root] [data-framer-name="FAQs"] .framer-ws3309-container:not(:has(.framer-74nljt h6)),
[data-framer-root] [data-framer-name="FAQs"] .framer-1790loh-container:not(:has(.framer-74nljt h6)) {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Primary CTA — light button on dark (Framer names vary by export) */
[data-framer-root] a[data-framer-name="partnership white"],
[data-framer-root] [data-framer-name="partnership white"],
[data-framer-root] a[data-framer-name="Partnership program"],
[data-framer-root] [data-framer-name="Partnership program"] {
    background-color: #ffffff !important;
    color: #000000 !important;
    --extracted-r6o4lv: #000000 !important;
}

[data-framer-root] a[data-framer-name="partnership white"] .framer-text,
[data-framer-root] [data-framer-name="partnership white"] .framer-text,
[data-framer-root] a[data-framer-name="Partnership program"] .framer-text,
[data-framer-root] [data-framer-name="Partnership program"] .framer-text {
    color: #000000 !important;
}

/* Links */
[data-framer-root] a.framer-text[href^="mailto:"] {
    color: rgb(125, 211, 252) !important;
}

/* Replace Framer logo bitmap with local [nomad] wordmark */
[data-framer-name="logo"] {
    position: relative;
    overflow: visible;
}

[data-framer-name="logo"] img {
    opacity: 0 !important;
    pointer-events: none;
}

[data-framer-name="logo"]::after {
    content: "[nomad]";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    color: var(--nomad-ink);
    font-family: "Instrument Serif", Georgia, "Times New Roman", serif;
    font-size: clamp(1.05rem, 2.4vw, 1.35rem);
    font-weight: 400;
    letter-spacing: 0.02em;
    white-space: nowrap;
    line-height: 1;
    pointer-events: none;
    z-index: 0;
}

/* Section 02 — keep Agency vs Nomad side-by-side after Framer hydrate */
[data-framer-root] [data-nomad-problem-grid] {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100%;
}

[data-framer-root] [data-nomad-problem-grid] > * {
    min-width: 0;
}

/* Section 02 — space between headline and comparison card (Framer stack gap / padding) */
[data-framer-root] [data-nomad-s02-comparison-wrap] {
    padding-top: clamp(48px, 4.5vw, 64px) !important;
}

/* ── About: beliefs as cards ──────────────────────────────────────────── */
[data-framer-root] .nomad-beliefs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: var(--nomad-border);
    border: 1px solid var(--nomad-border);
    margin: clamp(20px, 3vw, 28px) 0;
    list-style: none;
    padding: 0;
}

[data-framer-root] .nomad-beliefs__item {
    background: var(--nomad-canvas);
    padding: clamp(18px, 2.5vw, 26px);
}

/* Belief headings — match POV index article row titles (.nomad-article-list__title) */
[data-framer-root] .nomad-beliefs__term {
    font-family: var(--nomad-sans);
    font-size: clamp(1.2rem, 2.5vw, 1.55rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.28;
    color: var(--nomad-ink);
    margin: 0 0 clamp(12px, 2vw, 16px);
}

/* Belief copy — match POV list summaries */
[data-framer-root] .nomad-beliefs__desc {
    font-family: var(--nomad-sans);
    font-size: clamp(15px, 1.4vw, 17px);
    font-weight: 400;
    line-height: 1.55;
    color: rgba(240, 240, 240, 0.58);
    margin: 0;
}

[data-framer-root] .nomad-beliefs dd {
    margin: 0;
}

/* Cred strip: typography from .nomad-article__date; rule + spacing below */
[data-framer-root] .nomad-cred.nomad-article__date {
    padding-bottom: clamp(18px, 2.5vw, 26px);
    border-bottom: 1px solid var(--nomad-border);
    line-height: 1.5;
}

@media (max-width: 600px) {
    [data-framer-root] .nomad-beliefs {
        grid-template-columns: 1fr;
    }
}
