/* =========================================================
   IRAN DIE CAST — COMPETITION LEVEL HOME
   Light-first futuristic industrial UI
   ========================================================= */

.home-page {
    --home-bg: #f7f8fa;
    --home-surface: #ffffff;
    --home-ink: #111820;
    --home-muted: #6e7b87;
    --home-line: rgba(17, 24, 32, 0.10);
    --home-orange: #ff6a1a;
    --home-orange-2: #ff9a62;
    --home-cyan: #55d9ff;
    --home-dark: #080d12;
    --home-dark-2: #0e151d;
    --home-radius: 26px;
    font-family: "Estedad", Tahoma, Arial, sans-serif;
    background: var(--home-bg);
}

.home-page.lang-en { font-family: "DM Sans", Arial, sans-serif; }
.home-page h1,
.home-page h2,
.home-page h3,
.home-page h4 { font-family: inherit; }

.home-page[data-theme="dark"],
html[data-theme="dark"] .home-page {
    --home-bg: #080d12;
    --home-surface: #10171f;
    --home-ink: #f5f7f9;
    --home-muted: #98a7b4;
    --home-line: rgba(255,255,255,.09);
}

.home-page main { overflow: clip; }
.home-page .container { width: min(1240px, calc(100% - 64px)); }

/* ---------- Header ---------- */
.home-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 1000;
    background: rgba(7, 12, 17, .58);
    border-bottom: 1px solid rgba(255,255,255,.08);
    backdrop-filter: blur(18px) saturate(150%);
}
.home-header .brand,
.home-header .nav-links a { color: #fff; }
.home-header .brand small { color: rgba(255,255,255,.55); }
.home-header .brand img { background: rgba(255,255,255,.94); border-color: rgba(255,255,255,.16); }
.home-header .icon-btn { color:#fff; border-color:rgba(255,255,255,.14); background:rgba(255,255,255,.06); }
.home-header .nav-links a::after { background: var(--home-orange); }
.home-header .pill-btn.accent { background:var(--home-orange); color:#fff; }
.home-header.scrolled { background: rgba(8, 13, 18, .9); border-color: rgba(255,255,255,.1); }
.home-header .mobile-menu { background:#0c1218; color:#fff; }

/* ---------- Hero ---------- */
.hero-tech {
    position: relative;
    min-height: 100svh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #070b0f;
    color: #fff;
    padding: 132px 0 82px;
}
.hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.48; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,8,12,.94) 0%,rgba(4,8,12,.78) 43%,rgba(4,8,12,.28) 72%,rgba(4,8,12,.55) 100%),linear-gradient(180deg,rgba(4,8,12,.15),rgba(4,8,12,.75)); }
[dir="rtl"] .hero-overlay { background:linear-gradient(-90deg,rgba(4,8,12,.94) 0%,rgba(4,8,12,.78) 43%,rgba(4,8,12,.28) 72%,rgba(4,8,12,.55) 100%),linear-gradient(180deg,rgba(4,8,12,.15),rgba(4,8,12,.75)); }
.hero-grid-lines { position:absolute; inset:0; opacity:.16; background-image:linear-gradient(rgba(255,255,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px); background-size:70px 70px; mask-image:linear-gradient(to bottom,transparent 0%,black 25%,black 80%,transparent 100%); }
.hero-orb { position:absolute; border-radius:50%; filter:blur(5px); pointer-events:none; }
.orb-one { width:520px; height:520px; right:-160px; top:5%; background:radial-gradient(circle,rgba(255,106,26,.18),transparent 68%); }
.orb-two { width:420px; height:420px; left:38%; bottom:-180px; background:radial-gradient(circle,rgba(85,217,255,.11),transparent 68%); }
.hero-shell { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr); gap:clamp(46px,7vw,110px); align-items:center; }
.hero-copy { max-width:760px; }
.tech-label { display:inline-flex; align-items:center; gap:10px; font:700 11px/1 "DM Sans",sans-serif; letter-spacing:.18em; color:rgba(255,255,255,.7); }
.tech-label span { width:8px; height:8px; border-radius:50%; background:var(--home-orange); box-shadow:0 0 18px var(--home-orange); }
.hero-copy h1 { margin:24px 0 22px; color:#fff; font-size:clamp(52px,7.2vw,102px); line-height:1.06; letter-spacing:-.055em; }
.hero-copy h1 em { font-style:normal; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.75); text-shadow:0 0 32px rgba(255,106,26,.12); }
.hero-copy p { max-width:690px; margin:0; color:rgba(255,255,255,.67); font-size:clamp(15px,1.3vw,18px); line-height:2.05; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }
.tech-btn { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:56px; padding:0 22px; border-radius:14px; font-weight:700; transition:.25s ease; }
.tech-btn b { font:700 17px/1 "DM Sans",sans-serif; }
.tech-btn.primary { color:#fff; background:linear-gradient(135deg,var(--home-orange),#df4c00); box-shadow:0 16px 42px rgba(255,106,26,.22); }
.tech-btn.primary:hover { transform:translateY(-3px); box-shadow:0 22px 50px rgba(255,106,26,.3); }
.tech-btn.secondary { color:#fff; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.05); backdrop-filter:blur(12px); }
.tech-btn.secondary:hover { background:rgba(255,255,255,.1); }
.hero-proof { display:grid; grid-template-columns:repeat(3,1fr); max-width:650px; margin-top:44px; border-top:1px solid rgba(255,255,255,.13); border-bottom:1px solid rgba(255,255,255,.13); }
.hero-proof div { padding:19px 18px; border-inline-end:1px solid rgba(255,255,255,.13); }
.hero-proof div:last-child { border-inline-end:0; }
.hero-proof strong { display:block; color:#fff; font:700 clamp(22px,2.4vw,34px)/1.1 "DM Sans",sans-serif; }
.hero-proof span { display:block; margin-top:7px; color:rgba(255,255,255,.47); font-size:11px; }

.hero-console { position:relative; border:1px solid rgba(255,255,255,.14); border-radius:28px; background:linear-gradient(180deg,rgba(20,29,38,.72),rgba(7,12,17,.74)); backdrop-filter:blur(18px); box-shadow:0 38px 100px rgba(0,0,0,.35); overflow:hidden; }
.hero-console::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 28%,transparent 72%,rgba(85,217,255,.05)); }
.console-head { display:flex; align-items:center; gap:10px; min-height:58px; padding:0 20px; border-bottom:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.62); font:600 10px/1 "DM Sans",sans-serif; letter-spacing:.15em; }
.console-head small { margin-inline-start:auto; color:#72f2a5; }
.console-dot { width:8px; height:8px; border-radius:50%; background:#72f2a5; box-shadow:0 0 13px #72f2a5; }
.console-part { position:relative; height:410px; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle at 50% 45%,rgba(255,106,26,.09),transparent 34%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size:auto,34px 34px,34px 34px; }
.console-part img { position:relative; z-index:2; width:72%; height:72%; object-fit:contain; filter:drop-shadow(0 25px 35px rgba(0,0,0,.4)); animation:partFloat 5s ease-in-out infinite; }
@keyframes partFloat { 50% { transform:translateY(-8px) rotate(-1deg); } }
.part-glow { position:absolute; width:250px; height:250px; border-radius:50%; background:radial-gradient(circle,rgba(255,106,26,.16),rgba(85,217,255,.05) 42%,transparent 70%); filter:blur(10px); }
.scan-line { position:absolute; z-index:3; left:12%; right:12%; height:1px; top:18%; background:linear-gradient(90deg,transparent,var(--home-cyan),transparent); box-shadow:0 0 18px var(--home-cyan); animation:scanMove 3.6s linear infinite; }
@keyframes scanMove { 50%{top:80%;} }
.point { position:absolute; z-index:4; display:grid; place-items:center; width:30px; height:30px; border:1px solid rgba(85,217,255,.6); border-radius:50%; color:#fff; background:rgba(8,13,18,.72); font:600 9px/1 "DM Sans",sans-serif; box-shadow:0 0 0 7px rgba(85,217,255,.04); }
.p1{left:22%;top:30%}.p2{right:25%;top:42%}.p3{left:46%;bottom:20%}
.console-data { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.1); }
.console-data div { padding:17px 16px; border-inline-end:1px solid rgba(255,255,255,.09); }
.console-data div:last-child{border-inline-end:0}.console-data span{display:block;color:rgba(255,255,255,.38);font:600 8px/1 "DM Sans",sans-serif;letter-spacing:.13em}.console-data b{display:block;margin-top:8px;color:#fff;font:600 13px/1 "DM Sans",sans-serif}
.scroll-cue { position:absolute; z-index:3; bottom:25px; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:12px; color:rgba(255,255,255,.38); font:600 8px/1 "DM Sans",sans-serif; letter-spacing:.15em; }
.scroll-cue span { width:44px; height:1px; background:rgba(255,255,255,.3); }

/* ---------- Shared section intro ---------- */
.capabilities-section,.products-section,.factory-explorer,.final-cta { background:var(--home-bg); color:var(--home-ink); }
.section-intro { display:grid; grid-template-columns:.42fr 1fr .72fr; gap:clamp(26px,4vw,58px); align-items:end; margin-bottom:clamp(42px,6vw,76px); }
.section-intro > div:first-child { align-self:start; display:flex; flex-direction:column; gap:10px; }
.index-no { color:var(--home-orange); font:700 12px/1 "DM Sans",sans-serif; letter-spacing:.18em; }
.micro-title { color:var(--home-muted); font:700 10px/1.4 "DM Sans",sans-serif; letter-spacing:.16em; }
.section-intro h2 { margin:0; color:var(--home-ink); font-size:clamp(36px,5vw,68px); line-height:1.12; letter-spacing:-.045em; }
.section-intro p { margin:0; color:var(--home-muted); line-height:2; }
.section-intro.light h2 { color:#fff; }
.section-intro.light p,.section-intro.light .micro-title { color:rgba(255,255,255,.52); }

/* ---------- Capabilities ---------- */
.capabilities-section { padding:clamp(100px,10vw,150px) 0; }
.machine-showcase { display:grid; gap:24px; }
.machine-feature { display:grid; grid-template-columns:1.05fr .95fr; min-height:520px; overflow:hidden; border:1px solid var(--home-line); border-radius:30px; background:var(--home-surface); box-shadow:0 30px 80px rgba(18,28,38,.08); }
.machine-image { position:relative; display:grid; place-items:center; min-height:480px; overflow:hidden; background:linear-gradient(145deg,#e9eef2,#f9fbfc); }
.machine-image::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(17,24,32,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,32,.05) 1px,transparent 1px); background-size:40px 40px; mask-image:linear-gradient(to bottom,black,transparent 90%); }
.machine-image img { position:relative; z-index:2; width:88%; height:88%; object-fit:contain; transition:transform .45s ease; filter:drop-shadow(0 30px 30px rgba(0,0,0,.13)); }
.machine-feature:hover .machine-image img { transform:scale(1.035); }
.machine-number { position:absolute; z-index:3; top:24px; inset-inline-start:24px; color:rgba(17,24,32,.22); font:700 62px/1 "DM Sans",sans-serif; }
.machine-content { display:flex; flex-direction:column; justify-content:center; padding:clamp(34px,5vw,68px); }
.machine-kicker { color:var(--home-orange); font:700 10px/1 "DM Sans",sans-serif; letter-spacing:.16em; }
.machine-content h3 { margin:18px 0 16px; color:var(--home-ink); font-size:clamp(30px,3.6vw,50px); line-height:1.2; }
.machine-content p { margin:0; color:var(--home-muted); line-height:2; }
.spec-row { display:grid; grid-template-columns:repeat(3,1fr); margin-top:38px; border-top:1px solid var(--home-line); border-bottom:1px solid var(--home-line); }
.spec-row > span { padding:18px 12px; border-inline-end:1px solid var(--home-line); }
.spec-row > span:last-child{border-inline-end:0}.spec-row b{display:block;color:var(--home-ink);font:700 clamp(18px,2vw,26px)/1.1 "DM Sans",sans-serif}.spec-row small{display:block;margin-top:6px;color:var(--home-muted);font-size:10px}
.hot-feature { grid-template-columns:.95fr 1.05fr; }

/* ---------- Process ---------- */
.process-tech { position:relative; padding:clamp(110px,10vw,160px) 0; overflow:hidden; background:radial-gradient(circle at 15% 50%,rgba(255,106,26,.12),transparent 30%),radial-gradient(circle at 80% 20%,rgba(85,217,255,.08),transparent 30%),#080d12; color:#fff; }
.process-tech::before { content:""; position:absolute; inset:0; opacity:.2; background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size:70px 70px; }
.process-tech .container { position:relative; z-index:2; }
.process-track { position:relative; display:grid; grid-template-columns:repeat(7,1fr); gap:12px; margin-top:24px; }
.track-line { position:absolute; top:40px; left:6%; right:6%; height:1px; background:rgba(255,255,255,.14); overflow:hidden; }
.track-line span { display:block; width:14%; height:100%; background:linear-gradient(90deg,var(--home-orange),var(--home-cyan)); box-shadow:0 0 16px rgba(85,217,255,.4); transition:width .35s ease; }
.process-node { position:relative; z-index:2; min-height:170px; padding:0 8px 16px; color:#fff; text-align:center; border:0; background:transparent; cursor:pointer; }
.process-node i { display:grid; place-items:center; width:52px; height:52px; margin:14px auto 24px; border:1px solid rgba(255,255,255,.16); border-radius:50%; background:#0c131a; color:rgba(255,255,255,.45); font:600 10px/1 "DM Sans",sans-serif; transition:.3s; }
.process-node b { display:block; color:rgba(255,255,255,.78); font-size:13px; }
.process-node small { display:block; margin-top:7px; color:rgba(255,255,255,.3); font:600 8px/1 "DM Sans",sans-serif; letter-spacing:.12em; }
.process-node.active i,.process-node:hover i { border-color:var(--home-orange); color:#fff; background:var(--home-orange); box-shadow:0 0 0 9px rgba(255,106,26,.08),0 0 28px rgba(255,106,26,.3); }
.process-node.active b { color:#fff; }

/* ---------- Products ---------- */
.products-section { padding:clamp(100px,10vw,150px) 0; }
.product-mosaic { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:repeat(2,minmax(290px,1fr)); gap:18px; }
.product-tile { position:relative; overflow:hidden; min-height:300px; border-radius:26px; background:#e9edf0; }
.product-tile.tile-large { grid-row:1/3; min-height:650px; }
.product-tile img { width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.product-tile::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(3,7,10,.82)); }
.product-tile:hover img { transform:scale(1.04); }
.tile-overlay { position:absolute; z-index:2; inset:auto 24px 22px; display:grid; grid-template-columns:1fr auto; gap:5px 20px; align-items:end; color:#fff; }
.tile-overlay span { grid-column:1; color:rgba(255,255,255,.5); font:600 9px/1 "DM Sans",sans-serif; letter-spacing:.13em; }
.tile-overlay b { grid-column:1; font-size:18px; }
.tile-overlay i { grid-column:2; grid-row:1/3; display:grid; place-items:center; width:44px; height:44px; border:1px solid rgba(255,255,255,.22); border-radius:50%; font-style:normal; }

/* ---------- Factory ---------- */
.factory-explorer { padding:clamp(100px,10vw,150px) 0; }
.factory-console { display:grid; grid-template-columns:1.18fr .82fr; min-height:680px; overflow:hidden; border:1px solid var(--home-line); border-radius:30px; background:var(--home-surface); box-shadow:0 30px 90px rgba(17,24,32,.09); }
.factory-view { position:relative; min-height:680px; display:grid; place-items:center; overflow:hidden; background:#dfe5e9; }
.factory-view::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(7,12,17,.04),rgba(7,12,17,.18)); pointer-events:none; }
.factory-view img { width:100%; height:100%; object-fit:contain; padding:28px; transition:opacity .25s ease,transform .4s ease; }
.factory-hud { position:absolute; z-index:2; inset:26px; border:1px solid rgba(255,255,255,.28); pointer-events:none; }
.hud-corner { position:absolute; width:26px; height:26px; border-color:var(--home-orange); }
.tl{top:-1px;left:-1px;border-top:2px solid;border-left:2px solid}.tr{top:-1px;right:-1px;border-top:2px solid;border-right:2px solid}.bl{bottom:-1px;left:-1px;border-bottom:2px solid;border-left:2px solid}.br{bottom:-1px;right:-1px;border-bottom:2px solid;border-right:2px solid}
.hud-status { position:absolute; top:18px; left:18px; display:flex; align-items:center; gap:8px; padding:9px 11px; color:#fff; background:rgba(7,12,17,.68); backdrop-filter:blur(8px); font:600 8px/1 "DM Sans",sans-serif; letter-spacing:.1em; }
.hud-status i { width:7px; height:7px; border-radius:50%; background:#6ff1a2; box-shadow:0 0 12px #6ff1a2; }
.factory-panel { display:flex; flex-direction:column; border-inline-start:1px solid var(--home-line); }
.panel-top { display:flex; justify-content:space-between; padding:19px 22px; border-bottom:1px solid var(--home-line); color:var(--home-muted); font:600 9px/1 "DM Sans",sans-serif; letter-spacing:.11em; }
.factory-zones { display:grid; }
.factory-zones .zone { display:grid; grid-template-columns:42px 1fr auto; gap:13px; align-items:center; min-height:94px; padding:16px 20px; color:var(--home-ink); text-align:inherit; border:0; border-bottom:1px solid var(--home-line); border-radius:0; background:transparent; box-shadow:none; cursor:pointer; transition:.25s; }
.factory-zones .zone:hover,.factory-zones .zone.active { background:linear-gradient(90deg,var(--home-orange-soft,rgba(255,106,26,.1)),transparent); }
.factory-zones .zone.active { box-shadow:inset 3px 0 0 var(--home-orange); }
[dir="rtl"] .factory-zones .zone.active { box-shadow:inset -3px 0 0 var(--home-orange); }
.factory-zones .zone i { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--home-line); border-radius:50%; color:var(--home-orange); font:600 9px/1 "DM Sans",sans-serif; font-style:normal; }
.factory-zones .zone b { display:block; color:var(--home-ink); font-size:13px; }
.factory-zones .zone small { display:block; margin-top:4px; color:var(--home-muted); font:600 8px/1 "DM Sans",sans-serif; letter-spacing:.1em; }
.factory-zones .zone em { color:var(--home-muted); font-style:normal; }
.factory-detail { margin-top:auto; padding:28px 24px 32px; background:var(--home-dark); }
.factory-detail > span { color:var(--home-orange); font:700 9px/1 "DM Sans",sans-serif; letter-spacing:.13em; }
.factory-detail h3 { margin:14px 0 10px; color:#fff; font-size:clamp(25px,2.6vw,38px); }
.factory-detail p { margin:0; color:rgba(255,255,255,.5); line-height:1.9; }

/* ---------- Quality ---------- */
.quality-lab { position:relative; overflow:hidden; padding:clamp(110px,11vw,170px) 0; background:#080d12; color:#fff; }
.quality-grid-bg { position:absolute; inset:0; opacity:.18; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:58px 58px; mask-image:radial-gradient(circle at 70% 50%,black,transparent 70%); }
.quality-shell { position:relative; display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(50px,7vw,110px); align-items:center; }
.quality-copy .micro-title { margin-inline-start:12px; color:rgba(255,255,255,.45); }
.quality-copy h2 { margin:22px 0 18px; color:#fff; font-size:clamp(40px,5.6vw,72px); line-height:1.1; }
.quality-copy > p { color:rgba(255,255,255,.5); line-height:2; }
.quality-list { margin-top:38px; border-top:1px solid rgba(255,255,255,.1); }
.quality-list > div { display:grid; grid-template-columns:42px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.1); }
.quality-list i { color:var(--home-orange); font:600 10px/1.5 "DM Sans",sans-serif; font-style:normal; }
.quality-list b { display:block; color:#fff; font:600 10px/1 "DM Sans",sans-serif; letter-spacing:.12em; }
.quality-list small { display:block; margin-top:6px; color:rgba(255,255,255,.38); }
.quality-visual { position:relative; min-height:620px; display:grid; place-items:center; }
.quality-visual::before { content:""; position:absolute; width:78%; height:78%; border-radius:50%; background:radial-gradient(circle,rgba(85,217,255,.07),transparent 60%); }
.quality-visual img { position:relative; z-index:2; width:70%; max-height:470px; object-fit:contain; filter:drop-shadow(0 36px 55px rgba(0,0,0,.45)); }
.scanner-ring { position:absolute; border:1px solid rgba(85,217,255,.12); border-radius:50%; animation:ringPulse 4s ease-in-out infinite; }.ring1{width:82%;height:82%}.ring2{width:62%;height:62%;animation-delay:.7s}.ring3{width:44%;height:44%;animation-delay:1.3s}@keyframes ringPulse{50%{transform:scale(1.03);border-color:rgba(255,106,26,.22)}}
.laser { position:absolute; z-index:3; left:18%; right:18%; height:1px; top:24%; background:linear-gradient(90deg,transparent,var(--home-orange),transparent); box-shadow:0 0 18px var(--home-orange); animation:laserMove 3.4s linear infinite; }@keyframes laserMove{50%{top:76%}}
.scan-tag { position:absolute; z-index:4; padding:9px 11px; color:#fff; border:1px solid rgba(255,255,255,.14); background:rgba(11,17,23,.75); backdrop-filter:blur(8px); font:600 8px/1 "DM Sans",sans-serif; letter-spacing:.1em; }.t1{left:4%;top:27%}.t2{right:5%;top:45%}.t3{left:15%;bottom:20%}

/* ---------- CTA ---------- */
.final-cta { padding:80px 0 110px; }
.cta-shell { position:relative; overflow:hidden; display:flex; align-items:center; justify-content:space-between; gap:34px; padding:clamp(34px,5vw,62px); border-radius:30px; color:#fff; background:linear-gradient(120deg,#0b1117 0%,#121c25 62%,#2a180e 100%); box-shadow:0 35px 90px rgba(15,24,32,.16); }
.cta-shell::after { content:""; position:absolute; width:420px; height:420px; right:-160px; top:-210px; border-radius:50%; background:radial-gradient(circle,rgba(255,106,26,.28),transparent 70%); }
.cta-shell > * { position:relative; z-index:2; }
.cta-shell .micro-title { color:rgba(255,255,255,.42); }
.cta-shell h2 { margin:12px 0 8px; color:#fff; font-size:clamp(32px,4vw,54px); }
.cta-shell p { margin:0; color:rgba(255,255,255,.5); }
.tech-btn.large { min-width:220px; }

/* ---------- Theme ---------- */
html[data-theme="dark"] .capabilities-section,
html[data-theme="dark"] .products-section,
html[data-theme="dark"] .factory-explorer,
html[data-theme="dark"] .final-cta { background:var(--home-bg); }
html[data-theme="dark"] .machine-feature,
html[data-theme="dark"] .factory-console { background:var(--home-surface); border-color:var(--home-line); }
html[data-theme="dark"] .machine-image { background:linear-gradient(145deg,#151e26,#0c1218); }
html[data-theme="dark"] .machine-image::before { background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); }
html[data-theme="dark"] .factory-view { background:#151d24; }

/* ---------- Responsive ---------- */
@media (max-width: 1050px) {
    .hero-shell { grid-template-columns:1fr; padding-top:40px; }
    .hero-copy { max-width:820px; }
    .hero-console { width:min(680px,100%); }
    .section-intro { grid-template-columns:.35fr 1fr; }
    .section-intro > p { grid-column:2; }
    .factory-console,.quality-shell { grid-template-columns:1fr; }
    .factory-panel { border-inline-start:0; border-top:1px solid var(--home-line); }
    .factory-view { min-height:540px; }
}
@media (max-width: 820px) {
    .home-page .container { width:min(100% - 36px,1240px); }
    .hero-tech { padding-top:120px; }
    .hero-copy h1 { font-size:clamp(48px,12vw,78px); }
    .hero-proof { max-width:none; }
    .machine-feature,.hot-feature { grid-template-columns:1fr; }
    .hot-feature .machine-content { order:2; }.hot-feature .machine-image{order:1}
    .process-track { grid-template-columns:repeat(7,150px); overflow-x:auto; padding-bottom:10px; }
    .track-line { left:55px; right:auto; width:900px; }
    .product-mosaic { grid-template-columns:1fr; grid-template-rows:auto; }
    .product-tile.tile-large { grid-row:auto; min-height:500px; }
    .product-tile { min-height:380px; }
    .quality-visual { min-height:520px; }
    .cta-shell { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 580px) {
    .home-page .container { width:calc(100% - 28px); }
    .hero-copy h1 { font-size:46px; }
    .hero-proof { grid-template-columns:1fr; }
    .hero-proof div { border-inline-end:0; border-bottom:1px solid rgba(255,255,255,.13); }.hero-proof div:last-child{border-bottom:0}
    .console-part { height:320px; }
    .console-data { grid-template-columns:1fr; }.console-data div{border-inline-end:0;border-bottom:1px solid rgba(255,255,255,.09)}.console-data div:last-child{border-bottom:0}
    .section-intro { grid-template-columns:1fr; gap:20px; }
    .section-intro > p { grid-column:auto; }
    .section-intro h2 { font-size:38px; }
    .machine-image { min-height:340px; }
    .machine-content { padding:30px 24px; }
    .spec-row { grid-template-columns:1fr; }.spec-row > span{border-inline-end:0;border-bottom:1px solid var(--home-line)}.spec-row > span:last-child{border-bottom:0}
    .product-tile,.product-tile.tile-large { min-height:360px; }
    .factory-view { min-height:360px; }.factory-view img{padding:12px}
    .factory-zones .zone { grid-template-columns:36px 1fr auto; padding:14px 15px; }
    .quality-visual { min-height:420px; }.scan-tag{display:none}
}


/* ===== MOBILE PROCESS + LIGHT NAV FIX ===== */

/* In Light Mode the Home header adapts to the section underneath it. */
html[data-theme="light"] .home-header:not(.over-dark) {
    background: rgba(248, 250, 252, 0.88);
    border-bottom-color: rgba(17, 24, 32, 0.09);
    box-shadow: 0 8px 30px rgba(17, 24, 32, 0.06);
}

html[data-theme="light"] .home-header:not(.over-dark) .brand,
html[data-theme="light"] .home-header:not(.over-dark) .nav-links a {
    color: var(--home-ink);
}

html[data-theme="light"] .home-header:not(.over-dark) .brand small {
    color: var(--home-muted);
}

html[data-theme="light"] .home-header:not(.over-dark) .nav-links {
    border-color: rgba(17, 24, 32, 0.09);
    background: rgba(255, 255, 255, 0.70);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.70);
}

html[data-theme="light"] .home-header:not(.over-dark) .nav-links a:hover,
html[data-theme="light"] .home-header:not(.over-dark) .nav-links a.active {
    color: var(--home-ink);
    background: rgba(17, 24, 32, 0.06);
}

html[data-theme="light"] .home-header:not(.over-dark) .icon-btn {
    color: var(--home-ink);
    border-color: rgba(17, 24, 32, 0.11);
    background: rgba(255, 255, 255, 0.72);
}

html[data-theme="light"] .home-header:not(.over-dark) .brand img {
    border-color: rgba(17, 24, 32, 0.09);
    background: #ffffff;
}

/* Dark sections: always force a readable dark glass navbar in Light Mode. */
html[data-theme="light"] .home-header.over-dark {
    background: rgba(7, 12, 17, 0.86);
    border-bottom-color: rgba(255, 255, 255, 0.10);
    box-shadow: 0 10px 34px rgba(0, 0, 0, 0.18);
}

html[data-theme="light"] .home-header.over-dark .brand,
html[data-theme="light"] .home-header.over-dark .nav-links a,
html[data-theme="light"] .home-header.over-dark .icon-btn {
    color: #ffffff;
}

html[data-theme="light"] .home-header.over-dark .brand small {
    color: rgba(255, 255, 255, 0.58);
}

html[data-theme="light"] .home-header.over-dark .nav-links {
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.055);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

html[data-theme="light"] .home-header.over-dark .nav-links a:hover,
html[data-theme="light"] .home-header.over-dark .nav-links a.active {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.10);
}

html[data-theme="light"] .home-header.over-dark .icon-btn {
    border-color: rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
}

/* Mobile process timeline: vertical instead of a broken horizontal rail. */
@media (max-width: 820px) {
    .process-tech {
        padding-block: 92px;
    }

    .process-track {
        position: relative;
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        width: 100%;
        margin-top: 32px;
        padding: 0;
        overflow: visible;
    }

    .track-line {
        top: 28px;
        bottom: 28px;
        left: auto;
        right: 25px;
        width: 2px;
        height: auto;
        overflow: hidden;
        background: rgba(255, 255, 255, 0.13);
    }

    [dir="ltr"] .track-line {
        left: 25px;
        right: auto;
    }

    .track-line span {
        position: absolute;
        inset: 0 0 auto;
        width: 100% !important;
        height: 14%;
        background: linear-gradient(180deg, var(--home-orange), var(--home-cyan));
        box-shadow: 0 0 16px rgba(85, 217, 255, 0.35);
        transition: height 0.35s ease;
    }

    .process-node {
        display: grid;
        grid-template-columns: 52px minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 18px;
        min-height: 92px;
        padding: 12px 0 18px;
        text-align: start;
    }

    .process-node i {
        grid-column: 1;
        grid-row: 1 / 3;
        width: 52px;
        height: 52px;
        margin: 0;
        align-self: start;
    }

    [dir="rtl"] .process-node i {
        grid-column: 1;
    }

    .process-node b {
        grid-column: 2;
        align-self: end;
        padding-top: 4px;
        font-size: 14px;
        line-height: 1.7;
    }

    .process-node small {
        grid-column: 2;
        margin-top: 5px;
        line-height: 1.6;
    }
}

@media (max-width: 580px) {
    .process-tech {
        padding-block: 78px;
    }

    .process-track {
        margin-top: 24px;
    }

    .track-line {
        right: 23px;
    }

    [dir="ltr"] .track-line {
        left: 23px;
        right: auto;
    }

    .process-node {
        grid-template-columns: 48px minmax(0, 1fr);
        column-gap: 15px;
        min-height: 86px;
        padding-bottom: 16px;
    }

    .process-node i {
        width: 48px;
        height: 48px;
    }
}


/* ===== HERO BLACK BACKGROUND / VIDEO REMOVED ===== */

/* The homepage Hero is intentionally static now: no video, no poster image. */
.hero-tech {
    background:
        radial-gradient(circle at 82% 20%, rgba(255, 106, 26, 0.08), transparent 28%),
        radial-gradient(circle at 18% 78%, rgba(76, 214, 255, 0.055), transparent 30%),
        #050607 !important;
}

.hero-tech video,
.hero-video,
.hero-tech .hero-video,
.hero-tech > video {
    display: none !important;
}

.hero-tech::before {
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.12), rgba(0, 0, 0, 0.32)),
        linear-gradient(90deg, rgba(0, 0, 0, 0.18), transparent 55%);

    }
    .fa-only em {
    display: block;
    margin-top: 25px;
}
