:root {
    --gbc-ink: #0b1726;
    --gbc-ink-soft: #18304a;
    --gbc-green: #27d17f;
    --gbc-green-dark: #087949;
    --gbc-cream: #f4f1e9;
    --gbc-paper: #ffffff;
    --gbc-line: #dce3e8;
    --gbc-muted: #607083;
    --gbc-warn: #a45d00;
}

.v1-surface { margin: 0; background: #f5f7f6; color: var(--gbc-ink); }
.v1-layout { min-height: 100vh; display: grid; grid-template-columns: 248px minmax(0, 1fr); }
.v1-sidebar { position: sticky; top: 0; height: 100vh; box-sizing: border-box; display: flex; flex-direction: column; padding: 28px 20px 20px; overflow-y: auto; background: linear-gradient(180deg, #08131f, #0d2236); color: #fff; }
.v1-brand img { width: 178px; max-height: 70px; object-fit: contain; object-position: left center; }
.v1-surface-name { margin: 22px 0 8px; color: var(--gbc-green); font-size: 10px; font-weight: 900; letter-spacing: .17em; }
.v1-org { display: grid; gap: 4px; padding: 12px 0 18px; border-bottom: 1px solid rgba(255,255,255,.1); }
.v1-org small, .v1-sidebar-footer small { color: #91a1b3; font-size: 10px; }
.v1-org strong { font-size: 13px; }
.v1-nav { display: grid; gap: 4px; margin-top: 16px; }
.v1-nav a { padding: 10px 12px; border-radius: 9px; color: #b8c3cf; font-size: 12px; font-weight: 720; line-height: 1.25; text-decoration: none; }
.v1-nav a:hover, .v1-nav a:focus-visible { color: #fff; background: rgba(255,255,255,.08); outline: none; }
.v1-nav a.active { color: #fff; background: rgba(39,209,127,.15); box-shadow: inset 3px 0 var(--gbc-green); }
.v1-sidebar-footer { display: grid; gap: 11px; margin-top: auto; padding-top: 20px; }
.v1-surface-links { display: flex; flex-wrap: wrap; gap: 7px 12px; }
.v1-surface-links a { color: #9fb1c2; font-size: 10px; text-decoration: none; }
.v1-sidebar-footer button { padding: 0; border: 0; background: transparent; color: #aab6c4; cursor: pointer; font: inherit; font-size: 11px; text-decoration: underline; }
.v1-main { min-width: 0; }
.v1-content { max-width: 1450px; margin: 0 auto; padding: 34px 40px 64px; }
.v1-demo-banner { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 11px 18px; border-bottom: 1px solid #f2cc81; background: #fff5d9; color: #6b4300; font-size: 12px; }
.v1-demo-banner span { color: #8a651e; }
.v1-page-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 28px; }
.v1-page-header h1 { max-width: 950px; margin: 7px 0 0; font-size: clamp(30px, 4vw, 48px); line-height: 1.04; letter-spacing: -.045em; }
.v1-user-chip { display: flex; align-items: center; gap: 8px; padding: 7px 12px 7px 7px; border: 1px solid var(--gbc-line); border-radius: 30px; background: #fff; }
.v1-user-chip > span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--gbc-ink); color: #fff; font-weight: 900; }
.v1-user-chip small { color: var(--gbc-muted); }
.v1-mobile-header { display: none; }

.v1-panel { padding: 24px; border: 1px solid var(--gbc-line); border-radius: 16px; background: var(--gbc-paper); box-shadow: 0 10px 30px rgba(11,23,38,.055); }
.v1-panel h2 { margin: 6px 0 10px; font-size: 21px; letter-spacing: -.025em; }
.v1-panel p { color: var(--gbc-muted); line-height: 1.6; }
.v1-panel-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 18px; }
.v1-panel-heading a, .v1-text-link { color: var(--gbc-green-dark); font-size: 12px; font-weight: 800; text-decoration: none; }
.v1-grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(260px, .8fr); gap: 18px; margin-bottom: 18px; }
.v1-grid-wide { grid-template-columns: minmax(0, 2fr) minmax(260px, .85fr); }
.v1-answer-grid, .v1-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.v1-answer-grid article, .v1-metric-grid article { min-height: 122px; padding: 20px; border: 1px solid var(--gbc-line); border-radius: 14px; background: #fff; }
.v1-answer-grid span, .v1-metric-grid span { display: block; color: var(--gbc-muted); font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.v1-answer-grid strong { display: block; margin-top: 12px; font-size: 17px; line-height: 1.3; }
.v1-answer-grid small, .v1-metric-grid small { display: block; margin-top: 8px; color: var(--gbc-muted); }
.v1-metric-grid strong { display: block; margin: 12px 0 6px; font-size: 34px; }
.v1-action-panel { display: flex; flex-direction: column; color: #fff; background: linear-gradient(145deg, #0a1928, #0e332d); }
.v1-action-panel .eyebrow { color: var(--gbc-green); }
.v1-action-panel p { color: #acbac7; }
.v1-action-panel > strong { margin-top: auto; padding-top: 28px; color: #fff; line-height: 1.5; }
.v1-insight-list { display: grid; gap: 12px; }
.v1-insight-list article { padding: 18px 0; border-bottom: 1px solid #edf0f2; }
.v1-insight-list article:last-child { border-bottom: 0; }
.v1-insight-list article > div:first-child { display: flex; align-items: center; gap: 10px; }
.v1-insight-list h3 { margin: 10px 0 4px; font-size: 17px; }
.v1-insight-list p { margin: 5px 0 0; }
.v1-movement { padding: 5px 8px; border-radius: 20px; background: #e6f6ee; color: var(--gbc-green-dark); font-size: 11px; font-weight: 900; }
.v1-movement.elevated { background: #fff0d9; color: var(--gbc-warn); }
.v1-category-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.v1-category-grid a { display: grid; min-height: 118px; align-content: start; padding: 17px; border: 1px solid var(--gbc-line); border-radius: 12px; color: inherit; text-decoration: none; transition: transform .15s ease, border-color .15s ease; }
.v1-category-grid a:hover, .v1-category-grid a:focus-visible { border-color: var(--gbc-green); outline: none; transform: translateY(-2px); }
.v1-category-grid span { min-height: 32px; font-size: 12px; font-weight: 800; }
.v1-category-grid strong { margin: 12px 0 5px; font-size: 24px; }
.v1-category-grid small { color: var(--gbc-muted); line-height: 1.4; }
.v1-region-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.v1-region-grid article { display: grid; gap: 6px; padding: 16px; border-radius: 11px; background: #f5f8f6; }
.v1-region-grid span, .v1-region-grid small { color: var(--gbc-muted); font-size: 11px; }
.v1-region-grid p { margin: 4px 0 0; font-size: 12px; }
.v1-coverage-note { margin: 16px 0 0; padding: 12px 14px; border-left: 3px solid var(--gbc-green); background: #f4faf7; font-size: 12px; }
.v1-category-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.v1-category-detail-grid ul { display: grid; gap: 9px; padding: 0; list-style: none; }
.v1-category-detail-grid li, .v1-item-list article { display: grid; gap: 3px; padding: 12px; border-radius: 10px; background: #f5f7f6; }
.v1-category-detail-grid small, .v1-item-list span, .v1-item-list small { color: var(--gbc-muted); }
.v1-item-list { display: grid; gap: 10px; }
.v1-bar-chart { display: grid; gap: 9px; }
.v1-bar-chart > div { display: grid; grid-template-columns: 50px 1fr 62px; gap: 10px; align-items: center; font-size: 11px; }
.v1-bar-chart i { width: var(--bar-width); height: 13px; border-radius: 20px; background: linear-gradient(90deg, var(--gbc-green-dark), var(--gbc-green)); }
.v1-bar-chart strong { text-align: right; }
.v1-preference-row { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--gbc-line); }
.v1-preference-row > div { display: grid; gap: 5px; }
.v1-status-pill { display: inline-flex; width: fit-content; padding: 4px 8px; border-radius: 20px; background: #e4f7ed; color: var(--gbc-green-dark); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.v1-status-pill.warn { background: #fff0d9; color: var(--gbc-warn); }
.v1-status-pill.official { background: #e8eef8; color: #1e4c88; }
.v1-purposeful-empty { margin-top: 18px; padding: 18px; border: 1px dashed #b9c4ce; border-radius: 11px; background: #fafbfb; }
.v1-purposeful-empty p { margin-bottom: 0; }
.v1-empty { min-height: 220px; display: grid; align-content: center; justify-items: center; text-align: center; }
.v1-brief-lead { margin-bottom: 18px; padding: 30px; background: #0d2436; color: #fff; }
.v1-brief-lead .eyebrow { color: var(--gbc-green); }
.v1-brief-lead p { color: #b4c1cc; }
.v1-brief-list article { border-bottom: 1px solid var(--gbc-line); }
.v1-action-callout { margin-top: 17px; padding: 15px; border-left: 3px solid var(--gbc-green); background: #f4faf7; }
.v1-action-callout p { margin: 5px 0 0; }
.v1-brief-list footer { margin-top: 16px; color: var(--gbc-muted); font-size: 11px; }
.v1-trust-note { margin-top: 18px; padding: 18px 22px; border: 1px solid #e4c277; border-radius: 13px; background: #fff7df; }
.v1-trust-note p { margin-bottom: 0; color: #75500d; }
.v1-report { max-width: 920px; margin: 0 auto; padding: 42px; }
.v1-report > header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 22px; border-bottom: 2px solid var(--gbc-ink); }
.v1-report > header img { width: 180px; }
.v1-report > header div { display: grid; text-align: right; }
.v1-report dl, .v1-definition-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.v1-report dl div, .v1-definition-list div { padding: 13px; border-radius: 9px; background: #f4f6f5; }
.v1-report dt, .v1-definition-list dt { color: var(--gbc-muted); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.v1-report dd, .v1-definition-list dd { margin: 5px 0 0; font-weight: 750; }
.v1-report > section { padding: 16px 0; border-bottom: 1px solid var(--gbc-line); }
.v1-report > footer { margin-top: 24px; padding: 18px; border-radius: 10px; background: #fff5d9; }
.v1-readiness-list { display: grid; gap: 10px; }
.v1-readiness-list div { display: grid; gap: 4px; padding: 13px 15px; border-left: 3px solid #c4ccd4; background: #f6f7f7; }
.v1-readiness-list div.ready { border-color: var(--gbc-green); }
.v1-readiness-list span { color: var(--gbc-muted); font-size: 11px; }
.v1-ops-table { padding: 0; overflow: hidden; }
.v1-ops-table .data-table small, .data-table td small { display: block; margin-top: 4px; color: var(--gbc-muted); }
.benchmark-panel { margin-bottom: 18px; }
.benchmark-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.benchmark-grid article { padding: 18px; border: 1px solid var(--gbc-line); border-radius: 12px; background: #f8fafc; }
.benchmark-grid h3 { min-height: 48px; margin: 12px 0; font-size: 15px; }
.benchmark-grid dl { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; }
.benchmark-grid dl div { padding: 9px; border-radius: 8px; background: #fff; }
.benchmark-grid dt { color: var(--gbc-muted); font-size: 9px; font-weight: 900; text-transform: uppercase; }
.benchmark-grid dd { margin: 4px 0 0; font-weight: 800; }
.benchmark-grid p, .benchmark-grid > article > small, .benchmark-grid footer { font-size: 11px; line-height: 1.5; }
.benchmark-grid footer { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--gbc-line); color: var(--gbc-muted); }
.v1-form-stack { display: grid; gap: 12px; }
.v1-form-stack label { display: grid; gap: 5px; color: var(--gbc-muted); font-size: 11px; font-weight: 800; }
.v1-form-stack input, .v1-form-stack select { box-sizing: border-box; width: 100%; padding: 11px; border: 1px solid var(--gbc-line); border-radius: 8px; background: #fff; font: inherit; }
.workflow-row { display: grid; gap: 4px; padding: 14px 0; border-bottom: 1px solid var(--gbc-line); }

.v1-marketing-page {
    --marketing-content-max: 1180px;
    --marketing-gutter: clamp(20px, 3vw, 32px);
    margin: 0;
    color: var(--gbc-ink);
    background: #f5f7f6;
}
.marketing-shell-container { box-sizing: border-box; width: calc(100% - var(--marketing-gutter) - var(--marketing-gutter)); max-width: var(--marketing-content-max); margin-inline: auto; }
.marketing-header { position: sticky; z-index: 40; top: 0; width: 100%; border-bottom: 1px solid rgba(255,255,255,.1); background: rgba(7,21,34,.96); backdrop-filter: blur(12px); }
.marketing-header-inner { min-height: 82px; display: grid; grid-template-columns: 170px minmax(0, 1fr) auto; gap: 22px; align-items: center; }
.marketing-logo { display: block; line-height: 0; }
.marketing-logo img, .marketing-footer img { display: block; width: 170px; height: auto; }
.marketing-desktop-nav { display: flex; justify-content: center; gap: 18px; }
.marketing-desktop-nav a, .marketing-footer a { color: #b7c4cf; font-size: 11px; font-weight: 750; text-decoration: none; }
.marketing-desktop-nav a:hover, .marketing-desktop-nav a:focus-visible, .marketing-footer a:hover, .marketing-footer a:focus-visible { color: #fff; outline-offset: 4px; }
.marketing-mobile-menu { display: none; position: relative; color: #fff; }
.marketing-mobile-menu summary { cursor: pointer; font-size: 12px; font-weight: 850; }
.marketing-mobile-menu nav { position: absolute; z-index: 50; top: 38px; right: 0; width: min(320px, calc(100dvw - 40px)); display: grid; padding: 12px; border: 1px solid #dce3e8; border-radius: 12px; background: #fff; box-shadow: 0 18px 45px rgba(0,0,0,.28); }
.marketing-mobile-menu nav a { padding: 10px 12px; color: var(--gbc-ink); font-size: 12px; font-weight: 750; text-decoration: none; }
.marketing-mobile-menu nav a:hover, .marketing-mobile-menu nav a:focus-visible { border-radius: 7px; background: #edf7f2; outline: none; }
.marketing-mobile-menu .marketing-mobile-cta { margin-top: 7px; background: var(--gbc-green); }
.marketing-cta, .marketing-actions a { padding: 11px 15px; border-radius: 8px; background: var(--gbc-green); color: #071522 !important; font-size: 11px; font-weight: 900; text-decoration: none; }
.marketing-cta:focus-visible, .marketing-actions a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.marketing-hero { width: 100%; color: #fff; background: radial-gradient(circle at 88% 12%, #164b3b, transparent 30%), #071522; }
.marketing-hero-inner { padding-block: clamp(70px, 10vw, 135px); }
.marketing-breadcrumb { display: flex; gap: 9px; align-items: center; margin-bottom: 28px; color: #8fa2b2; font-size: 11px; }
.marketing-breadcrumb a { color: #c4d0d9; font-weight: 750; text-decoration: none; }
.marketing-breadcrumb a:hover, .marketing-breadcrumb a:focus-visible { color: #fff; outline-offset: 4px; }
.marketing-hero h1 { max-width: 900px; margin: 15px 0; font-size: clamp(46px, 7vw, 82px); line-height: .96; letter-spacing: -.055em; }
.marketing-hero-inner > p { max-width: 720px; color: #afbdc8; font-size: 18px; line-height: 1.65; }
.marketing-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.marketing-actions a:last-child { border: 1px solid rgba(255,255,255,.22); background: transparent; color: #fff !important; }
.marketing-body-section { width: 100%; background: #f5f7f6; }
.marketing-body-inner { padding-block: 55px 60px; }
.marketing-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.marketing-card-grid article { min-height: 190px; padding: 26px; border: 1px solid var(--gbc-line); border-radius: 15px; background: #fff; box-shadow: 0 12px 30px rgba(11,23,38,.05); }
.marketing-card-grid article > span { color: var(--gbc-green-dark); font-size: 10px; font-weight: 900; }
.marketing-card-grid h2 { margin: 14px 0 9px; font-size: 21px; }
.marketing-card-grid p, .marketing-trust p { color: var(--gbc-muted); line-height: 1.65; }
.marketing-trust { margin-top: 26px; padding: 26px; border-left: 4px solid var(--gbc-green); background: #fff; }
.marketing-related-links, .marketing-home-explore { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; margin-top: 26px; padding: 20px 24px; border: 1px solid var(--gbc-line); border-radius: 12px; background: #fff; }
.marketing-related-links strong, .marketing-home-explore strong { margin-right: auto; }
.marketing-related-links a { color: var(--gbc-green-dark); font-size: 12px; font-weight: 800; text-decoration: none; }
.marketing-related-links a:hover, .marketing-related-links a:focus-visible { text-decoration: underline; outline-offset: 4px; }
.marketing-footer { width: 100%; color: #aab9c6; background: #071522; }
.marketing-footer-inner { display: grid; grid-template-columns: .8fr 1fr 1.2fr; gap: 42px; padding-block: 48px; }
.marketing-footer nav { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.marketing-footer p { font-size: 11px; line-height: 1.6; }

.v1-login-page { margin: 0; background: var(--gbc-cream); }
.v1-login-shell { min-height: 100vh; min-height: 100svh; display: grid; grid-template-columns: minmax(420px, 1.1fr) minmax(400px, .9fr); }
.v1-login-intro { display: flex; flex-direction: column; justify-content: center; padding: clamp(42px, 8vw, 100px); color: #fff; background: radial-gradient(circle at 90% 15%, #18463c, transparent 35%), #071522; }
.v1-login-intro > img { width: min(320px, 70%); margin-bottom: 60px; }
.v1-kicker { color: var(--gbc-green); font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.v1-login-intro h1 { max-width: 700px; margin: 14px 0; font-size: clamp(40px, 5vw, 70px); line-height: .98; letter-spacing: -.055em; }
.v1-login-intro > p { max-width: 570px; color: #a9bac8; font-size: 17px; line-height: 1.6; }
.v1-login-intro .v1-demo-banner { justify-content: flex-start; margin-top: 35px; border: 1px solid rgba(255,213,127,.4); border-radius: 10px; }
.v1-login-form { display: grid; place-items: center; padding: clamp(30px, 6vh, 58px) 36px; }
.v1-login-form form { width: min(420px, 100%); display: grid; gap: 10px; }
.v1-login-form h2 { margin: 4px 0 20px; font-size: 40px; }
.v1-login-form label { margin-top: 7px; color: var(--gbc-muted); font-size: 11px; font-weight: 850; }
.v1-login-form input { width: 100%; box-sizing: border-box; padding: 13px; border: 1px solid #c9d2d9; border-radius: 9px; background: #fff; font: inherit; }
.v1-primary-button { display: flex; justify-content: space-between; margin-top: 12px; padding: 14px 16px; border: 0; border-radius: 9px; background: var(--gbc-green); color: #071522; cursor: pointer; font-weight: 900; }
.v1-form-error { padding: 11px; border-radius: 8px; background: #fde9e9; color: #8d2222; }
.v1-inline-button { width: fit-content; display: inline-flex; text-decoration: none; }
.v1-organization-options { display: grid; gap: 12px; margin-top: 20px; }
.v1-organization-options form { margin: 0; }
.v1-secondary-button { width: 100%; min-height: 56px; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 13px 16px; border: 1px solid var(--gbc-line); border-radius: 10px; background: #fff; color: var(--gbc-ink); cursor: pointer; text-align: left; }
.v1-secondary-button:hover, .v1-secondary-button:focus-visible { border-color: var(--gbc-green-dark); outline: 3px solid rgba(39, 209, 127, .18); }
.v1-secondary-button span { color: var(--gbc-green-dark); font-size: 12px; font-weight: 850; white-space: nowrap; }

.marketing-home { min-height: 100vh; background: #071522; color: #fff; }
.marketing-home-hero { width: 100%; background: radial-gradient(circle at 88% 12%, #123e35, transparent 30%), #071522; }
.marketing-home-hero-inner { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(260px, .65fr); gap: 55px; align-items: end; padding-block: clamp(48px, 7vw, 92px) 45px; }
.marketing-home-hero h1 { max-width: 900px; margin: 15px 0; font-size: clamp(46px, 7vw, 84px); line-height: .94; letter-spacing: -.06em; }
.marketing-home-hero p { max-width: 700px; color: #a6b5c3; font-size: 17px; line-height: 1.65; }
.marketing-home-hero aside { padding: 22px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: rgba(255,255,255,.045); }
.marketing-home-body { width: 100%; background: #071522; }
.marketing-home-body-inner { padding-block: 0 80px; }
.marketing-home-body .v1-demo-banner { margin: 0 0 26px; border: 0; border-radius: 10px; }
.marketing-home-explore { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.035); }
.marketing-home-explore a { color: #b9c8d3; font-size: 12px; font-weight: 800; text-decoration: none; }
.marketing-home-explore a:hover, .marketing-home-explore a:focus-visible { color: #fff; outline-offset: 4px; }
.v1-gateway-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.v1-gateway-links a { min-height: 140px; display: grid; align-content: start; padding: 23px; border: 1px solid rgba(255,255,255,.13); border-radius: 14px; color: #fff; text-decoration: none; background: rgba(255,255,255,.035); }
.v1-gateway-links a:hover, .v1-gateway-links a:focus-visible { border-color: var(--gbc-green); outline: none; }
.v1-gateway-links span { color: var(--gbc-green); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.v1-gateway-links strong { margin-top: 16px; font-size: 18px; line-height: 1.35; }
.v1-gateway-links small { margin-top: 8px; color: #91a3b3; }
.v1-readiness { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 25px; }
.v1-readiness > div { min-width: 180px; display: grid; grid-template-columns: 10px 1fr; gap: 2px 10px; padding: 13px 16px; border-radius: 10px; background: rgba(255,255,255,.05); }
.v1-readiness small { grid-column: 2; color: #91a3b3; }
.v1-status { width: 8px; height: 8px; margin-top: 4px; border-radius: 50%; background: #9f4a4a; }
.v1-status.ready { background: var(--gbc-green); box-shadow: 0 0 0 4px rgba(39,209,127,.12); }

@media (max-width: 1100px) {
    .v1-answer-grid, .v1-metric-grid { grid-template-columns: repeat(2, 1fr); }
    .v1-category-grid { grid-template-columns: repeat(3, 1fr); }
    .benchmark-grid, .marketing-card-grid { grid-template-columns: repeat(2, 1fr); }
    .marketing-header-inner { grid-template-columns: 170px minmax(0, 1fr) auto; }
    .marketing-desktop-nav { display: none; }
    .marketing-mobile-menu { display: block; justify-self: end; }
}
@media (max-width: 840px) {
    .v1-layout { display: block; }
    .v1-sidebar { display: none; }
    .v1-mobile-header { min-height: 66px; display: flex; justify-content: space-between; align-items: center; padding: 8px 18px; background: var(--gbc-ink); }
    .v1-mobile-header img { width: 125px; }
    .v1-mobile-header summary { color: #fff; cursor: pointer; font-weight: 800; }
    .v1-mobile-header details { position: relative; }
    .v1-mobile-header nav { position: absolute; z-index: 20; right: 0; top: 35px; width: min(310px, 80vw); display: grid; padding: 12px; border-radius: 10px; background: #fff; box-shadow: 0 15px 35px rgba(0,0,0,.25); }
    .v1-mobile-header nav a { padding: 10px; color: var(--gbc-ink); text-decoration: none; }
    .v1-content { padding: 26px 20px 50px; }
    .v1-demo-banner { align-items: flex-start; flex-direction: column; }
    .v1-grid, .v1-grid-wide, .v1-category-detail-grid { grid-template-columns: 1fr; }
    .v1-region-grid { grid-template-columns: repeat(2, 1fr); }
    .v1-login-shell { grid-template-columns: 1fr; }
    .v1-login-intro { padding: 45px 28px; }
    .v1-login-intro > img { margin-bottom: 35px; }
    .v1-login-intro h1 { font-size: 44px; }
    .marketing-home-hero-inner { grid-template-columns: 1fr; gap: 20px; }
    .v1-gateway-links { grid-template-columns: 1fr; }
    .marketing-card-grid, .benchmark-grid, .marketing-footer-inner { grid-template-columns: 1fr; }
    .marketing-hero-inner { padding-block: 70px; }
    .marketing-footer-inner { gap: 28px; }
}
@media (max-width: 560px) {
    .v1-answer-grid, .v1-metric-grid, .v1-category-grid, .v1-region-grid, .v1-report dl, .v1-definition-list { grid-template-columns: 1fr; }
    .v1-page-header { display: block; }
    .v1-user-chip { width: fit-content; margin-top: 18px; }
    .v1-content { padding-inline: 14px; }
    .v1-panel { padding: 19px; }
    .v1-report { padding: 22px; }
    .v1-report > header { align-items: flex-start; flex-direction: column; gap: 16px; }
    .v1-report > header div { text-align: left; }
    .marketing-header-inner { min-height: 72px; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; }
    .marketing-logo img { width: 155px; }
    .marketing-header-cta { display: none; }
    .marketing-home-hero-inner { padding-block: 48px 32px; }
    .marketing-home-hero h1, .marketing-hero h1 { font-size: 44px; }
    .marketing-home-body-inner { padding-bottom: 55px; }
    .marketing-body-inner { padding-block: 38px 45px; }
    .marketing-related-links, .marketing-home-explore { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
@media print {
    .v1-sidebar, .v1-mobile-header, .v1-demo-banner, .v1-page-header { display: none !important; }
    .v1-layout { display: block; }
    .v1-content { padding: 0; }
    .v1-report { border: 0; box-shadow: none; }
}
