/* Dark presentation using the original BYALL navy, blue and gold palette. */
.ba-graphic-site{background:#0d1b2e;color:#fff;color-scheme:dark}
.ba-graphic-site .ba-header{background:#0d1b2e;border-color:#ffffff15}
.ba-graphic-site .ba-nav,.ba-graphic-site .ba-header.scrolled .ba-nav{background:#0d1b2e}
.ba-graphic-site .ba-menu a,.ba-graphic-site .ba-drop-link{color:#dbe7f3}
.ba-graphic-site .ba-menu a:hover,.ba-graphic-site .ba-menu a.active{color:#fff;background:#1a9fe026}
.ba-graphic-site .ba-dropdown-menu{background:#172d46;border-color:#ffffff20}
.ba-graphic-site .ba-dropdown-menu a{color:#dbe7f3}
.ba-graphic-site .ba-toggle{background:#172d46;color:#fff;border-color:#ffffff25}
.ba-graphic-site .graphic-hero{background:radial-gradient(ellipse at 85% 35%,#0d2e4d 0%,#172d46 40%,#0d1b2e 85%)!important;color:#fff}
.ba-graphic-site .graphic-copy h1,.ba-graphic-site .graphic-copy h1 .white,.ba-graphic-site .graphic-copy h1 .gold{color:#fff!important}
.ba-graphic-site .graphic-copy p{color:#c0cfdf!important}
.ba-graphic-site .graphic-copy .hero-kicker,.ba-graphic-site .graphic-copy .projects-hero-eyebrow,.ba-graphic-site .graphic-copy .cred-eyebrow,.ba-graphic-site .graphic-copy .pn-eyebrow{color:var(--blue)}
.ba-graphic-site .graphic-copy .hero-tags span,.ba-graphic-site .cred-trust-row span{background:#172d46;border-color:#ffffff20;color:#c0cfdf}
.ba-graphic-site .graphic-copy .btn-secondary,.ba-graphic-site .pn-btn-ghost{background:#172d46;color:#eaf6ff;border-color:#1a9fe0}
.ba-graphic-site .campus-stage{border:1px solid #1a9fe04d;border-radius:14px;overflow:hidden;background:#12243b;box-shadow:0 20px 70px #0004}
.ba-graphic-site .campus-art{mix-blend-mode:normal;filter:brightness(.84) saturate(.9)}
.ba-graphic-site .graphic-visual figcaption{color:#9aafc5}
.ba-graphic-site .graphic-label{color:#eaf6ff;background:#172d46;border-color:#1a9fe080;box-shadow:0 5px 20px #0003;z-index:1}
.ba-graphic-site .graphic-proof{border-color:#ffffff15}
.ba-graphic-site .graphic-proof .stat-item,.ba-graphic-site .graphic-proof .projects-hero-stat{border-color:#ffffff20}
.ba-graphic-site .graphic-proof .stat-num,.ba-graphic-site .graphic-proof .projects-hero-stat-num{color:var(--blue)}
.ba-graphic-site .graphic-proof .stat-label,.ba-graphic-site .graphic-proof .projects-hero-stat-label,.ba-graphic-site .graphic-proof .hero-bottom-note{color:#9aafc5}
.ba-graphic-site .graphic-service-strip{background:#12243b}
.ba-graphic-site .graphic-service-strip a{color:#eaf6ff;border-color:#ffffff20}
.ba-graphic-site .graphic-service-strip img{border-radius:6px;filter:brightness(.88)}
.ba-graphic-site .bottom-strip{background:#172d46;border-color:#ffffff15}
.ba-graphic-site .bottom-strip .strip-item{color:#b7c9dc}
.ba-graphic-site .white-section{background:#12243b;color:#fff}
.ba-graphic-site .light-section{background:#172d46;color:#fff}
.ba-graphic-site .section-title,.ba-graphic-site .two-col h2,.ba-graphic-site .info-card h3,.ba-graphic-site .service-content h3{color:#f1f7ff}
.ba-graphic-site .section-text,.ba-graphic-site .info-card p,.ba-graphic-site .service-content p,.ba-graphic-site .two-col p,.ba-graphic-site .check-list{color:#b5c6d9}
.ba-graphic-site .info-card,.ba-graphic-site .service-card{background:#1c3651;border-color:#ffffff18}
.ba-graphic-site .info-icon{background:#1a9fe015;color:var(--blue)}
.ba-graphic-site .service-image,.ba-graphic-site .image-rounded.graphic-image{background:#1c3651;border-color:#ffffff20}
.ba-graphic-site .graphic-image img,.ba-graphic-site .graphic-inline-art{filter:brightness(.82)}
.ba-graphic-site .text-link{color:var(--blue)}
.ba-graphic-site .final-cta,.ba-graphic-site .projects-cta{background:#172d46;border-color:#ffffff18;color:#fff}
.ba-graphic-site .final-cta h2,.ba-graphic-site .projects-cta h2{color:#fff}
.ba-graphic-site .final-cta p,.ba-graphic-site .projects-cta p{color:#b5c6d9}
.ba-graphic-site .projects-wrap{background:#12243b}
.ba-graphic-site .project-box{background:#1c3651;border-color:#ffffff20}
.ba-graphic-site .project-content h3{color:#fff}
.ba-graphic-site .project-content p{color:#b5c6d9}
.ba-graphic-site .project-logo{background:#dce8f2}
.ba-graphic-site .projects-wrap .section-title h2{color:#fff}
.ba-graphic-site .projects-wrap .section-title p{color:#b5c6d9}
.ba-graphic-site .cred-light{background:#172d46}.ba-graphic-site .cred-white{background:#12243b}
.ba-graphic-site .cred-section-head h2{color:#fff}.ba-graphic-site .cred-section-head p{color:#b5c6d9}
.ba-graphic-site .pn-stats{background:#12243b;border-color:#ffffff15}
.ba-graphic-site .pn-stats span{color:#b5c6d9}
.ba-graphic-site .pn-hero-inner>p{color:#b5c6d9}
.ba-graphic-site .byall-contact-page{background:#12243b}
.ba-graphic-site .byall-contact-card,.ba-graphic-site .byall-form-panel{background:#172d46;color:#fff;border-color:#ffffff18}
.ba-graphic-site .byall-brand-panel{background:#0d1b2e;color:#fff}
.ba-graphic-site .byall-brand-panel::after{background:linear-gradient(180deg,#0d1b2e 0%,#0d1b2e22 100%)}
.ba-graphic-site .byall-brand-panel h1,.ba-graphic-site .byall-form-panel h2{color:#fff}
.ba-graphic-site .byall-brand-panel>p,.ba-graphic-site .form-subtitle{color:#b5c6d9}
.ba-graphic-site .byall-info-item{background:#1c3651e8;border-color:#ffffff20}
.ba-graphic-site .byall-info-item a,.ba-graphic-site .byall-info-item p{color:#eaf6ff}
.ba-graphic-site .byall-field label{color:#b5c6d9}
.ba-graphic-site .byall-field input,.ba-graphic-site .byall-field select,.ba-graphic-site .byall-field textarea,.ba-graphic-site .byall-field select option{background-color:#12243b;color:#fff;border-color:#3a4c63}
.ba-graphic-site .byall-field input::placeholder,.ba-graphic-site .byall-field textarea::placeholder{color:#93a7be}
.ba-graphic-site .byall-footer{background:#0d1b2e}
@media(max-width:768px){.ba-graphic-site .ba-menu{background:#0d1b2e;border-color:#ffffff20}}
/* Always available alongside the embedded assistant. */
.nora-external-link{display:block;padding:9px 12px;background:#1c3651;color:#eaf6ff;text-align:center;font:600 12px/1.4 Inter,Arial,sans-serif;border-top:1px solid #1a9fe04d}
.nora-external-link:hover{color:#f5c518}

/* Contrast corrections across dark sections and light cards. */
.ba-graphic-site .ba-testi-header h2{color:#f8fbff;text-shadow:none}
.ba-graphic-site .ba-testi-header p{color:#d5e1ed;font-weight:400}
.ba-graphic-site .ba-testi-card{background:#f5f8fc;border-color:#c4d4e3;border-radius:14px;box-shadow:none}
.ba-graphic-site .ba-quote{color:#253b51;font-weight:400}
.ba-graphic-site .ba-author-name{color:#10273d}
.ba-graphic-site .ba-author-role{color:#425a70}
.ba-graphic-site .project-card{background:#f5f8fc;border-color:#c4d4e3}
.ba-graphic-site .project-card .project-title{color:#10273d}
.ba-graphic-site .project-card .project-text{color:#334d64;font-weight:400}
.ba-graphic-site .erate-note p{color:#d5e1ed}
.ba-graphic-site .section-text,.ba-graphic-site .info-card p,.ba-graphic-site .service-content p,.ba-graphic-site .two-col p,.ba-graphic-site .check-list,.ba-graphic-site .project-box .project-content p{color:#d0deeb;font-weight:400}
.ba-graphic-site .graphic-hero-inner{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);max-width:1480px;gap:30px}
.ba-graphic-site .graphic-copy h1{font-size:clamp(34px,3.3vw,50px)!important}
.ba-graphic-site .campus-stage{border:0;box-shadow:none;border-radius:0;background:transparent;overflow:visible}
.ba-graphic-site .campus-art{filter:none;mix-blend-mode:normal}
.ba-graphic-site .campus-visual{padding:10px 0 20px}
@media(max-width:768px){.ba-graphic-site .graphic-hero-inner{grid-template-columns:1fr;gap:22px;padding-inline:20px}.ba-graphic-site .graphic-copy h1{font-size:clamp(32px,7.2vw,45px)!important}.ba-graphic-site .campus-visual{margin-inline:-8px}.ba-graphic-site .graphic-label{font-size:9px}}
.ba-graphic-site .service-card .text-link{color:#f4f8fc;text-decoration:underline;text-decoration-color:var(--blue);text-underline-offset:5px}
.ba-graphic-site .project-box .project-tag{color:var(--gold)}
.ba-graphic-site .project-card .project-tag{color:var(--blue-deep)}
.ba-graphic-site .btn-primary,.ba-graphic-site .ba-cta,.ba-graphic-site .byall-submit,.ba-graphic-site .pn-btn-primary,.ba-graphic-site .pn-submit{background:linear-gradient(135deg,var(--blue-deep),var(--blue-mid));color:#fff}
.ba-graphic-site .btn-primary:hover,.ba-graphic-site .ba-cta:hover{background:var(--gold);color:#0d1b2e}
/* Text stays readable immediately, including after in-page navigation. */
.ba-graphic-site [data-reveal],.ba-graphic-site .reveal-init,.ba-graphic-site .reveal-init.revealed{opacity:1!important;transform:none!important;transition:none!important}

.ba-graphic-site .byall-brand-panel::before{background-image:url('/assets/images/graphics/connected-campus-v5.webp')}
.ba-graphic-site .graphic-proof,.ba-graphic-site .graphic-proof .stats-box,.ba-graphic-site .graphic-proof .stat-item,.ba-graphic-site .graphic-proof .stat-num,.ba-graphic-site .graphic-proof .stat-label{animation:none!important;opacity:1!important}

.ba-graphic-site .campus-art{aspect-ratio:1754/897}

.graphic-connections{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.graphic-connections a{padding:7px 12px;border:1px solid #f5c51866;border-radius:6px;background:#172d46;color:#f4f8fc;font:700 10px/1.4 var(--font-display)}
.graphic-connections a::before{content:'●';color:var(--gold);margin-right:7px}
.graphic-connections a:hover{border-color:var(--gold)}

.signal-middle{animation-duration:6s;animation-delay:-1.8s}
.signal-audio{animation-duration:8s;animation-delay:-3.2s;stroke-width:6}
.signal-audio-mid{animation-duration:7s;animation-delay:-.8s;stroke-width:6}
.signal-access{animation-duration:6.5s;animation-delay:-1.3s}
.signal-sensor{animation-duration:9s;animation-delay:-4.1s;stroke-width:4}
.signal-pa-entry{animation-duration:8.5s;animation-delay:-2.2s;stroke-width:5}

.campus-stage .label-fiber,.campus-stage .label-access{bottom:10px}
/* Audio/PA signals use the original BYALL blue. */
body.ba-graphic-site .campus-stage .signal-overlay .signal-audio,
body.ba-graphic-site .campus-stage .signal-overlay .signal-audio-mid,
body.ba-graphic-site .campus-stage .signal-overlay .signal-pa-entry{
 stroke:var(--blue);
 filter:drop-shadow(0 0 7px #1a9fe0);
}
