/* JB Technologies / Homepage visual alignment / Oct 26 2026
   Scope: homepage components ONLY. No layout, scripting or behavior changes.
   Load this file AFTER all homepage and brand CSS.
*/
:root{--jbh-charcoal:#2c2e34;--jbh-gold:#d9903c;--jbh-gold-dark:#9a5c22;--jbh-cream:#fcf8f2;--jbh-soft:#f6efe5;--jbh-line:#e6d9c7;--jbh-muted:#66666b}
/* Hero and featured window stack */
.jb-editorial-hero{--jb-hero-ink:var(--jbh-charcoal);background:linear-gradient(145deg,#fff 12%,#fcf8f2 100%)!important;color:var(--jbh-charcoal)!important}
.jb-editorial-hero:before{background:radial-gradient(ellipse at 74% 46%,rgba(217,144,60,.12),transparent 65%)!important}
.jb-editorial-hero h1,.jb-editorial-hero .jb-editorial-copy h1{color:var(--jbh-charcoal)!important}
.jb-editorial-hero h1 em,.jb-editorial-hero h1 span,.jb-editorial-hero .jb-editorial-pill-mark{color:var(--jbh-gold)!important}
.jb-editorial-hero .jb-editorial-primary{background:var(--jbh-charcoal)!important;border-color:var(--jbh-charcoal)!important;color:white!important}
.jb-editorial-hero .jb-editorial-primary:hover{background:var(--jbh-gold-dark)!important;border-color:var(--jbh-gold-dark)!important}
.jb-editorial-hero .jb-editorial-secondary,.jb-editorial-hero .jb-editorial-pill{border-color:var(--jbh-line)!important;color:var(--jbh-charcoal)!important;background:white!important}
.jb-editorial-preview-wrap{--jb-preview-ink:var(--jbh-charcoal)}
.jb-editorial-preview-accent{background:linear-gradient(140deg,#f4e5d0,#fdfaf6)!important}
.jb-editorial-preview-frame{border-color:var(--jbh-line)!important;box-shadow:0 18px 38px rgba(49,39,29,.12)!important}
.jb-editorial-preview-nav>button{border-color:var(--jbh-line)!important;color:var(--jbh-charcoal)!important}
.jb-editorial-preview-nav>button:hover{background:var(--jbh-soft)!important}
.jb-editorial-preview-dots button{background:#d6c2aa!important}
.jb-editorial-preview-dots button[aria-pressed=true]{background:var(--jbh-gold)!important}
/* Thinking / statement */
.intro-story{background:#fff!important}.intro-story .display{color:var(--jbh-charcoal)!important}.intro-story .display span{color:var(--jbh-gold)!important}
.intro-story .eyebrow,.intro-story .story-card .eyebrow{color:var(--jbh-gold-dark)!important}
.intro-story .story-card{border-color:var(--jbh-line)!important}
/* Beyond the frame, work tunnel, and circle captions */
.jb-portfolio-tunnel,.jb-tunnel,.portfolio-tunnel{--jb-tunnel-blue:var(--jbh-gold);--jb-tunnel-ink:var(--jbh-charcoal);--jb-tunnel-line:var(--jbh-line)}
.jb-portfolio-tunnel :is(h1,h2,h3,em),.jb-tunnel :is(h1,h2,h3,em){color:var(--jbh-charcoal)}
.jb-portfolio-tunnel :is(.accent,.highlight),.jb-tunnel :is(.accent,.highlight){color:var(--jbh-gold)!important}
/* Animated vertical service journey; keep positions, transforms, scroll hooks. */
.jb-sflow{--sf-navy:var(--jbh-charcoal);--sf-blue:var(--jbh-gold-dark);--sf-border:var(--jbh-line);--sf-muted:var(--jbh-muted);background:linear-gradient(180deg,#fff,#fcf8f2 54%,#fff)!important}
.jb-sflow__head h2 span,.jb-sflow__stage-copy h3 span{color:var(--jbh-gold)!important}
.jb-sflow__eyebrow,.jb-sflow__index,.jb-sflow__aside-bottom span{color:var(--jbh-gold-dark)!important}
.jb-sflow__rail-fill{background:linear-gradient(180deg,#f1c18c,#b57432)!important}
.jb-sflow__rail-track{background:var(--jbh-line)!important}
.jb-sflow__rail-stop{border-color:var(--jbh-line)!important;color:var(--jbh-charcoal)!important}
.jb-sflow__rail-stop.is-active{background:var(--jbh-charcoal)!important;border-color:var(--jbh-charcoal)!important;color:#fff!important;box-shadow:0 0 0 7px #f6e9d9!important}
.jb-sflow__stage{border-color:var(--jbh-line)!important;box-shadow:0 20px 55px rgba(60,42,24,.05)!important}
.jb-sflow__stage.is-active{border-color:#ddb782!important}
.jb-sflow__stage:before{background:linear-gradient(90deg,var(--jbh-gold),#f1c18c,transparent)!important}
.jb-sflow__glyph,.jb-sflow__chips span{color:var(--jbh-gold-dark)!important;background:#fff8ee!important;border-color:var(--jbh-line)!important}
.jb-sflow__status i{background:var(--jbh-gold)!important;box-shadow:0 0 0 4px #fff4e7!important}
.jb-sflow__explore{border-color:var(--jbh-gold)!important;color:var(--jbh-charcoal)!important}
.jb-sflow__visual,.jb-sflow__visual--dev{background:radial-gradient(circle at 74% 15%,#f6e4c9,#fcf9f4 60%,#fff)!important;border-color:var(--jbh-line)!important}
.jb-sflow__browser-chrome{background:#f8f0e6!important;border-color:var(--jbh-line)!important}
/* Three interactive product universes incl. E-commerce and admin preview */
.jb-universes{--jbu-ink:var(--jbh-charcoal);--jbu-subtle:var(--jbh-muted);--jbu-stroke:var(--jbh-line);--jbu-aqua:var(--jbh-gold);--jbu-blue:var(--jbh-gold);--jbu-milk:var(--jbh-cream);--pv-navy:var(--jbh-charcoal);--pv-blue:var(--jbh-gold-dark);--pv-ice:var(--jbh-soft);--pv-border:var(--jbh-line)}
.jb-universes .jb-u-metal,.jb-universes :is(h2,h3)>span{color:var(--jbh-gold)!important}
.jb-universes :is(.jb-u-eyebrow,.jb-u-mini-label){color:var(--jbh-gold-dark)!important}
.jb-universes .jb-u-dev-screen{background:linear-gradient(140deg,#f9eddd,#fffaf4 85%)!important;border-color:var(--jbh-line)!important}
.jb-universes .jb-pv-dashboard aside{background:var(--jbh-charcoal)!important;color:#f3e8dc!important}
.jb-universes .jb-pv-dashboard aside>.active{background:#80562f!important}
.jb-universes .jb-pv-dashboard aside strong span,.jb-universes .jb-pv-logo span{color:#e7ac69!important}
.jb-universes .jb-pv-dash-main{background:#fffaf5!important}
.jb-universes .jb-pv-mobile,.jb-universes .jb-pv-laptop-display{border-color:var(--jbh-charcoal)!important}
.jb-universes .jb-pv-tabs b,.jb-universes .jb-pv-mobile-cta,.jb-universes .jb-pv-shop-hero div>span{background:var(--jbh-charcoal)!important}
.jb-universes .jb-pv-shop-hero{background:linear-gradient(125deg,#f2e3cf,#fffbf6)!important}
.jb-universes .jb-pv-device :is(.jb-pv-avatar,.jb-pv-trip-date){background:#f4e8db!important;color:#674829!important}
.jb-universes .jb-pv-dot{background:var(--jbh-gold)!important}
.jb-universes .jb-pv-dash-head>b{background:var(--jbh-charcoal)!important}
/* What we bring to life / polished mock device frames */
.jb-repo-home{--rh-ink:var(--jbh-charcoal);--rh-muted:var(--jbh-muted);--rh-line:var(--jbh-line);--rh-brand:var(--jbh-gold-dark);--rh-deep:var(--jbh-charcoal);--rh-tint:var(--jbh-cream);--pv-navy:var(--jbh-charcoal);--pv-blue:var(--jbh-gold-dark);--pv-ice:var(--jbh-soft);--pv-border:var(--jbh-line)}
.jb-repo-home .jbrh-feature-card{background:linear-gradient(140deg,#f6ebdc,#fffaf5)!important;border-color:var(--jbh-line)!important}
.jb-repo-home .jbrh-feature-card:nth-child(2n){background:linear-gradient(135deg,#faefe1,#f8f4ef)!important}
.jb-repo-home .jbrh-feature-card:hover{border-color:#d7a56a!important;box-shadow:0 18px 45px rgba(83,55,27,.09)!important}
.jb-repo-home .jbrh-feature-type,.jb-repo-home .jbrh-kicker,.jb-repo-home .jbrh-feature-corner{color:var(--jbh-gold-dark)!important}
.jb-repo-home .jbrh-title,.jb-repo-home .jbrh-feature-copy h3{color:var(--jbh-charcoal)!important}
.jb-repo-home .jbrh-title span,.jb-repo-home .jbrh-display-feature span{color:var(--jbh-gold)!important}
.jb-repo-home .jbrh-feature-art :is(.jb-pv-case-mobile,.jb-pv-case-ui,.jb-pv-case-browser,.jb-pv-case-shop){border-color:#c8ac8e!important}
.jb-repo-home .jbrh-feature-art :is(.jb-pv-case-mobile-logo span,.jb-pv-case-growth-metric strong){color:var(--jbh-gold)!important}
.jb-repo-home .jbrh-feature-art .jb-pv-case-ui-head{border-color:var(--jbh-line)!important}
.jb-repo-home :is(.jbrh-button,.jbrh-cta a){background:var(--jbh-charcoal)!important;border-color:var(--jbh-charcoal)!important;color:#fff!important}
.jb-repo-home :is(.jbrh-button,.jbrh-cta a):hover{background:var(--jbh-gold-dark)!important}
/* Technology stack section and cards */
.jb-editorial-stack{background:#fff!important;border-color:var(--jbh-line)!important}
.jb-stack-copy h2{color:var(--jbh-charcoal)!important}.jb-stack-copy h2 span{color:var(--jbh-gold)!important}
.jb-stack-kicker{color:var(--jbh-gold-dark)!important}.jb-stack-link{background:var(--jbh-charcoal)!important;color:#fff!important}
.jb-stack-link:hover{background:var(--jbh-gold-dark)!important}
.jb-stack-tech-tile,.jb-stack-terminal,.jb-stack-design,.jb-stack-center-card{border-color:var(--jbh-line)!important}
/* Interactive admin UI illustrations only: do not interfere with click handlers */
.jb-universes .jb-pv-dashboard :is(.jb-pv-dash-head,.jb-pv-dash-main){color:var(--jbh-charcoal)!important}
/* Keep any removed homepage sections removed. No display/visibility changes for content. */
@media(max-width:900px){.jb-sflow__stage,.jb-repo-home .jbrh-feature-card{min-width:0}.jb-editorial-preview-wrap,.jb-universes .jb-pv-dashboard{max-width:100%}}
@media(max-width:640px){.jb-repo-home .jbrh-shell{width:min(100% - 32px,1190px)}.jb-sflow__stage{padding:22px}.jb-universes :is(.jb-pv-dashboard,.jb-pv-laptop){max-width:100%}}
@media(prefers-reduced-motion:reduce){.jb-repo-home .jbrh-feature-card,.jb-sflow__stage{transition:none!important}}


/* OCT 27 / BRAND THEME REPAIR — higher-specificity overrides to beat component skins.
   Presentation only; all native events, transforms, layout and animation timings are left intact. */
:root{--jb-brand-ink:#2c2e34;--jb-brand-gold:#d9903c;--jb-brand-gold-deep:#9e5d24;--jb-brand-paper:#fcf8f2;--jb-brand-hairline:#e7d9c7}
#main .jb-editorial-hero{background:linear-gradient(115deg,#fff 12%,#fcf8f2 80%)!important}
#main .jb-editorial-hero :is(h1,h2,h3){color:#2c2e34!important}
#main .jb-editorial-hero :is(h1,h2) :is(span,em),#main .intro-story .display span{color:#d9903c!important;-webkit-text-fill-color:#d9903c!important}
#main .jb-editorial-hero :is(a,button):focus-visible{outline:2px solid #d9903c!important;outline-offset:3px}
#main .intro-story{background:#fff!important}
#main .intro-story :is(h1,h2,h3){color:#2c2e34!important}
#main .jb-tunnel .jb-tunnel__stage{background:radial-gradient(circle at center,#fff7ea 0%,#fcf8f2 56%,#fff 100%)!important}
#main .jb-tunnel .jb-tunnel__anchor h2{color:#2c2e34!important}
#main .jb-tunnel .jb-tunnel__anchor h2 em{color:#c58134!important;-webkit-text-fill-color:#c58134!important}
#main .jb-tunnel .jb-tunnel__ring{border-color:rgba(174,121,60,.19)!important}
#main .jb-tunnel .jb-tunnel__skip{background:#fff!important;border-color:#e6d4be!important;color:#2c2e34!important}
#main .jb-tunnel .jb-tunnel__progress>span{background:#c58035!important}
#main .jb-sflow{--sf-ink:#2c2e34;--sf-blue:#c58035;--sf-primary:#c58035;--sf-line:#e8d9c7;color:#2c2e34!important;background:linear-gradient(180deg,#fff,#fcf8f2)!important}
#main .jb-sflow .jb-sflow__head h2{color:#2c2e34!important}
#main .jb-sflow .jb-sflow__head h2 span{color:#d9903c!important;-webkit-text-fill-color:#d9903c!important}
#main .jb-sflow :is(.jb-sflow__eyebrow,.jb-sflow__chapter,.jb-sflow__index){color:#9e5d24!important}
#main .jb-sflow .jb-sflow__stage{border-color:#e7d9c7!important;background:#fff!important}
#main .jb-sflow .jb-sflow__stage.is-active{border-color:#d9903c!important;box-shadow:0 12px 35px rgba(65,45,28,.09)!important}
#main .jb-sflow :is(.jb-sflow__rail-fill,.jb-sflow__status i){background:#d9903c!important}
#main .jb-universes{--jbu-blue:#bf7c35;--jbu-ink:#2c2e34;--jbu-border:#e7d9c7;--jbu-subtle:#786b5f;--jbu-paper:#fcf8f2;color:#2c2e34!important}
#main .jb-universes :is(.jb-u-development,.jb-u-marketing,.jb-u-commerce,.jb-u-admin){background:#fff!important}
#main .jb-universes :is(.jb-u-heading h2,.jb-u-heading h2 span){color:#2c2e34!important}
#main .jb-universes .jb-u-metal{color:#c17c31!important;-webkit-text-fill-color:#c17c31!important}
#main .jb-universes :is(.jb-u-eyebrow,.jb-u-mini-label,.jb-u-dev-caption){color:#a86627!important}
#main .jb-universes :is(.jb-u-dev-option.is-selected,.jb-u-dev-option:hover){color:#a86627!important;border-color:#d9903c!important}
#main .jb-universes :is(.jb-u-dev-screen,.jb-u-commerce-store,.jb-u-commerce-journey){border-color:#e7d9c7!important}
#main .jb-universes :is(.jb-u-commerce,.jb-u-admin){background:#fcf8f2!important}
#main .jb-universes :is(.jb-u-mini-label,.jb-u-stage small){color:#9e5d24!important}
#main .jb-repo-home{--rh-brand:#c58035;--rh-ink:#2c2e34;--rh-muted:#71695f;--rh-line:#e7d9c7;--rh-deep:#2c2e34;--rh-tint:#fcf8f2;color:#2c2e34!important}
#main .jb-repo-home .jbrh-soft{background:#fcf8f2!important}
#main .jb-repo-home .jbrh-title{color:#2c2e34!important}
#main .jb-repo-home .jbrh-title :is(span,em){color:#c58035!important;-webkit-text-fill-color:#c58035!important}
#main .jb-repo-home :is(.jbrh-kicker,.jbrh-link,.jbrh-feature-type){color:#aa6828!important}
#main .jb-repo-home :is(.jbrh-service-card,.jbrh-concept-card){border-color:#e7d9c7!important}
#main .jb-repo-home .jbrh-feature-card{border-color:#e8d9c7!important;background:#f7ecdd!important}
#main .jb-repo-home .jbrh-feature-copy h3{color:#2c2e34!important}
#main .jb-repo-home .jbrh-feature-card:nth-child(2n){background:#f3e5d3!important}
#main .jb-repo-home :is(.jbrh-feature-corner,.jbrh-icon){color:#ae6d2d!important}
#main .jb-repo-home .jbrh-button:not(.jbrh-button-light){background:#2c2e34!important;border-color:#2c2e34!important;color:#fff!important}
#main .jb-repo-home .jbrh-button:not(.jbrh-button-light):hover{background:#a86627!important;border-color:#a86627!important}
#main .jb-repo-home .jbrh-feature-art :is(.jb-pv-case-mobile,.jb-pv-case-laptop,.jb-pv-case-dashboard){border-color:#d9c5ac!important}
#main #projects.jb-selected-work-folders :is(.jb-work-kicker,.jb-work-link){color:#a86627!important}
#main #projects.jb-selected-work-folders h2{color:#2c2e34!important}
#main #projects.jb-selected-work-folders .jb-folder-stage{border-color:#e4d4c0!important;background:#fcf8f2!important}
#main .jb-editorial-preview-dots button[aria-pressed=true]{background:#d9903c!important}
/* Accessibility and responsive safeguards */
#main :is(.jb-editorial-hero,.jb-sflow,.jb-universes,.jb-repo-home) :is(a,button):focus-visible{outline:2px solid #d9903c!important;outline-offset:3px}
#main :is(.jb-sflow,.jb-universes,.jb-repo-home) :is(img,svg,video){max-width:100%}
@media(max-width:767px){#main .jb-universes,#main .jb-sflow,#main .jb-repo-home{max-width:100%;overflow-x:clip}}
@media(prefers-reduced-motion:reduce){#main .jb-repo-home :is(a,button){scroll-behavior:auto}}
