/* Neuroiam visual layer. Content and review targets remain in the original markup. */
@font-face{font-family:Geologica;src:url('assets/brand/Geologica-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Geologica;src:url('assets/brand/Geologica-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Geologica;src:url('assets/brand/Geologica-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Geologica;src:url('assets/brand/Geologica-700.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--canvas:#e8eced;--white:#fff;--ink:#161d3b;--ink2:#303a58;--muted:#4c5671;--muted2:#65708a;--line:#d5dce2;--lime:#f4b701;--lime2:#f4b701;--mint:#e8eced;--pale:#f4f6f7;--dark:#161d3b;--max:1280px}
body{font-family:Geologica,sans-serif;font-synthesis:none}
:focus-visible{outline-color:#243fd5}
.header{background:#fff;border-color:#e8eced}
.nav-item{color:#161d3b}.nav-item:hover{color:#243fd5}
.hero{background:#fff}.hero:before{display:none}.hero h1 em{color:#243fd5}
.hero-proof{color:#4c5671}.hero-proof i{background:#4c9482}
.eyebrow{color:#243fd5}.btn{border-radius:15px;min-height:48px}.btn.primary{background:#243fd5;border-color:#243fd5}.btn.primary:hover{background:#161d3b}
.choice-box{background:#161d3b;border:0;border-radius:28px;padding:20px;backdrop-filter:none}
.choice-heading{color:#fff}.choice-head{margin:4px 4px 20px}
.path-card.customers,.path-card.team{background:#fff;min-height:270px;border-radius:18px;padding:22px;isolation:isolate}
.path-card:hover{border-color:#243fd5}.path-signal{display:none}
.path-card::after{content:"";position:absolute;width:40%;aspect-ratio:1;right:12px;top:50%;transform:translateY(-50%);background:center/contain no-repeat;pointer-events:none}
.path-card.customers::after{background-image:url('assets/brand/my-customers-square.png')}.path-card.team::after{background-image:url('assets/brand/my-team-square.png')}
.path-title,.path-description,.path-meta,.path-action{position:relative;z-index:1;max-width:58%}.path-description{color:#4c5671}.path-action{color:#243fd5}
.bridge{background:#161d3b;color:#fff}.bridge span{color:#e8eced}
@media(max-width:580px){.choice-box{padding:16px}.path-card.customers,.path-card.team{min-height:0}.path-title,.path-description,.path-meta,.path-action{max-width:none}.path-card::after{display:block;position:static;width:100%;max-width:300px;transform:none;margin:16px auto 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* Surfaces across the current home page: retain all existing interactions. */
.packages,.solutions,#products,.case-section,.experts{background:#e8eced}
.packages-heading,.solutions-intro,.section-intro{background:#fff;border-radius:24px;padding:32px}
.package-card,.team-offer,.product-card,.case-card,.case-card.alt,.case-card.third,.expert-card{background:#fff;border:1px solid #fff;border-radius:24px;box-shadow:0 10px 30px #161d3b12}
.package-card:hover,.package-card.flash,.case-card:hover{border-color:#243fd5}
.package-tag,.service-id,.case-tag{color:#243fd5}
.package-subtag,.package-price span,.package-desc,.package-details ol,.package-details ul,.package-details .research-intro,.packages-bottom p,.service-expl,.product-card p,.case-summary,.case-meta,.expert-bio,.expert-status{color:#4c5671}
.packages-bottom{background:#fff;border-color:#fff;border-radius:24px}
#road{background:#fff}.road-grid{background:#e8eced;border-radius:28px;padding:16px}
.road-step,.road-step[aria-pressed="true"]{background:#fff;border-color:#d5dce2;color:#161d3b}
.road-step[aria-pressed="true"]{border-color:#243fd5;outline-color:#243fd5}
.road-step:focus-visible,.road-audience button:focus-visible,.road-links a:focus-visible{outline-color:#243fd5}
.road-step .road-letter{color:#161d3b}.road-step:first-child .road-letter{color:#243fd5}
.road-panel{background:#e8eced}.road-general p,.road-text,.road-footnote{color:#4c5671}
.service-list{border:0;display:grid;gap:12px}.service-row{background:#fff;border:1px solid #fff;border-radius:18px;padding:24px}.service-row:hover,.service-row.flash{background:#fff;border-color:#243fd5}.service-plus{color:#243fd5;border-color:#d5dce2}
.product-label{color:#4c5671}.product-card .product-bottom,.line-link{color:#243fd5}
.approach{background:#fff;color:#161d3b}.approach .eyebrow{color:#243fd5}.approach .section-copy,.approach-value span{color:#4c5671}.approach-value,.approach-value:first-child{border-color:#d5dce2}
.contact{background:#f4b701;color:#161d3b}.contact .eyebrow,.contact p{color:#161d3b}.contact .btn.primary{background:#161d3b;border-color:#161d3b}
.footer{background:#161d3b;color:#fff}.footer-note,.footer-nav{color:#e8eced}
dialog{color:#161d3b;border-color:#d5dce2}dialog::backdrop{background:#161d3b99}.dialog-close{background:#e8eced;border-radius:12px}.form-field input,.form-field textarea,.form-field select{background:#fff;border-color:#aab4c6}
@media(max-width:580px){.packages-heading,.solutions-intro,.section-intro{padding:24px}.road-grid{padding:12px}}
#road .road-step[aria-pressed="true"],#road .road-step:nth-child(n+3)[aria-pressed="true"]{background:#fff;border-color:#243fd5}
#road .road-panel,#road .road-panel[data-group="teams"]{background:#e8eced}
.solution-card{background:#fff;border-color:#fff;border-radius:24px;color:#161d3b;box-shadow:0 10px 30px #161d3b12}
.solution-card:hover{border-color:#243fd5}.solution-card-description{color:#4c5671}.solution-arrow{color:#243fd5}
/* Preserve the wordmark's editable text and its review target; use the mark from the supplied lockup. */
.brand-mark,.footer .brand-mark{background:transparent url('assets/brand/primary.svg') left center/auto 35px no-repeat;color:transparent;border-radius:0;padding:0;width:35px;height:35px;overflow:hidden}
.footer .brand-mark{background-image:url('assets/brand/mono-white.svg')}
.technology,.industry-case{font-family:Geologica,sans-serif}
.technology .technology-note,.technology .technology-ask{background:#e8eced;color:#161d3b}
.technology .technology-category[aria-pressed="true"],.technology .technology-phrase[aria-pressed="true"]{color:#243fd5}
.case-open,.expert-specialty,.case-meta,.case-summary,.product-count,.product-label,.path-meta{color:#303a58}
.prod-art,.prod-art.ar2,.prod-art.ar3,.prod-art.ar4{background:#e8eced;color:#243fd5;border-radius:14px}
/* Selected phrase is Indigo: its text must remain readable on the filled state. */
.technology .technology-phrase[aria-pressed="true"]{color:#fff}
.method-strip span{color:#4c5671}
.brand.brand-lockup:not(.brand-edited){width:180px;min-height:35px;background:url('assets/brand/primary.svg') left center/contain no-repeat}
.footer .brand.brand-lockup:not(.brand-edited){background-image:url('assets/brand/mono-white.svg')}
body:not(.review-select) .brand.brand-lockup:not(.brand-edited)>*{opacity:0}
body.review-select .brand.brand-lockup{background:none}
@media print{.brand-lockup{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
/* A failed image must leave the original text and distinct line illustrations visible. */
.brand:not(.brand-lockup) .brand-mark{background:#161d3b;color:#fff;border-radius:9px;padding-right:3px}
.footer .brand:not(.brand-lockup) .brand-mark{background:#fff;color:#161d3b}
body:not(.choice-images-ready) .path-signal{display:block}
body:not(.choice-images-ready) .path-card::after{background-image:none}
body:not(.choice-images-ready) .path-card .path-signal{stroke:#4c5671;opacity:1}
/* Match the shared container gutters without changing the bridge's vertical rhythm. */
.bridge-inner{padding-inline:32px}
@media(max-width:880px){.bridge-inner{padding-inline:24px}}
@media(max-width:580px){.bridge-inner{padding-inline:19px}}

/* Compact desktop hierarchy and the reviewed component states. */
@media(min-width:881px){.container{padding-inline:38px}.bridge-inner{padding-inline:38px}}
.hero h1{font-size:clamp(48px,5vw,72px);line-height:1.05}
.h2{font-size:clamp(32px,3.4vw,46px);line-height:1.12;letter-spacing:-.04em}
.section-copy{font-size:16px;line-height:1.55}
.package-grid{margin-top:24px}.package-card{padding:24px}.package-topline{background:#243fd5;border-radius:10px;padding:10px 12px;flex-wrap:wrap}.team-offer .package-topline{background:#161d3b}.package-topline .package-tag,.package-topline .package-subtag{color:#fff}.package-identity{margin-top:16px}.package-identity h3{font-size:clamp(24px,2vw,30px)}.package-price strong{font-size:clamp(30px,2.8vw,40px)}.package-desc{line-height:1.5;margin:14px 0}.method-strip,.method-strip span{color:#161d3b}.method-strip{padding-bottom:12px}.package-details{padding:14px 0 18px;gap:16px}.package-details li{margin-bottom:5px}
#road .road-top .h2{font-size:clamp(32px,3.3vw,44px)}
#road .road-step{min-height:240px;padding:22px;position:relative;outline:none}
#road .road-step[aria-pressed="true"]{border:2px solid #243fd5}
#road .road-step[aria-pressed="true"]::after{content:"";position:absolute;top:0;left:20px;right:20px;height:4px;background:#243fd5;border-radius:0 0 4px 4px}
#road .road-step:first-child .road-letter{color:#161d3b}#road .road-step[aria-pressed="true"] .road-letter{color:#243fd5}
#road .road-step:focus-visible{outline:3px solid #243fd5;outline-offset:3px}
.solution-card-name{font-size:clamp(23px,2.4vw,32px)}.solution-card-description{font-size:clamp(15px,1.35vw,18px);margin-top:16px}
#products .section-intro,#cases .section-intro{margin-bottom:24px}#products .section-intro .section-copy,#cases .section-intro .section-copy{margin-bottom:0}
.prod-art,.prod-art.ar2,.prod-art.ar3,.prod-art.ar4{background:#fff;border:1px solid #d5dce2;color:#243fd5}.prod-art .icon{color:#243fd5}
.case-card h3{font-size:clamp(23px,2vw,30px)}.case-summary{font-size:15px}.case-card.case-available:hover,.case-card.case-available:focus-within,.case-card.case-card-next:hover,.case-card.case-card-next:focus-within{background:#fff;border-color:#243fd5;box-shadow:0 10px 30px #161d3b12}.case-card:not(.case-available):not(.case-card-next):hover{border-color:#fff;box-shadow:0 10px 30px #161d3b12}
.technology .technology-ask,.technology .technology-note{background:transparent}.technology .technology-note{color:#515d75}
.approach .h2{font-size:clamp(32px,3.2vw,44px)}.method-illustration{display:block;width:100%;max-width:420px;height:auto;margin-top:20px;filter:brightness(1.02)}
@media(max-width:768px){#road .road-step{min-height:200px}}

/* Audience labels retain their original size while matching package headers. */
#road .road-group-labels span{background:#243fd5;color:#fff;border-radius:10px}
#road .road-group-labels span+span{background:#161d3b}
@media(max-width:768px){
  #road .road-step:nth-child(1)::before,#road .road-step:nth-child(3)::before{font-size:12px;font-weight:700;align-self:flex-start;padding:6px 12px;border-radius:10px;color:#fff}
  #road .road-step:nth-child(1)::before{content:'01 / CUSTOMERS';background:#243fd5}
  #road .road-step:nth-child(3)::before{content:'02 / TEAMS';background:#161d3b}
}

/* Follow-up: quieter headings, a continuous selected ROAD edge, and balanced rows. */
#road .road-step[aria-pressed="true"]::after{inset:-2px;left:-2px;right:-2px;top:-2px;bottom:-2px;width:auto;height:auto;background:none;border:4px solid transparent;border-top-color:#243fd5;border-radius:inherit;pointer-events:none;mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%)}
.approach-value{display:flex;flex-direction:column;justify-content:center;padding:20px 0}
.hero h1{font-size:clamp(42px,4.5vw,64px)}
.h2,#road .road-top .h2,.approach .h2{font-size:clamp(28px,3vw,40px)}
.path-title{font-size:22px}.solution-card-name{font-size:clamp(21px,2.1vw,28px)}
.package-identity h3{font-size:clamp(22px,1.85vw,27px)}
#road .road-general h3{font-size:21px}#road .road-name{font-size:17px}
.product-card h3,.expert-content h3,.industry-card h3{font-size:19px}
.case-card h3{font-size:clamp(21px,1.8vw,27px)}
.contact h2{font-size:clamp(38px,5vw,64px);line-height:1.06}
.solution-detail h2{font-size:clamp(28px,3.3vw,44px)}.technology h2{font-size:clamp(28px,2.5vw,32px)}
.case-dialog h2{font-size:clamp(32px,5.5vw,62px)}.case-detail h3{font-size:20px}
#development-page h1,.restaurant-hero h1{font-size:clamp(32px,3.5vw,46px)}
#development-page h2,.restaurant-section h2,.restaurant-cta h2,.restaurant-insight h2{font-size:clamp(25px,3vw,40px)}
#development-page h3,.restaurant-row h3{font-size:18px}
.proc-hero h1{font-size:clamp(30px,3vw,42px)}.proc-graphic h2,.proc-heading h2{font-size:25px}.proc-section h2{font-size:22px}.proc-panel h3{font-size:18px}
.approach-value[hidden]{display:none}
