/* Post-launch presentation prototype. No form, article-body or footer rules. */
.fabrixon-site .site-header .fx-ux-nav { gap:0; }
.fabrixon-site .site-header .fx-ux-nav .fx-primary-links { display:flex; align-items:center; gap:22px; }
.fabrixon-site .site-header .fx-ux-nav .fx-primary-links > a { white-space:nowrap; }
.fabrixon-site .fx-ux-nav .fx-services-toggle { display:inline-flex; align-items:center; gap:8px; background:none; border:0; color:#d8e0e4; padding:12px 0; font:600 .84rem var(--body); cursor:pointer; }
.fabrixon-site .fx-ux-nav.fx-nav-ready .fx-services-fallback { display:none!important; }
.fabrixon-site .fx-ux-nav [hidden] { display:none!important; }
.fabrixon-site .fx-ux-nav a:focus-visible,.fabrixon-site .fx-ux-nav button:focus-visible { outline:3px solid #57c8e8; outline-offset:4px; }
.fabrixon-site .fx-services-panel { position:absolute; top:100%; left:0; right:0; background:#0d1a23; border-top:1px solid #536570; border-bottom:1px solid #536570; padding:28px max(28px,calc((100% - 1240px)/2)); box-shadow:0 16px 28px #0005; max-height:calc(100dvh - 120px); overflow-y:auto; }
.fabrixon-site .fx-services-grid { display:grid; grid-template-columns:1.2fr 1.1fr 1fr 1fr; gap:32px; }
.fabrixon-site .fx-services-group { padding:0; margin:0; }
.fabrixon-site .fx-services-group-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; color:#fff; font:700 .92rem/1.45 var(--display); padding-bottom:12px; border-bottom:1px solid #344550; }
.fabrixon-site .fx-services-group-heading a { color:#fff; font:inherit; }
.fabrixon-site .fx-services-group ul { margin:12px 0 0; padding:0; list-style:none; }
.fabrixon-site .fx-services-group li { padding:0; margin:0; }
.fabrixon-site .fx-services-group li a { display:block; padding:9px 0; font-size:.8rem; line-height:1.45; }
.fabrixon-site .fx-services-panel .fx-all-services { display:inline-flex; margin-top:20px; min-height:44px; align-items:center; color:#f29a70; }
.fabrixon-site .fx-services-group-toggle { background:transparent; border:1px solid #64747d; color:#fff; min-width:44px; min-height:44px; flex:none; cursor:pointer; }
@media(max-width:1200px){
 .fabrixon-site .site-header .header-inner { position:relative; }
 .fabrixon-site .site-header .fx-ux-nav.fx-nav-ready .fx-menu-toggle { display:inline-flex; min-height:44px; gap:8px; align-items:center; padding:8px 14px; color:white; background:#0d1a23; border:1px solid #81939d; border-radius:4px; cursor:pointer; }
 .fabrixon-site .site-header .fx-ux-nav.fx-nav-ready .fx-primary-links { display:none; position:absolute; top:100%; left:0; right:0; padding:18px; background:#0d1a23; border:1px solid #536570; max-height:calc(100dvh - 120px); overflow-y:auto; box-shadow:0 12px 24px #0005; }
 .fabrixon-site .site-header .fx-ux-nav.fx-nav-ready .fx-primary-links.is-open { display:flex; flex-direction:column; align-items:stretch; gap:8px; }
 .fabrixon-site .site-header .fx-ux-nav .fx-primary-links a { display:flex; min-height:44px; align-items:center; padding:10px 12px; white-space:normal; }
 .fabrixon-site .fx-ux-nav .fx-services-toggle { width:100%; min-height:44px; padding:10px 12px; justify-content:space-between; }
 .fabrixon-site .fx-services-panel { position:static; padding:14px 0 0; border-bottom:0; box-shadow:none; max-height:none; overflow:visible; }
 .fabrixon-site .fx-services-grid { grid-template-columns:1fr; gap:14px; }
 .fabrixon-site .fx-services-group-heading { align-items:center; padding:0 0 8px; }
 .fabrixon-site .fx-services-group-heading > span { padding-left:12px; }
 .fabrixon-site .fx-services-group li a { padding-left:22px!important; }
}
@media(min-width:1201px){ .fabrixon-site .site-header .fx-ux-nav .fx-menu-toggle { display:none!important; } }

/* Existing server-rendered anchors remain usable without enhancement. */
.fabrixon-site .case-grid > a.fx-readable-case { display:flex; flex-direction:column; padding:0; min-height:440px; height:auto; background:#14242e; border:1px solid #344550; overflow:hidden; isolation:isolate; }
.fabrixon-site .case-grid > a.fx-readable-case::before { inset:0 0 auto; height:220px; background-image:var(--case-bg); background-size:contain; background-position:center; background-repeat:no-repeat; background-color:#e8ece9; transform:none; opacity:1; filter:none; z-index:0; }
.fabrixon-site .case-grid > a.fx-readable-case::after { display:none; }
.fabrixon-site .case-grid > a.fx-readable-case .case-content { margin-top:220px; position:relative; padding:22px; flex:1; display:flex; flex-direction:column; justify-content:flex-start; background:#14242e; z-index:1; }
.fabrixon-site .case-grid > a.fx-readable-case .case-content h3 { color:white; font-size:1.12rem; line-height:1.3; margin:8px 0; }
.fabrixon-site .case-grid > a.fx-readable-case .case-content p { color:#cbd5da; font-size:.84rem; line-height:1.6; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; }
.fabrixon-site .case-grid > a.fx-readable-case .case-type { color:#f6a67e; }
.fabrixon-site .case-grid > a.fx-readable-case .case-go { display:none; }
.fabrixon-site .fx-card-cue { display:block; color:#fff; font:700 .8rem/1.4 var(--display); margin-top:16px; }
.fabrixon-site .case-grid > a.fx-readable-case:focus-visible,.fabrixon-site .fx-whole-case:focus-within { outline:3px solid #57c8e8; outline-offset:4px; }
.fabrixon-site .case-grid > a.fx-readable-case:hover { border-color:#f29a70; }
.fabrixon-site .fx-whole-case { position:relative; }
.fabrixon-site .fx-whole-case .fx-whole-case-link { position:static; }
.fabrixon-site .fx-whole-case .fx-whole-case-link::after { content:""; position:absolute; inset:0; z-index:4; }
.fabrixon-site .fx-whole-case:hover .fx-whole-case-link { text-decoration:underline; text-underline-offset:4px; }
.fabrixon-site .case-grid > a.fx-case-text-only::before { background-image:none; }
.fabrixon-site .case-grid > a.fx-case-text-only .case-content { margin-top:0; display:flex; flex-direction:column; justify-content:center; }
.fabrixon-site .fx-case-filters { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 18px; }
.fabrixon-site .fx-case-filters button { color:#d8e0e4; background:#14242e; border:1px solid #60717b; padding:10px 14px; min-height:44px; font:600 .8rem/1.5 var(--body); cursor:pointer; }
.fabrixon-site .fx-case-filters button[aria-pressed="true"] { background:#9b461e; color:#fff; border-color:#f29a70; }
.fabrixon-site .fx-case-filters button:focus-visible { outline:3px solid #57c8e8; outline-offset:3px; }
.fabrixon-site .fx-filter-status { color:#cbd5da; font-size:.85rem; margin-bottom:24px; }
.fabrixon-site .case-grid > a.case-card[hidden] { display:none!important; }
@media(max-width:600px){ .fabrixon-site .case-grid > a.fx-readable-case::before { height:200px; } .fabrixon-site .case-grid > a.fx-readable-case .case-content { margin-top:200px; padding:20px; } .fabrixon-site .case-grid > a.fx-case-text-only .case-content { margin-top:0; } }

/* Candidate batch 2: opt-in section rhythm and existing software artwork. */
.fabrixon-site main .section-head.fx-section-intro {
  display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  align-items:start; gap:clamp(24px,4vw,56px); margin-bottom:clamp(28px,4vw,48px);
}
.fabrixon-site main .section-head.fx-section-intro > * { min-width:0; }
.fabrixon-site main .section-head.fx-section-intro h2 {
  font-size:clamp(2.15rem,4.2vw,4rem); line-height:1.08;
  max-width:19ch; text-wrap:balance; white-space:normal;
}
.fabrixon-site main .section-head.fx-section-intro h2 .heading-line { white-space:normal; }
.fabrixon-site main .section-head.fx-section-intro > p { max-width:62ch; margin:0; }
.fabrixon-site main .section-head.fx-section-intro--wide { grid-template-columns:minmax(0,1fr); gap:24px; }
.fabrixon-site main .section-head.fx-section-intro--wide h2 { max-width:24ch; }
.fabrixon-site main .section-head.fx-section-intro--wide > p { max-width:76ch; }
@media(max-width:1080px){
 .fabrixon-site main .section-head.fx-section-intro { grid-template-columns:minmax(0,1fr); gap:22px; }
 .fabrixon-site main .section-head.fx-section-intro h2 { max-width:24ch; }
}
/* Canonical dark tile system, derived from Automation and Trailer references. */
.fabrixon-site main #deliverables .fx-logo-grid { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:12px!important; align-items:stretch; width:100%; max-width:none; }
.fabrixon-site main #deliverables .fx-logo-grid > div { display:flex!important; flex-direction:column; justify-content:center; align-items:center; width:auto!important; min-width:0; height:92px!important; min-height:92px; padding:12px!important; border:1px solid #47545e!important; border-radius:4px!important; background:#14212a!important; gap:4px; }
.fabrixon-site main #deliverables .fx-logo-grid svg,.fabrixon-site main #deliverables .fx-logo-grid img { display:block; width:100%!important; max-width:100%!important; height:64px!important; max-height:64px!important; object-fit:contain; flex:none; }
.fabrixon-site main #deliverables .fx-logo-grid .fx-logo-with-product > svg,.fabrixon-site main #deliverables .fx-logo-grid .fx-logo-with-product > img { height:38px!important; max-height:38px!important; }
.fabrixon-site main #deliverables .fx-logo-grid .fx-logo-with-product > img { max-width:180px!important; }
.fabrixon-site main #deliverables .fx-logo-product { display:block; color:#e2e9ed; font:600 12px/1.2 var(--body); text-align:center; white-space:normal; }
.fabrixon-site main #deliverables .fx-format-label { color:#f2f5f3; font:700 25px/1.2 var(--display); }
.fabrixon-site main #deliverables .fx-logo-grid > div:last-child:nth-child(odd) { grid-column:1 / -1; width:calc((100% - 12px)/2)!important; justify-self:center; }
@media(max-width:480px){ .fabrixon-site main #deliverables .fx-logo-grid { gap:10px!important; } .fabrixon-site main #deliverables .fx-logo-grid > div { padding:9px!important; height:82px!important; min-height:82px; } .fabrixon-site main #deliverables .fx-logo-product { font-size:11px; } }

/* One opt-in, representative-stock capability panel. No article or shell selectors. */
.fabrixon-site main #capabilities .automation-scope-feature.fx-capability-panel { display:flex!important; align-items:center; position:relative; isolation:isolate; min-height:440px!important; max-width:1240px; width:100%; padding:48px!important; margin-inline:auto; overflow:hidden; background:#10212b!important; border:1px solid #344852; }
.fabrixon-site main #capabilities .fx-capability-panel::before { display:none!important; }
.fabrixon-site main #capabilities .fx-capability-panel::after { content:""!important; display:block!important; position:absolute!important; inset:0!important; z-index:1!important; background:linear-gradient(90deg,rgba(6,17,25,.95) 0%,rgba(6,17,25,.85) 48%,rgba(6,17,25,.40) 100%)!important; pointer-events:none; }
.fabrixon-site main #capabilities .fx-capability-panel .fx-capability-background { position:absolute!important; inset:0!important; width:100%!important; height:100%!important; z-index:0!important; }
.fabrixon-site main #capabilities .fx-capability-panel .fx-capability-background img { display:block; width:100%!important; height:100%!important; object-fit:cover; object-position:center; }
.fabrixon-site main #capabilities .fx-capability-panel > .automation-scope-copy { position:relative!important; z-index:2!important; width:100%!important; max-width:640px!important; min-height:0!important; height:auto!important; margin:0!important; padding:0!important; }
.fabrixon-site main #capabilities .fx-capability-panel h3 { color:#fff!important; font-size:clamp(1.75rem,2.8vw,2.6rem)!important; line-height:1.15!important; max-width:24ch!important; }
.fabrixon-site main #capabilities .fx-capability-panel p:not(.kicker) { color:#e0e8ed!important; font-size:1rem!important; line-height:1.7!important; max-width:62ch!important; margin-bottom:0; }
.fabrixon-site main #capabilities .fx-capability-panel .kicker { font-size:.73rem; line-height:1.5; margin-bottom:14px; }
.fabrixon-site main #capabilities .fx-capability-panel :is(.feature-heading-line,.feature-copy-line,.heading-line) { display:inline; white-space:normal!important; }
.fabrixon-site main #capabilities .fx-capability-panel :is(.feature-heading-line,.feature-copy-line,.heading-line) + :is(.feature-heading-line,.feature-copy-line,.heading-line)::before { content:' '; }
@media(max-width:600px){ .fabrixon-site main #capabilities .automation-scope-feature.fx-capability-panel { min-height:0!important; padding:28px!important; } .fabrixon-site main #capabilities .fx-capability-panel::after { background:rgba(6,17,25,.86)!important; } }
.fabrixon-site .case-grid > a.fx-card-has-image::before { display:none!important; }
.fabrixon-site .case-grid > a.fx-card-has-image > img { display:block; width:100%; height:220px; object-fit:contain; background:#e8ece9; }
.fabrixon-site .case-grid > a.fx-card-has-image .case-content { margin-top:0!important; }
.fabrixon-site .fx-case-media-contained { background:#e8ece9; }
.fabrixon-site .fx-case-media-contained img { width:100%; height:100%; object-fit:contain; }
.fabrixon-site main .fx-ways-shared-cta { margin-top:28px; }
@media(max-width:600px){ .fabrixon-site .case-grid > a.fx-card-has-image > img { height:200px; } }

/* Engineering Drawing only: override its legacy disabled overlay; retain the shared panel geometry. */
.fabrixon-site main.fx-subservice-engineering-drawing #capabilities .automation-scope-feature.fx-capability-panel::after {
  content:""!important;
  display:block!important;
  background:linear-gradient(90deg,rgba(6,17,25,.94) 0%,rgba(6,17,25,.90) 60%,rgba(6,17,25,.38) 100%)!important;
}
@media(max-width:1100px){
  .fabrixon-site main.fx-subservice-engineering-drawing #capabilities .automation-scope-feature.fx-capability-panel::after {
    background:rgba(6,17,25,.88)!important;
  }
}
