/* ModernizeBI — design tokens + base (USEReady design system) */
@import url("https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;700;900&family=Roboto:wght@300;400;500;700;900&display=swap");


/* colors */
:root{
/* ---- Primary palette (brand guideline, slide 6) ---- */
--ur-navy:#10143a;            /* dark blue - primary brand ground */
--ur-navy-deck:#0e1239;       /* value printed in the brand deck; near-identical */
--ur-orange:#ea4424;          /* signature orange - the "one person who stands up" */
--ur-grey:#79787b;            /* wordmark grey */

/* ---- Primary tints & shades ---- */
--ur-navy-900:#080b22;
--ur-navy-800:#0c0f2e;
--ur-navy-700:#10143a;
--ur-navy-600:#1b2158;
--ur-navy-500:#293068;
--ur-navy-400:#3b4480;
--ur-navy-200:#9aa0c4;
--ur-navy-100:#d6d9e8;
--ur-navy-050:#eef0f6;

--ur-orange-700:#b52f16;
--ur-orange-600:#cf3a1d;
--ur-orange-500:#ea4424;
--ur-orange-400:#f2704f;
--ur-orange-200:#f9b7a5;
--ur-orange-100:#fde3db;
--ur-orange-050:#fef2ee;

/* ---- Neutrals ---- */
--ur-white:#ffffff;
--ur-grey-050:#f7f7f8;
--ur-grey-100:#eeeeef;
--ur-grey-200:#e0e0e2;
--ur-grey-300:#cac7c7;
--ur-grey-400:#a9a8ab;
--ur-grey-500:#79787b;
--ur-grey-600:#5d5c5f;
--ur-grey-700:#414043;
--ur-grey-900:#1c1c1e;

/* ---- Secondary palette (brand guideline, slide 7) ---- */
--ur-yellow:#fed21a;
--ur-blue:#0f3f65;
--ur-coral:#f05657;
--ur-stone:#cac7c7;
--ur-green:#5b8d3e;
--ur-teal:#00b1bd;

/* ---- Semantic aliases ---- */
--text-strong:var(--ur-navy);
--text-body:var(--ur-grey-700);
--text-muted:var(--ur-grey-500);
--text-inverse:var(--ur-white);
--text-inverse-muted:rgba(255,255,255,.72);
--text-accent:var(--ur-orange);
--text-link:var(--ur-orange);
--text-link-hover:var(--ur-orange-700);

--surface-page:var(--ur-white);
--surface-subtle:var(--ur-grey-050);
--surface-card:var(--ur-white);
--surface-inverse:var(--ur-navy);
--surface-inverse-soft:var(--ur-navy-600);
--surface-accent:var(--ur-orange);
--surface-accent-soft:var(--ur-orange-050);

--border-subtle:var(--ur-grey-200);
--border-default:var(--ur-grey-300);
--border-strong:var(--ur-grey-500);
--border-inverse:rgba(255,255,255,.18);
--border-accent:var(--ur-orange);

--focus-ring:var(--ur-orange);

--status-success:var(--ur-green);
--status-success-soft:#eaf2e5;
--status-warning:var(--ur-yellow);
--status-warning-soft:#fff8dd;
--status-danger:var(--ur-coral);
--status-danger-soft:#fdeaea;
--status-info:var(--ur-teal);
--status-info-soft:#e0f6f8;

/* ---- Data-viz sequence (secondary palette, ordered for charts) ---- */
--viz-1:#ea4424;
--viz-2:#0f3f65;
--viz-3:#00b1bd;
--viz-4:#fed21a;
--viz-5:#5b8d3e;
--viz-6:#f05657;
--viz-7:#79787b;
--viz-8:#10143a;
}

/* typography */
:root{
--font-brand:"Avenir","Avenir Next",Roboto,"Helvetica Neue",Arial,sans-serif;
--font-body:"Avenir","Avenir Next",Roboto,"Helvetica Neue",Arial,sans-serif;
--font-alt:Rubik,"Avenir",Arial,sans-serif;      /* secondary face named in the brand deck */
--font-mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;

--fw-light:300; /* @kind font */
--fw-book:400; /* @kind font */
--fw-medium:500; /* @kind font */
--fw-heavy:700; /* @kind font */
--fw-black:900; /* @kind font */

--fs-display-1:64px;
--fs-display-2:52px;
--fs-h1:40px;
--fs-h2:32px;
--fs-h3:24px;
--fs-h4:20px;
--fs-lead:18px;
--fs-body:16px;
--fs-body-sm:14px;
--fs-caption:12px;
--fs-eyebrow:12px;

--lh-tight:1.08; /* @kind other */
--lh-heading:1.18; /* @kind other */
--lh-snug:1.35; /* @kind other */
--lh-body:1.6; /* @kind other */
--lh-loose:1.75; /* @kind other */

--ls-display:-0.02em; /* @kind other */
--ls-heading:-0.01em; /* @kind other */
--ls-body:0; /* @kind other */
--ls-eyebrow:0.14em; /* @kind other */   /* tagline / eyebrow tracking, as in the logo lockup */
--ls-button:0.02em; /* @kind other */

/* semantic type aliases */
--type-display:var(--fw-heavy) var(--fs-display-1)/var(--lh-tight) var(--font-brand);
--type-h1:var(--fw-heavy) var(--fs-h1)/var(--lh-heading) var(--font-brand);
--type-h2:var(--fw-heavy) var(--fs-h2)/var(--lh-heading) var(--font-brand);
--type-h3:var(--fw-medium) var(--fs-h3)/var(--lh-snug) var(--font-brand);
--type-body:var(--fw-book) var(--fs-body)/var(--lh-body) var(--font-body);
--type-lead:var(--fw-light) var(--fs-lead)/var(--lh-loose) var(--font-body);
--type-caption:var(--fw-book) var(--fs-caption)/var(--lh-snug) var(--font-body);
}

/* spacing */
:root{
--space-0:0px;
--space-1:4px;
--space-2:8px;
--space-3:12px;
--space-4:16px;
--space-5:20px;
--space-6:24px;
--space-8:32px;
--space-10:40px;
--space-12:48px;
--space-16:64px;
--space-20:80px;
--space-24:96px;
--space-32:128px;

--gutter:24px;
--section-y:96px;
--section-y-sm:56px;
--container-max:1200px;
--container-wide:1440px;
--container-text:720px;

/* clear space around the logo = the height of the "i" in the wordmark */
--logo-clearspace:1em;
}

/* radius */
:root{
--radius-0:0px;
--radius-sm:3px;
--radius-md:6px;
--radius-lg:10px;
--radius-xl:16px;
--radius-pill:999px;   /* the logo's capsule figures - used for chips & tags */
--radius-card:8px;
--radius-control:4px;
}

/* elevation */
:root{
--shadow-none:none;
--shadow-xs:0 1px 2px rgba(16,20,58,.06);
--shadow-sm:0 1px 3px rgba(16,20,58,.08),0 1px 2px rgba(16,20,58,.04);
--shadow-md:0 4px 12px rgba(16,20,58,.10);
--shadow-lg:0 12px 32px rgba(16,20,58,.14);
--shadow-xl:0 24px 60px rgba(16,20,58,.18);
--shadow-accent:0 8px 24px rgba(234,68,36,.28);
--shadow-inset-hairline:inset 0 -1px 0 var(--border-subtle);
}

/* motion */
:root{
--ease-standard:cubic-bezier(.2,0,.2,1); /* @kind other */
--ease-out:cubic-bezier(0,0,.2,1); /* @kind other */
--ease-in:cubic-bezier(.4,0,1,1); /* @kind other */
--dur-instant:80ms; /* @kind other */
--dur-fast:140ms; /* @kind other */
--dur-normal:220ms; /* @kind other */
--dur-slow:360ms; /* @kind other */
--transition-control:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard); /* @kind other */
}

/* Tableau page — page-level styles (loads after modernizebi.css) */
html,body{overflow-x:hidden}
html{scroll-behavior:smooth}
#different,#estate,#model,#conversation,footer{overflow-x:clip}
body{margin:0;background:var(--surface-page);font:var(--type-body);color:var(--text-body)}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--text-link-hover)}
:root{--ur-orange:#8349ec;--ur-orange-700:#5a2bb0;--ur-orange-600:#6d38d4;--ur-orange-500:#8349ec;--ur-orange-400:#9d6ef0;--ur-orange-200:#cdb6f7;--ur-orange-100:#e6dafb;--ur-orange-050:#f4effd;--text-accent:#8349ec;--text-link:#8349ec;--text-link-hover:#5a2bb0;--surface-accent:#8349ec;--surface-accent-soft:#f4effd;--border-accent:#8349ec;--focus-ring:#8349ec;--viz-1:#8349ec}

/* hover states */
.ms-h-accent:hover{color:var(--ur-orange)!important}
.ms-h-menu:hover{background:var(--surface-accent-soft)!important;color:var(--ur-orange)!important}
.ms-h-shadow:hover{box-shadow:var(--shadow-md)}
.ms-h-card:hover{background:var(--ur-grey-050)!important}

/* dropdown */
.ms-dd{display:none}
.ms-navitem:hover .ms-dd,.ms-navitem:focus-within .ms-dd,.ms-navitem.is-open .ms-dd{display:block}

/* buttons */
.ms-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;border-radius:999px;font:var(--fw-medium) 16px/22px var(--font-brand);text-decoration:none!important;transition:background var(--dur-fast) var(--ease-standard);cursor:pointer}
.ms-btn--primary{background:var(--ur-orange);color:#fff!important}
.ms-btn--primary:hover{background:var(--ur-orange-600)}
.ms-btn--primary:active{background:var(--ur-orange-700)}
.ms-btn--inverse{background:#fff;color:var(--ur-navy)!important}
.ms-btn--inverse:hover{background:var(--ur-grey-100)}
.ms-btn:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}

/* article thumbnails (replace with <img> when images are ready) */
.ms-thumb{position:absolute;inset:0;background:var(--ur-grey-100)}

/* video popup */
.ms-modal{position:fixed;inset:0;z-index:100;background:rgba(16,20,58,.85);display:flex;align-items:center;justify-content:center;padding:24px}
.ms-modal[hidden]{display:none}
.ms-modal-inner{position:relative;width:100%;max-width:min(1040px,calc((100vh - 140px) * 16 / 9))}
.ms-modal-close{position:absolute;top:-52px;right:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:999px;background:#fff;color:var(--ur-navy);cursor:pointer}
.ms-modal-frame{position:relative;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-xl)}
.ms-modal-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
