/* Shared website components. Updated 2026-09-09. Base and contact styles remain separate. */
/* nexora content refinement · 2026-09-07 */
:root{--paper:#f2f2f2}
.nx-section{padding:80px 0;background:#fff;color:#12151c}
.nx-paper{background:#f2f2f2}
.nx-heading{max-width:820px;margin-bottom:36px}
.nx-heading h2{font-size:clamp(28px,3.2vw,43px);line-height:1.14;letter-spacing:-.035em;margin:0 0 18px;text-wrap:balance}
.nx-heading>p:not(.eyebrow){font-size:18px;line-height:1.65;color:#565b66;max-width:740px}
.nx-section p,.nx-section li,.nx-section dd{font-size:17px;line-height:1.7}
.nx-section h3{font-size:23px;line-height:1.25;letter-spacing:-.02em;margin:0 0 12px}
.nx-section ul{padding-left:22px}
.nx-section li+li{margin-top:9px}
.nx-section a:not(.btn):not(.nx-phone){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.nx-section .nx-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:16px;font-weight:650;max-width:100%}
.nx-link svg{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:currentColor;stroke-width:1.7}
.nx-link:hover{color:#625280}
.nx-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid #ccc}
.nx-cards.nx-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.nx-cards article{padding:28px 28px 30px 0;border-bottom:1px solid #ccc;min-width:0}
.nx-cards article:nth-child(even){padding-left:28px;border-left:1px solid #ccc}
.nx-three article:nth-child(even){padding-left:0;border-left:0}
.nx-three article:not(:nth-child(3n+1)){padding-left:28px;border-left:1px solid #ccc}
.nx-cards article p{color:#565b66;max-width:580px;margin:0 0 14px}
.nx-number{display:block;color:#706485;font-size:14px;font-weight:700;letter-spacing:.08em;margin-bottom:24px}
.nx-columns,.nx-cost{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.nx-columns p,.nx-cost p{color:#565b66}
.nx-cost>div:last-child{padding:32px;background:white;border-top:4px solid #bab0d7}
.nx-cost h3{margin-top:0}
.nx-steps{list-style:none;margin:0;padding:0;border-top:1px solid #ccc;max-width:1030px}
.nx-steps li{display:grid;grid-template-columns:60px 1fr;gap:28px;border-bottom:1px solid #ccc;padding:25px 0;margin:0!important}
.nx-steps li>span{font-size:26px;color:#746389;line-height:1.2}
.nx-steps p{margin:0;color:#565b66;max-width:830px}
.nx-faq{max-width:940px}
.nx-faq details{border-top:1px solid #c4c4c4;padding:0;background:transparent}
.nx-faq details:last-child{border-bottom:1px solid #c4c4c4}
.nx-faq summary{font-size:19px;font-weight:650;line-height:1.4;list-style:none;cursor:pointer;position:relative;padding:23px 46px 23px 0;min-height:58px}
.nx-faq summary::-webkit-details-marker{display:none}
.nx-faq summary:after{content:'+';position:absolute;right:8px;top:20px;font-size:24px;font-weight:400;color:#55466f}
.nx-faq details[open] summary:after{content:'−'}
.nx-faq details>div{padding:0 42px 20px 0;color:#565b66;max-width:850px}
.nx-faq details p{margin:0}
.nx-projects{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.nx-projects article{display:grid;grid-template-columns:140px minmax(0,1fr);background:white;border:1px solid #d7d7d7;min-width:0}
.nx-project-logo{background:white;display:flex;align-items:center;justify-content:center;padding:20px;min-height:230px}
.nx-project-logo img{width:100%;height:140px;object-fit:contain}
.nx-project-copy{padding:28px 25px;min-width:0}
.nx-project-copy .eyebrow{font-size:12px;letter-spacing:.05em;line-height:1.6;color:#645377;margin:0 0 14px;text-wrap:balance}
.nx-project-copy h3{font-size:25px}
.nx-project-copy p:not(.eyebrow){font-size:16px;color:#565b66;margin:0 0 12px}
.nx-logo-dark{background:#000;color:white}
.nx-hero{background:#000;color:#fff;padding:140px 0 68px}
.nx-hero .breadcrumb{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 42px;font-size:14px;color:#c4c1ca}
.nx-hero .breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.nx-hero-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.85fr);gap:64px;align-items:start}
.nx-hero h1{font-size:clamp(38px,4.7vw,64px);line-height:1.04;letter-spacing:-.045em;text-wrap:balance;margin:0 0 27px}
.nx-hero .lead{font-size:19px;line-height:1.7;color:#d2ced8;max-width:760px}
.nx-hero .eyebrow{color:#bab0d7}
.nx-brief{padding:30px;border-top:4px solid #bab0d7;background:#19171c;color:#fff;margin-top:0}
.nx-brief h2{font-size:28px;line-height:1.15;letter-spacing:-.02em;margin:16px 0}
.nx-brief p,.nx-brief li{font-size:16px;line-height:1.7;color:#d2ced8}
.nx-brief ul{padding-left:20px}
.nx-brief .nx-link{display:inline-flex;gap:12px;align-items:center;color:#d0d953;font-size:16px;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.nx-hero-note{color:#c1bdc8;font-size:14px!important;line-height:1.7;margin-top:22px}
.nx-phone{display:inline-flex;align-items:center;min-height:48px;color:inherit;font-size:16px;text-decoration:underline;text-underline-offset:5px}
.nx-dark{background:#000;color:#fff}
.nx-dark .nx-heading>p:not(.eyebrow){color:#d2ced8}
.nx-dark .eyebrow{color:#bab0d7}
.nx-secondary{margin:28px 0 0;color:#565b66}
.nx-definitions{margin:0;border-top:1px solid #c4c4c4}
.nx-definitions>div{display:grid;grid-template-columns:minmax(180px,.7fr) 2fr;gap:35px;padding:25px 0;border-bottom:1px solid #c4c4c4}
.nx-definitions dt{font-size:20px;font-weight:650}
.nx-definitions dd{margin:0;color:#565b66;max-width:790px}
.nx-note{margin-top:30px;padding:20px 25px;border-left:4px solid #bab0d7;background:#fff}
.nx-reading{max-width:840px;color:#565b66;font-size:19px!important;margin:0}
.nx-case-logo{height:150px;padding:24px;display:flex;justify-content:center;background:white;margin:-5px -5px 26px}
.nx-case-logo.nx-logo-dark{background:black}
.nx-case-logo img{max-width:100%;width:100%;height:100%;object-fit:contain}
.nx-editorial{padding:28px 0;border-top:1px solid #ddd;background:#f2f2f2;color:#565b66}
.nx-editorial p{font-size:14px;line-height:1.7;margin:0 0 8px}
.nx-editorial a{text-decoration:underline;text-underline-offset:3px}
.nx-updated .home-hero h1{font-size:clamp(40px,4.6vw,66px);line-height:1.05}
.nx-updated .home-hero .lead{font-size:18px;line-height:1.7}
.nx-updated .home-hero .hero-trust{margin-top:28px}
.nx-updated .home-hero .hero-service-strip{padding-top:26px}
:where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #827096;outline-offset:4px}
[id]{scroll-margin-top:120px}
.nx-updated .breadcrumb [aria-current]{overflow-wrap:anywhere}
@media(max-width:1050px){.nx-projects article{grid-template-columns:1fr}.nx-project-logo{min-height:125px;height:125px;padding:18px}.nx-project-logo img{height:92px;max-width:210px}.nx-hero-grid{gap:32px}.nx-cards.nx-three{grid-template-columns:repeat(2,minmax(0,1fr))}.nx-three article:not(:nth-child(3n+1)){border-left:0;padding-left:0}.nx-three article:nth-child(even){border-left:1px solid #ccc;padding-left:28px}}
@media(max-width:880px){.nx-hero{padding-top:112px}.nx-hero-grid{grid-template-columns:1fr}.nx-brief{max-width:none}.nx-columns,.nx-cost{gap:32px}.nx-updated .home-hero h1{font-size:clamp(38px,6vw,54px)}}
@media(max-width:600px){.nx-section{padding:50px 0}.nx-heading{margin-bottom:28px}.nx-heading h2{font-size:31px}.nx-heading>p:not(.eyebrow),.nx-hero .lead{font-size:17px}.nx-section p,.nx-section li,.nx-section dd{font-size:16px}.nx-hero{padding-top:108px;padding-bottom:42px}.nx-hero .breadcrumb{margin-bottom:27px;font-size:13px;gap:8px}.nx-hero h1{font-size:39px;line-height:1.07}.nx-hero-grid{gap:30px}.nx-brief{padding:24px}.nx-brief h2{font-size:25px}.nx-cards,.nx-cards.nx-three,.nx-columns,.nx-cost,.nx-projects{grid-template-columns:1fr}.nx-cards article,.nx-cards article:nth-child(even),.nx-three article:not(:nth-child(3n+1)){padding:24px 0;border-left:0}.nx-number{margin-bottom:16px}.nx-steps li{grid-template-columns:35px 1fr;gap:15px;padding:22px 0}.nx-steps h3{font-size:21px}.nx-definitions>div{grid-template-columns:1fr;gap:12px}.nx-cost>div:last-child{padding:25px}.nx-projects{gap:20px}.nx-projects article{grid-template-columns:105px minmax(0,1fr)}.nx-project-logo{height:auto;min-height:190px;padding:14px}.nx-project-logo img{width:100%;height:110px}.nx-project-copy{padding:22px 16px}.nx-project-copy h3{font-size:22px;overflow-wrap:normal;hyphens:auto}.nx-project-copy .eyebrow{font-size:12px}.nx-faq summary{font-size:18px}.nx-faq details>div{padding-right:16px}.nx-updated .home-hero h1{font-size:39px}.nx-updated .home-hero .lead{font-size:17px}.nx-updated .hero-actions .btn{width:100%;justify-content:center}.nx-updated .hero-actions{align-items:flex-start}.nx-reading{font-size:17px!important}.nx-editorial{padding:24px 0}.nx-section .nx-link{font-size:16px;line-height:1.4}}
@media(max-width:360px){.nx-projects article{grid-template-columns:1fr}.nx-project-logo{min-height:110px;height:110px}.nx-project-logo img{height:80px;max-width:180px}.nx-hero h1,.nx-updated .home-hero h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
/* Keep repeated shortcuts compact so mobile visitors reach people and projects sooner. */
.nx-updated.home .hero-service-strip{display:none}
@media(max-width:600px){.nx-updated.home .hero-trust{display:none}.nx-updated.home .home-hero{padding-bottom:36px}}
/* The legacy stylesheet uses important eyebrow colors; retain contrast on dark sections. */
.nx-hero .eyebrow,.nx-dark .eyebrow{color:#bab0d7!important}
.nx-hero-grid>div,.nx-hero-grid>aside{min-width:0}
.nx-hero h1{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:880px){.nx-hero-grid{grid-template-columns:minmax(0,1fr)}}
.contact-intro .eyebrow{color:#bab0d7!important}
/* Angebotsstruktur: laufende Betreuung vor einzelnen Projekten. */
.nx-offer-primary{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;padding:32px 0 40px;border-top:3px solid #bab0d7;border-bottom:1px solid #ccc}
.nx-offer-primary aside{border-left:1px solid #ccc;padding-left:32px}
.nx-project-entry{padding-top:36px}
.nx-backup-note{margin-top:36px;border-left:4px solid #bab0d7;padding:24px 28px;background:white;max-width:980px}
.nx-backup-note p{margin-bottom:0}
.nx-contact-hours{font-size:14px!important;line-height:1.6!important;max-width:780px;margin-top:22px}
.nx-dark>.shell>p{max-width:760px;color:#d2ced8}
.nx-team-coverage{margin-top:44px;padding-top:28px;border-top:1px solid #ccc;max-width:900px}
.nx-team-coverage p{font-size:17px;line-height:1.7}
@media(max-width:700px){.nx-offer-primary{grid-template-columns:minmax(0,1fr);gap:24px;padding:24px 0}.nx-offer-primary aside{border-left:0;border-top:1px solid #ccc;padding:24px 0 0}.nx-project-entry{gap:28px}.nx-backup-note{padding:20px}.nx-updated.home .home-hero h1{font-size:clamp(35px,9vw,52px)}}

/* Local review component; no remote fonts, icons or widgets. */
.nx-trust-band{background:#f2f2f2;color:#000;padding:28px 0;border-bottom:1px solid #dedede}
.nx-rating{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;margin:0;padding:26px 30px;background:#fff;color:#000;border:1px solid #d9d9d9;border-radius:16px;box-shadow:0 5px 18px rgb(0 0 0 / 4%);line-height:1.5}
.nx-rating-score{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;min-width:126px;padding:15px 20px;border-radius:10px;background:#d0d953}
.nx-rating-score strong{font-size:clamp(2.35rem,3.2vw,3rem);line-height:1.05;letter-spacing:-.055em;font-weight:800;font-variant-numeric:tabular-nums}
.nx-rating-score>span{margin-top:7px;font-size:.78rem;font-weight:600;white-space:nowrap}
.nx-rating-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:5px}
.nx-rating-kicker{font-size:.75rem;font-weight:650;color:#535353}
.nx-rating-stars{display:flex;align-items:center;gap:3px;line-height:1}
.nx-rating-stars>svg{display:block;flex:none;width:24px;height:24px}
.nx-rating-count{font-size:1rem;font-weight:650}
.nx-rating-copy small{font-size:.75rem;color:#595959}
.nx-rating-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;max-width:100%;padding:12px 18px;border:1px solid #000;border-radius:8px;background:#000;color:#fff!important;text-decoration:none!important;font-size:.88rem;font-weight:650;line-height:1.45;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.nx-rating-button>span{font-size:1.25rem;line-height:1;transition:transform .18s ease}
.nx-rating-button:focus-visible{outline:3px solid #65517e;outline-offset:4px}
@media(hover:hover){.nx-rating-button:hover{background:#bab0d7;color:#000!important;transform:translateY(-2px);box-shadow:0 4px 0 #000}.nx-rating-button:hover>span{transform:translate(2px,-2px)}}
.nx-rating-fallback{grid-template-columns:minmax(0,1fr) auto}
.nx-rating-fallback .nx-rating-copy strong{font-size:1.1rem;line-height:1.4}
.nx-trust-inline{margin-top:24px}
.nx-trust-inline .nx-rating{grid-template-columns:auto minmax(0,1fr);gap:16px;padding:20px;border-color:#d5cee1;background:#faf9fc}
.nx-trust-inline .nx-rating-score{min-width:94px;padding:12px}
.nx-trust-inline .nx-rating-score strong{font-size:2.25rem}
.nx-trust-inline .nx-rating-button{grid-column:1/-1;justify-self:stretch}
.nx-trust-inline .nx-rating-fallback{grid-template-columns:minmax(0,1fr)}
@media(max-width:700px){.nx-trust-band{padding:20px 0}.nx-rating{grid-template-columns:auto minmax(0,1fr);gap:16px;padding:20px}.nx-rating-score{min-width:94px;padding:12px}.nx-rating-score strong{font-size:2.35rem}.nx-rating-button{grid-column:1/-1;justify-self:stretch}.nx-rating-fallback{grid-template-columns:minmax(0,1fr)}.nx-rating-kicker{font-size:.7rem}.nx-rating-count{font-size:.9rem}.nx-rating-copy small{font-size:.7rem}}
@media(max-width:360px){.nx-rating,.nx-trust-inline .nx-rating{gap:12px;padding:16px}.nx-rating-score,.nx-trust-inline .nx-rating-score{min-width:80px;padding:10px}.nx-rating-stars{gap:1px}.nx-rating-stars>svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){.nx-rating-button,.nx-rating-button>span{transition:none}.nx-rating-button:hover,.nx-rating-button:hover>span{transform:none}}

/* Desktop: keep rating and action together instead of spanning the page. */
@media(min-width:701px){.nx-trust-band .nx-rating{max-width:860px;margin-inline:auto;box-sizing:border-box}}

.location-company{margin-top:24px;padding-top:18px;border-top:1px solid #343438}.location-block .location-details .location-company p{margin:0 0 10px;font-size:.9rem;line-height:1.5;color:#d4d4d7}.location-block .location-details .location-company a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.9rem;line-height:1.4}.location-company a svg{flex-shrink:0}

/* Compact, fully visible customer quotes. */
.nx-customer-voices{background:#fff;padding-block:40px}
.nx-customer-voices>.shell{max-width:960px}
.nx-customer-voices .nx-heading{margin-bottom:18px}
.nx-customer-voices .nx-heading h2{font-size:clamp(1.45rem,2.6vw,2rem);line-height:1.2;margin-bottom:10px}
.nx-customer-voices .nx-heading>p:last-child{font-size:.9rem;line-height:1.5;margin-bottom:0}
.nx-quote-list{display:flex;flex-direction:column;gap:0;margin:18px 0 14px}
.nx-customer-quote{display:grid;grid-template-columns:96px minmax(0,1fr);align-content:start;align-items:start;column-gap:20px;row-gap:4px;margin:0;padding:16px 0;border-bottom:1px solid #e9e9ec;min-width:0}
.nx-customer-quote:first-child{padding-top:0}
.nx-quote-mark{grid-column:1;grid-row:1/3;width:96px;height:72px;display:flex;align-items:center;justify-content:center;background:#fafafa;border-radius:8px;padding:7px;box-sizing:border-box}
.nx-quote-mark img{display:block;width:100%;height:100%;object-fit:contain}
.nx-quote-mark-dark{background:#17171c}
.nx-customer-quote blockquote{grid-column:2;margin:0;padding:0}
.nx-customer-quote blockquote p{font-size:clamp(1rem,1.35vw,1.125rem);line-height:1.5;margin:0;color:#17171c}
.nx-customer-quote blockquote strong{font-weight:750}
.nx-customer-quote figcaption{grid-column:2;display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;line-height:1.45}
.nx-customer-quote figcaption strong{font-size:.8rem}
.nx-customer-quote figcaption span{font-size:.75rem;color:#62626a}
.nx-customer-quote figcaption a{display:inline-flex;align-items:center;min-height:44px;color:#17171c;text-underline-offset:4px;font-size:.8rem}
.nx-customer-voices>.shell>a{min-height:44px;display:inline-flex;align-items:center;font-size:.9rem}
.nx-customer-voices a:focus-visible{outline:3px solid #65517e;outline-offset:4px}
@media(max-width:600px){.nx-customer-voices{padding-block:28px}.nx-customer-quote{grid-template-columns:68px minmax(0,1fr);column-gap:12px;row-gap:6px;padding:15px 0}.nx-quote-mark{width:68px;height:58px;padding:5px;border-radius:7px}.nx-customer-quote blockquote p{font-size:1rem;line-height:1.5}.nx-customer-quote figcaption{gap:2px 10px}.nx-customer-quote figcaption strong,.nx-customer-quote figcaption span{flex-basis:100%}}

/* Compact customer × nexora signature using the original wordless signet. */
.nx-customer-quote{grid-template-columns:166px minmax(0,1fr)}.nx-quote-times{font-size:17px;line-height:1;color:#777}.nx-quote-nexora{display:flex;align-items:center;justify-content:center;flex:0 0 42px;height:34px;border-radius:6px;background:#17171c;padding:6px;box-sizing:border-box}.nx-quote-nexora img{display:block;width:100%;height:auto;object-fit:contain}@media(max-width:600px){.nx-customer-quote{grid-template-columns:68px minmax(0,1fr)}.nx-quote-nexora{flex-basis:36px;height:28px;padding:5px}.nx-quote-times{font-size:15px}}

/* Shared editorial rhythm for the main website; contact, legal and web landing are isolated. */
.nx-coherent{--nx-rule:#d7d7dc;--nx-copy:#565b66}
.nx-coherent main>.section,.nx-coherent main>.nx-section{padding-block:64px}
.nx-coherent main>.section .split-heading,.nx-coherent main>.section .narrow-heading,.nx-coherent .nx-heading{margin-bottom:28px}
.nx-coherent main>.section h2,.nx-coherent main>.nx-section h2{font-size:clamp(28px,3.1vw,40px)!important;line-height:1.18;letter-spacing:-.03em;text-wrap:balance}
.nx-coherent main>.section h3,.nx-coherent main>.nx-section h3{font-size:24px!important;line-height:1.25;letter-spacing:-.02em}
.nx-coherent main>.section p,.nx-coherent main>.nx-section p{line-height:1.65}
.nx-coherent .split-heading>p,.nx-coherent .narrow-heading>p,.nx-coherent .nx-heading>p:not(.eyebrow){font-size:17px}
.nx-coherent .service-brief{border-left:3px solid #bab0d7;padding-left:26px}
.nx-coherent .service-brief h2{font-size:clamp(24px,2.4vw,30px)!important;line-height:1.2}
.nx-coherent .nx-unified-offers{margin-top:0;background:transparent;color:#17171c}
.nx-coherent .nx-unified-offers article{min-height:0;border-radius:0;background:transparent;box-shadow:none;transform:none}
.nx-coherent .nx-unified-offers h3{color:#17171c;font-size:23px!important;margin:0 0 12px}
.nx-coherent .nx-unified-offers p,.nx-coherent .nx-unified-offers li{color:#565b66;font-size:16px;line-height:1.65}
.nx-coherent .nx-unified-offers ul{padding-left:19px;margin:16px 0 0}
.nx-coherent .nx-unified-offers>article>span{display:block;font-size:12px;color:#706485;letter-spacing:.04em;margin-bottom:18px}
.nx-coherent .entry-grid .plain-entry,.nx-coherent .entry-grid .service-entry,.nx-coherent .entry-grid .issue-entry{min-height:0;padding:26px}
.nx-coherent .infra-capabilities .service-entry,.nx-coherent .telephony-capabilities .service-entry{border-color:var(--nx-rule);border-radius:0;box-shadow:none}
.nx-coherent .public-projects{gap:0}
.nx-coherent .public-project{padding-block:36px;border-bottom:1px solid var(--nx-rule);gap:40px}
.nx-coherent .public-project h3{font-size:clamp(27px,3vw,36px)!important;margin:12px 0}
.nx-coherent .public-project .project-lead{font-size:18px;line-height:1.5}
.nx-coherent .public-project .project-visual{min-height:230px;border-radius:8px}
.nx-gena-visual{background:#17171c!important;justify-content:space-between;gap:20px}
.nx-gena-visual .project-type{color:#bab0d7}
.nx-case-title{font-size:clamp(24px,3vw,34px);font-weight:700;line-height:1.2;color:#fff;letter-spacing:-.02em}
.nx-coherent .nx-practice-list{border-top:1px solid var(--nx-rule)}
.nx-practice-list article{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.4fr);gap:40px;padding:26px 0;border-bottom:1px solid var(--nx-rule)}
.nx-practice-list article p{margin:0;color:#565b66;max-width:740px;font-size:16px}
.nx-practice-list .eyebrow{display:block;margin-bottom:10px;font-size:12px}
.nx-practice-list .nx-link{margin-top:8px}
.nx-coherent .platform-link{grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:24px 0}
.nx-coherent .platform-link-copy h3{font-size:25px!important}
.nx-coherent .platform-link-copy p{font-size:16px;max-width:650px}
.nx-coherent .platform-link>a{min-height:44px;white-space:normal;text-underline-offset:4px;font-size:16px}
.nx-coherent .platform-link>a svg{width:21px;height:21px;flex:none}
/* Quotes form one section of the site, with a single customer × nexora logo group. */
.nx-coherent main>.nx-customer-voices{padding-block:44px;background:#f2f2f2}
.nx-coherent .nx-customer-voices>.shell{max-width:1200px}
.nx-coherent .nx-customer-voices .nx-heading{margin-bottom:22px;max-width:none}
.nx-coherent .nx-customer-voices .nx-heading h2{font-size:clamp(26px,2.8vw,34px)!important}
.nx-coherent .nx-quote-list{margin:18px 0 12px;border-top:1px solid var(--nx-rule)}
.nx-coherent .nx-customer-quote{grid-template-columns:162px minmax(0,1fr);column-gap:24px;padding:20px 0;row-gap:5px;border-color:var(--nx-rule)}
.nx-coherent .nx-quote-nexora{flex-basis:34px;height:30px;padding:5px;border-radius:4px}
.nx-coherent .nx-quote-times{flex:0 0 8px;font-size:15px;color:#62626a}
.nx-coherent .nx-customer-quote blockquote p{font-size:17px;line-height:1.55}
.nx-coherent .nx-customer-quote figcaption{column-gap:12px;row-gap:2px}
.nx-coherent .nx-customer-quote figcaption strong{font-size:13px}
.nx-coherent .nx-customer-quote figcaption span{font-size:12px}
.nx-coherent .nx-customer-quote figcaption a{font-size:13px;min-height:44px}
.nx-coherent .nx-customer-quote blockquote strong{font-weight:700}
@media(max-width:880px){.nx-coherent .platform-link{grid-template-columns:minmax(0,1fr);gap:10px}.nx-coherent .platform-link>a{justify-self:start}.nx-coherent .public-project{gap:24px}}
@media(max-width:600px){
.nx-coherent main>.section,.nx-coherent main>.nx-section{padding-block:42px}
.nx-coherent main>.section h2,.nx-coherent main>.nx-section h2{font-size:29px!important;line-height:1.2}
.nx-coherent main>.section h3,.nx-coherent main>.nx-section h3{font-size:22px!important}
.nx-coherent .split-heading>p,.nx-coherent .narrow-heading>p,.nx-coherent .nx-heading>p:not(.eyebrow){font-size:16px}
.nx-coherent .entry-grid .plain-entry,.nx-coherent .entry-grid .service-entry,.nx-coherent .entry-grid .issue-entry{padding:22px 0;border-right:0}
.nx-practice-list article{grid-template-columns:minmax(0,1fr);gap:10px;padding:22px 0}
.nx-coherent .public-project{padding-block:28px}
.nx-coherent .public-project h3{font-size:28px!important}
.nx-coherent main>.nx-customer-voices{padding-block:32px}
.nx-coherent .nx-customer-voices .nx-heading h2{font-size:26px!important}
.nx-coherent .nx-customer-quote{grid-template-columns:minmax(0,1fr);gap:10px;padding:18px 0}
.nx-coherent .nx-customer-quote blockquote{grid-column:1;grid-row:2}
.nx-coherent .nx-customer-quote blockquote p{font-size:16px;line-height:1.55}
.nx-coherent .nx-customer-quote figcaption{grid-column:1;grid-row:3;flex-direction:row;align-items:center;gap:3px 10px}
.nx-coherent .nx-customer-quote figcaption strong{flex-basis:100%}
.nx-coherent .nx-customer-quote figcaption span{flex-basis:auto}
}

/* One nexora signature per review section, not per customer. */
.nx-coherent .nx-voices-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}
.nx-coherent .nx-voices-heading .nx-heading{margin:0}
.nx-coherent .nx-voices-signature{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:13px;color:#565b66}
.nx-coherent .nx-voices-signature .nx-quote-nexora{width:54px;height:40px;flex-basis:54px;padding:8px}
.nx-coherent .nx-customer-quote{grid-template-columns:96px minmax(0,1fr);gap:5px 22px}
.nx-coherent .nx-customer-quote>.nx-quote-mark{grid-column:1;grid-row:1/3;width:96px;height:72px}
/* Balanced primary offer; both columns start with the same hierarchy. */
.nx-coherent .nx-offer-primary{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;padding:28px;background:#f2f2f2;border:0;border-left:3px solid #bab0d7;border-radius:0}
.nx-coherent .nx-offer-primary>div,.nx-coherent .nx-offer-primary>aside{min-width:0}
.nx-coherent .nx-offer-primary aside{padding:0;border:0}
.nx-coherent .nx-offer-primary .eyebrow{font-size:12px!important;line-height:1.5;margin:0 0 14px}
.nx-coherent .nx-offer-primary h3{font-size:24px!important;margin:0 0 14px;line-height:1.25}
.nx-coherent .nx-offer-primary p:not(.eyebrow){font-size:16px;line-height:1.6;color:#565b66;margin:0 0 12px}
.nx-coherent .nx-project-entry{padding-top:28px;gap:32px}
@media(max-width:700px){.nx-coherent .nx-offer-primary{grid-template-columns:minmax(0,1fr);padding:22px;gap:20px}.nx-coherent .nx-offer-primary aside{padding-top:20px;border-top:1px solid #d7d7dc}.nx-coherent .nx-voices-heading{align-items:flex-start;flex-direction:column;gap:12px}.nx-coherent .nx-voices-signature{font-size:12px;gap:10px}}
@media(max-width:600px){.nx-coherent .nx-customer-quote{grid-template-columns:68px minmax(0,1fr);gap:6px 14px}.nx-coherent .nx-customer-quote>.nx-quote-mark{width:68px;height:58px;grid-column:1;grid-row:1/3}.nx-coherent .nx-customer-quote blockquote{grid-column:2;grid-row:1}.nx-coherent .nx-customer-quote figcaption{grid-column:2;grid-row:2}.nx-coherent .nx-offer-primary h3{font-size:22px!important}}

#gena .nx-gena-logo{display:flex;align-items:center;justify-content:center;min-height:100px;width:100%}#gena .nx-gena-logo img{display:block;width:96px;height:79px;max-width:100%;object-fit:contain;padding:0;background:transparent;border-radius:0}

/* Mobile layout fixes shared by every instance of these components. */
.solution-index>a>div{min-width:0}
.solution-index>a>span{overflow-wrap:normal;hyphens:auto}
.experience-note{padding:24px 24px 24px 28px!important;margin:32px 0!important;border-left:3px solid #bab0d7}
.experience-note>.eyebrow{margin:0 0 10px!important}
.experience-note>h2{font-size:clamp(24px,2.5vw,32px)!important;line-height:1.25!important;margin:0 0 14px!important;text-wrap:balance}
.experience-note>p:not(.eyebrow){font-size:17px;line-height:1.65;max-width:70ch}
@media(max-width:700px){
.solution-index>a{display:grid!important;grid-template-columns:minmax(0,1fr) 24px!important;gap:8px 14px!important;align-items:start!important;padding:24px 0!important}
.solution-index>a>span{grid-column:1!important;grid-row:1!important;position:static!important;width:auto!important;font-size:13px;line-height:1.4}
.solution-index>a>div{grid-column:1!important;grid-row:2!important}
.solution-index>a>div h3{margin:0 0 10px!important}
.solution-index>a>div p{margin:0!important}
.solution-index>a>svg{grid-column:2!important;grid-row:2!important;align-self:start!important;width:22px;height:22px;margin-top:4px}
.experience-note{padding:20px 16px 20px 20px!important;margin:28px 0!important}
.experience-note>h2{font-size:25px!important}
.experience-note>p:not(.eyebrow){font-size:16px}
}
@media(max-width:600px){
.nx-coherent .nx-customer-quote{grid-template-columns:68px minmax(0,1fr);gap:6px 14px;padding:20px 0}
.nx-coherent .nx-customer-quote>.nx-quote-mark{grid-column:1;grid-row:1/3;align-self:center;justify-self:center;width:68px;height:58px}
.nx-coherent .nx-customer-quote blockquote{grid-column:2;grid-row:1}
.nx-coherent .nx-customer-quote figcaption{grid-column:2;grid-row:2}
.nx-coherent .nx-voices-signature{align-self:center}
}

/* Mobile logo alignment uses only quote and company name (rows 1 and 2). */
@media(max-width:600px){
.nx-coherent .nx-customer-quote figcaption{display:contents}
.nx-coherent .nx-customer-quote figcaption>strong{grid-column:2;grid-row:2;min-width:0;line-height:1.45}
.nx-coherent .nx-customer-quote figcaption>span{grid-column:2;grid-row:3;min-width:0;line-height:1.45}
.nx-coherent .nx-customer-quote figcaption>a{grid-column:2;grid-row:4;justify-self:start;min-width:0;line-height:1.45}
.nx-coherent .nx-customer-quote>.nx-quote-mark{grid-column:1;grid-row:1/3;align-self:center}
}

/* Logo surfaces fit their contents instead of stretching with the project copy. */
.nx-projects article{align-items:center}
.nx-projects .nx-project-logo{align-self:center;justify-self:center;box-sizing:border-box;width:112px;height:100px;min-height:0;padding:10px;margin:16px 0;border-radius:8px}
.nx-projects .nx-project-logo img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
.nx-projects .nx-project-logo[data-logo-format="wide"]{height:58px;background:#17171c}
.nx-case-logo{box-sizing:border-box;align-self:center;max-width:260px;margin:0 auto 24px;border-radius:8px}
.nx-case-logo[data-logo-format="wide"]{height:76px;padding:16px;background:#17171c}
.logo-stage[data-logo-format="wide"],.logo-stage-dark[data-logo-format="wide"]{box-sizing:border-box;min-height:0!important;height:auto!important;width:100%;max-width:280px;padding:18px!important;margin-inline:auto;border-radius:8px;background:#17171c}
.logo-stage[data-logo-format="wide"] img,.logo-stage-dark[data-logo-format="wide"] img{display:block;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain}
.nx-coherent .nx-customer-quote>.nx-quote-mark[data-logo-format="wide"]{height:44px;padding:7px;background:#17171c}
@media(max-width:1050px) and (min-width:601px){.nx-projects .nx-project-logo{width:160px;height:100px}.nx-projects .nx-project-logo[data-logo-format="wide"]{height:64px}}
@media(max-width:600px){
.nx-projects article{grid-template-columns:96px minmax(0,1fr)}
.nx-projects .nx-project-logo{width:80px;height:76px;min-height:0;padding:6px;margin:14px 0}
.nx-projects .nx-project-logo[data-logo-format="wide"]{height:44px}
.nx-projects .nx-project-copy{padding:20px 14px 20px 10px}
.nx-coherent .nx-customer-quote>.nx-quote-mark[data-logo-format="wide"]{height:34px;padding:5px}
}
@media(max-width:360px){.nx-projects article{grid-template-columns:80px minmax(0,1fr)}.nx-projects .nx-project-logo{width:68px}.nx-projects .nx-project-copy{padding-inline:8px}}

/* Contextual help and compact editorial introductions. */
.nx-problem-note{max-width:680px;margin-top:24px;padding-left:18px;border-left:2px solid #bab0d7;color:#e0dce6;font-size:15px;line-height:1.55}
.nx-problem-note p{margin:0 0 8px;font-size:inherit;line-height:inherit}
.nx-problem-note a{color:#fff;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding:4px 0}
.nx-technical-details{margin-top:32px}
.page-hero.nx-compact-hero{padding-top:116px;padding-bottom:48px}
.nx-compact-hero .breadcrumbs{margin-bottom:28px}
.nx-compact-hero h1{font-size:clamp(36px,4.5vw,60px);line-height:1.08}
.nx-compact-hero .hero-grid{gap:40px;align-items:start}
@media(max-width:620px){.page-hero.nx-compact-hero{padding-top:104px;padding-bottom:36px}.nx-compact-hero .hero-grid{gap:26px}.nx-problem-note{font-size:14px;margin-top:20px}}
