:root {
  --black: #101419;
  --black-2: #171c22;
  --charcoal: #242a31;
  --yellow: #f5b400;
  --yellow-2: #ffc228;
  --blue: #0d376f;
  --text: #171a1f;
  --muted: #66707d;
  --line: #dde2e8;
  --paper: #f5f7fa;
  --card: #fff;
  --shadow: 0 16px 38px rgba(13, 22, 32, .14);
  font-family: Inter, Arial, Helvetica, sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; color: var(--text); background: var(--paper); }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, select, textarea { font: inherit; }
.wrap { width: min(1280px, calc(100% - 56px)); margin: 0 auto; }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.icon-svg { width: 1em; height: 1em; display: block; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.ui-icon { width: 100%; height: 100%; display: block; object-fit: contain; }
.icon-circle, .filter-icon, .step-icon { display: grid; place-items: center; border: 2px solid currentColor; border-radius: 50%; color: var(--blue); background: #fff; }
.icon-circle { width: 42px; height: 42px; margin: 0 auto 18px; }
.icon-circle .icon-svg { width: 24px; height: 24px; }
.top-strip { background: var(--yellow); color: #161106; font-weight: 850; font-size: 12px; border-top: 1px solid rgba(255,255,255,.22); }
.top-strip .trust-row { min-height: 28px; display: flex; align-items: center; justify-content: flex-start; gap: 16px; white-space: nowrap; }
.trust-item { display: inline-flex; align-items: center; gap: 6px; line-height: 1; }
.trust-item .icon-svg { width: 13px; height: 13px; stroke-width: 2.2; }
.trust-dot { width: 4px; height: 4px; transform: rotate(45deg); background: rgba(22,17,6,.58); display: inline-block; }
.main-header { background: linear-gradient(180deg, #12171d 0%, #0d1218 100%); color: #fff; border-bottom: 1px solid rgba(255,255,255,.06); }
.nav-row { min-height: 78px; display: flex; align-items: center; gap: 34px; }
.logo { display: inline-flex; flex-direction: column; justify-content: center; line-height: .82; min-width: 252px; color: #fff; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; text-transform: uppercase; }
.logo strong { display: block; font-size: 34px; font-weight: 900; letter-spacing: .7px; text-shadow: 2px 2px 0 rgba(18,53,103,.95); }
.logo span { color: var(--yellow); text-shadow: 2px 2px 0 rgba(18,53,103,.95); }
.logo small { display: block; color: #e7eef6; font-size: 9px; letter-spacing: 5px; margin-left: 4px; margin-top: 8px; line-height: 1; }
.nav { display: flex; align-items: center; gap: 27px; font-size: 14px; font-weight: 850; flex: 1; }
.nav a { color: #f0f4f8; }
.nav a:hover { color: var(--yellow); }
.header-tools { display: flex; align-items: center; gap: 20px; }
.header-search { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; border-radius: 50%; transition: background .18s ease, color .18s ease; }
.header-search:hover { color: var(--yellow); background: rgba(255,255,255,.06); }
.header-search .icon-svg { width: 26px; height: 26px; stroke-width: 2.1; }
.search-icon { width: 34px; height: 34px; border: 3px solid #fff; border-radius: 50%; position: relative; opacity: .94; }
.search-icon:after { content: ""; width: 13px; height: 3px; background: #fff; position: absolute; right: -9px; bottom: 0; transform: rotate(45deg); border-radius: 8px; }
.btn { border: 0; border-radius: 5px; min-height: 44px; padding: 0 24px; background: var(--yellow); color: #111; font-weight: 900; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.btn:hover { background: var(--yellow-2); }
.btn.dark { background: var(--black); color: #fff; }
.btn.outline { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.55); }
.hero { min-height: 560px; background: linear-gradient(90deg, rgba(7,10,13,.9) 0%, rgba(7,10,13,.68) 42%, rgba(7,10,13,.16) 100%), url("/assets/images/hero-hitachi-zx490.jpg") center 46%/cover; color: #fff; position: relative; }
.hero .wrap { padding: 64px 0 116px; }
.hero h1 { margin: 0; max-width: 520px; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 80px; line-height: .84; font-weight: 900; letter-spacing: .2px; text-transform: uppercase; text-wrap: balance; }
.hero h1 .title-line { color: #fff; display: block; }
.hero h1 .accent { color: var(--yellow); }
.hero p { font-size: 18px; line-height: 1.36; max-width: 525px; margin: 18px 0 20px; color: #eef3f8; font-weight: 750; text-shadow: 0 1px 2px rgba(0,0,0,.35); }
.search-panel { width: min(960px, 100%); background: #fff; border-radius: 7px; padding: 14px; display: grid; grid-template-columns: 1.15fr 1fr 1fr 1fr auto; gap: 10px; box-shadow: var(--shadow); align-items: end; }
.search-panel label, .inventory-filter label { display: grid; gap: 6px; color: #111821; font-size: 12px; font-weight: 850; }
.search-panel label span, .inventory-filter label span { color: #56616e; text-transform: uppercase; letter-spacing: .4px; }
.search-panel select, .search-panel input, .inventory-filter input, .inventory-filter select, .form input, .form textarea, .subscribe input { min-height: 46px; border: 1px solid #d8dde4; border-radius: 4px; padding: 0 13px; color: #1b2026; background: #fff; width: 100%; }
.search-panel select, .inventory-filter select { font-weight: 800; text-overflow: ellipsis; }
.search-panel option[hidden], .inventory-filter option[hidden] { display: none; }
.form textarea { min-height: 120px; padding: 12px 13px; resize: vertical; }
.hero-benefits { display: flex; gap: 46px; margin-top: 26px; color: #fff; }
.hero-benefits div { display: grid; grid-template-columns: 42px 1fr; gap: 11px; align-items: center; }
.hero-benefits .icon-circle { color: #fff; background: rgba(9,13,18,.2); margin: 0; }
.hero-benefits .benefit-icon { padding: 7px; border-color: rgba(255,255,255,.72); box-shadow: inset 0 0 0 1px rgba(255,255,255,.15), 0 10px 22px rgba(0,0,0,.22); }
.hero-benefits b { display: block; font-size: 14px; }
.hero-benefits span { font-size: 13px; color: #d8dee7; }
.filter-bar { margin-top: -62px; position: relative; z-index: 5; }
.filter-box { background: #242a31; color: #fff; border-radius: 6px; display: grid; grid-template-columns: repeat(5, 1fr); box-shadow: var(--shadow); overflow: hidden; }
.filter-item { padding: 22px 24px; display: grid; grid-template-columns: 38px 1fr; gap: 14px; align-items: center; border-right: 1px solid rgba(255,255,255,.14); }
.filter-item:last-child { border-right: 0; }
.filter-icon { width: 44px; height: 44px; color: #f5b400; background: transparent; border: 0; border-radius: 0; box-shadow: none; flex-shrink: 0; padding: 2px; }
.filter-icon:before { content: none; }
.filter-icon .icon-svg { width: 32px; height: 32px; stroke-width: 2.25; filter: none; transform: none; }
.filter-item:nth-child(2) .filter-icon,
.filter-item:nth-child(4) .filter-icon { color: #a9d7ff; }
.filter-item:nth-child(3) .filter-icon { color: var(--yellow); }
.filter-item:nth-child(5) .filter-icon { color: #e7eef6; }
.filter-item b { display: block; font-size: 14px; }
.filter-item span { display: block; font-size: 12px; color: #c8d0d8; margin-top: 3px; }
.section { padding: 70px 0; }
.section.white { background: #fff; }
.section.light { background: #f8fafc; }
.section-head { display: flex; justify-content: space-between; gap: 22px; align-items: end; margin-bottom: 22px; }
.section-head h2 { margin: 0; text-transform: uppercase; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 34px; line-height: .95; font-weight: 900; letter-spacing: .2px; }
.view-link { color: var(--blue); font-weight: 850; font-size: 14px; }
.inventory-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; }
.featured-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.machine-card { background: #fff; border: 1px solid var(--line); border-radius: 7px; overflow: hidden; box-shadow: 0 6px 16px rgba(16,20,25,.08); display: flex; flex-direction: column; }
.machine-photo { height: 220px; position: relative; background: #dbe2ea; overflow: hidden; display: block; }
.machine-photo img { width: 100%; height: 100%; object-fit: cover; }
.machine-photo-placeholder { display: grid; place-items: center; align-content: center; gap: 10px; background: linear-gradient(135deg, #20272f 0%, #151a20 46%, #2f3740 100%); color: #fff; }
.machine-photo-placeholder:before { content: ""; position: absolute; inset: 14px; border: 1px dashed rgba(255,255,255,.18); border-radius: 5px; }
.photo-placeholder-mark { color: rgba(255,255,255,.48); font-size: 11px; font-weight: 900; letter-spacing: 1.6px; position: relative; z-index: 1; }
.photo-placeholder-model { max-width: calc(100% - 42px); color: #fff; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 34px; line-height: .9; font-weight: 900; text-align: center; text-transform: uppercase; position: relative; z-index: 1; text-wrap: balance; }
.brand-tag { position: absolute; top: 9px; right: 9px; background: #111; color: #fff; border-radius: 2px; padding: 4px 7px; font-weight: 950; font-size: 12px; }
.machine-status { position: absolute; left: 9px; bottom: 9px; background: rgba(16,20,25,.86); color: #fff; border-radius: 3px; padding: 5px 8px; font-size: 12px; font-weight: 850; }
.machine-body { padding: 16px; display: flex; flex-direction: column; flex: 1; }
.machine-body h3 { font-size: 16px; margin: 0 0 12px; min-height: 42px; }
.machine-body h3 a:hover { color: var(--blue); }
.machine-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: #697481; font-size: 12px; margin-bottom: 14px; }
.price { font-size: 19px; font-weight: 950; margin-bottom: 12px; }
.price-on-request { font-size: 16px; color: var(--blue); }
.machine-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: auto; }
.machine-card .btn { width: 100%; min-height: 38px; font-size: 13px; padding: 0 12px; }
.btn.ghost { background: #eef2f6; color: #111821; }
.mini-proof { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; justify-items: center; padding-top: 24px; color: #303842; font-size: 14px; font-weight: 750; }
.mini-proof span { display: inline-flex; align-items: center; gap: 9px; }
.mini-proof .icon-svg { width: 18px; height: 18px; color: var(--blue); stroke-width: 2; }
.why { background: radial-gradient(circle at 82% 20%, rgba(16,20,25,.06), transparent 26%), #f7f9fb; border-top: 1px solid #edf0f4; border-bottom: 1px solid #edf0f4; }
.center-title { text-align: center; margin-bottom: 30px; }
.center-title h2 { text-transform: uppercase; margin: 0; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 34px; line-height: .95; font-weight: 900; letter-spacing: .2px; }
.center-title:after { content: ""; display: block; width: 48px; height: 3px; background: var(--yellow); margin: 14px auto 0; }
.why-grid { display: grid; grid-template-columns: repeat(5, 1fr); background: #fff; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.why-card { padding: 30px 22px; text-align: center; border-right: 1px solid var(--line); min-height: 205px; }
.why-card:last-child { border-right: 0; }
.why-card .icon-circle { width: 48px; height: 48px; color: var(--blue); background: #fff; border-color: var(--blue); }
.why-card .icon-circle .icon-svg { width: 27px; height: 27px; }
.line-icon {
  position: relative;
  font-size: 0;
}
.line-icon.shield:before { content: "OK"; font-size: 16px; }
.line-icon.globe:before { content: "GL"; font-size: 15px; }
.line-icon.check:before { content: "OK"; font-size: 16px; }
.line-icon.dollar:before { content: "$"; font-size: 22px; }
.line-icon.headset:before { content: "CS"; font-size: 15px; }
.why-card h3 { margin: 0 0 10px; font-size: 15px; }
.why-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
.brand-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.brand-card { min-height: 132px; background: #fff; border: 1px solid #d8dee6; border-radius: 7px; display: grid; place-items: center; padding: 28px 36px; box-shadow: 0 12px 28px rgba(16,20,25,.08); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.brand-card:hover { transform: translateY(-2px); border-color: #b9c3cf; box-shadow: 0 18px 34px rgba(16,20,25,.12); }
.brand-card img { width: 100%; height: 74px; object-fit: contain; }
.brand-card .brand-count { margin-top: 10px; color: #586473; font-size: 12px; font-weight: 850; }
.brand-grid-expanded { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.brand-text-card { color: #111821; gap: 8px; text-align: center; text-transform: uppercase; }
.brand-text-card strong { font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 42px; line-height: .9; }
.brand-text-card span { color: #66707d; font-size: 13px; font-weight: 850; text-transform: none; }
.brand-cat img { max-width: 180px; }
.brand-komatsu img { max-width: 245px; }
.brand-hitachi img { max-width: 235px; }
.brand-hyundai img { max-width: 245px; }
.brand-volvo img { max-width: 190px; }
.brand-doosan img { max-width: 230px; }
.brand-kobelco img { max-width: 230px; }
.brand-kubota img { max-width: 230px; }
.brand-sany img { max-width: 240px; }
.brand-cta { display: flex; justify-content: center; margin-top: 24px; }
.category-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.category-card { min-height: 150px; background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 24px; box-shadow: 0 10px 24px rgba(16,20,25,.08); display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.category-card:hover { border-color: #b9c3cf; box-shadow: 0 16px 32px rgba(16,20,25,.12); transform: translateY(-2px); }
.category-card strong { font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 32px; line-height: .95; text-transform: uppercase; }
.category-card span { color: #66707d; font-weight: 850; }
.category-kicker { color: var(--yellow) !important; text-transform: uppercase; letter-spacing: .5px; font-size: 12px; }
.works { background: #fff; }
.steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 42px; align-items: start; }
.step { display: grid; grid-template-columns: 78px 1fr; gap: 16px; align-items: center; position: relative; }
.step:not(:last-child):after { content: "..."; position: absolute; right: -32px; color: #b6bec8; letter-spacing: 7px; }
.step-icon { width: 70px; height: 70px; color: #1a3f78; background: #fff; border-color: #d9e0e8; font-size: 26px; position: relative; }
.step-icon .ui-icon { width: 44px; height: 44px; }
.step-icon .icon-svg { width: 32px; height: 32px; stroke-width: 1.75; }
.num { position: absolute; right: -4px; bottom: -4px; width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: var(--yellow); color: #111; font-size: 12px; font-weight: 950; }
.step b { display: block; margin-bottom: 5px; }
.step p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.42; }
.testimonials { border-top: 1px solid #edf1f5; border-bottom: 1px solid #edf1f5; }
.reviews { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 18px; align-items: stretch; position: relative; }
.review-title { padding: 20px 0; display: flex; flex-direction: column; justify-content: center; }
.review-title h2 { text-transform: uppercase; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 34px; line-height: .95; margin: 0 0 16px; max-width: 190px; }
.review-carousel { position: relative; overflow: hidden; padding: 0 6px; }
.review-track { --review-index: 0; display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 36px) / 3); gap: 18px; transform: translateX(calc(var(--review-index) * ((100% - 36px) / 3 + 18px) * -1)); transition: transform .28s ease; }
.review { background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 24px 26px 22px; box-shadow: 0 8px 20px rgba(16,20,25,.06); min-height: 188px; }
.quote { color: #c1c8d1; font-family: Georgia, serif; font-size: 46px; line-height: .65; display: block; height: 24px; }
.review p { color: #46515d; font-size: 14px; line-height: 1.5; min-height: 74px; margin: 12px 0 18px; }
.person { display: flex; align-items: center; gap: 12px; }
.person b { display: block; font-size: 13px; }
.person span { font-size: 12px; color: #66707d; }
.avatar { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; border: 2px solid #eef2f6; box-shadow: 0 5px 12px rgba(16,20,25,.12); flex-shrink: 0; }
.stars { width: 78px; height: 15px; margin-left: auto; flex: 0 0 78px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23f5b400' d='M10 1.5l2.62 5.31 5.86.85-4.24 4.13 1 5.84L10 14.88l-5.24 2.75 1-5.84-4.24-4.13 5.86-.85L10 1.5z'/%3E%3C/svg%3E"); background-repeat: repeat-x; background-size: 15.6px 15px; filter: drop-shadow(0 1px 0 rgba(16,20,25,.18)); }
.review-arrows { position: absolute; inset: 0; pointer-events: none; }
.review-arrows button { position: absolute; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; border-radius: 50%; border: 1px solid #cfd7e1; background: linear-gradient(180deg, #fff, #f3f6f9); color: #111821; box-shadow: 0 8px 20px rgba(16,20,25,.16); pointer-events: auto; display: grid; place-items: center; cursor: pointer; }
.review-arrows button:hover { border-color: #aeb9c6; background: #fff; }
.review-arrows button:disabled { opacity: .42; cursor: default; box-shadow: none; }
.review-arrows button span { width: 10px; height: 10px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; display: block; }
.review-arrows button:first-child { left: 2px; }
.review-arrows button:first-child span { transform: rotate(-135deg); margin-left: 4px; }
.review-arrows button:last-child { right: 2px; }
.review-arrows button:last-child span { transform: rotate(45deg); margin-right: 4px; }
.finance { background: var(--black); color: #fff; border-radius: 10px; overflow: hidden; display: grid; grid-template-columns: 1.1fr 1fr 1fr; align-items: center; min-height: 165px; background-image: linear-gradient(90deg, rgba(16,20,25,.98), rgba(16,20,25,.88)), url("/assets/images/hero-hitachi-zx490.jpg"); background-size: cover; background-position: center; }
.finance > div { padding: 34px 42px; border-right: 1px solid rgba(255,255,255,.22); min-height: 165px; }
.finance > div:last-child { border-right: 0; }
.finance h2 { text-transform: uppercase; color: #fff; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 38px; margin: 0; line-height: .95; letter-spacing: .2px; }
.finance h2 span { color: var(--yellow); display: block; }
.finance p { color: #d7dde5; }
.footer { background: #151a20; color: #dbe1e8; }
.footer .logo { min-width: 0; }
.footer .logo strong { font-size: 28px; }
.footer .logo small { font-size: 8px; letter-spacing: 4px; }
.footer-main { display: grid; grid-template-columns: 1.2fr repeat(4, 1fr); gap: 34px; padding: 42px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.footer h3, .footer strong { color: #fff; margin: 0 0 14px; }
.footer p, .footer a { color: #aeb7c2; font-size: 13px; line-height: 1.6; }
.footer nav { display: grid; gap: 8px; align-content: start; }
.subscribe { display: grid; gap: 8px; }
.subscribe input { min-height: 42px; border-radius: 4px; border: 0; padding: 0 12px; }
.subscribe .btn { min-height: 42px; }
.copyright { min-height: 42px; display: flex; align-items: center; justify-content: space-between; color: #aeb7c2; font-size: 13px; }
.dialog { border: 0; border-radius: 8px; padding: 0; width: min(680px, calc(100% - 28px)); overflow: hidden; box-shadow: 0 28px 80px rgba(0,0,0,.38); }
.dialog::backdrop { background: rgba(7,10,13,.66); backdrop-filter: blur(3px); }
.dialog-inner { background: #fff; }
.dialog-head { display: flex; justify-content: space-between; gap: 22px; padding: 28px 30px; color: #fff; background: linear-gradient(135deg, #10151b 0%, #222a33 100%); }
.dialog-head h2 { margin: 0; font-size: 34px; line-height: .95; text-transform: uppercase; }
.dialog-head span { display: block; max-width: 420px; margin-top: 8px; color: #d9e1eb; font-weight: 650; line-height: 1.45; }
.dialog-contact-strip { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--line); background: #f7f9fb; }
.dialog-contact-strip a { min-height: 54px; display: flex; align-items: center; justify-content: center; padding: 12px 16px; color: #111821; font-size: 13px; font-weight: 900; text-align: center; border-right: 1px solid var(--line); }
.dialog-contact-strip a:last-child { border-right: 0; }
.icon { width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.28); background: rgba(255,255,255,.08); color: #fff; border-radius: 5px; cursor: pointer; font-weight: 900; }
.icon:hover { background: var(--yellow); color: #111; border-color: var(--yellow); }
.form { display: grid; gap: 12px; }
.inquiry-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.inquiry-form label { display: grid; gap: 7px; color: #25303b; font-size: 13px; font-weight: 900; }
.inquiry-form label span { color: #6b7480; font-size: 11px; font-weight: 950; letter-spacing: .4px; text-transform: uppercase; }
.inquiry-form input:focus, .inquiry-form textarea:focus { outline: 2px solid rgba(255,184,0,.32); border-color: var(--yellow); box-shadow: 0 0 0 4px rgba(255,184,0,.12); }
.inquiry-form input[readonly] { background: #f2f5f8; color: #364151; font-weight: 850; }
.dialog .inquiry-form { padding: 26px 30px 30px; }
.field-wide, .inquiry-form .success, .inquiry-form .form-note, .inquiry-form .btn { grid-column: 1 / -1; }
.hp-field { position: absolute; left: -10000px; width: 1px !important; height: 1px !important; min-height: 1px !important; opacity: 0; pointer-events: none; }
.form-note { margin: 0; color: #6b7480; font-size: 13px; line-height: 1.5; }
.success { margin: 0; color: var(--blue); font-weight: 850; }
.mobile-menu { display: none; }
.page-hero { background: linear-gradient(90deg, rgba(16,20,25,.92), rgba(16,20,25,.78)), url("/assets/images/hero-hitachi-zx490.jpg") center/cover; color: #fff; }
.page-hero .wrap { padding: 76px 0; }
.page-hero h1 { max-width: 760px; margin: 0; font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 58px; line-height: .92; font-weight: 900; text-transform: uppercase; letter-spacing: .2px; }
.page-hero p:not(.eyebrow) { max-width: 720px; color: #dfe6ee; font-weight: 650; line-height: 1.55; }
.eyebrow { margin: 0 0 12px; color: var(--yellow); font-weight: 950; text-transform: uppercase; letter-spacing: .6px; font-size: 12px; }
.subnav { background: #fff; border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 4; }
.subnav .wrap { display: flex; gap: 26px; min-height: 52px; align-items: center; overflow-x: auto; }
.subnav a { color: #394452; font-weight: 850; font-size: 14px; white-space: nowrap; }
.catalog-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 28px; align-items: start; }
.filter-panel { background: #f7f9fb; border: 1px solid var(--line); border-radius: 8px; padding: 20px; position: sticky; top: 72px; }
.filter-panel h3 { margin: 0 0 16px; font-size: 18px; }
.inventory-filter { display: grid; gap: 14px; }
.reset-link { color: var(--blue); font-weight: 850; text-align: center; margin-top: 2px; }
.filter-note { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 13px; line-height: 1.45; }
.filter-note p { margin: 8px 0 0; }
.inventory-summary { background: #fff7df; border: 1px solid #f1d27a; border-radius: 6px; padding: 12px 14px; margin-bottom: 16px; color: #4d3a00; font-weight: 850; }
.catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.product-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 30px; align-items: start; }
.product-gallery { display: grid; gap: 12px; }
.main-photo { height: 520px; border-radius: 8px; overflow: hidden; background: #dbe2ea; }
.main-photo img, .thumb-grid img { width: 100%; height: 100%; object-fit: cover; }
.photo-placeholder-large { display: grid; place-items: center; align-content: center; gap: 12px; background: linear-gradient(135deg, #20272f, #151a20 52%, #343d47); color: #fff; border: 1px solid #303842; text-align: center; }
.photo-placeholder-large span { color: var(--yellow); font-weight: 950; text-transform: uppercase; letter-spacing: .7px; font-size: 12px; }
.photo-placeholder-large strong { max-width: calc(100% - 60px); font-family: "Barlow Condensed", "Arial Narrow", Impact, sans-serif; font-size: 72px; line-height: .86; text-transform: uppercase; text-wrap: balance; }
.photo-placeholder-large small { color: #cbd4de; font-weight: 750; }
.thumb-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.thumb-grid img { height: 120px; border-radius: 6px; }
.thumb-placeholder-grid div { min-height: 120px; border-radius: 6px; border: 1px dashed #c9d2dc; background: #f3f6f9; color: #6b7582; display: grid; place-items: center; text-align: center; font-size: 13px; font-weight: 850; padding: 12px; }
.spec-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 22px 0; }
.spec-grid div { background: #f7f9fb; border: 1px solid var(--line); border-radius: 6px; padding: 16px; }
.spec-grid span { display: block; color: var(--muted); font-size: 12px; text-transform: uppercase; font-weight: 850; margin-bottom: 7px; }
.spec-grid b { font-size: 17px; }
.detail-card { background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 26px; margin-top: 18px; }
.detail-card h2 { margin: 0 0 12px; text-transform: uppercase; }
.detail-card p { color: #4f5a67; line-height: 1.6; }
.spec-table { width: 100%; border-collapse: collapse; margin-top: 18px; font-size: 14px; }
.spec-table th, .spec-table td { border: 1px solid var(--line); padding: 12px; text-align: left; }
.spec-table th { background: #f7f9fb; width: 18%; }
.inspection-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.inspection-list span { background: #f7f9fb; border: 1px solid var(--line); border-radius: 5px; padding: 12px; font-weight: 850; }
.quote-panel { background: #111821; color: #fff; border: 1px solid #27313c; border-radius: 8px; padding: 28px; position: sticky; top: 78px; box-shadow: 0 18px 44px rgba(17,24,33,.18); }
.quote-panel h2 { margin: 0 0 8px; font-size: 32px; line-height: 1; text-transform: uppercase; }
.quote-panel .muted { color: #c2cbd6; }
.muted { color: var(--muted); line-height: 1.55; }
.quote-facts { display: grid; gap: 10px; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.14); }
.quote-facts span { color: #e5ebf2; font-weight: 850; font-size: 13px; }
.related-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 30px; align-items: start; }
.contact-form-card { background: #fff; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; box-shadow: 0 16px 42px rgba(21,32,43,.08); }
.contact-form-top { padding: 30px 32px 24px; border-bottom: 1px solid var(--line); background: linear-gradient(180deg, #fff 0%, #f8fafc 100%); }
.contact-form-top h2 { margin: 0; max-width: 700px; font-size: 38px; line-height: .96; text-transform: uppercase; }
.contact-form-top p:not(.eyebrow) { max-width: 740px; margin: 12px 0 0; color: #4f5a67; font-weight: 650; line-height: 1.58; }
.contact-form-card .inquiry-form { padding: 28px 32px 32px; }
.contact-card-grid { display: grid; gap: 12px; margin-top: 20px; }
.contact-card { display: grid; gap: 6px; padding: 15px; border: 1px solid rgba(255,255,255,.14); border-radius: 7px; background: rgba(255,255,255,.06); }
.contact-card span { color: #9da8b5; font-size: 11px; font-weight: 950; letter-spacing: .4px; text-transform: uppercase; }
.contact-card a { color: #fff; font-size: 17px; font-weight: 950; overflow-wrap: anywhere; }
.contact-sla { display: grid; gap: 10px; margin-top: 18px; padding: 18px; border-radius: 7px; background: #ffb800; color: #111; }
.contact-sla strong { font-size: 18px; text-transform: uppercase; }
.contact-sla p { margin: 0; color: #2f2a17; font-size: 13px; font-weight: 750; line-height: 1.5; }
[hidden] { display: none !important; }
@media (max-width: 1100px) {
  .inventory-grid { grid-template-columns: repeat(3, 1fr); }
  .why-grid { grid-template-columns: repeat(2, 1fr); }
  .brand-grid { grid-template-columns: repeat(3, 1fr); }
  .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reviews { grid-template-columns: 1fr; }
  .review-track { grid-auto-columns: calc((100% - 18px) / 2); transform: translateX(calc(var(--review-index) * ((100% - 18px) / 2 + 18px) * -1)); }
  .review-title { padding: 0; }
  .review-title h2 { max-width: none; }
  .finance { grid-template-columns: 1fr; }
  .finance > div { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.2); }
  .catalog-layout, .product-layout, .contact-layout { grid-template-columns: 1fr; }
  .filter-panel, .quote-panel { position: static; }
  .hero h1 { font-size: 68px; }
  .page-hero h1 { font-size: 50px; }
  .nav-row { gap: 22px; }
  .logo { min-width: 150px; }
  .logo strong { font-size: 30px; }
  .nav { gap: 18px; }
}
@media (max-width: 860px) {
  .top-strip .trust-row { justify-content: flex-start; overflow-x: auto; padding: 0 12px; }
  .nav, .header-tools { display: none; }
  .mobile-menu { display: inline-flex; margin-left: auto; }
  .nav-row { min-height: 66px; }
  .logo strong { font-size: 28px; }
  .logo small { letter-spacing: 4px; }
  .hero .wrap { padding: 44px 0 86px; }
  .hero { min-height: auto; }
  .hero h1 { font-size: 58px; max-width: 420px; }
  .hero p { max-width: 460px; }
  .search-panel { grid-template-columns: 1fr; }
  .hero-benefits { display: grid; gap: 16px; }
  .filter-box { grid-template-columns: 1fr; }
  .inventory-grid { grid-template-columns: 1fr; }
  .mini-proof { grid-template-columns: 1fr; justify-items: start; }
  .why-grid, .steps { grid-template-columns: 1fr; }
  .brand-grid { grid-template-columns: repeat(2, 1fr); }
  .category-grid { grid-template-columns: 1fr; }
  .catalog-grid, .featured-grid, .related-grid, .spec-grid, .inspection-list { grid-template-columns: 1fr; }
  .contact-layout { grid-template-columns: 1fr; }
  .quote-panel { position: static; }
  .inquiry-form { grid-template-columns: 1fr; }
  .dialog-contact-strip { grid-template-columns: 1fr; }
  .dialog-contact-strip a { justify-content: flex-start; border-right: 0; border-bottom: 1px solid var(--line); }
  .dialog-contact-strip a:last-child { border-bottom: 0; }
  .main-photo { height: 340px; }
  .step:after { display: none; }
  .footer-main { grid-template-columns: 1fr; }
  .copyright { align-items: start; flex-direction: column; gap: 8px; padding: 14px 0; }
}
@media (max-width: 560px) {
  .wrap { width: calc(100% - 24px); }
  .hero h1 { font-size: 46px; line-height: .88; }
  .page-hero h1 { font-size: 40px; }
  .section { padding: 42px 0; }
  .section-head { align-items: start; flex-direction: column; }
  .dialog-head { padding: 24px 22px; }
  .dialog-head h2 { font-size: 30px; }
  .dialog .inquiry-form, .contact-form-card .inquiry-form { padding: 22px; }
  .contact-form-top { padding: 24px 22px 20px; }
  .contact-form-top h2 { font-size: 30px; }
  .quote-panel { padding: 22px; }
  .brand-grid { grid-template-columns: 1fr; }
  .brand-card { min-height: 108px; padding: 22px 28px; }
  .brand-card img { height: 62px; }
  .brand-text-card strong { font-size: 34px; }
  .photo-placeholder-large strong { font-size: 48px; }
  .review-track { grid-auto-columns: 100%; transform: translateX(calc(var(--review-index) * (100% + 18px) * -1)); }
  .review-arrows button { width: 34px; height: 34px; }
  .machine-photo { height: 220px; }
}
