.engine-page { background: #090c11; }
.engine-page main { overflow: hidden; }
.engine-hero { min-height: 680px; display: flex; align-items: flex-end; padding: 130px 0 90px; background: radial-gradient(circle at 76% 28%, rgba(46,125,255,.18), transparent 25%), linear-gradient(145deg,#0b0e13 0%,#111722 100%); }
.engine-grid-glow { position:absolute; inset:0; opacity:.2; background-image: linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to bottom,black,transparent 90%); }
.engine-hero-inner { position:relative; display:grid; grid-template-columns:minmax(0,1fr); gap:54px; }
.engine-hero-inner > div:first-child { max-width:1050px; }
.engine-kicker { display:flex; align-items:center; gap:13px; margin-bottom:26px; font:500 11px/1 "DM Mono",monospace; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-dim); }
.engine-kicker span { width:34px; height:1px; background:#3f8cff; }
.engine-hero h1 { font-family:"Barlow Condensed",sans-serif; font-weight:800; letter-spacing:-.045em; text-transform:uppercase; line-height:.82; }
.engine-hero h1 { font-size:clamp(5rem,11vw,10rem); }
.engine-hero h1 em { color:#3f8cff; }
.engine-hero p { max-width:690px; margin-top:34px; font-size:1.1rem; color:var(--ink-dim); }
.engine-range { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.engine-range div { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding:24px 28px; border-right:1px solid var(--line-strong); }
.engine-range div:first-child { padding-left:0; }
.engine-range div:last-child { padding-right:0; border-right:0; }
.engine-range strong { font:700 2.4rem/1 "Barlow Condensed",sans-serif; }
.engine-range span { font:400 11px/1.3 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint); text-align:right; }
.engine-catalog,.engine-compare-section { padding:110px 0; }
.engine-section-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,420px); gap:50px; align-items:end; margin-bottom:42px; }
.engine-section-head h1 { font-size:clamp(2rem,5vw,3.5rem); margin-top:16px; }
.engine-section-head h2 { margin-top:16px; }
.engine-section-head p { color:var(--ink-dim); }
.engine-toolbar { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:34px; }
.engine-filter { min-height:42px; padding:0 16px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--ink-dim); transition:.18s ease; }
.engine-filter:hover { color:var(--text); border-color:var(--line-strong); }
.engine-filter.active { color:#0b0f14; background:var(--text); border-color:var(--text); }
.engine-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.engine-card { position:relative; padding:28px; border:1px solid var(--line); border-radius:24px; background:linear-gradient(150deg,rgba(255,255,255,.055),rgba(255,255,255,.018)); overflow:hidden; transition:transform .25s ease,border-color .25s ease; }
.engine-card:hover { transform:translateY(-4px); border-color:rgba(83,146,255,.35); }
.engine-card-top { display:flex; justify-content:space-between; gap:20px; align-items:start; }
.engine-card-series { font:400 10px/1.2 "DM Mono",monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-faint); }
.engine-card h3 { margin-top:8px; font:800 clamp(2.8rem,6vw,5.2rem)/.85 "Barlow Condensed",sans-serif; letter-spacing:-.04em; }
.compare-toggle { display:flex; align-items:center; gap:8px; margin:0; color:var(--ink-dim); font-size:12px; }
.compare-toggle input { width:17px; height:17px; padding:0; accent-color:#3f8cff; }
.engine-card-visual { position:relative; height:290px; display:flex; align-items:center; justify-content:center; margin:12px -10px 12px; }
.engine-card-visual::before { content:""; position:absolute; width:250px; height:250px; border-radius:50%; background:radial-gradient(circle,rgba(55,129,255,.17),transparent 66%); }
.engine-card-visual img { position:relative; z-index:2; max-width:72%; max-height:88%; object-fit:contain; filter:drop-shadow(0 25px 24px rgba(0,0,0,.42)); transition:transform .3s ease; }
.engine-card:hover .engine-card-visual img { transform:scale(1.025); }
.engine-card-power { position:absolute; left:0; bottom:6px; font:800 5.4rem/1 "Barlow Condensed",sans-serif; color:rgba(255,255,255,.06); }
.engine-card-unit { position:absolute; left:105px; bottom:19px; color:#3f8cff; font:500 12px/1 "DM Mono",monospace; }
.engine-card > p { min-height:52px; color:var(--ink-dim); font-size:14px; }
.engine-card-specs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:22px; border-top:1px solid var(--line); }
.engine-card-specs div { padding:15px 0; border-bottom:1px solid var(--line); }
.engine-card-specs div:nth-child(odd) { padding-right:15px; }
.engine-card-specs div:nth-child(even) { padding-left:15px; border-left:1px solid var(--line); }
.engine-card-specs span { display:block; font:400 10px/1.3 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint); }
.engine-card-specs strong { display:block; margin-top:6px; font-size:14px; font-weight:500; }
.engine-card-link { display:flex; justify-content:space-between; align-items:center; margin-top:22px; font-weight:500; }
.engine-card-link span { color:#3f8cff; font-size:1.4rem; }
.engine-compare-section { background:#0d1219; border-top:1px solid var(--line); }
.compare-shell { border:1px solid var(--line); border-radius:24px; overflow:hidden; background:rgba(255,255,255,.025); }
.compare-empty { padding:60px; text-align:center; }
.compare-empty span { display:block; color:#3f8cff; font:500 11px "DM Mono",monospace; }
.compare-empty strong { display:block; margin:12px 0 8px; font:700 1.5rem "Syne",sans-serif; }
.compare-empty p { color:var(--ink-faint); }
.compare-row { display:grid; grid-template-columns:minmax(150px,.8fr) repeat(var(--compare-count),minmax(150px,1fr)); }
.compare-row > * { padding:17px 20px; border-bottom:1px solid var(--line); border-left:1px solid var(--line); }
.compare-row > :first-child { border-left:0; color:var(--ink-faint); }
.compare-models { background:rgba(255,255,255,.035); }
.compare-models strong { font:700 1.5rem "Barlow Condensed",sans-serif; color:var(--text); }
@media(max-width:980px) {
  .engine-hero-inner,.engine-section-head { grid-template-columns:minmax(0,1fr); }
  .engine-hero-inner>div { min-width:0; }
  .engine-range { max-width:520px; }
}
@media(max-width:760px) {
  .engine-card-grid { grid-template-columns:1fr; }
  .engine-card { padding:22px; }
  .engine-card-visual { height:250px; }
  .compare-shell { overflow-x:auto; }
  .compare-table { min-width:680px; }
  .engine-hero { min-height:620px; padding-top:100px; }
  .engine-hero h1 { font-size:clamp(3.45rem,14.5vw,6rem); }
  .engine-range { grid-template-columns:1fr; max-width:none; }
  .engine-range div,.engine-range div:first-child,.engine-range div:last-child { padding:18px 0; border-right:0; border-bottom:1px solid var(--line-strong); }
  .engine-range div:last-child { border-bottom:0; }
}

/* A single product overview avoids the global section padding between facts. */
.engine-product { padding:18px 0 40px; }
.engine-product-bar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.engine-back { color:var(--ink-dim); font-size:14px; }
.engine-back:hover { color:var(--text); }
.engine-table-footer { display:flex; justify-content:flex-end; padding-top:8px; }
.engine-table-footer .engine-datasheet-button { min-height:32px; max-width:100%; padding:5px 11px; border-radius:6px; border-color:#3c4148; background:#262a30; color:#d8dbe0; font-size:13px; line-height:1.4; }
.engine-table-footer .engine-datasheet-button:hover { background:#363c44; border-color:#69717b; color:#fff; }
.engine-table-footer .engine-datasheet-button:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.engine-product-grid { display:grid; grid-template-columns:minmax(260px,.9fr) minmax(0,1.7fr); gap:32px; align-items:start; }
.engine-profile { min-width:0; }
.engine-profile .engine-card-series { font-size:12px; }
.engine-profile h1 { margin-top:8px; font:800 52px/1 'Barlow Condensed',sans-serif; letter-spacing:-.035em; }
.engine-product-image { display:flex; justify-content:center; align-items:center; height:clamp(240px,33vh,315px); margin:10px 0; background:radial-gradient(ellipse,rgba(55,129,255,.1),transparent 68%); }
.engine-product-image img { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 14px 18px rgba(0,0,0,.3)); }
.engine-product-summary { margin:0; color:var(--ink-dim); font-size:15px; line-height:1.5; }
.engine-product h2 { margin:0; font-size:21px; line-height:1.3; letter-spacing:-.025em; }
.engine-product-data { min-width:0; }
.engine-product dl { margin:0; }
.engine-product dd { margin:0; overflow-wrap:anywhere; }
.engine-product-metrics { display:grid; grid-template-columns:1.6fr 1fr .8fr; border-bottom:1px solid var(--line-strong); }
.engine-product-metrics > div { padding:12px 14px 12px 0; }
.engine-product-metrics dt { color:var(--ink-dim); font-size:13px; }
.engine-product-metrics dd { margin-top:4px; font-size:20px; font-weight:600; line-height:1.3; }
.engine-product-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
.engine-product-facts > div { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:8px 0; border-bottom:1px solid var(--line); font-size:15px; line-height:1.4; }
.engine-product-facts dt { color:var(--ink-dim); flex:0 1 48%; }
.engine-product-facts dd { text-align:right; font-weight:500; }
.engine-product-facts .engine-fact-wide { grid-column:1/-1; }
.engine-product-facts .engine-fact-wide dt { flex:0 0 auto; }
.engine-product .engine-product-capabilities { margin-top:12px; padding:4px 12px; border-left:2px solid #3f8cff; background:rgba(255,255,255,.025); }
.engine-product-capabilities > div { display:grid; grid-template-columns:145px minmax(0,1fr); gap:12px; padding:6px 0; font-size:14px; line-height:1.45; }
.engine-product-capabilities dt { color:var(--ink-dim); }
.engine-product-capabilities dd { color:var(--text); }
.engine-geometry { margin-top:24px; padding-top:18px; border-top:1px solid var(--line-strong); }
.engine-geometry h2 { margin-bottom:14px; }
.drawing-panel { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#f1f2f3; }
.drawing-panel img { width:100%; max-height:860px; object-fit:contain; }
@media(max-width:980px) {
  .engine-product-grid { grid-template-columns:minmax(200px,.7fr) minmax(0,1.5fr); gap:20px; }
  .engine-product-facts { column-gap:16px; }
  .engine-product-facts > div { flex-direction:column; align-items:flex-start; gap:3px; }
  .engine-product-facts dd { text-align:left; }
  .engine-product-metrics dd { font-size:18px; }
}
@media(max-width:700px) {
  .engine-product { padding-top:14px; }
  .engine-product-bar { align-items:flex-start; flex-direction:column; gap:10px; }
  .engine-product-grid { grid-template-columns:1fr; gap:20px; }
  .engine-profile { display:grid; grid-template-columns:minmax(0,1fr) 155px; gap:10px 16px; align-items:center; }
  .engine-profile-heading { grid-column:1; }
  .engine-profile h1 { font-size:42px; }
  .engine-product-summary { grid-column:1; font-size:14px; }
  .engine-product-image { grid-column:2; grid-row:1/3; height:185px; margin:0; }
  .engine-product-capabilities > div { grid-template-columns:115px minmax(0,1fr); }
}
@media(max-width:380px) {
  .engine-profile { grid-template-columns:minmax(0,1fr) 105px; }
  .engine-product-metrics { grid-template-columns:1.4fr 1fr .8fr; }
  .engine-product-metrics dd { font-size:16px; }
}
