/* Altheray public homepage composition.
   Human-authored industrial rhythm: restrained hierarchy, no generated landing-page theatre. */
@font-face{font-family:"Inter Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url("https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@5.3.0/latin-wght-normal.woff2") format("woff2-variations")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("https://unpkg.com/@ibm/plex-mono@1.1.0/fonts/complete/woff2/IBMPlexMono-Regular.woff2") format("woff2")}
:root{
  --home-navy:#020716;
  --home-navy-2:#071126;
  --home-ink:#101a28;
  --home-muted:#637083;
  --home-steel:#9eacc0;
  --home-blue:#86aeea;
  --home-paper:#e8eef7;
  --home-white:#f7f9fc;
  --home-line:#cbd4df;
  --home-line-dark:rgba(169,201,255,.18);
  --home-sans:"Inter Variable",Inter,"Segoe UI Variable Text","Helvetica Neue",Arial,sans-serif;
  --home-display:"Inter Variable",Inter,"Segoe UI Variable Display","Helvetica Neue",Arial,sans-serif;
  --home-mono:"IBM Plex Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --altheray-ui-font:var(--home-sans);
}

body[data-page="home"]{background:var(--home-white);color:var(--home-ink);font-family:var(--home-sans);font-size:15px;line-height:1.6;font-variation-settings:"opsz" 14}
body[data-page="home"] main{overflow:hidden}
body[data-page="home"] .home-shell{width:min(1320px,calc(100% - clamp(40px,7vw,112px)));margin-inline:auto}
body[data-page="home"] .home-title,
body[data-page="home"] .home-section-title,
body[data-page="home"] .home-service h3{font-family:var(--home-display);font-weight:510;letter-spacing:-.022em;font-variation-settings:"wght" 510,"opsz" 32}
html[lang^="ja"] body[data-page="home"] :is(.home-title,.home-section-title,.home-service h3),
html[lang^="zh"] body[data-page="home"] :is(.home-title,.home-section-title,.home-service h3),
html[lang^="ko"] body[data-page="home"] :is(.home-title,.home-section-title,.home-service h3),
html[lang^="ar"] body[data-page="home"] :is(.home-title,.home-section-title,.home-service h3){font-family:var(--home-sans);letter-spacing:0;font-variation-settings:normal}
body[data-page="home"] .home-copy{margin:0;color:var(--home-muted);font-size:clamp(16px,1.12vw,18px);line-height:1.6}
body[data-page="home"] .home-arrow{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
body[data-page="home"] .home-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}
body[data-page="home"] .home-text-link{display:inline-flex;align-items:center;gap:8px;color:#e8eff8;text-decoration:none;font-size:12.5px;line-height:1.25;border-bottom:1px solid rgba(232,239,248,.28);padding-bottom:3px;transition:border-color .18s ease,color .18s ease}
body[data-page="home"] .home-text-link:hover{color:#fff;border-color:#fff}
body[data-page="home"] .home-text-link.dark{color:#29425f;border-color:#a6b3c4}
body[data-page="home"] .home-text-link.dark:hover{color:#071126;border-color:#071126}
body[data-page="home"] .home-text-link.light{color:#dbe7f5;border-color:rgba(219,231,245,.32)}
body[data-page="home"] .home-section-name{margin:0 0 16px;color:#879ab4;font-size:13.5px;line-height:1.4}
body[data-page="home"] .home-section-title{margin:0;color:var(--home-ink);font-size:clamp(36px,3.55vw,52px);line-height:1.03}
body[data-page="home"] .home-section-title.light{color:#fff}
body[data-page="home"] :is(.public-nav>a,.public-nav>.nav-contact,.public-nav>.nav-rfq){font-size:11.25px;letter-spacing:-.008em}
body[data-page="home"] :is(.button,.primary,.button-primary,.submit-button,.partner-link){font-weight:520!important;letter-spacing:-.006em!important}

/* Hero */
.home-hero{position:relative;min-height:740px;background:var(--home-navy);color:#fff;display:flex;align-items:center;padding:132px 0 78px;border-bottom:1px solid rgba(169,201,255,.1)}
.home-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 47%,rgba(51,102,183,.095),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.006),transparent 34%);pointer-events:none}
.home-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(460px,.88fr);gap:clamp(36px,4.25vw,64px);align-items:center}
.home-hero-copy{position:relative;z-index:2;max-width:760px}
.home-hero-context{margin:0 0 24px;color:#9fb0c6;font-size:15px;line-height:1.45}
.home-hero .home-title{margin:0;font-size:clamp(56px,5vw,72px);line-height:1;color:#fff;letter-spacing:-.025em;font-weight:510;font-variation-settings:"wght" 510,"opsz" 32}
.home-hero .home-title span{color:#9aaec7}
.home-hero .home-copy{max-width:590px;margin-top:26px;color:#aebdd0;font-size:clamp(16px,1.24vw,18px);line-height:1.6}
.home-hero .button-light{min-height:44px!important;padding:0 15px!important;border-radius:6px!important;font-family:var(--home-sans)!important;font-size:12.5px!important;font-weight:520!important}

.home-network{position:relative;min-height:520px;isolation:isolate}
.network-canvas{position:absolute;inset:-1% -4% -1% -2%;width:106%;height:102%;max-width:none}
.network-note{position:absolute;z-index:2;min-width:160px;padding:9px 11px;border-left:1px solid rgba(169,201,255,.28);background:linear-gradient(90deg,rgba(5,17,41,.46),transparent);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.network-note span{display:block;color:#8297b1;font-size:9.5px;line-height:1.4}
.network-note strong{display:block;margin-top:3px;color:#e7edf6;font-family:var(--home-sans);font-size:10.5px;font-weight:520;line-height:1.4}
.network-request{left:3%;top:18%}.network-result{right:2%;bottom:18%}

/* What we source */
.home-sourcing{padding:clamp(88px,8vw,124px) 0;background:var(--home-white)}
.home-intro{display:grid;grid-template-columns:.72fr 1fr;gap:clamp(44px,7vw,108px);align-items:start;padding-bottom:clamp(56px,5.6vw,82px)}
.home-intro .home-section-title{font-size:clamp(40px,4.15vw,58px)}
.home-intro .home-copy{max-width:640px;padding-top:5px}
.home-service{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(46px,6.5vw,100px);align-items:center;padding:clamp(56px,5.6vw,82px) 0;border-top:1px solid var(--home-line)}
.home-service-manufacturing{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)}
.home-service h3{margin:0;font-size:clamp(33px,3.35vw,47px);line-height:1.05;color:var(--home-ink)}
.home-service p{max-width:560px;margin:18px 0 23px;color:#59687a;font-size:15px;line-height:1.68}
.home-service-visual{display:grid;gap:18px;min-width:0}
.home-industrial-image{position:relative;overflow:hidden;margin:0;background:#0a1220;isolation:isolate}
.home-industrial-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(2,7,22,.03),rgba(2,7,22,.14))}
.home-industrial-image img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.04);transform:scale(1.006)}
.home-industrial-electronics{aspect-ratio:2.12/1}
.home-industrial-electronics img{object-position:center 55%}
.home-industrial-manufacturing{aspect-ratio:1.48/1}
.home-industrial-manufacturing img{object-position:center 50%}
.component-stack{border-top:1px solid #aab5c3}
.component-row{display:grid;grid-template-columns:1.35fr .9fr .75fr;gap:18px;padding:15px 0;border-bottom:1px solid #d1d8e1;align-items:baseline}
.component-row code{font-family:var(--home-mono);font-size:11.5px;color:#10243d}
.component-row span{font-size:11px;color:#738195}.component-row span:last-child{text-align:right}

/* The actual sourcing process, written rather than diagrammed. */
.home-how{padding:clamp(86px,7.6vw,118px) 0;background:var(--home-paper)}
.home-how-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(50px,7.5vw,116px);align-items:start}
.home-how .home-copy{max-width:540px;margin-top:22px}.home-how .home-text-link{margin-top:23px}
.home-how-list{margin:0;border-top:1px solid #b2becb}
.home-how-list>div{display:grid;grid-template-columns:.64fr 1fr;gap:28px;padding:20px 0;border-bottom:1px solid #c0c9d3}
.home-how-list dt{font-size:14.5px;color:#1b2a3e;font-weight:560}.home-how-list dd{margin:0;color:#657386;font-size:13.5px;line-height:1.62}

/* Supply Network */
.home-supply{position:relative;padding:clamp(90px,7.8vw,122px) 0;background:#061026;color:#fff}
.home-supply:before{content:"";position:absolute;right:-8vw;top:-16vw;width:48vw;height:48vw;border-radius:50%;background:radial-gradient(circle,rgba(66,118,199,.07),transparent 64%);pointer-events:none}
.home-supply-grid{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(54px,7.5vw,118px);align-items:start}
.home-supply .home-copy{max-width:580px;margin-top:22px;color:#a8b8cb}.home-supply .home-text-link{margin-top:23px}
.home-supply-list{border-top:1px solid rgba(169,201,255,.18)}
.home-supply-list>div{padding:20px 0;border-bottom:1px solid rgba(169,201,255,.13)}
.home-supply-list strong{display:block;color:#edf2f8;font-size:16.5px;font-weight:520;line-height:1.35}
.home-supply-list span{display:block;margin-top:5px;color:#879bb6;font-size:12.5px;line-height:1.55}

/* Agentic AI remains subordinate to the commercial sourcing story. */
.home-ai{padding:clamp(84px,7.5vw,116px) 0;background:var(--home-white)}
.home-ai-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(50px,7.5vw,116px);align-items:start}
.home-ai .home-section-name{color:#5a7089}.home-ai-copy{padding-top:31px}.home-ai-copy .home-copy{max-width:620px}
.home-ai-detail{max-width:620px;margin:22px 0 26px;color:#617083;font-size:14px;line-height:1.65}

/* Final conversion */
.home-final{padding:clamp(86px,7.6vw,118px) 0;background:var(--home-navy);color:#fff;border-top:1px solid rgba(169,201,255,.1)}
.home-final-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:clamp(50px,7.5vw,116px);align-items:end}
.home-final .home-copy{color:#a8b7c9;max-width:520px}.home-final .home-actions{margin-top:23px}
.home-final .button-light{border-radius:6px!important}

[data-home-reveal]{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s cubic-bezier(.2,.7,.2,1)}
[data-home-reveal].is-visible{opacity:1;transform:none}

html[dir="rtl"] body[data-page="home"]{text-align:right}
html[dir="rtl"] .home-hero-grid,html[dir="rtl"] .home-intro,html[dir="rtl"] .home-service,html[dir="rtl"] .home-how-grid,html[dir="rtl"] .home-supply-grid,html[dir="rtl"] .home-ai-grid,html[dir="rtl"] .home-final-grid{direction:rtl}
html[dir="rtl"] .component-row span:last-child{text-align:left}
html[dir="rtl"] .network-request{left:auto;right:3%}html[dir="rtl"] .network-result{right:auto;left:2%}

@media(min-width:1001px){
  html[lang^="en"] body[data-page="home"] .home-hero .home-title{white-space:nowrap}
}

@media(max-width:1000px){
  .home-hero{min-height:auto;padding:122px 0 68px}
  .home-hero-grid{grid-template-columns:1fr;gap:32px}.home-hero-copy{max-width:720px}.home-network{min-height:450px}
  .home-intro,.home-how-grid,.home-supply-grid,.home-ai-grid,.home-final-grid{grid-template-columns:1fr;gap:44px}
  .home-service,.home-service-manufacturing{grid-template-columns:1fr;gap:38px}.home-service-manufacturing .home-industrial-manufacturing{order:2}.home-service-manufacturing .home-service-copy{order:1}
  .home-ai-copy{padding-top:0}
}

@media(max-width:640px){
  body[data-page="home"] .home-shell{width:calc(100% - 38px)}
  .home-hero{padding:106px 0 46px}.home-hero-context{font-size:14px;margin-bottom:19px}.home-hero .home-title{font-size:clamp(44px,12.4vw,56px);line-height:1.01;white-space:normal}.home-hero .home-copy{margin-top:25px;font-size:16px}
  .home-hero .home-actions{align-items:flex-start;flex-direction:column;gap:15px;margin-top:25px}.home-network{min-height:350px;margin-top:0}.network-canvas{inset:-1% -11%;width:122%;height:102%}.network-note{min-width:0;padding:8px 9px}.network-note span{font-size:9px}.network-note strong{font-size:10px}.network-request{top:13%;left:0}.network-result{right:0;bottom:10%}
  .home-sourcing,.home-how,.home-supply,.home-ai,.home-final{padding:68px 0}.home-intro{display:block;padding-bottom:40px}.home-intro .home-copy{margin-top:27px}.home-section-title,.home-intro .home-section-title{font-size:clamp(35px,10vw,44px)}
  .home-service{padding:44px 0;gap:28px}.home-service h3{font-size:clamp(31px,8.8vw,39px)}.home-service p{margin-top:24px}.home-service-visual{gap:15px}.home-industrial-electronics{aspect-ratio:1.55/1}.home-industrial-manufacturing{aspect-ratio:1.25/1}.component-row{grid-template-columns:1.3fr .8fr;gap:11px;padding:13px 0}.component-row span:last-child{display:none}
  .home-how .home-copy,.home-supply .home-copy{margin-top:28px}.home-how-list>div{display:block;padding:17px 0}.home-how-list dd{margin-top:6px}.home-supply-list strong{font-size:16px}
  .home-ai-grid{gap:30px}.home-final-grid{gap:36px}.home-final .home-actions{align-items:flex-start;flex-direction:column;gap:15px}
  body[data-page="home"] .public-footer-main{padding-top:36px}
}

/* Phone hero: keep the copy centred in the viewport and let the network continue beneath it,
   instead of making the animation a second full-height scroll block. */
@media(max-width:430px) and (hover:none) and (pointer:coarse){
  .home-hero{min-height:100svh;padding:84px 0 34px;align-items:stretch}
  .home-hero-grid{min-height:calc(100svh - 118px);display:flex;align-items:center;position:relative}
  .home-hero-copy{width:100%;max-width:none;transform:translateY(-1.5vh)}
  .home-network{position:absolute;z-index:1;right:-34%;bottom:-8%;width:116%;height:52%;min-height:310px;margin:0;pointer-events:none;opacity:.78}
  .network-canvas{inset:-6% -14%;width:128%;height:112%}
  .network-request{top:28%;left:17%}.network-result{right:2%;bottom:10%}
}

@media(prefers-reduced-motion:reduce){
  [data-home-reveal]{opacity:1!important;transform:none!important;transition:none!important}
  .home-text-link{transition:none!important}
}
