/* VBoarder light content theme. Retains the existing brand and PHP layout. */
:root {
    --void: #ffffff;
    --void-soft: #f3f6fa;
    --panel: #ffffff;
    --panel-2: #edf2f7;
    --paper: #f3f6fa;
    --paper-2: #e6edf5;
    --paper-ink: #142b45;
    --white: #142b45;
    --muted: #485b6d;
    --muted-2: #526477;
    --line: #cbd6e2;
    --line-soft: #dce4ed;
    --amber: #f6a623;
    --amber-dark: #d78b14;
    --cyan: #244f77;
    --magenta: #244f77;
    --success: #236349;
    --danger: #a12525;
    --shadow: 0 10px 28px rgba(20, 43, 69, 0.06);
}
html, body { background: #fff; color: #243746; }
body { font-size: 18px; }
h1, h2, h3, .display { color: #142b45; font-family: "Barlow", "Segoe UI", Arial, sans-serif; font-weight: 600; letter-spacing: -0.025em; line-height: 1.15; }
h1, .page-hero h1 { font-size: clamp(2.4rem, 4.6vw, 4.1rem); max-width: 850px; margin-bottom: 22px; }
h2 { font-size: clamp(1.8rem, 3.2vw, 2.6rem); }
h3 { font-size: 1.3rem; line-height: 1.3; }
.accent, .eyebrow, .section-paper .eyebrow, .section-paper .accent,
.card-link, .service-index, .breadcrumb a, .bento-number, th, .contact-details a { color: #244f77; }
.eyebrow { font-family: "Barlow", "Segoe UI", Arial, sans-serif; font-size: .875rem; letter-spacing: .08em; margin-bottom: 14px; }
.eyebrow::before, .section-paper .eyebrow::before { background: #d29122; width: 24px; }
.lead { font-size: 1.15rem; line-height: 1.65; }
.section-paper .lead, .section-paper .muted { color: #485b6d; }
.fine-print, .form-note, .breadcrumb, .field label, .field legend { font-size: .9rem; }
.signal-bar { background: #eaf0f6; color: #24415e; border-color: #dce4ed; font-size: .875rem; letter-spacing: .07em; }
.signal-inner { min-height: 32px; }
.site-header, .site-footer {
    --white: #fff;
    --muted: #d4deea;
    --muted-2: #c2cfdd;
    --panel: #142b45;
    --line-soft: #344b63;
    background: #142b45;
    color: #fff;
}
.site-header { backdrop-filter: none; border-bottom: 0; }
.header-inner { min-height: 78px; gap: 20px; }
.brand { color: #fff; }
.brand img { width: 44px; height: 44px; border: 0; border-radius: 3px; }
.brand-copy strong { font-family: "Barlow", "Segoe UI", Arial, sans-serif; font-size: 1.3rem; font-weight: 700; letter-spacing: .06em; }
.brand-copy small { color: #d5deea; font-size: .75rem; letter-spacing: .08em; }
.primary-nav { font-family: "Barlow", "Segoe UI", Arial, sans-serif; font-size: .875rem; letter-spacing: 0; text-transform: none; gap: 18px; }
.primary-nav > a { color: #e4ecf5; }
.primary-nav > a:hover, .primary-nav > a[aria-current="page"] { color: #fff; }
.primary-nav > a.button { color: #142b45; }
.menu-toggle { background: #203a55; border-color: #62768d; color: #fff; }
.button, .button-small { min-height: 46px; padding: 11px 20px; font-family: "Barlow", "Segoe UI", Arial, sans-serif; font-size: 1rem; font-weight: 600; text-transform: none; letter-spacing: 0; border-radius: 5px; box-shadow: none; color: #142b45; }
.button:hover { transform: none; box-shadow: none; background: #ffc05d; }
.button-ghost { border-color: #8fa1b3; color: #142b45; background: #fff; }
.button-ghost:hover { background: #edf2f7; }
.button-light { border-color: #f6a623; background: #f6a623; color: #142b45; }
.hero { background: #fff; }
.hero::before, .page-hero::after, .brand-panel::before, .brand-panel::after { display: none; }
.hero-grid { grid-template-columns: minmax(0, 1.4fr) minmax(270px, .65fr); gap: 54px; min-height: 0; padding-block: 54px 44px; }
.hero-copy .lead { max-width: 650px; }
.hero-actions { margin-top: 24px; gap: 12px; }
.proof-line { margin-top: 24px; padding-top: 18px; gap: 8px 20px; font-size: .875rem; letter-spacing: 0; text-transform: none; }
.proof-line span::before { border: 0; background: #cbd6e2; border-radius: 50%; }
.hero-summary { padding: 28px; background: #f3f6fa; border: 1px solid #dce4ed; border-top: 3px solid #d29122; border-radius: 6px; }
.hero-summary h2 { font-size: 1.6rem; }
.hero-summary ul { list-style: none; padding: 0; margin: 0; }
.hero-summary li { padding: 12px 0; border-top: 1px solid #dce4ed; }
.hero-summary li strong { display: block; font-size: 1rem; color: #142b45; }
.hero-summary li span { display: block; font-size: .95rem; color: #485b6d; }
.section { padding-block: 66px; }
.home #services { padding-top: 42px; background: #f3f6fa; }
.section-head { gap: 36px; margin-bottom: 30px; }
.section-compact { padding-block: 50px; }
.page-hero { padding-block: 54px; background: #fff; }
.page-hero .breadcrumb { margin-bottom: 22px; }
.project-cards { margin-top: 0; align-items: stretch; }
.workflow-card { background: #fff; border: 1px solid #cbd6e2; padding: 28px; border-radius: 6px; }
.workflow-card:nth-child(2), .workflow-card:nth-child(3) { border-left-color: #cbd6e2; }
.project-card .card-link { position: static; inset: auto; margin-top: auto; padding-top: 18px; font-family: "Barlow", "Segoe UI", Arial, sans-serif; text-transform: none; font-size: .95rem; letter-spacing: 0; }
.project-card p { font-size: 1rem; }
.project-card .eyebrow { font-size: .875rem; }
.project-card .eyebrow::before { display: none; }
.card-link:hover, .paper .card-link:hover, .amber-card .card-link:hover { color: #142b45; }
.sector-links { font-size: .95rem; gap: .5rem 1.1rem; }
.bento-card, .bento-card.paper, .method-step, .sticky-card, .status-card, .contact-details { background: #fff; border-color: #cbd6e2; border-radius: 6px; }
.method-step { padding: 26px; }
.method-step::before { margin-bottom: 20px; color: #526477; font-size: 1.5rem; }
.ownership-band { padding: 34px; gap: 36px; border-color: #dce4ed; background: #f3f6fa; border-radius: 6px; }
.ownership-points div { background: #fff; }
.ownership-points strong { color: #142b45; }
.ownership-points span { font-size: .95rem; }
.brand-panel { max-width: 260px; justify-self: center; padding: 14px; background: #142b45; border: 0; border-radius: 6px; box-shadow: none; }
.panel-label { color: #d5deea; border-color: #344b63; font-size: .8rem; letter-spacing: 0; }
.hero-note, .disclosure { background: #edf2f7; border-color: #cbd6e2; color: #485b6d; }
.disclosure strong { color: #142b45; }
.status-pill { font-size: .875rem; border-color: #a5c7b9; color: #236349; background: #f1f8f4; }
.status-pill::before { display: none; }
.demo-shell { background: #fff; border-color: #cbd6e2; border-radius: 6px; overflow: hidden; box-shadow: none; }
.demo-head { background: #eaf0f6; color: #142b45; font-size: .875rem; letter-spacing: .03em; }
.demo-lights { display: none; }
.demo-progress { background: #dce4ed; }
.demo-progress span { background: #244f77; }
.demo-question select, .demo-question textarea, .demo-question input[type="text"], .demo-option,
.field input, .field select, .field textarea { background: #fff; color: #243746; border-color: #8fa1b3; border-radius: 4px; }
.demo-question legend { color: #142b45; }
.demo-option:hover, .demo-option[aria-pressed="true"] { color: #142b45; background: #edf2f7; border-color: #244f77; }
.demo-option:has(input:checked) { background: #eaf0f6; border-color: #244f77; }
.demo-question p { color: #8f2727; font-size: .875rem; }
.demo-question-meta { font-size: .875rem; }
.demo-voice { border-color: #8fa1b3; color: #244f77; }
.demo-summary { background: #edf2f7; border-color: #244f77; }
.faq-list summary::after { color: #244f77; }
.territory-board { background: #edf2f7; }
.territory-board::before, .territory-board::after { border-color: #cbd6e2; }
.map-point { color: #485b6d; font-size: .875rem; }
.map-point.primary { color: #142b45; }
.contact-form { background: #f3f6fa; box-shadow: none; border-color: #cbd6e2; border-radius: 6px; }
.form-note { color: #485b6d; }
.closing-cta { background: #eaf0f6; border-color: #dce4ed; padding-block: 54px; }
.footer-heading { color: #f6a623; font-size: .875rem; }
.site-footer p, .footer-links a, .footer-phone, .footer-bottom { font-size: .9rem; }
.site-footer .brand-copy small { color: #d5deea; }
@media (max-width:1120px) { .primary-nav { gap:14px; font-size:.875rem; } }
@media (max-width:900px) {
    .hero-grid { grid-template-columns: 1fr; gap:26px; padding-block:40px; }
    .hero-summary { max-width:none; }
    .hero-summary ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
    .primary-nav { background:#142b45; }
    .primary-nav > a:not(.button) { font-size:1rem; }
    .section-head { gap:16px; }
}
@media (max-width:620px) {
    h1, .page-hero h1 { font-size:clamp(2.1rem,9vw,3rem); }
    h2 { font-size:1.8rem; }
    .section, .page-hero { padding-block:44px; }
    .hero-summary { padding:22px; }
    .hero-summary ul { grid-template-columns:1fr; gap:0; }
    .brand-copy small { font-size:.75rem; }
    .brand img { width:40px; height:40px; }
    .button { max-width:100%; }
    .ownership-band { padding:24px; }
    .detail-grid { gap:30px; }
    .project-card .card-link { position:static; }
    .map-point { font-size:.8rem; letter-spacing:0; }
}
