@import url('/assets/altheray-foundation.css');
/* Canonical Altheray public component and typography system. Route composition may vary; primitives do not. */
html:root{
  --altheray-ui-font:var(--altheray-font-sans);
  --home-sans:var(--altheray-font-sans);
  --home-display:var(--altheray-font-display);
  --home-mono:var(--altheray-font-mono);
  --electronics-sans:var(--altheray-font-sans);
  --electronics-display:var(--altheray-font-display);
  --rfq-sans:var(--altheray-font-sans);
  --rfq-display:var(--altheray-font-display);
  --altheray-ui-navy:#07111f;
  --altheray-ui-navy-hover:#13233a;
  --altheray-ui-white:#f7f9fc;
  --altheray-ui-text:#101b2a;
  --altheray-ui-muted:#667789;
  --altheray-ui-line:#cfd8e2;
  --altheray-ui-line-dark:rgba(169,201,255,.26);
  --altheray-ui-radius:7px;
  --altheray-ui-control-height:44px;
  --altheray-ui-focus:#7fa5c8;
}
body:not([data-page="home"]){font-family:var(--altheray-font-sans)!important;font-optical-sizing:auto}
button,input,select,textarea{font-family:inherit}
:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--altheray-ui-focus);outline-offset:3px}

/* Public display hierarchy is centrally owned here, including route compatibility. */
:where(body[data-page="home"] .home-title,body[data-page="home"] .home-section-title,body[data-page="electronics"] .electronics-hero h1,body[data-page="electronics"] .electronics-intro h2,body[data-page="electronics"] .electronics-technology h2,body[data-page="electronics"] .electronics-partners h2,body[data-page="electronics"] .electronics-closing h2,body[data-page="rfq"] .rfq-intro h1){font-family:var(--altheray-font-display)!important;font-weight:var(--altheray-type-display-weight)!important;letter-spacing:var(--altheray-type-display-tracking)!important;font-variation-settings:normal!important;font-optical-sizing:auto!important}
:where(body[data-page="home"] .home-service h3,body[data-page="electronics"] .electronics-services h3,body[data-page="rfq"] .form-head h2){font-family:var(--altheray-font-display)!important;font-weight:var(--altheray-type-heading-weight)!important;letter-spacing:var(--altheray-type-heading-tracking)!important;font-variation-settings:normal!important;font-optical-sizing:auto!important}
:where(body[data-page="home"] .home-section-name,body[data-page="rfq"] .section-kicker,body[data-page="rfq"] legend){font-family:var(--altheray-font-sans)!important;font-weight:var(--altheray-type-section-label-weight)!important;letter-spacing:var(--altheray-type-section-label-tracking)!important}
:where(body[data-page="home"] .component-row code,body[data-page="electronics"] .electronics-rfhic span,body[data-page="rfq"] .line-number){font-family:var(--altheray-font-mono)!important}

.language-button{height:38px!important;padding:0 8px!important;border:0!important;border-radius:var(--altheray-ui-radius)!important;background:transparent!important;color:#d1dbe4!important;display:inline-flex!important;align-items:center!important;gap:8px!important;font-family:var(--altheray-font-sans)!important;font-size:11px!important;font-weight:var(--altheray-type-nav-weight)!important;letter-spacing:0!important}
.language-button:hover,.language-button[aria-expanded="true"]{background:rgba(255,255,255,.05)!important;color:#fff!important}
.language-button>svg{width:9px!important;height:auto!important;flex:0 0 9px!important}
.language-button>.language-mark{display:block!important;width:20px!important;height:13px!important;flex:0 0 20px!important;border-radius:2px!important;overflow:hidden!important;transform:none!important}
.language-button>.language-mark>svg,.language-menu .language-mark>svg{display:block!important;width:100%!important;height:100%!important;max-width:none!important}
.language-menu{border-radius:9px!important}
.language-menu button{border-radius:6px!important;font-family:var(--altheray-font-sans)!important}

:is(.button,.primary,.button-primary,.submit-button,.enquiry-form button[type="submit"],.submit button,.partner-link){min-height:var(--altheray-ui-control-height)!important;padding:0 15px!important;border:1px solid transparent!important;border-radius:var(--altheray-ui-radius)!important;display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;font-family:var(--altheray-font-sans)!important;font-size:var(--altheray-type-control-size)!important;line-height:1!important;font-weight:var(--altheray-type-control-weight)!important;letter-spacing:0!important;text-decoration:none!important;cursor:pointer;box-shadow:none!important;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important}
:is(.button,.primary,.button-primary,.submit-button,.enquiry-form button[type="submit"],.submit button,.partner-link):hover{transform:translateY(-1px)}
.button-light,.button-primary{background:var(--altheray-ui-white)!important;color:var(--altheray-ui-navy)!important;border-color:var(--altheray-ui-white)!important}
.button-light:hover,.button-primary:hover{background:#e8eef4!important;border-color:#e8eef4!important}
.submit-button,.enquiry-form button[type="submit"],.submit button{background:var(--altheray-ui-navy)!important;color:#fff!important;border-color:var(--altheray-ui-navy)!important}
.submit-button:hover,.enquiry-form button[type="submit"]:hover,.submit button:hover{background:var(--altheray-ui-navy-hover)!important;border-color:var(--altheray-ui-navy-hover)!important}
.button-ghost,.button-secondary,.partner-link{background:transparent!important;color:#d5dee7!important;border-color:var(--altheray-ui-line-dark)!important}
.button-ghost:hover,.button-secondary:hover,.partner-link:hover{background:rgba(255,255,255,.05)!important;border-color:rgba(169,201,255,.4)!important;color:#fff!important}

.secondary,.inline-link{min-height:var(--altheray-ui-control-height)!important;padding:0 10px!important;display:inline-flex!important;align-items:center!important;gap:12px!important;border:0!important;border-radius:var(--altheray-ui-radius)!important;background:transparent!important;font-family:var(--altheray-font-sans)!important;font-size:var(--altheray-type-control-size)!important;font-weight:var(--altheray-type-control-weight)!important;letter-spacing:0!important;text-decoration:none!important}
.secondary:hover,.inline-link:hover{background:rgba(127,165,200,.08)!important}
.secondary-button,.csv-button{min-height:40px!important;padding:0 13px!important;border:1px solid var(--altheray-ui-line)!important;border-radius:var(--altheray-ui-radius)!important;background:#fff!important;color:#26384c!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;font-family:var(--altheray-font-sans)!important;font-size:12px!important;font-weight:var(--altheray-type-control-weight)!important;text-decoration:none!important;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease!important}
.secondary-button:hover,.csv-button:hover{background:#f4f7fa!important;border-color:#b9c7d5!important;color:#13263b!important}

:where(.rfq-panel,.form-card,.enquiry-form) :is(input,select,textarea){border-radius:var(--altheray-ui-radius)!important;border:1px solid var(--altheray-ui-line)!important;background:#fff!important;color:#182230!important;font-family:var(--altheray-font-sans)!important}
:where(.rfq-panel,.form-card,.enquiry-form) :is(input,select):not([type="checkbox"]):not([type="radio"]){min-height:var(--altheray-ui-control-height)!important}
:where(.rfq-panel,.form-card,.enquiry-form) :is(input,select,textarea):focus{border-color:var(--altheray-ui-focus)!important;box-shadow:0 0 0 3px rgba(127,165,200,.15)!important;outline:none!important}
.public-nav-rfq,.public-nav>.nav-rfq,.nav-cta{border-radius:var(--altheray-ui-radius)!important}

/* Quiet public assistant launcher. It is a utility, not a competing visual object. */
.assistant-fab{position:fixed!important;right:max(16px,env(safe-area-inset-right))!important;bottom:max(16px,env(safe-area-inset-bottom))!important;z-index:70!important;width:40px!important;height:40px!important;border:1px solid rgba(169,201,255,.25)!important;border-radius:8px!important;background:rgba(7,17,31,.94)!important;color:#e9f1fb!important;font-family:var(--altheray-font-sans)!important;font-size:13px!important;font-weight:var(--altheray-type-control-weight)!important;cursor:pointer!important;display:grid!important;place-items:center!important;box-shadow:0 8px 24px rgba(0,0,0,.22)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}
.assistant-fab:hover{border-color:rgba(169,201,255,.42)!important;background:#0d1e32!important}
.assistant-fab .fab-pulse{display:none!important}
.assistant-backdrop{z-index:120!important}
.assistant-panel{position:fixed!important;z-index:121!important;direction:ltr!important;text-align:left!important}
.assistant-panel.assistant-panel{grid-template-rows:auto minmax(0,1fr) auto!important}
.assistant-panel.assistant-panel:has(.av5-progress:not([hidden])){grid-template-rows:auto auto minmax(0,1fr) auto!important}

@media(max-width:900px){body.menu-open{overflow:hidden!important}.public-nav.is-open>a,.public-nav.is-open>.nav-contact,.public-nav.is-open>.nav-rfq{min-height:51px!important;display:flex!important;align-items:center!important}.public-nav.is-open .language-switcher{margin-top:7px!important}}
@media(max-width:680px){
  :is(.button,.primary,.button-primary,.submit-button,.enquiry-form button[type="submit"],.submit button,.partner-link){min-height:46px!important}
  .language-button{min-height:42px!important;height:auto!important;padding:8px 4px!important}
  .assistant-fab{width:38px!important;height:38px!important;border-radius:7px!important;font-size:12px!important}
  .assistant-panel.is-open{inset:0!important;width:100%!important;min-height:100dvh!important}
  .assistant-panel .av5-chat:has(.av5-routes:not([hidden])) .av5-messages{flex:0 0 auto!important}
  .assistant-panel .av5-chat:has(.av5-routes:not([hidden])):after{content:"";display:block;flex:1 1 auto;min-height:44px}
}
@media(prefers-reduced-motion:reduce){:is(.button,.primary,.button-primary,.submit-button,.enquiry-form button[type="submit"],.submit button,.partner-link){transition:none!important}}
