/* Corrections to the original site components. Page layouts stay in their existing stylesheets. */
html { scroll-padding-top: calc(var(--naxit-header-height) + 24px); }
body { font-family: var(--naxit-font); font-weight: 400; text-transform: none; }
body, .naxit-home-page, .naxit-detail-page { background-color: var(--naxit-canvas); color: var(--naxit-color-white); }
h1, h2, h3, h4, .cta-heading { font-family: var(--naxit-font); }
h1 { font-weight: 400; letter-spacing: -.035em; line-height: 1.08; }
h2, .cta-heading { font-weight: 400; letter-spacing: -.025em; }
h3, h4 { font-weight: 500; }
p, li { text-transform: none; }
button, input, textarea, select { font-family: var(--naxit-font); }
::selection { color: var(--naxit-color-white); background: var(--naxit-primary); }
:focus-visible { outline: 3px solid var(--naxit-secondary); outline-offset: 4px; }
.products-page :focus-visible { outline-color: var(--naxit-primary); }
[hidden] { display: none !important; }

/* One header treatment, with the original SVG icons and mobile menu. */
body { padding-top: var(--naxit-header-height); }
body .nav-banner-wrapper { z-index: auto !important; isolation: auto; transform: none !important; }
body .navbar {
  position: fixed; inset: 0 0 auto; z-index: 1000;
  min-height: var(--naxit-header-height); padding: 12px 0;
  background: var(--naxit-canvas); border-bottom: 1px solid rgba(217,226,231,.14);
  color: var(--naxit-color-white); transform: none !important;
}
body .navbar > .container { width: calc(100% - 48px); max-width: 1440px; padding-inline: 0; }
body .navbar-wrapper { display: flex; align-items: center; justify-content: space-between; min-height: 64px; gap: 24px; }
body .navbar-brand { width: 140px; min-width: 140px; padding: 0; margin: 0; }
body .navbar-brand .logo-icon-wrapper { width: 140px; height: 48px; filter: none; }
body .navbar-brand .logo-icon-wrapper img { width: 100%; height: 100%; filter: none !important; object-fit: contain; }
body .navbar-brand:hover .logo-icon-wrapper { filter: none; }
body .nav-menu { gap: clamp(12px, 1.3vw, 24px); }
body .navbar .nav-link { display: flex; min-height: 44px; gap: 7px; padding: 0; color: var(--naxit-color-white); font-family: var(--naxit-font); font-size: 13px; font-weight: 500; text-transform: uppercase; }
body .navbar .nav-link:is(:hover,:focus-visible,.w--current,[aria-current]) { color: var(--naxit-color-white) !important; }
body .navbar .nav-link > div { color: inherit !important; }
body .navbar .nav-link > div:last-child { text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 7px; text-decoration-thickness: 1px; transition: text-decoration-color .2s ease; }
body .navbar .nav-link:is(:hover,:focus-visible,[aria-current]) > div:last-child { text-decoration-color: currentColor; }
body .navbar .icon-wrapper { display: flex; width: 20px; height: 20px; flex: 0 0 20px; }
body .navbar .icon-wrapper img { width: 20px; height: 20px; filter: none; }
body .navbar .primary-button { font-size: 13px; white-space: nowrap; }
body .navbar .menu-button { color: var(--naxit-color-white); border: 1px solid rgba(217,226,231,.3); border-radius: 50%; background: var(--naxit-color-ink); }
body.products-page .navbar { position: fixed; background: var(--naxit-canvas); color: var(--naxit-color-white); }
body.products-page .navbar .nav-link { color: var(--naxit-color-white); }
body.products-page .navbar .nav-link:is(:hover,:focus-visible,.w--current,[aria-current]) { color: var(--naxit-color-white) !important; }

/* Stable rounded actions: a quiet blue wash, with no sliding cover or diagonal arrow. */
body :is(.primary-button,.product-button,.naxit-hero-action,.submit-button) {
  --naxit-button-base: linear-gradient(110deg,var(--naxit-color-ink),var(--naxit-primary));
  min-height: 52px; border: 1px solid rgba(217,226,231,.35); border-radius: var(--naxit-control-radius);
  background-image: var(--naxit-button-base) !important;
  background-size: 140% 100% !important; background-position: 0 50% !important; background-repeat: no-repeat !important;
  color: var(--naxit-color-white) !important; font-family: var(--naxit-font); font-size: 15px; font-weight: 500;
  line-height: 1.35; text-decoration: none; text-transform: none;
  transform: none !important; box-shadow: none;
  transition: background-position .28s ease,border-color .2s ease,background-color .2s ease !important;
}
body .primary-button { padding: 6px 6px 6px 22px; gap: 16px; isolation: isolate; }
body .product-button,body .naxit-hero-action,body .submit-button { padding: 14px 24px; }
body :is(.primary-button,.product-button,.naxit-hero-action,.submit-button):is(:hover,:focus-visible) {
  background-position: 100% 50% !important; border-color: var(--naxit-secondary); color: var(--naxit-color-white) !important;
}
body :is(.navbar,.cta-block,.naxit-subpage-actions,.naxit-services-classic) .primary-button:is(:hover,:focus-visible) { color: var(--naxit-color-white) !important; }
body :is(.primary-button,.product-button,.naxit-hero-action)::before,
body .primary-button .button-hover-block { display: none !important; content: none !important; }
body .primary-button .button-text,body .primary-button > div:first-child { position: relative; z-index: 2; color: inherit !important; }
body .primary-button .button-arrow { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 8px; flex: 0 0 36px; background: var(--naxit-color-white); border-radius: 50%; z-index: 2; }
body .primary-button .button-arrow img { width: 18px; height: 18px; filter: none; transform: none !important; }
body :is(.product-button--secondary,.product-button--light,.naxit-hero-action--secondary) { --naxit-button-base: none; background-color: var(--naxit-color-white); color: var(--naxit-color-ink) !important; border-color: var(--naxit-color-text); }
body :is(.product-button--secondary,.product-button--light,.naxit-hero-action--secondary):is(:hover,:focus-visible) { background-color: #e7f0f3; color: var(--naxit-color-ink) !important; border-color: var(--naxit-primary); }
body button:disabled,body input:disabled { opacity: .5; cursor: not-allowed; }

/* Preserve the large hero logo and its original drawing animation. */
.naxit-home-page:not(.naxit-reference-page) .nav-banner-wrapper { min-height: 0; }
.naxit-home-page:not(.naxit-reference-page) .banner-section { min-height: calc(100svh - var(--naxit-header-height)); padding: 32px 0 48px; }
.naxit-home-page:not(.naxit-reference-page) .banner-heading-block { min-height: calc(100svh - var(--naxit-header-height) - 80px); height: auto; overflow: visible; }
.naxit-home-page:not(.naxit-reference-page) .banner { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: inherit; }
.naxit-home-page .banner-section .footer-hero-logo { position: relative; inset: auto; width: min(100%, 1000px); height: auto; margin: 32px auto; z-index: 3; }
.naxit-home-page .banner-section .footer-hero-logo .wrap { width: 100%; padding: 0 24px; }
.naxit-home-page .banner-section .footer-hero-logo svg { display: block; width: 100%; height: auto; }
.naxit-home-page .banner-bg { display: none; }
.naxit-home-page .banner-icon { display: none; }
.naxit-home-page .naxit-hero-grid { overflow: hidden; }
.naxit-hero-copy { position: relative; z-index: 3; width: min(1100px, calc(100% - 80px)); margin: 16px auto 0; padding-top: 32px; border-top: 1px solid rgba(217,226,231,.25); display: grid; grid-template-columns: 1.4fr 1fr; gap: 24px 48px; }
.naxit-hero-copy h1 { margin: 0; font-size: clamp(28px, 3vw, 42px); line-height: 1.2; font-weight: 300; text-transform: none; }
.naxit-hero-copy p { margin: 0; font-size: 18px; line-height: 1.6; color: var(--naxit-color-line); }
.naxit-hero-actions { display: flex; gap: 16px; flex-wrap: wrap; grid-column: 1 / -1; }
.naxit-hero-action { display: inline-flex; align-items: center; justify-content: center; }
.naxit-home-page .naxit-about-card ul { padding-left: 20px; color: var(--naxit-color-line); font-size: 17px; line-height: 1.65; margin: 16px 0 0; }
.naxit-home-page .naxit-about-card h3 { margin: 0; }
.naxit-home-page .naxit-about-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; }
.naxit-home-page .naxit-about-card { min-width: 0; }
.naxit-home-page .naxit-about-card > div { display: block; }

/* Four original service panels retain their geometry and dark resting state. */
.naxit-home-page .naxit-services-classic { background: var(--naxit-canvas); overflow: clip; }
.naxit-home-page .naxit-services-classic .service-card { min-height: 580px; background: var(--naxit-canvas); color: var(--naxit-color-white); transform: none !important; transition: background-color .4s ease; }
.naxit-home-page .naxit-services-classic .service-card:hover { background: var(--naxit-color-ink); }
.naxit-home-page .naxit-services-classic .service-section-heading-card { min-height: 580px; background: var(--naxit-color-paper); color: var(--naxit-color-ink); }
.naxit-home-page .naxit-services-classic .service-section-heading-card :is(h2,.section-heading-tag) { color: var(--naxit-color-ink); }
.naxit-home-page .naxit-services-classic .service-card :is(h3,li,.service-list-wrapper) { color: var(--naxit-color-white) !important; }
.naxit-home-page .naxit-services-classic .service-card h3 { font-size: clamp(24px, 1.8vw, 32px); line-height: 1.2; }
.naxit-home-page .naxit-services-classic .service-card .button-text { color: var(--naxit-color-white); }
.naxit-home-page .naxit-services-classic .service-section-heading-card h2 { font-size: clamp(32px, 3vw, 52px); line-height: 1.15; }
.naxit-home-page .naxit-services-classic .service-section-heading-card .icon-wrapper { filter: invert(1); }
.naxit-home-page .naxit-services-classic .service-card .service-list-wrapper { text-transform: none; }
.naxit-home-page .naxit-services-classic .service-card .primary-button { background: linear-gradient(110deg, var(--naxit-color-ink), var(--naxit-primary) 50%, var(--naxit-color-ink)); background-size: 220% 100%; }
.naxit-home-page .naxit-services-classic .service-card .primary-button:hover { background-position: 100% 50%; }
.naxit-home-page .naxit-products-teaser { background-color: var(--naxit-color-paper); }
.naxit-home-page .naxit-products-teaser h2 strong { color: var(--naxit-color-ink); }
.naxit-home-page .naxit-products-teaser .section-heading-tag .icon-wrapper { filter: invert(1); }
.naxit-home-page .tool-use-section { overflow: hidden; }
.naxit-home-page :is(.naxit-reference-card,.naxit-founder-card,.tool-use-card):hover { transform: none; }
.naxit-home-page .references-section { background: var(--naxit-canvas); }
.naxit-home-page .reference-paths > a:hover { transform: none; }
.naxit-home-page .reference-path:hover { transform: none; }
.naxit-reference-page .reference-path-main { grid-template-columns: 96px minmax(0,1fr) 24px; }
.naxit-reference-page .reference-path-main > img { width: 96px; height: 72px; object-fit: cover; border-radius: 8px; }
.naxit-reference-page .reference-path-symbol { display: grid; place-items: center; width: 96px; height: 72px; }
.naxit-reference-page .reference-path-symbol img { width: 48px; height: 48px; object-fit: contain; }
.naxit-reference-page .reference-path-main > span:not(.reference-path-arrow,.reference-path-symbol) { display: grid; min-width: 0; gap: 6px; }
.naxit-reference-page .reference-path-example { display: block; padding: 0 18px 16px; color: var(--naxit-secondary); font-size: 14px; line-height: 1.5; }
.naxit-reference-page .reference-path-arrow { display: grid; place-items: center; width: 24px; height: 24px; color: var(--naxit-color-white); }
.naxit-home-page .reference-path-arrow svg { display: block; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; }

/* Restore detail-page motion and keep content above its ambient background. */
.naxit-detail-page .nav-banner-wrapper { min-height: 0; }
.naxit-detail-page .banner-section { min-height: 340px; padding: clamp(56px, 7vw, 104px) 0; }
.naxit-detail-page .banner-section h1 { font-size: clamp(48px, 7vw, 96px); overflow-wrap: anywhere; }
.naxit-detail-page .banner-section .heading-wrapper { width: min(1280px, calc(100% - 80px)); }
.naxit-detail-page .heading-wrapper h2 { line-height: 1.18; }
.naxit-detail-page .heading-wrapper h2 strong { color: var(--naxit-color-white); }
.naxit-detail-page .heading-wrapper p { color: var(--naxit-color-line); }
.naxit-detail-page .work-progress-section .naxit-workflow-pin { scroll-margin-top: calc(var(--naxit-header-height) + 24px); }
.naxit-detail-page .work-progress-section { overflow-x: clip; }
.naxit-detail-page .naxit-workflow-track--pinned > .naxit-workflow-pin { top: calc(var(--naxit-header-height) + 24px); }
.workflow-heading { overflow-wrap: anywhere; hyphens: auto; }
.naxit-detail-page .work-progress-text-wrapper { color: var(--naxit-color-line); }
.naxit-detail-page .why-us-round-fill { display: none !important; }
.naxit-detail-page .why-us-block { min-height: 0; margin: 0; padding: 24px 0; border-bottom: 1px solid rgba(217,226,231,.2); }
.naxit-detail-page .why-us-detail p { color: var(--naxit-color-line); }
.naxit-detail-page .workflwo-card, .naxit-detail-page .core-value-card { transform: none !important; transition: background-color .35s ease, border-color .35s ease; }
.naxit-detail-page .workflwo-card:hover { background-color: var(--naxit-color-ink); border-color: var(--naxit-primary); }
.naxit-detail-page .workflwo-card .icon-wrapper { overflow: visible; }
.naxit-detail-page .workflwo-card .icon-wrapper img { transition: transform .3s var(--naxit-ease); }
.naxit-detail-page .workflwo-card:hover .icon-wrapper img { transform: rotate(-8deg); }
.project-detail-page .naxit-case-content { width: 100%; max-width: 1280px; margin-inline: auto; background: rgba(28,31,35,.65); }
.project-detail-page .naxit-case-content-section > .container { width: calc(100% - 80px); }
.project-detail-page .naxit-case-content-kicker { color: var(--naxit-secondary); }
.naxit-detail-page .cta-section { position: relative; z-index: 1; }
.naxit-detail-page .cta-block { background-color: rgba(28,31,35,.6); }

/* Full light sections use the Word template's neutral text and Milligram weights. */
.naxit-visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.naxit-home-page .naxit-about-section,.naxit-home-page .naxit-products-teaser,.naxit-home-page .tool-use-section { background: var(--naxit-color-white); color: var(--naxit-color-ink); }
.naxit-home-page .naxit-about-section .section-heading-wrapper { padding: 0; margin-bottom: 0; background: transparent; }
.naxit-home-page .naxit-about-section :is(.section-heading-tag,h2,h3,p,ul,li),.naxit-home-page .tool-use-section :is(.section-heading-tag,h2,h3,p) { color: var(--naxit-color-ink); }
.naxit-home-page :is(.naxit-about-section,.naxit-products-teaser,.tool-use-section) h2 strong { color: var(--naxit-primary); }
.naxit-home-page .naxit-about-title { font-weight: 400; }
.naxit-home-page .naxit-about-grid { border-color: var(--naxit-color-line); }
.naxit-home-page .naxit-about-card { display: block; padding: clamp(24px,3vw,40px) 0; background: transparent; color: var(--naxit-color-ink); border-color: var(--naxit-color-line); }
.naxit-home-page .tool-use-card { background: transparent; color: var(--naxit-color-ink); border-color: var(--naxit-color-line); }
.naxit-home-page :is(.naxit-about-section,.tool-use-section) .icon-wrapper img,.naxit-home-page .tool-use-section .tool-use-ionc img { filter: brightness(0); }
.naxit-home-page .tool-use-section > .bg-blur-block { display: none; }
.naxit-home-page .products-teaser-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; border-top: 0; }
.naxit-home-page .products-teaser-item { min-height: 180px; padding: 28px; border: 1px solid var(--naxit-color-line); align-content: start; background: var(--naxit-color-white); }
.naxit-home-page .products-teaser-arrow { position: static; grid-area: arrow; align-self: start; }
.naxit-home-page .naxit-services-classic .service-card:is(:hover,:focus-within) { color: var(--naxit-color-ink); }
.naxit-home-page .naxit-services-classic .service-card:is(:hover,:focus-within) :is(h3,li,.service-list-wrapper) { color: var(--naxit-color-ink) !important; }
.naxit-home-page:not(.naxit-reference-page) .reference-path { background: var(--naxit-color-ink); border-color: rgba(217,226,231,.2); color: var(--naxit-color-white); }
.naxit-home-page:not(.naxit-reference-page) .reference-path :is(strong,small,.reference-path-main,.reference-path-arrow) { color: var(--naxit-color-white); }
.naxit-home-page h2 strong { color: var(--naxit-secondary); font-weight: 700; }
.naxit-home-page :is(.naxit-about-section,.naxit-products-teaser,.tool-use-section) h2 strong { color: var(--naxit-primary); }
.naxit-reference-page .reference-path { background: var(--naxit-color-white); color: var(--naxit-color-ink); border-color: var(--naxit-color-line); }
.naxit-reference-page .reference-path :is(strong,p,small,.reference-path-main,.reference-path-arrow) { color: var(--naxit-color-ink); }
.naxit-reference-page .reference-path-example { color: var(--naxit-primary); }

/* Product identities retain their existing light canvas. */
body.products-page { background: var(--naxit-color-paper); color: var(--naxit-color-ink); }
.products-page .product-detail-hero h1 { font-weight: 400; overflow-wrap: anywhere; hyphens: auto; }
.product-detail-page--logistics .product-detail-visual > img[src$="workflow.svg"] { filter: invert(1); }
.products-page :is(.product-hero-copy p,.product-detail-lead,.product-section-lead) { font-weight: 400; }
.products-page .product-final-demo { background: var(--naxit-color-ink); color: var(--naxit-color-white); }
.products-page .product-final-demo h2 { overflow-wrap: anywhere; hyphens: auto; color: var(--naxit-color-white); }
.products-page .product-final-demo p { color: var(--naxit-color-line); }
.products-page .product-grid-card:hover { transform: none; }
.products-page .product-carousel-controls button { min-width: 44px; min-height: 44px; }
.products-page .product-carousel-viewport:focus-visible { outline-offset: -3px; }

/* Footer retains the earlier logo scale and animation, with a continuous dark canvas. */
body .footer-hero, body .footer-section { background-color: var(--naxit-canvas); color: var(--naxit-color-white); }
body .footer-hero { position: relative; z-index: 1; isolation: isolate; overflow: hidden; }
body .footer-hero-image { display: none; }
body .footer-hero .footer-hero-logo { position: relative; z-index: 2; }
body .footer-section { position: relative; z-index: 1; background-image: none; }
body .footer-bottom-new { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; grid-template-areas: none; gap: 40px; align-items: start; }
body .footer-bottom-new .footer-col { grid-area: auto; min-width: 0; }
body .footer-bottom-new .footer-social { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; align-items: flex-start; padding-top: 0; }
body .footer-bottom-new .footer-social-row { justify-content: flex-start; }
body .footer-bottom-new .footer-links-2col { grid-template-columns: 1fr; gap: 12px; }
body .footer-menu-link { display: inline-flex; align-items: center; min-height: 44px; padding-block: 8px; line-height: 1.4; color: var(--naxit-color-line); text-transform: none; }
body .footer-menu-link:hover { color: var(--naxit-secondary); }
body .footer-title { color: var(--naxit-color-white); font-weight: 500; text-transform: none; }
body .footer-social-btn { min-width: 44px; min-height: 44px; }
body .footer-bottom-bar { gap: 24px; align-items: flex-start; }
body .footer-legal { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: center; }
body .footer-legal-link { display: inline-flex; min-height: 44px; align-items: center; color: var(--naxit-color-line); }
body .footer-copy { color: var(--naxit-color-line); }
body .back-to-top { width: 48px; height: 48px; right: 24px; bottom: 96px; inset-inline-start: auto; border: 1px solid rgba(217,226,231,.45); border-radius: 50%; background: var(--naxit-color-ink); color: var(--naxit-color-white); z-index: 95; }
body .back-to-top:not([hidden]) { display: flex; opacity: 1 !important; visibility: visible; transform: none !important; }
body .back-to-top:hover { background: var(--naxit-primary); }
body .back-to-top img { width: 20px; height: 20px; }
body .naxit-whatsapp-float { z-index: 95; }

/* Keep the existing contact and legal content readable in their original components. */
.contact-page .contact-grid { grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); gap: clamp(32px, 5vw, 72px); }
.contact-page .contact-grid > .contact-block { display: contents; }
.contact-page .input-field { font-family: var(--naxit-font); font-size: 16px; }
.contact-page .privacy-label { min-height: 44px; width: 100%; max-width: 100%; margin: 0; padding-block: 8px; align-items: center; justify-content: flex-start; gap: 12px; }
.contact-page .privacy-label input { min-width: 18px; height: 18px; margin: 0; flex: 0 0 18px; }
.naxit-policy-page .policy-text-block { min-width: 0; overflow-wrap: anywhere; }
.naxit-policy-page .policy-page-section { overflow-wrap: anywhere; }
.naxit-policy-page .nav-banner-wrapper { min-height: 0; height: auto; }
.naxit-policy-page .banner-section { min-height: 0; height: auto; padding: 64px 0 48px; }
.naxit-policy-page .banner-section h1 { font-size: clamp(40px,6vw,72px); overflow-wrap: anywhere; }
.naxit-policy-page .section-heading-tag h3 { margin: 0; font-size: 14px; font-weight: 500; }
.naxit-policy-page .policy-page-section { padding: 40px 0 88px; }
.naxit-policy-page .policy-text-block :is(p,li) { color: var(--naxit-color-line); }
.naxit-policy-page .policy-text-block .policy-heading { color: var(--naxit-color-white); }
.naxit-policy-page .policy-contact-us-link { color: var(--naxit-secondary); }
.naxit-policy-page .workflwo-card { background: var(--naxit-color-ink); border-color: rgba(217,226,231,.2); }
.naxit-policy-page .workflow-heading { color: var(--naxit-color-white); }
.naxit-policy-page .workflwo-card .nav-button-block { display: block; }
.naxit-contact-legacy-page :is(.contact-block,.contact-form-block,.contact-form,.input-wrapper,.input-block) { min-width: 0; width: 100%; max-width: 100%; }
.naxit-contact-legacy-page .contact-grid { overflow-x: clip; }
.naxit-contact-legacy-page .contact-link { background: var(--naxit-color-ink); color: var(--naxit-color-white); border: 1px solid rgba(217,226,231,.2); }
.naxit-contact-legacy-page .contact-link-wrapper, .naxit-contact-legacy-page .contact-address-heading { color: var(--naxit-color-white); }
.naxit-contact-legacy-page .contact-link-icon-wrapper { border-color: rgba(217,226,231,.3); }
.naxit-contact-legacy-page .contact-link-icon img { filter: invert(1); }
.naxit-contact-legacy-page :is(.embed-consent-title,.embed-consent-text,label,.privacy-label) { color: var(--naxit-color-line); }
.naxit-contact-legacy-page .input-field { color: var(--naxit-color-white); background: var(--naxit-color-ink); border: 1px solid rgba(217,226,231,.3); }
.naxit-contact-legacy-page .input-field::placeholder { color: var(--naxit-color-line); opacity: .8; }

/* Lift the existing dark world and soften the product world's white surfaces. */
body:not(.products-page) {
  background-color: var(--naxit-page-canvas);
  background-image: radial-gradient(ellipse 1100px 800px at 12% 180px,rgba(49,121,141,.16),transparent 72%),radial-gradient(ellipse 1000px 700px at 100% 46%,rgba(134,181,194,.08),transparent 72%);
}

.naxit-home-page .references-section { background: transparent; }
body.products-page {
  --product-canvas: var(--naxit-product-canvas);
  --product-line: var(--naxit-color-line);
  background: var(--naxit-product-canvas);
}
.products-page .product-main {
  background: radial-gradient(ellipse 1100px 1000px at 0% 0%,rgba(134,181,194,.08),transparent 74%),radial-gradient(ellipse 1200px 1200px at 100% 45%,rgba(134,181,194,.06),transparent 75%),var(--naxit-product-canvas);
  background-repeat: no-repeat;
}
.products-page :is(.product-hero,.product-detail-hero,.product-overview,.product-detail-section,.product-value-section,.product-use-cases,.product-capability-section,.product-measurement-section,.product-proof,.product-problem-section,.product-contact) { background: transparent; }
.products-page :is(.product-hero,.product-detail-hero) { border-bottom: 0; }
.products-page .product-spectrum { display: none; }
.products-page :is(.product-problem-box,.product-grid-content,.product-use-case-list > article) { background: var(--naxit-color-white); }
.products-page :is(h1,h2) strong { color: var(--naxit-primary); font-weight: 700; }

/* Service and case templates share a light canvas; their existing motion stays in place. */
body.naxit-detail-page { background: var(--naxit-color-paper); color: var(--naxit-color-ink); }
.naxit-detail-page .naxit-ambient-background { opacity: .08; }
body.naxit-detail-page section:not(.naxit-booking-section,.contact-section,.footer-hero,.footer-section) { background: transparent; color: var(--naxit-color-ink); }
body.naxit-detail-page section:not(.naxit-booking-section,.contact-section,.footer-hero,.footer-section) :is(h1,h2,h3,h4,p,li,.section-heading-tag,.our-story-year,.our-story-text,.work-progress-tab-link) { color: var(--naxit-color-ink); }
body.naxit-detail-page section:not(.naxit-booking-section,.contact-section,.footer-hero,.footer-section) h2 strong { color: var(--naxit-primary); font-weight: 700; }
body.naxit-detail-page section:not(.naxit-booking-section,.contact-section,.footer-hero,.footer-section) .icon-wrapper img { filter: brightness(0); }
.naxit-detail-page .naxit-subpage-lead,.naxit-detail-page .naxit-hero-breadcrumb,.naxit-detail-page .naxit-hero-breadcrumb a { color: var(--naxit-color-text); }
.naxit-detail-page :is(.work-progress-grid,.workflwo-card,.core-value-card,.our-story-card,.naxit-case-content) { background: var(--naxit-color-white); color: var(--naxit-color-ink); border-color: var(--naxit-color-line); }
.naxit-detail-page .workflwo-card:hover { background: var(--naxit-color-white); border-color: var(--naxit-primary); }
.naxit-detail-page .naxit-workflow-pin::before { opacity: .15; }
.naxit-detail-page .work-progress-tab-link.w--current { border-color: var(--naxit-primary); }
.naxit-detail-page .work-progress-fill-line-block { background: var(--naxit-color-line); }
.naxit-detail-page :is(.work-progress-fill-line,.work-progress-line-dot,.work-progress-line-dot-gorw) { background: var(--naxit-primary); }
.naxit-detail-page .naxit-hero-breadcrumb span { color: var(--naxit-color-text); }
.naxit-detail-page .why-us-block,.naxit-detail-page .faq { border-color: var(--naxit-color-line); }
body.naxit-detail-page .faq-qus { color: var(--naxit-color-ink) !important; }
body.naxit-detail-page .faq-qus > div { color: inherit !important; }
.naxit-detail-page .client-section img { filter: brightness(0); }
.naxit-detail-page .our-story-curve path { stroke: var(--naxit-primary); }
.naxit-detail-page .our-story-card-dot { background: var(--naxit-primary); border-color: var(--naxit-primary); }
.naxit-detail-page :is(.faq-horizontal-line,.faq-vertical-line) { background: var(--naxit-color-ink); }
.project-detail-page .naxit-case-content-kicker { color: var(--naxit-primary); }

/* The existing product use-case grid gains readable insets and calmer type. */
.products-page .product-use-case-list { gap: 24px; }
.products-page .product-use-case-list > article { padding: clamp(24px,3vw,32px); border: 1px solid var(--naxit-color-line); }
.products-page .product-use-case-list h3 { font-size: clamp(22px,2vw,28px); line-height: 1.3; font-weight: 500; }
.products-page .product-use-case-points { font-size: 17px; line-height: 1.6; }
.products-page .product-faq-section { padding: clamp(64px,7vw,96px) 0 220px; }
.products-page .product-faq-list { margin-top: 40px; border-top: 1px solid var(--naxit-color-line); }
.products-page .product-faq-list .faq { margin: 0; border: 0; border-bottom: 1px solid var(--naxit-color-line); border-radius: 0; background: transparent; }
.products-page .product-faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 64px; padding: 24px 0; color: var(--naxit-color-ink); cursor: pointer; list-style: none; font-size: clamp(18px,1.6vw,22px); font-weight: 500; line-height: 1.4; }
.products-page .product-faq-list summary::-webkit-details-marker { display: none; }
.products-page .product-faq-list .faq-icon-wrapper { position: relative; flex: 0 0 20px; width: 20px; height: 20px; }
.products-page .product-faq-list :is(.faq-horizontal-line,.faq-vertical-line) { position: absolute; display: block; left: 3px; top: 9px; width: 14px; height: 2px; background: var(--naxit-color-ink); }
.products-page .product-faq-list .faq-vertical-line { transform: rotate(90deg); }
.products-page .product-faq-list details[open] .faq-vertical-line { transform: rotate(0); }
.products-page .product-faq-list .faq-ans-block { padding: 0 44px 24px 0; }
.products-page .product-faq-list .faq-ans { max-width: 72ch; margin: 0; color: var(--naxit-color-text); font-size: 18px; line-height: 1.6; }

/* Existing hero components gain context from their own supplied page copy. */
.naxit-detail-page .banner-section { min-height: 0; padding: clamp(40px,5vw,72px) 0 40px; }
.naxit-detail-page .banner-section .heading-wrapper { gap: 20px; align-items: flex-start; text-align: left; }
.naxit-detail-page .banner-section h1 { margin: 0; }
.naxit-detail-page .naxit-subpage-lead { max-width: 62ch; margin: 0; color: var(--naxit-color-text); font-size: clamp(18px,1.65vw,22px); line-height: 1.6; }
.naxit-subpage-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 4px; }

/* An open booking row replaces the rejected inset CTA cards. */
.naxit-booking-section { position: relative; padding: clamp(32px,4vw,64px) 0; color: var(--naxit-color-ink); background: transparent; }
.naxit-booking-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 32px 64px; width: min(1280px,calc(100% - 80px)); margin-inline: auto; padding: clamp(32px,4vw,56px) 0; border: 0; border-top: 1px solid var(--naxit-color-line); border-radius: 0; background: transparent; box-shadow: none; text-align: left; }
.products-page .naxit-booking-row { width: min(1180px,calc(100% - 48px)); }
.naxit-booking-copy { min-width: 0; }
body .naxit-booking-copy h2 { margin: 0; color: var(--naxit-color-ink); font-size: clamp(30px,3.5vw,48px); font-weight: 400; line-height: 1.15; text-align: left; }
body .naxit-booking-copy h2 strong { color: var(--naxit-primary); }
body .naxit-booking-copy p { max-width: 70ch; margin: 20px 0 0; color: var(--naxit-color-text); font-size: 18px; line-height: 1.65; }
.naxit-booking-row > .primary-button { justify-self: start; width: fit-content; }
.products-page .product-main > section:last-child { background-image: linear-gradient(180deg,transparent calc(100% - 160px),var(--naxit-footer-top)); }



body .footer-hero { background: linear-gradient(180deg,var(--naxit-footer-top),var(--naxit-footer-base)); }
body .footer-section { background: var(--naxit-footer-base); }
body .footer-hero .bg-blur-block-footer { z-index: 0; -webkit-mask-image: linear-gradient(180deg,transparent,#000 30%,transparent 92%); mask-image: linear-gradient(180deg,transparent,#000 30%,transparent 92%); }
.naxit-home-page .naxit-team-section,.naxit-reference-page .references-section,.contact-page .contact-section,.naxit-policy-page .policy-page-section,.naxit-policy-page > .workflow-section,.naxit-contact-legacy-page > section[class=""] { background: linear-gradient(180deg,transparent calc(100% - 160px),var(--naxit-footer-top)); }

/* White content carries blue accents; the approved hero, cases and footer retain their dark world. */
.naxit-home-page :is(.naxit-about-section,.naxit-products-teaser,.tool-use-section) { background: var(--naxit-surface-wash); }
.naxit-home-page .naxit-about-section > .bg-blur-block { display: none; }
.naxit-home-page .naxit-team-section { background: linear-gradient(180deg,transparent calc(100% - 160px),var(--naxit-footer-top)),var(--naxit-surface-wash); color: var(--naxit-color-ink); }
.naxit-home-page .naxit-team-section .section-heading-wrapper :is(h2,p,.section-heading-tag) { color: var(--naxit-color-ink); }
.naxit-home-page .naxit-team-section h2 strong { color: var(--naxit-primary); }
.naxit-home-page .naxit-team-section .section-heading-tag img { filter: brightness(0); }
body.naxit-detail-page,body.naxit-policy-page,body.naxit-reference-page { background: var(--naxit-page-wash); color: var(--naxit-color-ink); }
.products-page .product-main { background: var(--naxit-page-wash); }
.naxit-detail-page .naxit-ambient-background { opacity: .04; }
.naxit-detail-page .heading-wrapper,.naxit-policy-page .heading-wrapper { align-items: flex-start; text-align: left; }
.naxit-detail-page .heading-wrapper > :is(h2,p),.products-page :is(.product-section-heading,.product-overview-head,.product-hero-copy,.product-detail-copy,.product-faq-section) { text-align: left; }
.naxit-reference-page .references-section { background: linear-gradient(180deg,transparent calc(100% - 160px),var(--naxit-footer-top)); color: var(--naxit-color-ink); }
.naxit-reference-page .references-section :is(h2,.section-heading-tag,.reference-lead,.reference-intro-note),.naxit-reference-page .banner-section h1 { color: var(--naxit-color-ink); }
.naxit-reference-page .references-section h2 strong { color: var(--naxit-primary); }
.naxit-reference-page :is(.banner-section,.references-section) .icon-wrapper img { filter: brightness(0); }
.naxit-policy-page :is(.banner-section,.policy-page-section) { color: var(--naxit-color-ink); }
.naxit-policy-page .policy-text-block :is(p,li),.naxit-policy-page .policy-text-block .policy-heading { color: var(--naxit-color-ink) !important; }
.naxit-policy-page .banner-section :is(h1,h3),.naxit-policy-page .workflow-heading { color: var(--naxit-color-ink); }
.naxit-policy-page .policy-contact-us-link { color: var(--naxit-primary); }
.naxit-policy-page .policy-page-section { padding-bottom: 200px; }
.naxit-policy-page .workflwo-card { background: var(--naxit-color-white); border-color: var(--naxit-color-line); justify-content: flex-start; }
.naxit-policy-page .workflwo-card .workflow-heading { margin-top: 0; }
.naxit-policy-page .banner-section .icon-wrapper img { filter: brightness(0); }

/* The service cover stays still while its blue light breathes inside the white hover state. */
.naxit-home-page .naxit-services-classic .service-card { position: relative; isolation: isolate; overflow: hidden; transition: border-color .6s ease !important; }
.naxit-home-page .naxit-services-classic .service-card::after { content: ""; position: absolute; z-index: 0; inset: 25% -25% -35% 0; pointer-events: none; background: radial-gradient(ellipse,rgba(134,181,194,.35),rgba(49,121,141,.12) 40%,transparent 70%); opacity: 0; transition: opacity .35s ease; }
.naxit-home-page .naxit-services-classic .service-card > * { position: relative; z-index: 1; }
.naxit-home-page .naxit-services-classic .service-card :is(h3,li,.service-list-wrapper) { transition: none; }
.naxit-home-page .naxit-services-classic .service-card:is(:hover,:focus-within) { background-color: var(--naxit-color-white) !important; border-color: var(--naxit-color-white); }
.naxit-home-page .naxit-services-classic .service-card:is(:hover,:focus-within)::after { opacity: .65; animation: naxit-service-pulse 2.8s ease-in-out infinite alternate; }
@keyframes naxit-service-pulse { from { opacity: .4; transform: scale(.94); } to { opacity: .85; transform: scale(1.08); } }

/* Product text stays flush left; only the local color wash and arrow respond. */
.naxit-home-page .naxit-products-teaser { padding-inline: 0; }
.naxit-home-page :is(.products-teaser-head,.products-teaser-cta,.products-teaser-item) { text-align: left; }
.naxit-home-page .products-teaser-head { display: flex; flex-direction: column; align-items: flex-start; }
.naxit-home-page .products-teaser-head .section-heading-tag { justify-content: flex-start; }
.naxit-home-page .products-teaser-item { isolation: isolate; justify-items: start; background: var(--naxit-color-white); transition: border-color .28s ease; }
.naxit-home-page .products-teaser-item::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: 0; background: radial-gradient(ellipse at 100% 100%,rgba(134,181,194,.3),transparent 72%),var(--naxit-color-white); transition: opacity .35s var(--naxit-ease); }
.naxit-home-page .products-teaser-item:is(:hover,:focus-visible) { background: var(--naxit-color-white); border-color: var(--naxit-primary); }
.naxit-home-page .products-teaser-item:is(:hover,:focus-visible)::before { opacity: 1; }
.naxit-home-page .products-teaser-arrow { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--naxit-color-line); border-radius: 50%; justify-self: end; transition: transform .28s var(--naxit-ease),background-color .28s ease; }
.naxit-home-page .products-teaser-arrow img { width: 18px; height: 18px; filter: brightness(0); }
.naxit-home-page .products-teaser-item:is(:hover,:focus-visible) .products-teaser-arrow { background: rgba(134,181,194,.2); transform: translateX(4px); }
.naxit-home-page .products-teaser-cta { align-self: start; }
.naxit-home-page .products-teaser-cta .primary-button { width: fit-content; }

/* Competence icons keep their dark fill through every hover phase. */
.naxit-home-page .tool-use-card { background: transparent; transition: background-color .28s ease; }
.naxit-home-page .tool-use-card:is(:hover,:focus-within) { background: rgba(134,181,194,.16); }
.naxit-home-page .tool-use-card .tool-use-ionc img,.naxit-home-page .tool-use-card:is(:hover,:focus-within) .tool-use-ionc img { filter: brightness(0) !important; }
.naxit-home-page .tool-use-section:is(:hover,:focus-within) .tool-use-marquee { animation-play-state: paused; }

/* Contact uses the same light canvas and larger, readable form controls. */
.contact-page .banner-section .heading-wrapper { width: min(1440px,calc(100% - 80px)); padding-inline: 0; }
.contact-page .banner-section h1 { text-transform: none; }
.contact-page .section-heading-tag h3 { margin: 0; font-size: 16px; font-weight: 500; }
.contact-page .contact-section { padding: 32px 0 200px; }
.contact-page .contact-section > .small-container { width: min(1440px,calc(100% - 80px)); max-width: 1440px; padding-inline: 0; }
.contact-page .contact-grid { gap: clamp(32px,3vw,48px); align-items: start; }
.contact-page :is(.contact-form-block,.contact-details) { min-height: 0; padding: clamp(24px,3vw,48px); border: 1px solid var(--naxit-color-line); background: var(--naxit-color-white); color: var(--naxit-color-ink); }
.contact-page :is(.contact-form-heading,.contact-details-heading) { margin: 0 0 36px; color: var(--naxit-color-ink); font-size: clamp(28px,2.6vw,38px); font-weight: 400; line-height: 1.2; text-align: left; }
.contact-page :is(.contact-form-heading,.contact-details-heading) strong { color: var(--naxit-primary); }
.contact-page .contact-form { gap: 28px; }
.contact-page .contact-form .input-wrapper > label:not(.privacy-label),.contact-page .privacy-label { color: var(--naxit-color-ink); font-size: 16px; font-weight: 400; }
.contact-page .input-field { min-height: 58px; padding: 16px 18px; border-color: var(--naxit-color-line); background: var(--naxit-color-paper); color: var(--naxit-color-ink); font-size: 18px; line-height: 1.5; }
.contact-page .input-field::placeholder { color: var(--naxit-color-text); opacity: 1; }
.contact-page textarea.contact-message { min-height: 220px; }
.contact-page .privacy-label a,.contact-page .contact-form-status a { color: var(--naxit-primary); }
.contact-page .privacy-label input { accent-color: var(--naxit-primary); }
.contact-page .contact-details .contact-link { min-height: 112px; padding-block: 24px; border-color: var(--naxit-color-line); color: var(--naxit-color-text); font-size: 18px; }
.contact-page .contact-details .contact-link:hover { color: var(--naxit-primary); }
.contact-page .contact-details .contact-address-heading { color: var(--naxit-color-ink); font-size: 24px; font-weight: 500; }
.contact-page .contact-details .contact-link-icon-wrapper { width: 48px; height: 48px; background: rgba(134,181,194,.15); }
.contact-page .contact-link-icon img { filter: brightness(0); }
.contact-page :is(.contact-form-status,.success-message,.error-message) { color: var(--naxit-color-ink); font-size: 18px; line-height: 1.6; }
.contact-page .success-message { margin-top: 8px; padding: 32px 0; border: 0; border-top: 1px solid var(--naxit-color-line); border-radius: 0; background: transparent; text-align: left; }
.contact-page .contact-success-heading { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.contact-page .contact-success-heading img { width: 36px; height: 36px; flex: 0 0 36px; filter: brightness(0); }
.contact-page .contact-success-heading h3 { margin: 0; color: var(--naxit-color-ink); font-size: clamp(26px,2.4vw,34px); font-weight: 400; line-height: 1.2; letter-spacing: -.02em; }
.contact-page .contact-success-heading strong { color: var(--naxit-primary); font-weight: 700; }
.contact-page .success-message p { max-width: 56ch; margin: 0; color: var(--naxit-color-text); font-size: 18px; line-height: 1.6; }
.contact-page .success-message:focus { outline: none; }
.naxit-contact-legacy-page :is(.contact-form-block,.contact-right-block,.contact-map,.contact-link) { background: var(--naxit-color-white); border-color: var(--naxit-color-line); color: var(--naxit-color-ink); }
.naxit-contact-legacy-page :is(.contact-link-wrapper,.contact-address-heading,.embed-consent-title,.embed-consent-text,label,.privacy-label) { color: var(--naxit-color-ink); }
.naxit-contact-legacy-page .contact-link-icon img { filter: brightness(0); }
.naxit-contact-legacy-page .input-field { background: var(--naxit-color-paper); color: var(--naxit-color-ink); border-color: var(--naxit-color-line); min-height: 56px; font-size: 18px; }
.naxit-contact-legacy-page .input-field::placeholder { color: var(--naxit-color-text); opacity: 1; }
.naxit-contact-legacy-page .embed-consent-placeholder { background: rgba(255,255,255,.97); color: var(--naxit-color-ink); }
.naxit-contact-legacy-page .naxit-map-address { z-index: 4; }
.naxit-contact-legacy-page .naxit-map-address .contact-link.address { background: var(--naxit-color-white); border-color: var(--naxit-color-line); }
.naxit-contact-legacy-page .naxit-map-address :is(.contact-link-wrapper,.contact-address-heading) { color: var(--naxit-color-ink) !important; }

@media (max-width: 767px) {
  .naxit-booking-row { grid-template-columns: minmax(0,1fr); width: calc(100% - 40px); gap: 28px; }
  .products-page .naxit-booking-row { width: calc(100% - 32px); }
    .contact-page .banner-section .heading-wrapper,.contact-page .contact-section > .small-container { width: calc(100% - 40px); }
  .contact-page :is(.contact-form-block,.contact-details) { padding: 28px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .naxit-home-page .naxit-services-classic .service-card::after { animation: none !important; transform: none; transition: none; }
  .naxit-home-page :is(.products-teaser-item,.products-teaser-arrow,.tool-use-card),.naxit-home-page .products-teaser-item::before { transition: none; }
  .naxit-home-page .tool-use-marquee { animation: none !important; }
}

/* Section headings inherit the approved product-page scale. */
.naxit-home-page :is(.section-heading-wrapper,.products-teaser-head,.service-section-heading-card) h2,
.naxit-detail-page :is(.section-heading-wrapper,.faq-section .heading-wrapper) h2,
.products-page :is(.product-overview-head,.product-section-heading,.product-value-layout,.product-capability-layout) h2,
body .naxit-booking-copy h2 { font-size: var(--naxit-section-heading-size); font-weight: 400; line-height: 1.04; letter-spacing: -.03em; text-align: left; text-wrap: balance; }
.naxit-home-page .naxit-services-classic .service-section-heading-card h2 { font-size: var(--naxit-section-heading-size); font-weight: 400; line-height: 1.04; }
.naxit-home-page .naxit-services-classic .service-section-heading-card { padding: clamp(20px,1.6vw,32px); }
.naxit-home-page .naxit-services-classic .service-section-heading-card .heading-wrapper { width: 100%; }
.naxit-home-page .naxit-services-classic .service-section-heading-card h2 strong { color: var(--naxit-primary); }
.naxit-home-page .naxit-about-card h3 { font-size: clamp(24px,2vw,32px); font-weight: 300; line-height: 1.2; }
.naxit-home-page .naxit-about-points { display: flex; flex-wrap: wrap; gap: 10px 36px; }
.naxit-home-page .naxit-about-points li { padding-right: 4px; }
.naxit-home-page .naxit-services-classic .service-card h3 { font-weight: 400; }
.naxit-home-page .naxit-team-section { background: var(--naxit-surface-wash); }
body.naxit-detail-page,body.naxit-policy-page,body.naxit-reference-page,.products-page .product-main { background-size: 100% 1400px; background-repeat: repeat-y; }

/* A visible blue sweep and soft pulse stay inside the white service cover. */
.naxit-home-page .naxit-services-classic .service-card::before { content: ""; position: absolute; z-index: 0; inset: -40%; pointer-events: none; background: linear-gradient(120deg,transparent 25%,rgba(134,181,194,.5) 50%,transparent 75%); opacity: 0; transform: translateX(-100%); }
.naxit-home-page .naxit-services-classic .service-card:is(:hover,:focus-within)::before { animation: naxit-service-cover 1.6s var(--naxit-ease) both; }
.naxit-home-page .naxit-services-classic .service-card::after { background: radial-gradient(ellipse,rgba(134,181,194,.5),rgba(49,121,141,.2) 40%,transparent 70%); }
@keyframes naxit-service-cover { 0% { transform: translateX(-100%); opacity: 0; } 25% { opacity: .9; } 100% { transform: translateX(100%); opacity: 0; } }

/* The requested dark CTA is a full-width section, with the accepted round action. */
body .naxit-booking-section { padding: clamp(72px,7vw,112px) 0; background: radial-gradient(ellipse at 80% 10%,rgba(134,181,194,.3),transparent 65%),linear-gradient(140deg,var(--naxit-canvas),var(--naxit-page-canvas) 65%,var(--naxit-footer-top)); background-color: var(--naxit-canvas); color: var(--naxit-color-white); }
body .naxit-booking-row { padding: 0; border: 0; gap: 40px 64px; }
body .naxit-booking-copy h2 { color: var(--naxit-color-white); }
body .naxit-booking-copy h2 strong { color: var(--naxit-secondary); }
body .naxit-booking-copy p { color: var(--naxit-color-white); }
.naxit-home-page .naxit-booking-section > .container .naxit-booking-row { width: 100%; }
body .product-button:not(.product-button--secondary):not(.product-button--light),body :is(.primary-button,.submit-button) { --naxit-button-base: linear-gradient(110deg,var(--naxit-color-ink),var(--naxit-primary) 38%,#23505e 75%,var(--naxit-primary)); }
body .footer-bottom-new { grid-template-columns: 1.2fr 1fr 1fr; }

/* FAQ controls use the same type hierarchy with a larger readable question. */
body :is(.faq-section,.product-faq-section) summary.faq-qus { min-height: 88px; font-size: clamp(20px,1.9vw,26px); line-height: 1.4; font-weight: 400; }
.products-page .product-faq-list summary { padding-block: 28px; }
body :is(.faq-section,.product-faq-section) .faq-ans { font-size: 20px; line-height: 1.65; }

/* One rail joins the four light value icons; a trace follows their sequence. */
.naxit-detail-page .core-value-grid { grid-template-columns: repeat(4,minmax(0,1fr)); --value-gap: clamp(32px,4vw,60px); gap: var(--value-gap); position: relative; isolation: isolate; }
.naxit-detail-page .core-value-card { position: relative; z-index: 1; min-width: 0; padding: 0; background: transparent; }
.naxit-detail-page .core-value-ionc { z-index: 2; background: var(--naxit-color-white); border-color: var(--naxit-primary); box-shadow: none; }
.naxit-detail-page .core-value-ionc img { visibility: hidden; }
.naxit-detail-page .core-value-ionc::before { content: ""; position: absolute; inset: 12px; background: var(--naxit-primary); -webkit-mask: var(--naxit-value-icon) center/contain no-repeat; mask: var(--naxit-value-icon) center/contain no-repeat; }
.naxit-detail-page .core-value-detail { position: relative; z-index: 1; min-width: 0; }
.naxit-detail-page .core-value-detail h3 { font-size: clamp(22px,2vw,28px); font-weight: 400; line-height: 1.25; overflow-wrap: anywhere; hyphens: auto; }
.naxit-detail-page .core-value-detail p { font-size: 16px; line-height: 1.6; }

.naxit-detail-page .core-value-card:hover { background: transparent; border-color: var(--naxit-color-line); }
.naxit-detail-page .core-value-card:hover .core-value-ionc { transform: none; box-shadow: none; border-color: var(--naxit-primary); }
.naxit-detail-page .core-value-grid::before,.naxit-detail-page .core-value-grid::after { content: ""; position: absolute; z-index: 0; top: 27px; left: 27px; right: auto; width: calc(75% + var(--value-gap) * .75); height: 2px; pointer-events: none; }
.naxit-detail-page .core-value-grid::before { background: rgba(49,121,141,.35); }
.naxit-detail-page .core-value-grid::after { background: linear-gradient(90deg,var(--naxit-primary),var(--naxit-secondary)); transform-origin: left; transform: scaleX(0); }
.naxit-detail-page .core-value-grid.naxit-value-flow-active::after { animation: naxit-value-trace 5.6s var(--naxit-ease) infinite; }
.naxit-detail-page .core-value-card .core-value-ionc::after { content: ""; position: absolute; inset: -7px; border: 1px solid var(--naxit-primary); border-radius: 50%; opacity: 0; pointer-events: none; }
.naxit-detail-page .naxit-value-flow-active .core-value-ionc::after { animation: naxit-value-signal 5.6s ease-out infinite; }
.naxit-detail-page .core-value-card:nth-child(2) .core-value-ionc::after { animation-delay: 1.1s; }
.naxit-detail-page .core-value-card:nth-child(3) .core-value-ionc::after { animation-delay: 2.2s; }
.naxit-detail-page .core-value-card:nth-child(4) .core-value-ionc::after { animation-delay: 3.3s; }
@keyframes naxit-value-trace { 0% { transform: scaleX(0); opacity: 1; } 72% { transform: scaleX(1); opacity: 1; } 92%,100% { transform: scaleX(1); opacity: 0; } }
@keyframes naxit-value-signal { 0%,6%,32%,100% { opacity: 0; transform: scale(.9); } 12% { opacity: .7; transform: scale(1); } 25% { opacity: 0; transform: scale(1.3); } }
@media (max-width: 1199px) {
  .naxit-detail-page .core-value-grid { grid-template-columns: minmax(0,1fr); }
  .naxit-detail-page .core-value-grid::before,.naxit-detail-page .core-value-grid::after { display: none; }
  .naxit-detail-page .core-value-card { display: grid; grid-template-columns: 54px minmax(0,1fr); gap: 24px; }
  .naxit-detail-page .core-value-card:not(:last-child)::after { content: ""; position: absolute; left: 27px; top: 54px; width: 2px; height: calc(100% + var(--value-gap) - 27px); z-index: 0; background: rgba(49,121,141,.35); }
}
@media (max-width: 767px) {
  body :is(.faq-section,.product-faq-section) .faq-ans { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .naxit-home-page .naxit-services-classic .service-card::before,
  .naxit-detail-page .core-value-grid::after,
  .naxit-detail-page .core-value-ionc::after { animation: none !important; }
}

@media (max-width: 1199px) {
  .naxit-home-page .products-teaser-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body .navbar .menu-button { display: block; min-width: 44px; min-height: 44px; padding: 10px; }
  body .navbar .nav-button-block { display: none; }
  body .navbar .nav-menu-wrapper { display: none; }
  body .navbar .nav-menu-wrapper[data-nav-menu-open] { display: block; top: 100%; width: 100%; background: var(--naxit-canvas); max-height: calc(100svh - var(--naxit-header-height)); overflow-y: auto; }
  body .navbar .nav-menu { display: flex; flex-direction: column; gap: 4px; padding: 20px 24px 32px; align-items: stretch; }
  body .navbar .nav-link { justify-content: flex-start; font-size: 16px; min-height: 48px; gap: 16px; }
  body .navbar .res-show { display: block; margin-top: 12px; }
  body .navbar .res-show .primary-button { width: fit-content; }
}
@media (max-width: 991px) {
  .naxit-workflow-tabs .work-progress-tab-link { min-width: 0; min-height: 44px; white-space: normal; }
  .naxit-workflow-tabs .work-progress-tab-link > div { max-width: 100%; overflow-wrap: anywhere; hyphens: auto; }
  .naxit-home-page .naxit-services-classic .service-card, .naxit-home-page .naxit-services-classic .service-section-heading-card { min-height: 0; }
  body .footer-bottom-new { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
  body .footer-bottom-new .footer-social { grid-row: auto; }
  .contact-page .contact-grid { grid-template-columns: 1fr; }
  .naxit-contact-legacy-page .contact-grid { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .naxit-detail-page .banner-section .heading-wrapper { width: calc(100% - 48px); }
  .naxit-detail-page .banner-section { min-height: 0; }
}
@media (max-width: 767px) {
  .naxit-home-page .products-teaser-list { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .naxit-reference-page .reference-path-main { grid-template-columns: 72px minmax(0,1fr) 20px; }
  .naxit-reference-page .reference-path-main > img, .naxit-reference-page .reference-path-symbol { width: 72px; height: 54px; }
  :root { --naxit-header-height: 76px; }
  body .navbar { padding-block: 8px; }
  body .navbar-wrapper { min-height: 60px; }
  body .navbar > .container { width: calc(100% - 32px); }
  body .navbar-brand, body .navbar-brand .logo-icon-wrapper { width: 140px; }
  .naxit-home-page:not(.naxit-reference-page) .banner-section { min-height: calc(100svh - var(--naxit-header-height)); padding: 24px 0 40px; }
  .naxit-home-page:not(.naxit-reference-page) .banner-heading-block { min-height: calc(100svh - var(--naxit-header-height) - 64px); }
  .naxit-hero-copy { width: calc(100% - 40px); grid-template-columns: minmax(0,1fr); gap: 20px; padding-top: 24px; }
  .naxit-hero-copy h1 { font-size: clamp(27px, 6.8vw, 40px); }
  .naxit-hero-copy p { font-size: 16px; }
  .naxit-hero-actions { grid-column: 1; gap: 12px; }
  .naxit-home-page .naxit-about-grid { grid-template-columns: minmax(0,1fr); }
  .naxit-home-page .naxit-about-card { padding: 24px 0; }
  .naxit-detail-page .banner-section h1 { font-size: clamp(40px, 11vw, 64px); }
  .project-detail-page .naxit-case-content-section > .container { width: calc(100% - 40px); }
  body .footer-bottom-bar { flex-direction: column; gap: 16px; }
  body .footer-legal { gap: 0 16px; }
  body .footer-dot { display: none; }
  body .back-to-top { right: 16px; bottom: 84px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  body .primary-button, body .product-button, body .naxit-hero-action, body .submit-button, body .button-arrow img, body .button-hover-block { transition: none !important; }
  body [data-w-id] { opacity: 1 !important; transform: none !important; }
  .naxit-policy-page .policy-text-block, .naxit-contact-legacy-page .naxit-contact-animate { opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important; }
  body .workflwo-card:hover .icon-wrapper img { transform: none; }
}

/* Restore the earlier blue clip reveal on the existing round arrow buttons. */
/* Topic and section symbols use the existing thin-stroke icon family. */
.naxit-home-page .naxit-about-topic { display: flex; align-items: center; gap: 18px; }
.naxit-about-topic > img { flex: 0 0 36px; width: 36px; height: 36px; filter: brightness(0); }
.naxit-section-label { display: flex; align-items: center; justify-content: flex-start; gap: 8px; margin-bottom: 20px; font-size: 14px; line-height: 1.4; font-weight: 400; }
.naxit-section-label .icon-wrapper,.naxit-section-label img { width: 20px; height: 20px; flex: 0 0 20px; }
.product-detail-page .naxit-section-label img { filter: brightness(0); }
.product-detail-page .naxit-booking-section .naxit-section-label img { filter: none; }

/* Keep direct links together and match both desktop card shells to the grid row. */
.contact-page .contact-details { height: auto; align-self: start; justify-content: flex-start; }
.contact-page .contact-details-heading { margin-bottom: 20px; }
.contact-page .contact-details .contact-link-grid { flex: none; justify-content: flex-start; gap: 0; }
.contact-page .contact-details .contact-link { min-height: 96px; padding-block: 20px; }
@media (min-width: 992px) {
  .contact-page :is(.contact-form-block,.contact-details) { align-self: stretch; }
}

/* Two internal columns in Navigation and Products; Services retains its group. */
body .footer-bottom-new { grid-template-columns: 1.2fr .85fr 1fr; }
body .footer-bottom-new .footer-pages .footer-links-2col,
body .footer-products > .footer-links-col { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 24px; }
body .footer-pages .footer-links-col { display: contents; }

/* Product content shares the actual homepage content edge instead of a narrow shell. */
.product-detail-page .product-shell,
.product-detail-page .naxit-booking-row { width: 100%; max-width: 1860px; margin-inline: auto; padding-inline: clamp(24px,4.5vw,72px); box-sizing: border-box; }
.product-detail-page .product-detail-hero h1 { margin-top: 0; }
.product-detail-page .product-section-heading { display: block; }
.product-detail-page .product-section-heading h2 { max-width: 25ch; }
.product-detail-page .product-use-case-list { grid-template-rows: auto 1fr; gap: 0 24px; }
.product-detail-page .product-use-case-list > article { display: grid; grid-template-rows: subgrid; grid-row: span 2; gap: 0; min-width: 0; position: relative; isolation: isolate; overflow: hidden; border-color: var(--naxit-color-line); transition: border-color .55s var(--naxit-ease); }
.product-detail-page .product-use-case-list > article::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(ellipse at 0 0,rgba(134,181,194,.32),transparent 78%); clip-path: inset(0 100% 0 0); transition: clip-path .65s var(--naxit-ease); pointer-events: none; }
.product-detail-page .product-use-case-list > article:is(:hover,:focus-within) { border-color: var(--naxit-primary); }
.product-detail-page .product-use-case-list > article:is(:hover,:focus-within)::before { clip-path: inset(0); }
.product-detail-page .product-use-case-list h3 { margin: 0 0 24px; font-weight: 400; border-bottom: 1px solid var(--naxit-color-line); }
.product-detail-page .product-use-case-number { color: var(--naxit-primary); }
.product-detail-page .product-use-case-points { margin: 0; }

/* The same open CTA is available in dark and light, with no inset card. */
body .naxit-booking-section--light { background: var(--naxit-surface-wash); color: var(--naxit-color-ink); }
body .naxit-booking-section--light .naxit-booking-copy :is(h2,p) { color: var(--naxit-color-ink); }
body .naxit-booking-section--light .naxit-booking-copy h2 strong { color: var(--naxit-primary); }
.product-detail-page .naxit-booking-section--light .naxit-section-label img { filter: brightness(0); }

/* A long eased blend spreads the transition over the final content padding. */
.product-detail-page .product-main > .product-faq-section,
body.naxit-detail-page > .naxit-content-end,
.naxit-home-page .naxit-team-section,
.contact-page .contact-section { --naxit-blend-height: clamp(320px,30vw,520px); position: relative; isolation: isolate; padding-bottom: calc(var(--naxit-blend-height) + 32px); }
.product-detail-page .product-main > .product-faq-section,
body.naxit-detail-page > .naxit-content-end,
.contact-page .contact-section { background: transparent; }
.naxit-home-page .naxit-team-section { background: var(--naxit-surface-wash); }
.product-detail-page .product-faq-section::after,
.naxit-detail-page > .naxit-content-end::after,
.naxit-home-page .naxit-team-section::after,
.contact-page .contact-section::after { content: ""; position: absolute; z-index: -1; pointer-events: none; inset: auto 0 0; height: var(--naxit-blend-height); background: linear-gradient(180deg,rgba(41,79,94,0) 0%,rgba(41,79,94,.012) 10%,rgba(41,79,94,.065) 25%,rgba(41,79,94,.22) 42%,rgba(41,79,94,.46) 60%,rgba(41,79,94,.75) 78%,rgba(41,79,94,.94) 92%,var(--naxit-footer-top) 100%); }

/* Portrait and named biography remain visible as one static team row. */
.naxit-team-list-v2 { display: grid; gap: 28px; width: 100%; max-width: none; margin: 0; }
.naxit-team-row { display: grid; grid-template-columns: minmax(240px,340px) minmax(0,1fr); align-items: stretch; gap: 24px; }
.naxit-team-portrait { position: relative; min-height: 360px; overflow: hidden; border-radius: 14px; background: var(--naxit-canvas); }
.naxit-team-portrait picture { display: block; }
.naxit-team-portrait img { position: absolute; inset: -2% auto auto -5%; display: block; width: 110%; height: 110%; max-width: none; object-fit: cover; object-position: center top; }
.naxit-team-details { display: flex; align-items: center; min-width: 0; padding: clamp(40px,5vw,72px) clamp(28px,4vw,56px); border-radius: 14px; background: var(--naxit-canvas); color: var(--naxit-color-white); }
.naxit-team-bio-heading { margin-bottom: 24px; }
.naxit-team-bio-heading h3 { margin: 0; color: var(--naxit-color-white); font-size: clamp(26px,2.3vw,36px); font-weight: 400; line-height: 1.15; }
.naxit-team-details p { max-width: 65ch; margin: 0 0 28px; color: var(--naxit-color-line); font-size: 18px; line-height: 1.65; }
.naxit-team-bio-heading .naxit-card-kicker { margin: 0; font-size: 13px; font-weight: 400; color: var(--naxit-color-white); }
.naxit-team-role { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; }
.naxit-team-role .icon-wrapper,.naxit-team-role img { flex: 0 0 18px; width: 18px; height: 18px; }
.naxit-home-page #team .naxit-team-role img { filter: brightness(0) invert(1); }
.naxit-team-details .naxit-founder-links { max-width: 620px; }
@media (max-width: 991px) {
  body .footer-bottom-new { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-areas: "pages pages" "utility products" "social social"; gap: 32px 24px; }
  body .footer-bottom-new .footer-pages { grid-area: pages; }
  body .footer-bottom-new .footer-utility { grid-area: utility; }
  body .footer-bottom-new .footer-products { grid-area: products; }
  body .footer-bottom-new .footer-col:is(.footer-utility,.footer-products) { align-self: start; height: auto; margin: 0; padding: 0; border: 0; }
  body .footer-bottom-new .footer-social { grid-area: social; padding: 24px 0 0; border-top: 1px solid rgba(255,255,255,.2); border-bottom: 0; }
  body .footer-bottom-new .footer-title { margin-top: 0; }
  body .footer-bottom-new .footer-pages .footer-links-2col { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  body .footer-bottom-new .footer-products > .footer-links-col { grid-template-columns: minmax(0,1fr); gap: 10px; }
  body .footer-bottom-new .footer-menu-link { white-space: normal; overflow-wrap: anywhere; }
}
@media (max-width: 767px) {
  .naxit-team-row { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .naxit-team-list-v2 { gap: 32px; }
  .naxit-team-details { padding: 28px 24px; }
  .product-detail-page .product-use-case-list { grid-template-rows: none; gap: 20px; }
  .product-detail-page .product-use-case-list > article { display: block; grid-row: auto; }
}

@media (prefers-reduced-motion: reduce) {
  body .primary-button::before,.naxit-home-page .naxit-services-classic .service-card,
  .naxit-home-page .naxit-services-classic .service-card :is(h3,li,.service-list-wrapper),
  .product-detail-page .product-use-case-list > article,
  .product-detail-page .product-use-case-list > article::before,
  .naxit-team-photo img,.naxit-team-toggle { transition: none !important; }
  .naxit-team-details { animation: none; }
}

/* Keep the replacement section-tag glyphs at the same compact label scale. */
.naxit-home-page #competences .section-heading-tag .icon-wrapper,
.naxit-detail-page :is(.core-value-section,.faq-section) .section-heading-tag .icon-wrapper { flex: 0 0 20px; width: 20px; height: 20px; }
.naxit-home-page #competences .section-heading-tag img,
.naxit-detail-page :is(.core-value-section,.faq-section) .section-heading-tag img { width: 20px; height: 20px; object-fit: contain; }

/* The existing blue wash drifts slowly, only while its section is visible. */
.naxit-home-page .naxit-motion-surface { position: relative; isolation: isolate; overflow: clip; background: var(--naxit-color-white); }
.naxit-motion-surface::before { content: ""; position: absolute; z-index: -1; inset: -8% -10%; pointer-events: none; background: radial-gradient(ellipse 70% 42% at 94% 48%,rgba(134,181,194,.44),transparent 78%),radial-gradient(ellipse 58% 40% at 4% 46%,rgba(49,121,141,.23),transparent 78%); animation: naxit-surface-drift 20s ease-in-out infinite alternate; animation-play-state: paused; }
.naxit-motion-active::before { animation-play-state: running; }
.naxit-page-hidden .naxit-motion-surface::before { animation-play-state: paused; }
@keyframes naxit-surface-drift { from { transform: translate(-2%,-2%) scale(1); } to { transform: translate(4%,3%) scale(1.08); } }
.naxit-home-page :is(#about-us,#service,#products) .section-heading-tag .icon-wrapper,
.work-progress-section .section-heading-tag .icon-wrapper,
.naxit-booking-copy .section-heading-tag .icon-wrapper { flex: 0 0 20px; width: 20px; height: 20px; }
.naxit-home-page :is(#about-us,#service,#products) .section-heading-tag img,
.work-progress-section .section-heading-tag img { width: 20px; height: 20px; object-fit: contain; filter: brightness(0); }
.naxit-home-page #service .section-heading-tag .invert { filter: none; }
.naxit-booking-copy .section-heading-tag { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; color: var(--naxit-color-white); font-size: 14px; }
.naxit-booking-copy .section-heading-tag img { filter: none; }
body .naxit-booking-section--light .section-heading-tag { color: var(--naxit-color-ink); }
body .naxit-booking-section--light .section-heading-tag img { filter: brightness(0); }
.naxit-workflow-tabs .work-progress-tab-link { display: flex; align-items: center; gap: 12px; }
.naxit-workflow-icon { width: 24px; height: 24px; flex: 0 0 24px; filter: brightness(0); opacity: .65; }
.naxit-workflow-tabs .w--current .naxit-workflow-icon { opacity: 1; }
.naxit-workflow-tabs .work-progress-text-wrapper h3 { display: flex; align-items: center; gap: 16px; }
.naxit-workflow-panel-icon { width: 36px; height: 36px; flex: 0 0 36px; filter: brightness(0); }
.product-detail-page h2 strong { text-decoration-line: underline; text-decoration-color: transparent; text-decoration-thickness: 2px; text-underline-offset: .12em; transition: text-decoration-color .22s ease; }
@media (hover: hover) { .product-detail-page h2:hover strong { text-decoration-color: var(--naxit-primary); } }
@media (max-width: 991px) { .naxit-workflow-tabs .work-progress-tab-link { flex-direction: column; gap: 8px; } }
@media (max-width: 767px) {
  .naxit-home-page .products-teaser-layout > .reference-phone { justify-self: center; }
  .naxit-home-page .products-teaser-cta { display: flex; justify-content: center; }
  .naxit-team-row { gap: 0; overflow: hidden; border-radius: 14px; background: var(--naxit-canvas); }
  .naxit-team-portrait { min-height: 0; border-radius: 0; }
  .naxit-team-portrait img { position: static; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
  .naxit-team-details { border-radius: 0; padding: 32px 24px; }
  .naxit-home-page .naxit-founder-links .naxit-save-contact { display: flex !important; }
  .naxit-team-details p { margin-bottom: 24px; font-size: 16px; }
  .naxit-team-bio-heading .naxit-card-kicker { margin: 0; font-size: 12px; }
  .naxit-team-list-v2 { max-width: 560px; }
  .product-detail-page .product-detail-hero-grid { grid-template-columns: minmax(0,1fr) auto; gap: 20px 16px; }
  .product-detail-page .product-detail-hero-grid > div:first-child { display: contents; }
  .product-detail-page .product-detail-hero-grid .naxit-section-label { grid-column: 1 / -1; grid-row: 1; margin: 0; }
  .product-detail-page .product-detail-hero h1 { grid-column: 1; grid-row: 2; margin: 0; font-size: clamp(40px,11vw,64px); }
  .product-detail-page .product-detail-hero-grid > .product-detail-visual { grid-column: 2; grid-row: 2; width: clamp(84px,23vw,124px); height: clamp(84px,23vw,124px); min-height: 0; aspect-ratio: 1; border-radius: 14px; padding: 8px; }
  .product-detail-page .product-detail-lead { grid-column: 1 / -1; grid-row: 3; margin: 4px 0 0; }
  .product-detail-page .product-detail-hero-grid .product-actions { grid-column: 1 / -1; grid-row: 4; margin-top: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .naxit-motion-surface::before { animation: none; }
  .product-detail-page h2 strong { transition: none; }
}

.naxit-home-page #products .section-heading-tag .icon-wrapper { filter: none; }
@media (max-width: 767px) { body .footer-bottom-new .footer-title { margin-top: 0; } }
@media (max-width: 479px) { .naxit-workflow-tabs .work-progress-tab-link { padding-inline: 2px; } }

/* Match the homepage fade to one continuous footer canvas. */
.naxit-home-page #team {
  --naxit-blend-height: clamp(240px,24vw,400px);
  --naxit-team-fade-height: clamp(360px,32vw,560px);
  --naxit-team-fade: linear-gradient(180deg,#000 calc(100% - var(--naxit-team-fade-height)),rgba(0,0,0,.9755) calc(100% - var(--naxit-team-fade-height) * .9),rgba(0,0,0,.9045) calc(100% - var(--naxit-team-fade-height) * .8),rgba(0,0,0,.7939) calc(100% - var(--naxit-team-fade-height) * .7),rgba(0,0,0,.6545) calc(100% - var(--naxit-team-fade-height) * .6),rgba(0,0,0,.5) calc(100% - var(--naxit-team-fade-height) * .5),rgba(0,0,0,.3455) calc(100% - var(--naxit-team-fade-height) * .4),rgba(0,0,0,.2061) calc(100% - var(--naxit-team-fade-height) * .3),rgba(0,0,0,.0955) calc(100% - var(--naxit-team-fade-height) * .2),rgba(0,0,0,.0245) calc(100% - var(--naxit-team-fade-height) * .1),transparent);
  background: var(--naxit-footer-base);
}
.naxit-home-page #team::after { inset: 0; height: auto; background: var(--naxit-surface-wash); -webkit-mask-image: var(--naxit-team-fade); mask-image: var(--naxit-team-fade); }
.naxit-home-page .naxit-footer-stage { background: var(--naxit-footer-base); }
body.naxit-home-page .footer-hero { background: transparent; }
body .footer-hero { --naxit-footer-grid-row: clamp(72px,9vw,140px); }
body .footer-hero::before { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px); background-size: calc(100% / 6) var(--naxit-footer-grid-row); -webkit-mask-image: linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent); mask-image: linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent); }
/* Legacy interactions used to rotate the arrow's whole circular container. */
body .primary-button .button-arrow { transform: none !important; }
.naxit-home-page #service .primary-button { background-image: none !important; background-color: var(--naxit-primary); background-size: 100% 100% !important; background-position: 0 50% !important; transition: background-color .22s ease,border-color .22s ease !important; }
.naxit-home-page #service .service-card:is(:hover,:focus-visible) .primary-button { background-color: #23505e; border-color: var(--naxit-secondary); }

.naxit-home-page #service .service-card .primary-button .button-hover-block { display: none !important; }

/* Small four-arm stars share the footer grid's intersections. */
body .footer-grid-stars { position: absolute; z-index: 1; inset: 0; pointer-events: none; -webkit-mask-image: linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent); mask-image: linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent); }
.footer-grid-stars span { position: absolute; width: 12px; height: 12px; transform: translate(-50%,-50%); color: rgba(255,255,255,.55); }
.footer-grid-stars span::before,.footer-grid-stars span::after { content: ""; position: absolute; background: currentColor; }
.footer-grid-stars span::before { top: 5.5px; left: 0; width: 12px; height: 1px; }
.footer-grid-stars span::after { top: 0; left: 5.5px; width: 1px; height: 12px; }
.footer-grid-stars span:nth-child(1) { left: calc(100% / 6); top: calc(var(--naxit-footer-grid-row) * 2); }
.footer-grid-stars span:nth-child(2) { left: 50%; top: var(--naxit-footer-grid-row); }
.footer-grid-stars span:nth-child(3) { left: calc(100% * 5 / 6); top: calc(var(--naxit-footer-grid-row) * 2); }
.footer-grid-stars span:nth-child(4) { left: calc(100% / 3); top: calc(var(--naxit-footer-grid-row) * 4); }
.footer-grid-stars span:nth-child(5) { left: calc(100% * 2 / 3); top: calc(var(--naxit-footer-grid-row) * 3); }
.footer-grid-stars span:nth-child(6) { left: calc(100% * 5 / 6); top: calc(var(--naxit-footer-grid-row) * 5); }

/* Keep footer legal actions clear of the fixed desktop contact control. */
@media (min-width: 768px) { body .footer-bottom-bar { padding-inline-end: 176px; } }

/* Marked mobile readability and the existing legal content alignment. */
.naxit-home-page .naxit-services-classic .service-section-heading-card .heading-wrapper > p { color: var(--naxit-color-text); font-size: 16px; line-height: 1.6; }
.naxit-policy-page .banner-section > .heading-wrapper { width: 100%; max-width: 1440px; margin-inline: auto; padding-inline: clamp(24px,4.5vw,72px); }
@media (max-width: 767px) {
  .naxit-home-page:not(.naxit-reference-page) .banner { width: 100%; }
  .naxit-home-page .banner-section .footer-hero-logo .wrap { padding-inline: 16px; }
  .naxit-home-page #service { padding-bottom: 0; }
}

.naxit-ecommerce-page .workflow-grid { grid-template-columns: minmax(0,1fr); }
.naxit-ecommerce-page .workflow-detail-wrapper { grid-area: auto; width: 100%; min-width: 0; }
@media (max-width: 767px) {
  .naxit-ecommerce-page .workflwo-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .naxit-ecommerce-page .workflow-section [data-w-id] { opacity: 1 !important; transform: none !important; }
  .naxit-ecommerce-page .workflwo-card { min-width: 0; height: auto; }
}
