/*
 * EX2 color system
 * Neutral graphite surfaces carry the brand. Gold is institutional only.
 * Area accents identify service modules and never replace the global palette.
 */
:root {
  --color-black: #080a0c;
  --color-black-soft: #0d1014;
  --color-graphite-900: #111419;
  --color-graphite-800: #181c22;
  --color-graphite-700: #252a31;
  --color-graphite-500: #555d68;
  --color-silver-soft: #aeb7c2;
  --color-off-white: #f3f2ee;
  --color-white: #fff;
  --color-gold: #b89a5c;
  --color-gold-soft: #d0b87e;
  --area-administrative: #4f8067;
  --area-administrative-strong: #315f49;
  --area-administrative-soft: #789b86;
  --area-administrative-muted: rgba(79, 128, 103, .14);
  --area-legal: #d2a93b;
  --area-legal-strong: #795c12;
  --area-legal-soft: #e0c06a;
  --area-legal-muted: rgba(210, 169, 59, .14);
  --area-accounting: #4c78a8;
  --area-accounting-strong: #315a85;
  --area-accounting-soft: #7899be;
  --area-accounting-muted: rgba(76, 120, 168, .14);
  --area-technology: #aeb7c2;
  --area-technology-strong: #5b6572;
  --area-technology-bright: #d6dce2;
  --area-technology-muted: rgba(174, 183, 194, .14);
  --surface-primary: var(--color-black);
  --surface-secondary: var(--color-graphite-900);
  --surface-elevated: var(--color-graphite-800);
  --surface-light: var(--color-off-white);
  --surface-white: var(--color-white);
  --text-primary-dark: var(--color-white);
  --text-secondary-dark: #b8bec7;
  --text-primary-light: var(--color-graphite-900);
  --text-secondary-light: var(--color-graphite-500);
  --brand-gold: var(--color-gold);
  --line-dark: rgba(174, 183, 194, .2);
  --line-light: rgba(37, 42, 49, .2);
  --focus-ring: var(--color-gold-soft);
  --area-accent: var(--brand-gold);
  --area-accent-strong: #765f32;
  --area-accent-soft: var(--color-gold-soft);
  --area-accent-muted: rgba(184, 154, 92, .14);
  --navy: var(--surface-primary);
  --deep: var(--surface-secondary);
  --blue: var(--text-primary-light);
  --mid: var(--color-graphite-500);
  --light: var(--color-silver-soft);
  --white: var(--color-white);
  --off: var(--color-off-white);
  --gray: var(--color-silver-soft);
  --ink: var(--text-primary-light);
  --gold: var(--brand-gold);
  --line: var(--line-light);
}
[data-area="administrative"]{--area-accent:var(--area-administrative);--area-accent-strong:var(--area-administrative-strong);--area-accent-soft:var(--area-administrative-soft);--area-accent-muted:var(--area-administrative-muted)}
[data-area="legal"]{--area-accent:var(--area-legal);--area-accent-strong:var(--area-legal-strong);--area-accent-soft:var(--area-legal-soft);--area-accent-muted:var(--area-legal-muted)}
[data-area="accounting"]{--area-accent:var(--area-accounting);--area-accent-strong:var(--area-accounting-strong);--area-accent-soft:var(--area-accounting-soft);--area-accent-muted:var(--area-accounting-muted)}
[data-area="technology"]{--area-accent:var(--area-technology);--area-accent-strong:var(--area-technology-strong);--area-accent-soft:var(--area-technology-bright);--area-accent-muted:var(--area-technology-muted)}

html{background:var(--surface-primary)}
body{background:var(--surface-white);color:var(--text-primary-light)}
::selection{background:var(--brand-gold);color:var(--surface-primary)}
:focus-visible{outline-color:var(--focus-ring)}
.skip-link{background:var(--color-white);color:var(--surface-primary)}
.section-light{background:var(--surface-white)}.section-offwhite{background:var(--surface-light)}.dark-section{background:var(--surface-secondary)}

/* Neutral, unified global navigation. */
.site-header,.site-header.is-scrolled{background:rgba(8,10,12,.9);border-bottom-color:rgba(255,255,255,.1);box-shadow:0 12px 38px rgba(0,0,0,.24)}
.desktop-nav>a:after,.dropdown-toggle:after{background:var(--brand-gold)}
.dropdown-menu{background:rgba(13,16,20,.98);border-color:var(--line-dark)}
.dropdown-menu a{color:#e5e7ea}.dropdown-menu a:hover,.dropdown-menu a:focus-visible{background:rgba(255,255,255,.06);color:var(--color-white)}
.dropdown-menu a[data-area]{position:relative;padding-left:30px}.dropdown-menu a[data-area]:before{content:"";position:absolute;left:13px;top:50%;width:6px;height:6px;border-radius:50%;background:var(--area-accent);transform:translateY(-50%)}
.header-cta{color:var(--color-white);background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.3)}.header-cta:hover,.header-cta:focus-visible{border-color:var(--brand-gold);background:rgba(184,154,92,.1)}

/* Global button hierarchy. */
.button-primary{background:var(--color-off-white);color:var(--surface-primary)}
.button-primary:hover,.button-primary:focus-visible{background:var(--color-white);border-color:var(--brand-gold);box-shadow:inset 0 -3px 0 var(--brand-gold)}
.button-ghost{color:var(--color-white);border-color:rgba(255,255,255,.38)}
.button-ghost:hover,.button-ghost:focus-visible{border-color:var(--area-accent);background:var(--area-accent-muted)}
[data-area] .text-link,[data-area] .circle-link{border-color:var(--area-accent-strong);color:var(--area-accent-strong)}

/* Home: monochrome architecture with restrained institutional gold. */
.hero{background:radial-gradient(circle at 72% 42%,rgba(174,183,194,.13),transparent 34%),linear-gradient(110deg,var(--surface-primary),var(--surface-secondary) 68%,var(--surface-elevated))}
.hero:after{background:linear-gradient(transparent,rgba(8,10,12,.96))}
.hero-grid,.cta-grid-bg{background-image:linear-gradient(rgba(174,183,194,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(174,183,194,.13) 1px,transparent 1px)}
.hero .eyebrow,.hero h1 em{color:var(--color-silver-soft)}.hero-copy>p{color:var(--text-secondary-dark)}
.hero-aside,.building,.building i{border-color:rgba(174,183,194,.24)}.building:before,.building:after{background:rgba(174,183,194,.16)}
.metrics-strip{background:var(--surface-primary);border-color:var(--line-dark)}
.management{background:#ecebe7}.technology{background:var(--surface-light)}
.pillar{transition:background .35s var(--ease),box-shadow .35s var(--ease)}
.pillar:hover,.pillar:focus-within{background:linear-gradient(to top,rgba(184,154,92,.14),rgba(184,154,92,.025) 72%,transparent);box-shadow:inset 0 -2px 0 rgba(184,154,92,.5)}
.portal-concept{background:var(--surface-secondary);box-shadow:0 40px 80px rgba(0,0,0,.22)}
.portal-body nav,.portal-top,.portal-balance,.portal-tiles>div{border-color:var(--line-dark)}.portal-body nav .active{background:var(--area-technology-muted);color:var(--area-technology-bright)}
.management-row[data-area]{position:relative;border-color:var(--line-light)}
.management-row[data-area]:before{content:"";position:absolute;left:0;top:26%;bottom:26%;width:2px;background:var(--area-accent)}
.management-row[data-area] .row-index,.management-row[data-area] li:before{color:var(--area-accent-strong)}
.management-row[data-area] .circle-link{border-color:var(--area-accent)}.management-row[data-area] .circle-link:hover{background:var(--area-accent);color:var(--color-white)}
.technology[data-area] .eyebrow,.technology[data-area] .check-list li:before{color:var(--area-accent-strong)}

/* Approved centered heroes, with neutral overlays and page accents. */
.about-hero,.management-hero,.contact-hero,.technology-hero,.service-hero{background:radial-gradient(circle at 50% 38%,rgba(174,183,194,.11),transparent 38%),linear-gradient(118deg,var(--surface-primary),var(--surface-secondary) 72%)}
.about-hero-grid,.management-hero-grid,.management-cta-grid,.contact-grid-bg,.technology-grid-bg,.service-grid{background-image:linear-gradient(rgba(174,183,194,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(174,183,194,.14) 1px,transparent 1px)}
.about-hero-copy>p,.management-hero-copy>p,.contact-hero-copy>p,.technology-hero-copy>p,.service-hero-copy>p{color:var(--text-secondary-dark)}
.about-breadcrumbs,.management-breadcrumbs,.contact-breadcrumbs,.technology-breadcrumbs,.service-breadcrumbs{color:#a9b0b9}

/* Institutional pages: gold means history, purpose and foundation. */
.about-main .eyebrow,.about-main .about-scripture cite,.about-main .value-roman,.about-main .values-foundation{color:var(--brand-gold)}
.about-capacity,.about-stewardship,.about-final-cta{background:var(--surface-secondary)}
.about-plan-grid path,.about-plan-buildings path,.about-plan-foundation path{stroke:rgba(174,183,194,.42)}
.about-plan-links path,.about-plan-links circle{stroke:var(--brand-gold);fill:var(--brand-gold)}
.value-pillar h3{color:var(--text-primary-light)}

/* Integrated management keeps its three accents isolated by module. */
.management-tower[data-area]{--tower-accent:var(--area-accent);border-color:var(--line-dark)}
.management-tower[data-area]:before{background:var(--tower-accent)}.management-tower[data-area] .tower-number,.management-tower[data-area] a{color:var(--tower-accent)}.management-tower[data-area] a{border-color:var(--tower-accent)}
.management-areas,.management-final-cta{background:var(--surface-secondary)}.management-information{background:var(--surface-light)}

/* Service areas inherit one semantic accent from the page root. */
.service-main[data-area] .eyebrow,.service-main[data-area] .service-hero .eyebrow,.service-main[data-area] .process-track span,.service-main[data-area] .responsibility-map article>span,.service-main[data-area] .integration-rails article>span,.service-main[data-area] .benefits-grid li:before,.service-main[data-area] .service-related a>span{color:var(--area-accent-soft)}
.service-main[data-area] .service-manifesto,.service-main[data-area] .service-checklist,.service-main[data-area] .service-benefits,.service-main[data-area] .service-faq{background:var(--surface-light)}
.service-main[data-area] .service-capacity,.service-main[data-area] .service-final-cta{background:var(--surface-secondary)}
.service-main[data-area] .responsibility-map article,.service-main[data-area] .process-track li,.service-main[data-area] .integration-rails article{border-color:var(--line-light)}
.service-main[data-area] .responsibility-map article:before,.service-main[data-area] .process-track li:before,.service-main[data-area] .integration-rails article:before{background:var(--area-accent)}
.service-main[data-area] .svg-grid{stroke:rgba(174,183,194,.15)}.service-main[data-area] .svg-strong{fill:var(--area-accent-muted);stroke:var(--area-accent-soft)}.service-main[data-area] .svg-soft{stroke:var(--area-accent)}.service-main[data-area] .svg-gold{stroke:var(--area-accent-soft)}
.service-main[data-area="legal"] .service-manifesto .eyebrow,.service-main[data-area="legal"] .service-checklist .eyebrow,.service-main[data-area="legal"] .service-benefits .eyebrow,.service-main[data-area="legal"] .service-faq .eyebrow,.service-main[data-area="legal"] .process-track span,.service-main[data-area="legal"] .responsibility-map article>span{color:var(--area-legal-strong)}

/* Technology is silver and graphite, with restrained controlled glow. */
.technology-main[data-area="technology"]{--line:rgba(174,183,194,.24)}
.technology-main .technology-hero .eyebrow,.technology-main .technology-hero h1 em,.technology-main .technology-hero small{color:var(--area-technology-bright)}
.technology-main .data-line{border-color:rgba(214,220,226,.48)}.technology-main .data-dot{background:var(--area-technology-bright);box-shadow:0 0 15px rgba(214,220,226,.3)}
.technology-main .network-building,.technology-main .network-phone,.technology-main .network-panel,.technology-main .network-chat{border-color:rgba(214,220,226,.42)}
.technology-main .technology-manifesto,.technology-main .feature-explorer,.technology-main .technology-payments,.technology-main .technology-tickets,.technology-main .technology-channels,.technology-main .technology-connected,.technology-main .technology-faq{background:var(--surface-light)}
.technology-metrics,.technology-final-cta{background:var(--surface-secondary)}

/* Contact is neutral; functional feedback remains distinct from area colors. */
.contact-main .contact-hero .eyebrow,.contact-main .contact-form-heading>span{color:var(--brand-gold)}.contact-primary{background:var(--surface-light)}
.contact-form{background:rgba(255,255,255,.86);border-color:var(--line-light);box-shadow:0 24px 60px rgba(0,0,0,.08)}
.contact-field label{color:var(--text-primary-light)}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--color-graphite-500);outline-color:rgba(85,93,104,.25)}

/* Unified footer. */
.site-footer{background:var(--surface-primary);color:var(--text-secondary-dark);border-top-color:var(--line-dark)}
.site-footer strong{color:var(--color-white)}.site-footer a:hover,.site-footer a:focus-visible{color:var(--brand-gold)}.footer-bottom{border-top-color:var(--line-dark)}

@media(max-width:680px){
  .management-row[data-area]:before{top:20px;bottom:20px}
  .hero-grid,.about-hero-grid,.management-hero-grid,.contact-grid-bg,.technology-grid-bg,.service-grid{opacity:.08}
  .flow-point:nth-of-type(n+3),.technology-main .data-dot:nth-of-type(n+3){display:none}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
