:root {
  --soil: #2a2118;
  --green: #173d1f;
  --green-2: #22572d;
  --field: #f5f1e8;
  --cream: #fffaf0;
  --line: #ddd2bf;
  --muted: #6b6257;
  --gold: #dba642;
  --rust: #9f4d26;
  --steel: #31414a;
  --white: #ffffff;
  --shadow: 0 22px 64px rgba(42, 33, 24, 0.16);
}
* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
body { max-width: 100%; margin: 0; overflow-x: hidden; color: var(--soil); background: linear-gradient(rgba(23,61,31,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(23,61,31,.03) 1px, transparent 1px), var(--field); background-size: 36px 36px; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.55; }
body.farm-load-active { overflow: hidden; }
a { color: inherit; }
img { display: block; max-width: 100%; }
.powered-strip { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .35rem 1rem; width: min(1180px, calc(100% - 32px)); margin: .75rem auto 0; padding: .48rem .7rem; border: 1px solid rgba(23,61,31,.16); border-radius: 8px; color: var(--green); background: rgba(255,250,240,.86); font-size: .78rem; font-weight: 950; backdrop-filter: blur(12px); }
.powered-strip a { color: var(--green); text-decoration: none; }
.powered-strip a:hover, .powered-strip a:focus-visible, .powered-by:hover, .powered-by:focus-visible { text-decoration: underline; }
.powered-strip span { color: var(--muted); }
p, h1, h2, h3, a, li, input { overflow-wrap: anywhere; }
.farm-load-screen { position: fixed; inset: 0; z-index: 999; display: grid; place-items: center; overflow: hidden; color: var(--cream); background: linear-gradient(180deg, #d7edff 0 42%, #9fba6a 42% 55%, #3b6d32 55% 100%); isolation: isolate; }
.farm-load-screen::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 74% 18%, rgba(255,250,240,.72), transparent 9rem), linear-gradient(180deg, rgba(255,255,255,.36), transparent 38%), repeating-linear-gradient(100deg, transparent 0 3.6rem, rgba(42,33,24,.12) 3.7rem 3.9rem); opacity: .86; }
.farm-load-screen::after { content: ""; position: absolute; inset: auto -6rem -9rem; height: 20rem; background: radial-gradient(ellipse at center, rgba(23,61,31,.8), rgba(23,61,31,0) 68%); opacity: .42; }
.farm-load-screen.is-opening { animation: farmLoadLift .72s cubic-bezier(.76,0,.2,1) forwards; }
.farm-load-sky, .farm-load-field, .farm-load-tractor, .farm-load-card { position: absolute; z-index: 1; }
.farm-load-sky { inset: 0; }
.farm-load-sun { position: absolute; right: clamp(2rem, 10vw, 9rem); top: clamp(2rem, 8vw, 5rem); width: clamp(4.8rem, 10vw, 8.2rem); aspect-ratio: 1; border-radius: 999px; background: radial-gradient(circle, #fff8ba, #f0b94f 66%, rgba(240,185,79,0)); box-shadow: 0 0 5rem rgba(240,185,79,.44); animation: farmSunPulse 1.4s ease-in-out infinite; }
.farm-load-cloud { position: absolute; width: 8.5rem; height: 2.2rem; border-radius: 999px; background: rgba(255,250,240,.82); box-shadow: 2.4rem -.7rem 0 .3rem rgba(255,250,240,.78), 4.5rem .12rem 0 -.1rem rgba(255,250,240,.72); animation: farmCloudDrift 2.8s linear infinite; }
.cloud-one { left: 8vw; top: 12vh; }
.cloud-two { left: 42vw; top: 21vh; transform: scale(.72); animation-duration: 3.6s; }
.farm-load-field { inset: auto 0 0; height: 46vh; background: linear-gradient(180deg, rgba(219,166,66,.62), rgba(23,61,31,.92)); clip-path: polygon(0 18%, 100% 0, 100% 100%, 0 100%); }
.field-row { position: absolute; left: -10vw; right: -10vw; height: .42rem; border-radius: 999px; background: rgba(255,250,240,.5); transform: rotate(-7deg); animation: fieldRows .9s linear infinite; }
.row-one { top: 24%; animation-delay: -.12s; }
.row-two { top: 42%; animation-delay: -.28s; }
.row-three { top: 61%; animation-delay: -.44s; }
.row-four { top: 78%; animation-delay: -.6s; }
.farm-load-tractor { left: 50%; bottom: 24vh; width: min(22rem, 70vw); height: 8rem; transform: translateX(-50%); animation: tractorSettle 1.2s cubic-bezier(.2,.8,.2,1) both; }
.tractor-body, .tractor-cab, .tractor-loader, .tractor-wheel, .tractor-dust { position: absolute; display: block; }
.tractor-body { left: 23%; bottom: 2.05rem; width: 52%; height: 2.8rem; border-radius: .65rem .95rem .55rem .45rem; background: linear-gradient(135deg, #24562a, #14391d); box-shadow: inset 0 0 0 4px rgba(255,250,240,.12); }
.tractor-cab { left: 38%; bottom: 4.1rem; width: 23%; height: 3.05rem; border: .32rem solid #14391d; border-bottom: 0; border-radius: .65rem .65rem .18rem .18rem; background: linear-gradient(135deg, rgba(215,237,255,.95), rgba(101,140,156,.86)); }
.tractor-loader { left: 65%; bottom: 3.45rem; width: 28%; height: .45rem; border-radius: 999px; background: #14391d; transform: rotate(-14deg); transform-origin: left center; }
.tractor-loader::after { content: ""; position: absolute; right: -1.4rem; bottom: -.7rem; width: 2.8rem; height: 1.3rem; border-radius: .15rem .15rem .8rem .8rem; background: #9f4d26; transform: rotate(14deg); }
.tractor-wheel { bottom: .8rem; aspect-ratio: 1; border: .45rem solid #10150f; border-radius: 999px; background: radial-gradient(circle, #dba642 0 28%, #31414a 30% 43%, #10150f 45%); animation: wheelSpin .48s linear infinite; }
.wheel-large { left: 27%; width: 3.9rem; }
.wheel-small { left: 66%; width: 3.05rem; }
.tractor-dust { bottom: 1.2rem; width: 3rem; height: .65rem; border-radius: 999px; background: rgba(255,250,240,.58); filter: blur(.5px); animation: dustTrail .72s ease-out infinite; }
.dust-one { left: 12%; }
.dust-two { left: 18%; animation-delay: -.28s; }
.farm-load-card { left: 50%; top: clamp(5.6rem, 18vh, 9rem); display: grid; gap: .28rem; width: min(31rem, calc(100% - 2rem)); padding: 1.1rem 1.25rem; border: 1px solid rgba(255,250,240,.3); border-left: 7px solid var(--gold); border-radius: 10px; background: rgba(23,61,31,.88); box-shadow: 0 28px 70px rgba(42,33,24,.3); transform: translateX(-50%); }
.farm-load-card .eyebrow { margin: 0; color: #f4c85f; }
.farm-load-card strong { font-size: clamp(1.55rem, 5vw, 3.25rem); line-height: .95; }
.farm-load-card span { color: rgba(255,250,240,.88); font-weight: 850; }
.site-header { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; justify-content: space-between; gap: 1rem; width: min(1180px, calc(100% - 28px)); margin: 0 auto; padding: .82rem 0; backdrop-filter: blur(18px); }
.site-header::before { content: ""; position: absolute; inset: 0 -14px; z-index: -1; border-bottom: 1px solid rgba(42,33,24,.12); background: rgba(255,250,240,.92); box-shadow: 0 10px 34px rgba(42,33,24,.08); }
.brand { display: flex; align-items: center; gap: .75rem; color: var(--green); text-decoration: none; }
.brand img { width: 58px; height: 58px; object-fit: contain; border-radius: 12px; background: var(--cream); box-shadow: 0 8px 20px rgba(42,33,24,.12); }
.brand strong { display: block; font-size: 1.05rem; }
.brand small { display: block; color: var(--muted); font-size: .82rem; font-weight: 750; }
.main-nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .45rem; }
.main-nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 2.45rem; padding: .58rem .78rem; border: 2px solid transparent; border-radius: 8px; color: var(--green); background: transparent; font-size: .92rem; font-weight: 900; line-height: 1.1; text-align: center; text-decoration: none; }
.main-nav a:hover, .main-nav a:focus-visible, .main-nav a[aria-current="page"] { background: rgba(23,61,31,.1); outline: none; }
.main-nav .nav-call { color: var(--cream); border-color: var(--green); background: var(--green); }
.main-nav .nav-call:hover, .main-nav .nav-call:focus-visible { color: var(--cream); background: var(--green-2); border-color: var(--green-2); box-shadow: 0 0 0 4px rgba(23,61,31,.14); }
.site-header.has-toggle-menu { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; }
.site-header.has-toggle-menu .brand { min-width: 0; }
.nav-menu-toggle { position: relative; display: grid; gap: .05rem; min-width: 10.5rem; min-height: 3.15rem; padding: .58rem 2.2rem .58rem .82rem; border: 2px solid var(--green); border-radius: 10px; color: var(--cream); background: var(--green); box-shadow: 0 12px 28px rgba(42,33,24,.14); font: inherit; text-align: left; cursor: pointer; }
.nav-menu-toggle::after { content: ""; position: absolute; right: .82rem; top: 50%; width: .6rem; height: .6rem; border-right: 3px solid currentColor; border-bottom: 3px solid currentColor; transform: translateY(-65%) rotate(45deg); transition: transform .24s ease; }
.site-header.is-menu-open .nav-menu-toggle::after { transform: translateY(-35%) rotate(225deg); }
.nav-menu-toggle span { font-size: .72rem; font-weight: 950; line-height: 1; text-transform: uppercase; }
.nav-menu-toggle strong { font-size: .95rem; line-height: 1.1; }
.nav-menu-toggle:hover, .nav-menu-toggle:focus-visible { background: var(--green-2); border-color: var(--green-2); outline: none; box-shadow: 0 0 0 4px rgba(23,61,31,.13), 0 12px 28px rgba(42,33,24,.14); }
.site-header.has-toggle-menu .main-nav { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem,1fr)); gap: .7rem; width: 100%; max-height: 0; margin-top: 0; padding: 0 .85rem; overflow: hidden; border: 0 solid rgba(23,61,31,.16); border-radius: 10px; background: var(--cream); box-shadow: none; opacity: 0; pointer-events: none; transform: translateY(-10px); transition: max-height .38s cubic-bezier(.2,.8,.2,1), opacity .24s ease, transform .34s cubic-bezier(.2,.8,.2,1), padding .34s ease, margin .34s ease, border-width .34s ease, box-shadow .34s ease; }
.site-header.has-toggle-menu.is-menu-open .main-nav { max-height: min(72dvh, 34rem); margin-top: .62rem; padding: .85rem; overflow: auto; border-width: 1px 1px 1px 7px; border-left-color: var(--gold); box-shadow: 0 18px 44px rgba(42,33,24,.16); opacity: 1; pointer-events: auto; transform: translateY(0); }
.site-header.has-toggle-menu .main-nav a { justify-content: flex-start; align-items: flex-start; min-height: 5.35rem; padding: .85rem .9rem; border-color: rgba(23,61,31,.16); background: var(--white); box-shadow: 0 8px 18px rgba(42,33,24,.07); text-align: left; }
.site-header.has-toggle-menu .main-nav a:hover, .site-header.has-toggle-menu .main-nav a:focus-visible, .site-header.has-toggle-menu .main-nav a[aria-current="page"] { border-color: var(--green); background: #fff6dc; box-shadow: 0 0 0 4px rgba(23,61,31,.1), 0 10px 24px rgba(42,33,24,.12); }
.site-header.has-toggle-menu .main-nav a.nav-menu-card { display: grid; gap: .22rem; align-content: start; }
.nav-menu-card span { color: var(--rust); font-size: .72rem; font-weight: 950; line-height: 1; text-transform: uppercase; }
.nav-menu-card strong { color: var(--green); font-size: 1rem; line-height: 1.12; }
.nav-menu-card small { color: #4f463c; font-size: .82rem; font-weight: 760; line-height: 1.28; }
.site-header.has-toggle-menu .main-nav .nav-call { color: var(--green); border-color: rgba(23,61,31,.22); background: #fff6dc; }
.site-header.has-toggle-menu .main-nav .nav-call:hover, .site-header.has-toggle-menu .main-nav .nav-call:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); }
.site-header.has-toggle-menu .main-nav .nav-call small,
.site-header.has-toggle-menu .main-nav .nav-call span,
.site-header.has-toggle-menu .main-nav .nav-call strong { color: inherit; }
.hero, .section, .parts-search, .cta, .page-hero, .part-layout, .site-footer { width: min(1180px, calc(100% - 28px)); margin: 0 auto; }
.hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,.48fr); gap: 1.5rem; align-items: center; min-height: calc(100svh - 5.5rem); padding: 4rem 0 2.5rem; }
.hero-truck { position: relative; overflow: hidden; width: 100%; max-width: none; min-height: calc(100svh - 4.5rem); padding: clamp(5rem, 10vw, 8rem) max(14px, calc((100vw - 1180px) / 2)) 2rem; background: #162116; }
.hero-truck-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; animation: truckPhotoSettle 2.1s ease-out .05s both; }
.hero-truck-shade { position: absolute; inset: 0; opacity: 0; background: linear-gradient(90deg, rgba(12,25,14,.9) 0%, rgba(12,25,14,.72) 38%, rgba(12,25,14,.18) 78%), linear-gradient(0deg, rgba(12,25,14,.62) 0%, rgba(12,25,14,0) 38%); animation: truckShadeIn .75s ease-out .35s forwards; }
.hero-copy, .counter-card, .parts-search, .part-detail, .fitment-box, .quick-help, .part-card, .inventory-card, .parts-note, .trust-grid div { border: 1px solid var(--line); border-radius: 10px; background: rgba(255,250,240,.92); box-shadow: 0 12px 34px rgba(42,33,24,.08); }
.hero-copy { padding: clamp(1.2rem, 4vw, 2.5rem); }
.hero-truck .hero-copy { position: relative; z-index: 1; max-width: 760px; border: 0; background: transparent; box-shadow: none; padding: 0; opacity: 0; transform: translateY(14px); animation: truckTextIn .62s cubic-bezier(.2,.8,.2,1) .6s forwards; }
.hero-truck .eyebrow { color: #f4c85f; }
.hero-truck h1, .hero-truck .hero-lead, .hero-truck .micro-note { color: var(--cream); text-shadow: 0 2px 14px rgba(0,0,0,.28); }
.hero-truck .hero-lead { max-width: 690px; color: rgba(255,250,240,.94); }
.hero-truck .button-secondary { background: rgba(255,250,240,.92); }
.eyebrow { margin: 0 0 .65rem; color: var(--rust); font-size: .78rem; font-weight: 950; letter-spacing: 0; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 1rem; color: var(--green); font-size: clamp(3rem,7vw,6.6rem); line-height: .92; letter-spacing: 0; }
h2 { margin-bottom: .85rem; color: var(--green); font-size: clamp(2rem,4.4vw,4rem); line-height: 1; letter-spacing: 0; }
h3 { margin-bottom: .45rem; color: var(--soil); font-size: 1.18rem; line-height: 1.18; }
.hero-lead, .section-heading p, .parts-search p, .part-detail p, .fitment-box p, .quick-help p, .part-card p, .inventory-card p, .parts-note p, .trust-grid p, .cta p, .steps p { color: #4f463c; }
.hero-lead { max-width: 760px; font-size: clamp(1.12rem,2.2vw,1.42rem); font-weight: 680; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.25rem; }
.hero-actions.centered { justify-content: center; }
.button { display: inline-flex; justify-content: center; align-items: center; min-height: 2.9rem; padding: .8rem 1rem; border: 2px solid transparent; border-radius: 8px; font: inherit; font-weight: 900; text-decoration: none; cursor: pointer; }
.button-primary { color: var(--cream); background: var(--green); }
.button-secondary { color: var(--green); background: var(--cream); border-color: var(--line); }
.button-secondary.light { background: var(--white); }
.button-primary:hover, .button-primary:focus-visible { color: var(--cream); background: var(--green-2); border-color: var(--green-2); outline: none; }
.button-secondary:hover, .button-secondary:focus-visible { color: var(--green); background: var(--white); border-color: var(--green); outline: none; box-shadow: 0 0 0 4px rgba(23,61,31,.1); }
.micro-note { margin: 1rem 0 0; color: var(--muted); font-size: .92rem; font-weight: 850; }
.start-here-section, .finder-guide, .farmer-help-strip { width: min(1180px, calc(100% - 28px)); margin: 1.2rem auto 0; }
.start-here-section { display: grid; grid-template-columns: minmax(0,.88fr) minmax(280px,.42fr); gap: 1rem; align-items: stretch; padding: 1rem; border: 2px solid rgba(23,61,31,.18); border-left: 8px solid var(--gold); border-radius: 12px; background: rgba(255,250,240,.97); box-shadow: 0 16px 42px rgba(42,33,24,.1); }
.start-here-heading { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(160px,.28fr) minmax(0,1fr); gap: 1rem; align-items: end; padding-bottom: .3rem; border-bottom: 1px solid rgba(23,61,31,.14); }
.start-here-heading h2 { margin-bottom: .35rem; font-size: clamp(2rem,4.2vw,3.7rem); }
.start-here-heading p:last-child { max-width: 760px; margin-bottom: 0; color: #4f463c; font-weight: 760; }
.path-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .75rem; }
.path-choice-card { display: grid; gap: .55rem; align-content: start; min-height: 10.6rem; padding: 1rem; border: 2px solid rgba(23,61,31,.16); border-radius: 10px; color: var(--soil); background: var(--white); font: inherit; text-align: left; text-decoration: none; cursor: pointer; box-shadow: 0 10px 24px rgba(42,33,24,.06); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease; }
.path-choice-card span { display: inline-grid; width: 2.35rem; height: 2.35rem; place-items: center; border-radius: 999px; color: var(--cream); background: var(--green); font-weight: 950; }
.path-choice-card strong { color: var(--green); font-size: clamp(1.18rem,2vw,1.55rem); line-height: 1.1; }
.path-choice-card small { color: #4f463c; font-size: .94rem; font-weight: 780; line-height: 1.35; }
.path-choice-card:hover, .path-choice-card:focus-visible { transform: translateY(-2px); border-color: var(--green); background: #fff6dc; outline: none; box-shadow: 0 16px 36px rgba(42,33,24,.13); }
.quick-clue-box { display: grid; gap: .7rem; align-content: start; padding: 1rem; border-radius: 10px; color: var(--cream); background: linear-gradient(145deg, var(--green), #0f3018); box-shadow: inset 0 0 0 1px rgba(255,250,240,.12); }
.quick-clue-box strong { font-size: clamp(1.25rem,2.3vw,1.65rem); line-height: 1.1; }
.quick-clue-box ul { margin: 0; padding-left: 1.15rem; }
.quick-clue-box li { margin: .45rem 0; color: rgba(255,250,240,.9); font-weight: 780; }
.farmer-help-strip { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 1rem; align-items: center; padding: 1rem; border: 2px solid rgba(23,61,31,.18); border-left: 8px solid var(--gold); border-radius: 10px; background: rgba(255,250,240,.96); box-shadow: 0 12px 34px rgba(42,33,24,.08); }
.farmer-help-strip h2 { margin-bottom: .4rem; font-size: clamp(1.55rem,3vw,2.55rem); line-height: 1.04; }
.farmer-help-strip p:last-child { max-width: 760px; margin-bottom: 0; color: #4f463c; font-weight: 760; }
.farmer-help-actions { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; }
.parts-route-board { display: grid; gap: 1rem; width: min(1180px, calc(100% - 28px)); margin: 1.2rem auto 0; padding: 1rem; border: 2px solid rgba(23,61,31,.18); border-left: 8px solid var(--green); border-radius: 12px; background: rgba(255,250,240,.97); box-shadow: 0 16px 42px rgba(42,33,24,.1); }
.parts-route-heading { display: grid; grid-template-columns: minmax(160px,.32fr) minmax(0,1fr); gap: 1rem; align-items: end; padding-bottom: .85rem; border-bottom: 1px solid rgba(23,61,31,.14); }
.parts-route-heading h2,
.parts-route-heading p:last-child { grid-column: 2; }
.parts-route-heading h2 { margin-bottom: .35rem; font-size: clamp(1.9rem,4vw,3.45rem); }
.parts-route-heading p:last-child { max-width: 780px; margin-bottom: 0; color: #4f463c; font-weight: 760; }
.parts-route-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .75rem; }
.parts-route-grid article { display: grid; gap: .55rem; align-content: start; min-height: 100%; padding: 1rem; border: 1px solid rgba(23,61,31,.16); border-radius: 10px; background: var(--white); box-shadow: 0 10px 24px rgba(42,33,24,.06); }
.parts-route-grid article span { display: inline-grid; width: 2.45rem; height: 2.45rem; place-items: center; border-radius: 999px; color: var(--cream); background: var(--green); font-weight: 950; }
.parts-route-grid article h3 { margin-bottom: 0; color: var(--green); }
.parts-route-grid article p { margin-bottom: 0; color: #4f463c; font-weight: 760; }
.route-tags { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: auto; padding-top: .25rem; }
.route-tags b { display: inline-flex; min-height: 1.8rem; align-items: center; padding: .28rem .48rem; border-radius: 999px; color: var(--green); background: #eaf2e9; font-size: .75rem; font-weight: 950; line-height: 1.1; }
.parts-route-note { margin: 0; padding: .75rem .85rem; border-radius: 8px; color: var(--green); background: #fff6dc; font-weight: 850; }
.machine-memory-panel { display: grid; grid-template-columns: minmax(220px,.72fr) minmax(260px,1.08fr) minmax(220px,.64fr); gap: 1rem; align-items: stretch; width: min(1180px, calc(100% - 28px)); margin: 1rem auto 0; padding: 1rem; border: 2px solid rgba(23,61,31,.18); border-radius: 12px; background: rgba(255,250,240,.98); box-shadow: 0 16px 42px rgba(42,33,24,.09); }
.machine-memory-panel h2 { margin-bottom: .35rem; font-size: clamp(1.55rem,3vw,2.45rem); }
.machine-memory-panel p { color: #4f463c; font-weight: 760; }
.saved-machine-form { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .7rem; align-content: start; }
.saved-machine-form label { display: grid; gap: .35rem; color: var(--green); font-size: .82rem; font-weight: 950; }
.saved-machine-form input, .saved-machine-form select { width: 100%; min-height: 2.75rem; padding: .68rem .75rem; border: 2px solid var(--line); border-radius: 8px; background: var(--white); color: var(--soil); font: inherit; font-weight: 650; }
.saved-machine-form .button { grid-column: 1 / -1; }
.saved-machine-card { display: grid; gap: .65rem; align-content: space-between; padding: .85rem; border: 1px solid rgba(23,61,31,.16); border-radius: 10px; background: #fff6dc; }
.saved-machine-card h3 { margin: 0; color: var(--green); font-size: 1.35rem; }
.saved-machine-card p { margin: 0; }
.saved-machine-label { color: var(--rust); font-size: .76rem; font-weight: 950; text-transform: uppercase; }
.saved-machine-actions { display: grid; gap: .45rem; }
.counter-card { padding: 1.2rem; border-top: 7px solid var(--gold); }
.hero-checklist { position: relative; z-index: 1; align-self: end; background: rgba(255,250,240,.94); opacity: 0; transform: translateY(14px); animation: truckTextIn .62s cubic-bezier(.2,.8,.2,1) .78s forwards; }
.counter-card span { color: var(--rust); font-size: .78rem; font-weight: 950; text-transform: uppercase; }
.counter-card p { margin: .55rem 0 0; color: #4f463c; font-weight: 720; }
.counter-card ol { margin: .8rem 0 0; padding-left: 1.35rem; }
.counter-card li { margin: .45rem 0; font-weight: 800; }
.counter-card small { display: block; margin-top: .55rem; color: var(--muted); font-weight: 800; }
.request-trigger { width: 100%; min-height: 2.85rem; margin-top: .9rem; border: 2px solid rgba(23,61,31,.22); border-radius: 8px; color: var(--green); background: var(--cream); font: inherit; font-weight: 950; cursor: pointer; }
.request-trigger:hover, .request-trigger:focus-visible { border-color: var(--green); outline: none; box-shadow: 0 0 0 4px rgba(23,61,31,.12); }
.parts-search { display: grid; grid-template-columns: minmax(0,.86fr) minmax(320px,.55fr); gap: 1rem; align-items: center; padding: 1rem; }
.search-panel { display: grid; gap: .75rem; }
.search-panel input { width: 100%; min-height: 3.1rem; padding: .9rem 1rem; border: 2px solid var(--line); border-radius: 8px; background: var(--white); color: var(--soil); font: inherit; }
.section { padding: 4rem 0; scroll-margin-top: 5rem; }
.section-heading { max-width: 920px; margin-bottom: 1.25rem; }
.compact-heading { margin-top: 2.2rem; }
.supplier-entry { margin-top: 1rem; }
.supplier-selector { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin: -0.2rem 0 1rem; }
.supplier-chip { display: inline-flex; align-items: center; min-height: 2.6rem; padding: .65rem .9rem; border: 2px solid var(--green); border-radius: 999px; color: var(--green); background: var(--cream); font-weight: 950; text-decoration: none; }
.supplier-chip.active { color: var(--cream); background: var(--green); }
.supplier-selector span { color: var(--muted); font-weight: 800; }
.parts-shelf { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .85rem; }
.inventory-card { display: flex; flex-direction: column; justify-content: space-between; gap: .85rem; min-height: 100%; padding: 1rem; }
.inventory-card h3 { margin-bottom: .2rem; color: var(--green); font-size: 1rem; font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; }
.inventory-card strong { display: block; color: var(--soil); font-size: 1.08rem; line-height: 1.2; }
.inventory-card p:last-child { margin-bottom: 0; }
.featured-part { grid-column: span 2; border-color: rgba(219,166,66,.82); background: linear-gradient(135deg, rgba(255,250,240,.98), rgba(255,246,219,.96)); }
.parts-note { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; align-items: center; margin-top: .95rem; padding: 1rem; }
.parts-note p { max-width: 720px; margin-bottom: 0; }
.parts-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: .85rem; }
.part-card { padding: 1rem; }
.part-card .part-type, .inventory-card .part-type { margin-bottom: .35rem; color: var(--rust); font-size: .76rem; font-weight: 950; text-transform: uppercase; }
.text-link { display: inline-flex; margin-top: .35rem; color: var(--green); font-weight: 900; }
.part-icon { display: inline-grid; min-width: 3rem; min-height: 2.45rem; place-items: center; margin-bottom: .8rem; border-radius: 8px; color: var(--cream); background: var(--steel); font-size: .78rem; font-weight: 950; }
.part-icon.blade { background: var(--rust); } .part-icon.bearing { background: var(--steel); } .part-icon.seal { background: #6b5731; } .part-icon.hydraulic { background: var(--green-2); } .part-icon.filter { background: #486275; }
.split { display: grid; grid-template-columns: minmax(0,.75fr) minmax(320px,1fr); gap: 1.5rem; align-items: start; }
.process-section { padding-top: 3.2rem; }
.steps { display: grid; gap: .75rem; }
.steps article { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .85rem; padding: 1rem; border: 1px solid var(--line); border-left: 6px solid rgba(219,166,66,.72); border-radius: 10px; background: var(--cream); box-shadow: 0 10px 24px rgba(42,33,24,.06); }
.steps span { display: inline-grid; width: 2.2rem; height: 2.2rem; place-items: center; border-radius: 999px; color: var(--cream); background: var(--green); font-weight: 950; }
.steps p { margin-bottom: 0; }
.trust-section { padding-top: 1rem; }
.trust-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
.trust-grid div { padding: 1rem; border-top: 5px solid rgba(23,61,31,.7); }
.trust-grid strong { display: block; color: var(--green); font-size: 1.12rem; }
.trust-grid p { margin: .45rem 0 0; }
.cta { margin-bottom: 3rem; padding: clamp(1.4rem,5vw,3rem); border-radius: 12px; color: var(--cream); background: linear-gradient(135deg, var(--green), #0f2f18); text-align: center; box-shadow: var(--shadow); }
.cta h2 { color: var(--cream); }
.cta p { color: rgba(255,250,240,.86); }
.ten32-bench-ad { display: grid; grid-template-columns: auto minmax(0,1fr) minmax(190px,.34fr) auto; gap: 1rem; align-items: center; width: min(1180px, calc(100% - 28px)); margin: 0 auto 3rem; padding: clamp(1rem,2.4vw,1.35rem); border: 3px solid var(--green); border-radius: 8px; color: var(--green); background: linear-gradient(90deg, var(--gold), #fff1bc 54%, var(--cream)); box-shadow: var(--shadow); }
.ten32-bench-ad .bench-label { margin: 0; padding: .32rem .5rem; border-radius: 6px; color: var(--cream); background: var(--green); font-size: .74rem; font-weight: 950; text-transform: uppercase; white-space: nowrap; }
.ten32-bench-ad strong { display: block; color: var(--green); font-size: clamp(1.18rem,2.2vw,1.78rem); line-height: 1.06; }
.ten32-bench-ad p { margin: .35rem 0 0; color: #4f463c; font-weight: 800; }
.ten32-bench-ad .bench-video { display: grid; grid-template-columns: 92px minmax(0,1fr); gap: .62rem; align-items: center; min-height: 5rem; padding: .45rem; border: 2px solid rgba(23,61,31,.22); border-radius: 8px; color: var(--green); background: rgba(255,250,240,.72); text-decoration: none; }
.ten32-bench-ad .bench-video img { width: 92px; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 6px; }
.ten32-bench-ad .bench-video b, .ten32-bench-ad .bench-video small { display: block; }
.ten32-bench-ad .bench-video b { font-size: .74rem; text-transform: uppercase; }
.ten32-bench-ad .bench-video small { color: #4f463c; font-weight: 900; }
.ten32-bench-ad .bench-video:hover, .ten32-bench-ad .bench-video:focus-visible { border-color: var(--green); background: var(--cream); outline: none; }
.ten32-bench-ad .button { white-space: nowrap; }
.page-hero { max-width: calc(100% - 28px); padding: 3rem 0 1rem; overflow: hidden; }
.page-hero h1, .page-hero .hero-lead, .page-hero .crumb, .page-hero .eyebrow, .page-hero .hero-actions { max-width: min(100%, calc(100vw - 28px)); }
.crumb { color: var(--muted); font-weight: 850; }
.crumb a { color: var(--green); }
.part-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.38fr); gap: 1rem; padding: 1rem 0 3rem; }
.part-detail, .fitment-box, .quick-help { padding: 1rem; }
.side-stack { display: grid; gap: 1rem; align-self: start; }
.spec-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .8rem; margin: 1rem 0; }
.spec-list div { padding: .8rem; border: 1px solid var(--line); border-radius: 8px; background: var(--white); }
.spec-list span { color: var(--rust); font-size: .76rem; font-weight: 950; text-transform: uppercase; }
.spec-list strong { display: block; color: var(--soil); }
.spec-list p { margin: .25rem 0 0; }
.site-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .8rem; padding: 1.2rem 0 2rem; border-top: 1px solid var(--line); color: var(--muted); font-weight: 800; }
.site-footer a { color: var(--green); }
.powered-by { white-space: nowrap; }
.reader-tools { position: fixed; left: 0; top: 50%; z-index: 120; display: grid; grid-template-columns: auto minmax(0, 16rem); gap: 0; width: auto; color: var(--green); transform: translateY(-50%); }
.reader-tools-toggle { writing-mode: vertical-rl; display: inline-grid; gap: .35rem; align-items: center; min-width: 2.85rem; min-height: 7.2rem; padding: .78rem .48rem; border: 3px solid var(--green); border-left: 0; border-radius: 0 10px 10px 0; color: var(--green); background: rgba(255,250,240,.94); box-shadow: 0 18px 48px rgba(42,33,24,.24); font: inherit; text-align: center; cursor: pointer; }
.reader-tools-toggle span { font-size: .72rem; font-weight: 950; line-height: 1; text-transform: uppercase; }
.reader-tools-toggle strong { display: inline-grid; min-width: 2rem; min-height: 2rem; place-items: center; border-radius: 999px; color: var(--cream); background: var(--green); font-size: .95rem; line-height: 1; writing-mode: horizontal-tb; }
.reader-tools-toggle:hover, .reader-tools-toggle:focus-visible, .reader-tools.is-open .reader-tools-toggle { border-color: var(--green-2); color: var(--cream); background: var(--green); outline: none; }
.reader-tools-toggle:hover strong, .reader-tools-toggle:focus-visible strong, .reader-tools.is-open .reader-tools-toggle strong { color: var(--green); background: var(--cream); }
.reader-tools-panel { display: grid; grid-template-columns: auto auto auto; gap: .45rem; align-items: center; width: min(16rem, calc(100vw - 3.6rem)); padding: .72rem; border: 3px solid var(--green); border-left: 0; border-radius: 0 10px 10px 0; background: rgba(255,250,240,.84); backdrop-filter: blur(10px); box-shadow: 0 18px 48px rgba(42,33,24,.24); animation: readerPanelOpen .22s cubic-bezier(.2,.8,.2,1) both; }
.reader-tools-panel[hidden] { display: none; }
.reader-tools-panel strong { grid-column: 1 / -1; font-size: .82rem; font-weight: 950; line-height: 1; text-transform: uppercase; }
.reader-tools-panel button, .reader-tools-panel [data-reader-status] { display: inline-grid; min-width: 3rem; min-height: 3rem; place-items: center; border-radius: 8px; font: inherit; font-weight: 950; }
.reader-tools-panel button { border: 2px solid rgba(23,61,31,.2); color: var(--green); background: var(--white); cursor: pointer; }
.reader-tools-panel button:hover, .reader-tools-panel button:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); outline: none; }
.reader-tools-panel [data-reader-reset] { grid-column: 1 / -1; min-height: 2.6rem; }
.reader-tools-panel [data-reader-status] { color: var(--soil); background: #fff6dc; }
.part-search-launcher { position: fixed; left: clamp(.7rem, 2vw, 1.1rem); bottom: clamp(.7rem, 2vw, 1.1rem); z-index: 82; display: grid; gap: .08rem; min-width: 7.4rem; min-height: 4.25rem; place-items: center; padding: .6rem .85rem; border: 3px solid var(--gold); border-radius: 10px; color: var(--cream); background: var(--green); box-shadow: 0 18px 48px rgba(42,33,24,.24); font: inherit; cursor: pointer; }
.part-search-launcher span { font-size: .8rem; font-weight: 950; line-height: 1; text-transform: uppercase; }
.part-search-launcher strong { font-size: 1.12rem; line-height: 1; }
.part-search-launcher:hover, .part-search-launcher:focus-visible { background: var(--green-2); outline: none; box-shadow: 0 0 0 5px rgba(219,166,66,.32), 0 18px 48px rgba(42,33,24,.24); }
.part-search-is-open { overflow: hidden; }
.part-search-overlay { position: fixed; inset: 0; z-index: 140; display: grid; place-items: center; padding: clamp(.5rem, 1.6vw, 1rem); background: #10160f; backdrop-filter: none; }
.part-search-overlay[hidden] { display: none; }
.part-search-card { display: grid; align-content: start; gap: .85rem; width: min(1360px, calc(100vw - 24px)); height: min(920px, calc(100dvh - 24px)); max-height: calc(100dvh - 24px); overflow: auto; padding: clamp(1rem, 3vw, 1.4rem); border: 2px solid rgba(219,166,66,.54); border-radius: 12px; color: var(--soil); background: var(--cream); box-shadow: 0 34px 90px rgba(0,0,0,.36); }
.part-search-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.part-search-head h2 { max-width: 14ch; margin-bottom: 0; font-size: clamp(2rem,4.8vw,3.8rem); }
.part-search-close { min-width: 3rem; min-height: 3rem; padding: .42rem .72rem; border: 2px solid rgba(23,61,31,.2); border-radius: 8px; color: var(--green); background: var(--white); font: inherit; font-size: 1.45rem; font-weight: 950; line-height: 1; cursor: pointer; }
.part-search-close:hover, .part-search-close:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); outline: none; }
.part-search-input-label { display: grid; gap: .4rem; color: var(--green); font-size: .86rem; font-weight: 950; text-transform: uppercase; }
.part-search-input-label input { width: 100%; min-height: 4rem; padding: .95rem 1rem; border: 3px solid rgba(23,61,31,.18); border-radius: 10px; color: var(--soil); background: var(--white); font: inherit; font-size: 1.2rem; font-weight: 800; text-transform: none; }
.part-search-input-label input:focus { border-color: var(--green); outline: none; box-shadow: 0 0 0 5px rgba(23,61,31,.12); }
.part-search-chips { display: flex; flex-wrap: wrap; gap: .55rem; }
.part-search-chips button { min-height: 2.45rem; padding: .55rem .76rem; border: 2px solid rgba(23,61,31,.18); border-radius: 999px; color: var(--green); background: var(--white); font: inherit; font-weight: 950; cursor: pointer; }
.part-search-chips button:hover, .part-search-chips button:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); outline: none; }
.part-search-note { margin: 0; padding: .75rem .85rem; border-left: 6px solid var(--gold); border-radius: 8px; color: #4f463c; background: #fff6dc; font-weight: 800; }
.part-search-results { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .75rem; }
.part-search-result { display: grid; gap: .35rem; padding: .9rem; border: 1px solid rgba(23,61,31,.18); border-left: 6px solid var(--gold); border-radius: 10px; color: var(--soil); background: var(--white); text-decoration: none; }
.part-search-result:hover, .part-search-result:focus-visible { border-color: var(--green); background: var(--white); outline: none; transform: translateY(-1px); }
.part-search-result span { color: var(--rust); font-size: .74rem; font-weight: 950; text-transform: uppercase; }
.part-search-result strong { color: var(--green); font-size: 1.08rem; line-height: 1.15; }
.part-search-result p { margin: 0; color: #4f463c; font-weight: 760; }
.part-search-result small { color: var(--green); font-weight: 950; text-transform: uppercase; }
.part-search-empty { margin: 0; grid-column: 1 / -1; padding: .95rem; border: 1px dashed rgba(23,61,31,.28); border-radius: 8px; color: var(--muted); background: var(--white); font-weight: 850; }
.part-search-custom { justify-self: start; color: var(--green); font-weight: 950; }
.request-modal { position: fixed; inset: 12px; width: calc(100vw - 24px); max-width: none; height: calc(100dvh - 24px); max-height: none; margin: 0; border: 0; padding: 0; color: var(--soil); background: var(--cream); }
.request-modal::backdrop { background: #10160f; backdrop-filter: none; }
.request-form { height: 100%; max-height: 100%; overflow: auto; padding: clamp(1rem, 3vw, 1.4rem); border: 1px solid rgba(23,61,31,.24); border-radius: 12px; background: var(--cream); box-shadow: 0 28px 80px rgba(0,0,0,.34); }
.request-modal-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.request-modal-head h2 { max-width: 12ch; margin-bottom: 0; font-size: clamp(2rem,5vw,3.4rem); }
.modal-close { min-height: 2.5rem; padding: .6rem .78rem; border: 1px solid var(--line); border-radius: 8px; color: var(--green); background: var(--white); font: inherit; font-weight: 950; cursor: pointer; }
.request-auth-note { margin: 1rem 0; padding: .8rem; border: 1px solid rgba(159,77,38,.22); border-left: 6px solid var(--gold); border-radius: 8px; background: #fff6dc; color: #4f463c; font-weight: 750; }
.request-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .8rem; }
.request-grid label, .request-check { display: grid; gap: .3rem; color: var(--green); font-size: .82rem; font-weight: 950; }
.request-grid input, .request-grid select, .request-grid textarea { width: 100%; min-height: 2.8rem; padding: .72rem .78rem; border: 2px solid var(--line); border-radius: 8px; background: var(--white); color: var(--soil); font: inherit; font-weight: 650; }
.request-grid textarea { resize: vertical; line-height: 1.45; }
.request-wide { grid-column: 1 / -1; }
.request-check { grid-template-columns: auto minmax(0,1fr); align-items: start; margin-top: .9rem; color: var(--soil); line-height: 1.35; }
.request-check input { margin-top: .18rem; }
.request-hp { position: absolute; left: -100vw; width: 1px; height: 1px; overflow: hidden; }
.request-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1rem; }
.request-result { display: block; min-height: 1.2rem; margin-top: .85rem; color: var(--muted); font-weight: 850; line-height: 1.45; white-space: pre-line; }
.request-result[data-tone="success"] { color: var(--green); }
.request-result[data-tone="error"] { color: var(--rust); }
.finder-hero { padding-bottom: 2rem; }
.finder-guide { display: grid; grid-template-columns: minmax(0,.72fr) minmax(320px,1fr); gap: 1rem; align-items: stretch; padding: 1rem; border: 2px solid rgba(23,61,31,.18); border-left: 8px solid var(--gold); border-radius: 12px; background: rgba(255,250,240,.96); box-shadow: 0 14px 38px rgba(42,33,24,.09); }
.finder-guide h2 { margin-bottom: .45rem; font-size: clamp(1.8rem,3.4vw,3rem); }
.finder-guide p:last-child { margin-bottom: 0; color: #4f463c; font-weight: 760; }
.finder-guide-steps { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .7rem; }
.finder-guide-steps article { display: grid; gap: .45rem; align-content: start; padding: .85rem; border: 1px solid rgba(23,61,31,.16); border-radius: 10px; background: var(--white); }
.finder-guide-steps span { display: inline-grid; width: 2rem; height: 2rem; place-items: center; border-radius: 999px; color: var(--cream); background: var(--green); font-weight: 950; }
.finder-guide-steps strong { color: var(--green); line-height: 1.12; }
.finder-guide-steps p { margin-bottom: 0; color: #4f463c; font-size: .9rem; font-weight: 760; }
.manufacturer-switcher { display: grid; grid-template-columns: minmax(0,.4fr) minmax(0,1fr); gap: 1rem; align-items: center; width: min(1180px, calc(100% - 28px)); margin: 0 auto; padding: 1rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,250,240,.94); box-shadow: 0 12px 34px rgba(42,33,24,.08); }
.manufacturer-switcher h2 { margin-bottom: 0; font-size: clamp(1.6rem,3vw,2.6rem); }
.manufacturer-links { display: flex; flex-wrap: wrap; gap: .55rem; justify-content: flex-end; }
.manufacturer-links a { display: inline-flex; align-items: center; min-height: 2.45rem; padding: .58rem .78rem; border: 2px solid rgba(23,61,31,.2); border-radius: 999px; color: var(--green); background: var(--cream); font-weight: 950; text-decoration: none; }
.manufacturer-links a.active, .manufacturer-links a:hover, .manufacturer-links a:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); outline: none; }
.device-save-note { max-width: 880px; margin: 1rem 0 0; padding: .8rem 1rem; border: 1px solid rgba(23,61,31,.18); border-left: 6px solid var(--gold); border-radius: 8px; background: rgba(255,250,240,.86); color: #4f463c; font-weight: 800; }
.finder-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.42fr); gap: 1rem; align-items: start; padding-top: 2rem; }
.finder-workbench { min-width: 0; }
.finder-panel, .path-board, .custom-part-panel, .cart-panel, .matrix-card, .cart-line { border: 1px solid var(--line); border-radius: 10px; background: rgba(255,250,240,.94); box-shadow: 0 12px 34px rgba(42,33,24,.08); }
.finder-panel { display: grid; grid-template-columns: 1.2fr 1fr .8fr; gap: .8rem; padding: 1rem; }
.finder-panel label, .custom-part-form label, .order-form label { display: grid; gap: .35rem; color: var(--green); font-size: .82rem; font-weight: 950; }
.finder-panel input, .finder-panel select, .custom-part-form input, .custom-part-form select, .custom-part-form textarea, .order-form input, .order-form select, .order-form textarea { width: 100%; min-height: 2.8rem; padding: .72rem .78rem; border: 2px solid var(--line); border-radius: 8px; background: var(--white); color: var(--soil); font: inherit; font-weight: 650; }
.matrix-filter-block { margin: 1rem 0; }
.matrix-label { margin-bottom: .5rem; color: var(--rust); font-size: .78rem; font-weight: 950; text-transform: uppercase; }
.equipment-chip-row { display: flex; flex-wrap: wrap; gap: .5rem; }
.equipment-chip { min-height: 2.45rem; padding: .58rem .78rem; border: 2px solid rgba(23,61,31,.2); border-radius: 999px; color: var(--green); background: var(--cream); font: inherit; font-weight: 950; cursor: pointer; }
.equipment-chip.active, .equipment-chip:hover, .equipment-chip:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); outline: none; }
.model-family-panel { display: grid; gap: .75rem; margin: 1rem 0; padding: .9rem; border: 1px solid rgba(23,61,31,.16); border-radius: 10px; background: rgba(255,255,255,.76); }
.model-family-panel h3 { margin: -.15rem 0 0; color: var(--green); font-size: 1.2rem; }
.model-family-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .65rem; }
.model-family-card { display: grid; gap: .28rem; min-height: 7.2rem; padding: .78rem; border: 2px solid rgba(23,61,31,.16); border-radius: 8px; background: var(--white); color: var(--soil); text-align: left; font: inherit; cursor: pointer; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.model-family-card:hover, .model-family-card:focus-visible { border-color: var(--green); outline: none; box-shadow: 0 0 0 4px rgba(23,61,31,.1); transform: translateY(-1px); }
.model-family-card span { color: var(--rust); font-size: .74rem; font-weight: 950; text-transform: uppercase; }
.model-family-card strong { color: var(--green); line-height: 1.18; }
.model-family-card small { color: #4f463c; font-weight: 760; line-height: 1.28; }
.path-board { display: grid; gap: .85rem; padding: 1rem; }
.current-route { display: grid; gap: .2rem; padding: .85rem; border-radius: 8px; background: #fff6dc; border-left: 6px solid var(--gold); }
.current-route span, .path-pill span { color: var(--rust); font-size: .74rem; font-weight: 950; text-transform: uppercase; }
.current-route strong { color: var(--green); line-height: 1.3; }
.open-paths-head { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.open-paths-head h3 { margin-bottom: 0; }
.text-button { border: 0; color: var(--green); background: transparent; font: inherit; font-weight: 950; text-decoration: underline; cursor: pointer; }
.text-button:hover, .text-button:focus-visible { color: var(--rust); outline: none; }
.path-list { display: grid; gap: .65rem; max-height: 360px; overflow: auto; padding-right: .25rem; }
.path-pill { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .5rem; align-items: stretch; }
.path-pill button { border-radius: 8px; font: inherit; cursor: pointer; }
.path-pill button:first-child { display: grid; gap: .2rem; width: 100%; padding: .75rem; border: 1px solid rgba(23,61,31,.16); color: var(--soil); background: var(--white); text-align: left; }
.path-pill button:first-child:hover, .path-pill button:first-child:focus-visible { border-color: var(--green); background: #fff6dc; outline: none; }
.path-pill strong { color: var(--green); line-height: 1.25; }
.path-pill small { color: var(--muted); font-weight: 800; }
.path-remove { min-width: 4.6rem; padding: .55rem; border: 1px solid rgba(159,77,38,.24); color: var(--rust); background: #fff6ee; font-weight: 950; }
.path-remove:hover, .path-remove:focus-visible { color: var(--cream); background: var(--rust); border-color: var(--rust); outline: none; }
.matrix-result-count { margin: 1rem 0; color: var(--muted); font-weight: 850; }
.matrix-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .85rem; }
.matrix-card { display: flex; flex-direction: column; gap: .65rem; padding: 1rem; }
.matrix-card.highlighted { outline: 4px solid rgba(219,166,66,.32); border-color: var(--gold); }
.matrix-card-head { display: flex; justify-content: space-between; gap: .5rem; align-items: center; }
.path-status { padding: .28rem .48rem; border-radius: 999px; color: var(--green); background: rgba(23,61,31,.1); font-size: .72rem; font-weight: 950; }
.path-trace { margin-bottom: 0; padding: .5rem .65rem; border-radius: 8px; color: var(--green); background: rgba(23,61,31,.08); font-size: .9rem; font-weight: 850; }
.part-visual { display: grid; place-items: center; min-height: 5.1rem; border: 1px solid rgba(23,61,31,.16); border-radius: 8px; background: linear-gradient(135deg, rgba(255,255,255,.76), rgba(255,246,219,.7)); }
.part-visual svg { width: min(100%, 220px); height: 92px; fill: none; stroke: var(--green); stroke-width: 7; stroke-linecap: round; stroke-linejoin: round; }
.matrix-card ul { margin: -.25rem 0 .1rem; padding-left: 1.2rem; color: #4f463c; font-weight: 730; }
.granular-parts { display: grid; gap: .55rem; padding: .75rem; border: 1px solid rgba(23,61,31,.14); border-radius: 8px; background: rgba(255,255,255,.54); }
.granular-parts-head { display: flex; justify-content: space-between; gap: .8rem; align-items: center; color: var(--green); }
.granular-parts-head span { color: var(--muted); font-size: .76rem; font-weight: 900; text-transform: uppercase; }
.granular-part-grid { display: flex; flex-direction: column; gap: .6rem; max-height: 24rem; overflow: auto; padding-right: .2rem; }
.part-line-card { display: flex; flex: 0 0 auto; flex-direction: column; align-items: flex-start; gap: .26rem; width: 100%; min-width: 0; min-height: 0; padding: .72rem .78rem; overflow: visible; border: 1px solid rgba(23,61,31,.18); border-left: 5px solid rgba(219,166,66,.74); border-radius: 8px; color: var(--soil); background: rgba(255,250,240,.92); font: inherit; text-align: left; white-space: normal; cursor: pointer; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.part-line-card:hover, .part-line-card:focus-visible { transform: translateY(-1px); border-color: var(--green); background: var(--white); outline: none; }
.part-line-card span { display: block; max-width: 100%; }
.part-line-title { color: var(--green); font-weight: 950; line-height: 1.2; overflow-wrap: anywhere; }
.part-line-kind { width: fit-content; padding: .16rem .38rem; border-radius: 999px; color: var(--rust); background: #fff6dc; font-size: .72rem; font-weight: 950; line-height: 1.15; text-transform: uppercase; overflow-wrap: anywhere; }
.part-line-detail { color: #4f463c; font-size: .8rem; font-weight: 760; line-height: 1.34; overflow-wrap: anywhere; }
.part-line-add { margin-top: .08rem; color: var(--green); font-size: .76rem; font-weight: 950; line-height: 1.2; text-transform: uppercase; }
.matrix-card-actions, .cart-actions { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: auto; }
.custom-part-panel { display: grid; grid-template-columns: minmax(0,.55fr) minmax(0,1fr); gap: 1rem; margin-top: 1rem; padding: 1rem; }
.custom-part-form, .order-form { display: grid; gap: .75rem; }
.cart-panel { position: sticky; top: 5.4rem; max-height: calc(100dvh - 6rem); overflow: auto; padding: 1rem; }
.cart-panel-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.cart-panel-head h2 { margin-bottom: 0; font-size: clamp(1.8rem,3vw,2.6rem); }
.cart-panel-head span { padding: .35rem .55rem; border-radius: 999px; color: var(--cream); background: var(--green); font-size: .78rem; font-weight: 950; white-space: nowrap; }
.repair-data-board { display: grid; gap: 1rem; width: min(1180px, calc(100% - 28px)); margin: 1rem auto; padding: 1rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,250,240,.94); box-shadow: 0 16px 42px rgba(42,33,24,.09); }
.repair-data-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .75rem; }
.repair-data-grid article { display: grid; gap: .45rem; padding: .9rem; border: 1px solid rgba(23,61,31,.16); border-radius: 10px; background: var(--white); }
.repair-data-grid span { color: var(--rust); font-size: .74rem; font-weight: 950; text-transform: uppercase; }
.repair-data-grid h3 { margin: 0; color: var(--green); font-size: 1.18rem; }
.repair-data-grid p { margin: 0; color: #4f463c; font-weight: 720; }
.cart-storage-note { margin: .8rem 0; padding: .65rem; border-radius: 8px; color: #4f463c; background: #fff6dc; font-weight: 800; }
.cart-list { display: grid; gap: .7rem; margin: .8rem 0; }
.cart-line { display: grid; gap: .7rem; padding: .85rem; }
.cart-line h3 { margin-bottom: .25rem; color: var(--green); }
.cart-line p { margin-bottom: .35rem; color: #4f463c; font-size: .92rem; }
.cart-line-controls { display: flex; flex-wrap: wrap; gap: .45rem; align-items: center; }
.cart-line-controls button { min-height: 2.35rem; padding: .45rem .65rem; border: 1px solid rgba(23,61,31,.2); border-radius: 8px; color: var(--green); background: var(--white); font: inherit; font-weight: 950; cursor: pointer; }
.cart-line-controls button:hover, .cart-line-controls button:focus-visible { color: var(--cream); background: var(--green); border-color: var(--green); outline: none; }
.cart-line-controls strong { min-width: 2rem; text-align: center; }
.order-form { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.order-form h3 { color: var(--green); }
.phone-contact-note { display: inline-flex; align-items: center; min-height: 2.9rem; padding: .72rem .85rem; border: 2px solid rgba(23,61,31,.16); border-radius: 8px; color: var(--green); background: var(--white); font-weight: 950; line-height: 1.2; }
.phone-contact-note a { color: inherit; text-decoration: underline; text-underline-offset: .18em; }

/* Full-screen part search cleanup. */
.part-search-card {
  grid-template-columns: minmax(260px, .42fr) minmax(0, 1fr);
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  align-content: stretch;
  overflow: hidden;
}
.part-search-head {
  grid-column: 1 / -1;
  align-items: center;
  padding-bottom: .85rem;
  border-bottom: 1px solid rgba(23,61,31,.16);
}
.part-search-head h2 {
  max-width: 22ch;
  font-size: clamp(2rem, 3.8vw, 3.3rem);
}
.part-search-input-label,
.part-search-chips,
.part-search-note,
.part-search-custom {
  grid-column: 1;
}
.part-search-results {
  grid-column: 2;
  grid-row: 2 / 6;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  align-content: start;
  min-height: 0;
  overflow: auto;
  padding-right: .2rem;
}
.part-search-result {
  border-left-width: 7px;
}

/* Finder workbench cleanup: keep the search path readable before the cart details. */
.finder-layout {
  width: min(1420px, calc(100% - 28px));
  grid-template-columns: minmax(0, 1fr) minmax(330px, 380px);
  gap: clamp(1rem, 2vw, 1.4rem);
}
.finder-workbench {
  display: grid;
  gap: 1rem;
}
.finder-workbench > .section-heading {
  max-width: none;
  margin-bottom: 0;
  padding: 1rem;
  border: 1px solid var(--line);
  border-left: 8px solid var(--green);
  border-radius: 10px;
  background: var(--cream);
  box-shadow: 0 12px 34px rgba(42,33,24,.08);
}
.finder-workbench > .section-heading h2 {
  max-width: 16ch;
  margin-bottom: .55rem;
  font-size: clamp(2rem, 3.6vw, 3.4rem);
}
.finder-workbench > .section-heading p:last-child {
  max-width: 900px;
  margin-bottom: 0;
}
.finder-panel {
  align-items: end;
  border-left: 8px solid var(--gold);
  background: var(--cream);
}
.finder-panel label {
  min-width: 0;
}
.finder-panel label:first-child input {
  min-height: 3.35rem;
  border-color: rgba(23,61,31,.32);
  font-size: 1.05rem;
  font-weight: 800;
}
.matrix-filter-block {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .75rem;
  align-items: start;
  margin: 0;
  padding: .85rem 1rem;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--cream);
  box-shadow: 0 12px 34px rgba(42,33,24,.08);
}
.matrix-label {
  margin: .55rem 0 0;
  white-space: nowrap;
}
.equipment-chip-row {
  max-height: 7rem;
  overflow: auto;
  padding: .08rem .12rem .18rem 0;
}
.equipment-chip {
  background: var(--white);
}
.path-board {
  grid-template-columns: minmax(220px, .75fr) minmax(0, 1fr);
  align-items: start;
  background: var(--cream);
}
.current-route {
  min-height: 100%;
}
.path-list {
  max-height: 13.5rem;
}
.matrix-result-count {
  margin: 0;
  padding: .72rem .85rem;
  border: 1px solid rgba(23,61,31,.16);
  border-radius: 8px;
  color: var(--green);
  background: #fff6dc;
}
.matrix-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 1rem;
  align-items: start;
}
.matrix-card {
  gap: .75rem;
  border-left: 7px solid rgba(219,166,66,.78);
  background: var(--white);
}
.matrix-card h3 {
  margin-bottom: 0;
  color: var(--green);
  font-size: clamp(1.2rem, 1.6vw, 1.55rem);
}
.matrix-card-head {
  align-items: flex-start;
}
.matrix-card-head .part-type,
.path-status {
  display: inline-flex;
  align-items: center;
  min-height: 1.7rem;
}
.path-trace {
  color: var(--muted);
  background: #f7f1e5;
  font-size: .82rem;
}
.part-visual {
  min-height: 3.7rem;
  background: linear-gradient(135deg, #ffffff, #fff6dc);
}
.part-visual svg {
  width: min(100%, 150px);
  height: 58px;
  stroke-width: 8;
}
.matrix-card-common {
  display: grid;
  gap: .38rem;
  padding: .7rem .8rem;
  border: 1px solid rgba(23,61,31,.12);
  border-radius: 8px;
  background: #fbf7ed;
}
.matrix-card-common strong,
.matrix-card-details summary {
  color: var(--green);
  font-weight: 950;
}
.matrix-card-common ul {
  margin: 0;
  padding-left: 1.1rem;
}
.granular-parts {
  padding: .8rem;
  background: #f8f1e5;
}
.granular-part-grid {
  max-height: 18rem;
}
.part-line-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .28rem .62rem;
  align-items: start;
  background: var(--white);
}
.part-line-title { grid-column: 1; }
.part-line-detail,
.part-line-add { grid-column: 1 / -1; }
.part-line-kind {
  grid-column: 2;
  grid-row: 1;
}
.part-line-add {
  width: fit-content;
  padding: .18rem .42rem;
  border-radius: 999px;
  background: #eaf2e9;
}
.matrix-card-details {
  padding: .7rem .8rem;
  border: 1px solid rgba(23,61,31,.14);
  border-radius: 8px;
  background: #fbf7ed;
}
.matrix-card-details summary {
  cursor: pointer;
}
.matrix-card-details p {
  margin: .55rem 0 0;
  color: #4f463c;
  font-size: .9rem;
}
.matrix-card-actions {
  padding-top: .2rem;
}
.custom-part-panel,
.cart-panel {
  background: var(--cream);
}
.custom-part-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.custom-part-form .request-wide,
.custom-part-form .button {
  grid-column: 1 / -1;
}
.cart-panel {
  border-top: 7px solid var(--green);
}

/* Automobile matrix page. */
.auto-hero h1 {
  max-width: 11ch;
}
.auto-help-strip {
  border-left-color: var(--green);
}
.auto-matrix-section {
  display: grid;
  gap: 1rem;
  padding-top: 2rem;
}
.auto-matrix-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, .42fr);
  gap: 1rem;
  align-items: stretch;
}
.auto-controls-panel,
.auto-vin-panel,
.auto-makes-panel,
.auto-parts-panel,
.auto-make-card,
.auto-system-card {
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--cream);
  box-shadow: 0 12px 34px rgba(42,33,24,.08);
}
.auto-controls-panel {
  display: grid;
  gap: .85rem;
  padding: 1rem;
  border-left: 8px solid var(--gold);
}
.auto-controls-panel .section-heading {
  max-width: none;
  margin-bottom: 0;
}
.auto-controls-panel h2,
.auto-vin-panel h2,
.auto-panel-head h2 {
  margin-bottom: .35rem;
  font-size: clamp(1.65rem, 3vw, 2.7rem);
}
.auto-search-label,
.auto-filter-grid label {
  display: grid;
  gap: .35rem;
  color: var(--green);
  font-size: .82rem;
  font-weight: 950;
}
.auto-search-label input,
.auto-filter-grid select {
  width: 100%;
  min-height: 2.95rem;
  padding: .75rem .82rem;
  border: 2px solid var(--line);
  border-radius: 8px;
  color: var(--soil);
  background: var(--white);
  font: inherit;
  font-weight: 700;
}
.auto-search-label input {
  min-height: 3.35rem;
  border-color: rgba(23,61,31,.32);
  font-size: 1.05rem;
}
.auto-search-label input:focus,
.auto-filter-grid select:focus {
  border-color: var(--green);
  outline: none;
  box-shadow: 0 0 0 4px rgba(23,61,31,.1);
}
.auto-filter-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
.auto-result-count {
  margin: 0;
  padding: .72rem .85rem;
  border: 1px solid rgba(23,61,31,.16);
  border-radius: 8px;
  color: var(--green);
  background: #fff6dc;
  font-weight: 900;
}
.auto-vin-panel {
  display: grid;
  gap: .7rem;
  align-content: start;
  padding: 1rem;
  border-top: 7px solid var(--green);
}
.auto-vin-panel ul {
  margin: 0;
  padding-left: 1.15rem;
  color: #4f463c;
  font-weight: 760;
}
.auto-vin-panel li {
  margin: .38rem 0;
}
.auto-grid-layout {
  display: grid;
  grid-template-columns: minmax(280px, .38fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}
.auto-makes-panel,
.auto-parts-panel {
  display: grid;
  gap: .85rem;
  padding: 1rem;
}
.auto-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  padding-bottom: .75rem;
  border-bottom: 1px solid rgba(23,61,31,.14);
}
.auto-panel-head span {
  flex: 0 0 auto;
  padding: .35rem .55rem;
  border-radius: 999px;
  color: var(--cream);
  background: var(--green);
  font-size: .78rem;
  font-weight: 950;
  white-space: nowrap;
}
.auto-make-grid {
  display: grid;
  gap: .7rem;
  max-height: 78rem;
  overflow: auto;
  padding-right: .15rem;
}
.auto-make-card {
  padding: .8rem;
  border-left: 6px solid rgba(219,166,66,.78);
  background: var(--white);
}
.auto-make-card h3 {
  margin-bottom: .3rem;
  color: var(--green);
}
.auto-make-card p {
  margin: 0;
  color: #4f463c;
  font-size: .9rem;
  font-weight: 760;
}
.auto-system-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 1rem;
  align-items: start;
}
.auto-system-card {
  display: grid;
  gap: .7rem;
  padding: 1rem;
  border-left: 7px solid rgba(219,166,66,.78);
  background: var(--white);
}
.auto-system-head {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  align-items: flex-start;
}
.auto-system-head h3 {
  margin-bottom: 0;
  color: var(--green);
}
.auto-system-head span {
  flex: 0 0 auto;
  padding: .28rem .46rem;
  border-radius: 999px;
  color: var(--green);
  background: #eaf2e9;
  font-size: .72rem;
  font-weight: 950;
}
.auto-part-lines {
  display: grid;
  gap: .55rem;
}
.auto-part-line {
  padding: .65rem .72rem;
  border: 1px solid rgba(23,61,31,.14);
  border-radius: 8px;
  background: #fbf7ed;
}
.auto-part-line summary {
  display: flex;
  justify-content: space-between;
  gap: .7rem;
  align-items: center;
  color: var(--green);
  font-weight: 950;
  cursor: pointer;
}
.auto-item-number {
  flex: 0 0 auto;
  padding: .18rem .38rem;
  border-radius: 999px;
  color: var(--rust);
  background: #fff6dc;
  font-size: .72rem;
  line-height: 1.15;
}
.auto-part-line p {
  margin: .48rem 0 0;
  color: #4f463c;
  font-size: .9rem;
  font-weight: 740;
}
.auto-component-list {
  display: grid;
  gap: .42rem;
  margin-top: .65rem;
  padding: .65rem;
  border: 1px solid rgba(23,61,31,.13);
  border-radius: 8px;
  background: rgba(255,255,255,.72);
}
.auto-component-list-head,
.auto-component-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: .55rem;
  align-items: center;
}
.auto-component-list-head {
  color: var(--green);
  font-size: .78rem;
  font-weight: 950;
  text-transform: uppercase;
}
.auto-component-list-head span {
  color: var(--muted);
  text-transform: none;
}
.auto-component-row {
  padding: .48rem .5rem;
  border: 1px solid rgba(23,61,31,.13);
  border-left: 5px solid rgba(219,166,66,.78);
  border-radius: 8px;
  background: var(--white);
}
.auto-component-row div {
  display: grid;
  gap: .12rem;
}
.auto-component-row strong {
  color: var(--green);
  font-size: .9rem;
  line-height: 1.18;
}
.auto-component-number {
  color: var(--rust);
  font-size: .7rem;
  font-weight: 950;
  line-height: 1;
}
.auto-component-row button {
  min-height: 2.25rem;
  padding: .42rem .58rem;
  border: 2px solid rgba(23,61,31,.18);
  border-radius: 8px;
  color: var(--green);
  background: var(--cream);
  font: inherit;
  font-size: .82rem;
  font-weight: 950;
  cursor: pointer;
}
.auto-component-row button:hover,
.auto-component-row button:focus-visible {
  color: var(--cream);
  background: var(--green);
  border-color: var(--green);
  outline: none;
}
.auto-line-note {
  display: grid;
  gap: .3rem;
  margin-top: .6rem;
  color: var(--green);
  font-size: .8rem;
  font-weight: 950;
}
.auto-line-note textarea {
  width: 100%;
  min-height: 4.6rem;
  resize: vertical;
  padding: .62rem .68rem;
  border: 2px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  color: var(--soil);
  font: inherit;
  font-weight: 650;
}
.auto-add-button {
  width: 100%;
  margin-top: .6rem;
  justify-content: center;
}
.cart-subitem-list {
  margin: .35rem 0;
  padding: .56rem .65rem;
  border-radius: 8px;
  color: #4f463c;
  background: rgba(255,246,220,.74);
  font-size: .9rem;
  font-weight: 760;
}
.cart-subitem-list strong {
  display: block;
  color: var(--green);
  margin-bottom: .25rem;
}
.cart-subitem-list ul {
  margin: 0;
  padding-left: 1.1rem;
}
.auto-cart-panel {
  position: static;
  max-height: none;
  margin-top: 1rem;
}
.auto-order-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.auto-order-form h3,
.auto-order-form .request-wide,
.auto-order-form .request-check,
.auto-order-form .request-hp,
.auto-order-form .button,
.auto-order-form .request-result {
  grid-column: 1 / -1;
}
@media (max-width: 1040px) {
  .finder-layout {
    width: min(1180px, calc(100% - 28px));
  }
  .parts-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .auto-matrix-shell,
  .auto-grid-layout {
    grid-template-columns: 1fr;
  }
  .auto-make-grid {
    max-height: none;
  }
  .auto-order-form {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1040px) {
  .part-search-card {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    overflow: auto;
  }
  .part-search-head,
  .part-search-input-label,
  .part-search-chips,
  .part-search-note,
  .part-search-results,
  .part-search-custom {
    grid-column: 1;
    grid-row: auto;
  }
  .part-search-results {
    overflow: visible;
    padding-right: 0;
  }
  .matrix-filter-block,
  .path-board,
  .custom-part-form,
  .parts-route-heading,
  .parts-route-grid {
    grid-template-columns: 1fr;
  }
  .parts-route-heading h2,
  .parts-route-heading p:last-child {
    grid-column: 1;
  }
  .matrix-label {
    margin: 0;
  }
  .equipment-chip-row {
    max-height: none;
  }
  .part-line-card {
    grid-template-columns: 1fr;
  }
  .part-line-title,
  .part-line-kind {
    grid-column: 1;
    grid-row: auto;
  }
  .auto-filter-grid,
  .auto-panel-head,
  .auto-system-head {
    grid-template-columns: 1fr;
  }
  .auto-panel-head,
  .auto-system-head {
    display: grid;
  }
}
.empty-state, .empty-mini { margin: 0; padding: .9rem; border: 1px dashed rgba(23,61,31,.26); border-radius: 8px; color: var(--muted); background: rgba(255,255,255,.62); font-weight: 850; }
@keyframes farmLoadLift {
  0% { clip-path: inset(0 0 0 0); transform: translateY(0); opacity: 1; }
  100% { clip-path: inset(0 0 100% 0); transform: translateY(-4rem); opacity: .18; }
}
@keyframes farmSunPulse {
  50% { transform: scale(1.05); box-shadow: 0 0 6.2rem rgba(240,185,79,.58); }
}
@keyframes farmCloudDrift {
  from { translate: -1rem 0; }
  to { translate: 1.4rem 0; }
}
@keyframes fieldRows {
  from { translate: 0 0; opacity: .72; }
  to { translate: 4.4rem .45rem; opacity: .28; }
}
@keyframes tractorSettle {
  0% { transform: translateX(-72vw) translateY(.4rem); }
  70% { transform: translateX(-48%) translateY(.1rem); }
  100% { transform: translateX(-50%) translateY(0); }
}
@keyframes wheelSpin {
  to { transform: rotate(360deg); }
}
@keyframes dustTrail {
  from { transform: translateX(1rem) scale(.65); opacity: .65; }
  to { transform: translateX(-4rem) scale(1.3); opacity: 0; }
}
@keyframes readerPanelOpen {
  from { opacity: 0; transform: translateY(.5rem); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes truckIntroFadeDown {
  from { opacity: 0; transform: translateY(-14px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes truckIntroFadeUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes truckPhotoSettle {
  0%, 26% { filter: brightness(1.08) saturate(1.08) contrast(1.02); transform: scale(1.01); }
  100% { filter: brightness(.94) saturate(1) contrast(1.02); transform: scale(1); }
}
@keyframes truckShadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes truckTextIn {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .farm-load-screen, .farm-load-screen *, .reader-tools-panel, .hero-truck-image, .hero-truck-shade, .hero-truck .hero-copy, .hero-checklist { animation: none; }
  .hero-truck-shade, .hero-truck .hero-copy, .hero-checklist { opacity: 1; transform: none; }
  .site-header.has-toggle-menu .main-nav { transition: none; }
}
@media (max-width: 1040px) { .parts-grid, .parts-shelf, .matrix-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } .finder-layout { grid-template-columns: 1fr; } .cart-panel { position: static; max-height: none; } }
@media (max-width: 1040px) { .finder-guide, .start-here-section { grid-template-columns: 1fr; } .quick-clue-box { grid-row: auto; } .finder-guide-steps { grid-template-columns: 1fr; } }
@media (max-width: 820px) { .site-header { position: static; align-items: flex-start; flex-direction: column; } .brand { width: 100%; } .main-nav { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); width: 100%; justify-content: stretch; gap: .6rem; } .main-nav a { width: 100%; min-height: 3.25rem; padding: .75rem .8rem; border-color: rgba(23,61,31,.18); background: rgba(255,250,240,.94); box-shadow: 0 8px 20px rgba(42,33,24,.08); font-size: 1rem; } .main-nav a:hover, .main-nav a:focus-visible, .main-nav a[aria-current="page"] { border-color: var(--green); background: #fff6dc; box-shadow: 0 0 0 4px rgba(23,61,31,.1), 0 10px 24px rgba(42,33,24,.12); transform: translateY(-1px); } .hero, .parts-search, .split, .trust-grid, .part-layout, .request-grid, .finder-panel, .custom-part-panel, .manufacturer-switcher, .farmer-help-strip, .ten32-bench-ad, .part-search-results, .start-here-heading, .path-choice-grid, .machine-memory-panel, .saved-machine-form, .model-family-grid, .repair-data-grid, .simple-machine-strip, .simple-parts-path { grid-template-columns: 1fr; } .farmer-help-actions { justify-content: flex-start; } .manufacturer-links { justify-content: flex-start; } .hero { min-height: auto; padding-top: 2rem; } .hero-truck { min-height: auto; padding-top: 4rem; } .hero-truck-image { object-position: 55% center; } }
@media (max-width: 820px) { body.truck-intro-pending .site-header, body.truck-intro-pending .hero-truck .hero-copy, body.truck-intro-pending .hero-checklist, body.truck-intro-pending .reader-tools, body.truck-intro-pending .part-search-launcher { opacity: 0; visibility: hidden; pointer-events: none; } body.truck-intro-pending .site-header { position: fixed; top: 10px; left: 10px; right: 10px; width: auto; transform: translateY(-14px); } body.truck-intro-pending .hero-truck { min-height: 100svh; padding-top: 2rem; } body.truck-intro-ready .site-header { animation: truckIntroFadeDown .58s cubic-bezier(.2,.8,.2,1) both; } body.truck-intro-ready .hero-truck .hero-copy, body.truck-intro-ready .hero-checklist, body.truck-intro-ready .reader-tools, body.truck-intro-ready .part-search-launcher { animation: truckIntroFadeUp .62s cubic-bezier(.2,.8,.2,1) both; } }
@media (max-width: 560px) { body { padding-bottom: 8.2rem; } .hero, .section, .parts-search, .cta, .page-hero, .part-layout, .site-footer, .site-header, .manufacturer-switcher, .farmer-help-strip, .finder-guide, .start-here-section, .ten32-bench-ad, .machine-memory-panel, .repair-data-board, .simple-machine-strip { width: min(100% - 20px, 1180px); max-width: calc(100% - 20px); } .hero-truck { width: 100%; padding-right: 10px; padding-left: 10px; } .brand img { width: 48px; height: 48px; } .brand small { font-size: .76rem; } .main-nav { grid-template-columns: 1fr; } h1 { font-size: clamp(2.25rem, 12vw, 2.85rem); line-height: 1; } h2 { font-size: 2rem; } .page-hero h1, .page-hero .hero-lead, .page-hero .crumb, .page-hero .eyebrow, .page-hero .hero-actions { max-width: calc(100vw - 20px); } .page-hero .hero-lead { font-size: 1rem; line-height: 1.45; } .parts-grid, .parts-shelf, .spec-list, .matrix-grid { grid-template-columns: 1fr; } .featured-part { grid-column: auto; } .parts-note .hero-actions, .hero-actions, .site-footer, .request-actions, .matrix-card-actions, .cart-actions, .farmer-help-actions { flex-direction: column; align-items: stretch; } .button { width: 100%; } .path-choice-card { min-height: auto; } .manufacturer-links a { width: 100%; justify-content: center; } .request-modal-head, .part-search-head { flex-direction: column; } .modal-close, .part-search-close { width: 100%; } .path-pill { grid-template-columns: 1fr; } .path-remove { width: 100%; } .part-search-launcher { left: 10px; right: 10px; bottom: 10px; min-height: 3.65rem; grid-template-columns: auto auto; gap: .35rem; } .part-search-card { max-height: 94dvh; } .part-search-input-label input { min-height: 3.4rem; font-size: 1rem; } }
@media (max-width: 560px) { .simple-machine-strip { padding: .85rem; } .simple-machine-strip h2 { font-size: 1.95rem; } .simple-parts-path span { min-height: auto; padding: .7rem; } .part-search-card { width: calc(100vw - 16px); height: calc(100dvh - 16px); max-height: calc(100dvh - 16px); } .request-modal { inset: 8px; width: calc(100vw - 16px); height: calc(100dvh - 16px); max-height: none; } }
@media (max-width: 820px) { .site-header.has-toggle-menu { grid-template-columns: minmax(0,1fr) minmax(9.6rem,.45fr); align-items: center; } .site-header.has-toggle-menu .brand { width: auto; } .nav-menu-toggle { min-width: 0; width: 100%; } .site-header.has-toggle-menu .main-nav { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 560px) { .site-header.has-toggle-menu { grid-template-columns: 1fr; } .nav-menu-toggle { min-height: 3.35rem; } .site-header.has-toggle-menu .main-nav { grid-template-columns: 1fr; } .reader-tools { top: 44%; } .reader-tools-panel { grid-template-columns: 1fr 1fr 1fr; } }
.site-header.has-toggle-menu { position: sticky; }
.site-header.has-toggle-menu .reader-tools { position: static; grid-column: 1 / -1; display: none; justify-items: start; width: 100%; margin-top: .62rem; color: var(--green); opacity: 1; visibility: visible; pointer-events: auto; transform: none; transition: none; }
.site-header.has-toggle-menu.is-menu-open .reader-tools { display: grid; }
.site-header.has-toggle-menu .reader-tools-toggle { display: none; }
.site-header.has-toggle-menu .reader-tools-panel { width: min(26rem, 100%); border: 2px solid rgba(23,61,31,.2); border-left: 7px solid var(--gold); border-radius: 10px; background: rgba(255,250,240,.96); backdrop-filter: none; box-shadow: 0 18px 48px rgba(42,33,24,.2); }
@media (max-width: 820px) { .site-header.has-toggle-menu { position: relative; } }
@media (max-width: 560px) { .site-header.has-toggle-menu .reader-tools-panel { grid-template-columns: 1fr 1fr 1fr; } }

/* Simple make / machine / model path. */
.simple-machine-strip {
  display: grid;
  grid-template-columns: minmax(0, .52fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: stretch;
  width: min(1180px, calc(100% - 28px));
  margin: 1.2rem auto 0;
  padding: 1rem;
  border: 2px solid rgba(23,61,31,.18);
  border-left: 8px solid var(--gold);
  border-radius: 12px;
  background: rgba(255,250,240,.98);
  box-shadow: 0 16px 42px rgba(42,33,24,.1);
}
.simple-machine-strip h2 {
  margin-bottom: .5rem;
  font-size: clamp(2rem, 4vw, 3.35rem);
}
.simple-machine-strip p:last-child {
  max-width: 620px;
  margin-bottom: 0;
  color: #4f463c;
  font-weight: 760;
}
.simple-parts-path {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
  width: 100%;
}
.simple-parts-path span {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .1rem .55rem;
  align-content: center;
  min-height: 5rem;
  padding: .8rem;
  border: 2px solid rgba(23,61,31,.16);
  border-radius: 10px;
  background: var(--white);
  box-shadow: 0 10px 24px rgba(42,33,24,.06);
}
.simple-parts-path b {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 999px;
  color: var(--cream);
  background: var(--green);
  font-weight: 950;
}
.simple-parts-path strong {
  color: var(--green);
  font-size: 1.05rem;
  line-height: 1.08;
}
.simple-parts-path em {
  color: #4f463c;
  font-style: normal;
  font-size: .86rem;
  font-weight: 760;
  line-height: 1.25;
}
.simple-parts-path-large span {
  min-height: 6rem;
}
.finder-workbench .simple-parts-path {
  margin-bottom: .1rem;
}
@media (max-width: 820px) {
  .simple-machine-strip,
  .simple-parts-path {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 560px) {
  .simple-machine-strip {
    width: min(100% - 20px, 1180px);
    max-width: calc(100% - 20px);
    padding: .85rem;
  }
  .simple-machine-strip h2 {
    font-size: 1.95rem;
  }
  .simple-parts-path span {
    min-height: auto;
    padding: .7rem;
  }
}
/* Simple path mobile overrides. */
/* Bacon Ag iPhone parts finder pass. */
.machinery-link-preview {
  position: relative;
  z-index: 1;
  display: grid;
  align-self: end;
  width: min(100%, 430px);
  overflow: hidden;
  border: 2px solid rgba(219,166,66,.62);
  border-radius: 12px;
  color: var(--soil);
  background: rgba(255,250,240,.96);
  box-shadow: 0 24px 60px rgba(42,33,24,.28);
}
.hero-parts-preview {
  justify-self: end;
  opacity: 0;
  transform: translateY(14px);
  animation: truckTextIn .62s cubic-bezier(.2,.8,.2,1) .82s forwards;
}
.machinery-link-preview img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
  background: #1b2418;
}
.machinery-preview-body {
  display: grid;
  gap: .42rem;
  padding: 1rem;
}
.machinery-preview-body span {
  color: var(--rust);
  font-size: .74rem;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
}
.machinery-preview-body h2 {
  margin: 0;
  color: var(--green);
  font-size: clamp(1.35rem, 2.4vw, 2.25rem);
  line-height: 1.04;
}
.machinery-preview-body p {
  margin: 0;
  color: #4f463c;
  font-weight: 850;
}
.machinery-route-chips {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin-top: .25rem;
}
.machinery-route-chips b {
  display: inline-flex;
  align-items: center;
  min-height: 1.85rem;
  padding: .3rem .5rem;
  border-radius: 999px;
  color: var(--green);
  background: #eaf2e9;
  font-size: .75rem;
  font-weight: 950;
  line-height: 1.1;
}
.machinery-preview-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  padding: 0 1rem 1rem;
}
.machinery-preview-actions .button,
.machinery-preview-actions .request-trigger {
  width: 100%;
  margin: 0;
}
.machinery-page-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, .42fr);
  gap: clamp(1rem, 2vw, 1.4rem);
  align-items: end;
  width: min(1180px, calc(100% - 28px));
  max-width: min(1180px, calc(100% - 28px));
}
.machinery-page-hero .page-hero-copy {
  min-width: 0;
}
.compact-machinery-preview {
  align-self: stretch;
  box-shadow: 0 16px 42px rgba(42,33,24,.12);
}
.compact-machinery-preview .machinery-preview-body h2 {
  font-size: clamp(1.35rem, 2.1vw, 1.95rem);
}

@media (prefers-reduced-motion: reduce) {
  .hero-parts-preview {
    animation: none;
    opacity: 1;
    transform: none;
  }
}

@media (max-width: 820px) {
  body.truck-intro-pending .hero-parts-preview {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  body.truck-intro-ready .hero-parts-preview {
    animation: truckIntroFadeUp .62s cubic-bezier(.2,.8,.2,1) both;
  }
  .hero-truck {
    display: grid;
    grid-template-columns: 1fr;
    align-content: end;
    gap: 1rem;
    min-height: max(640px, calc(100svh - 1rem));
    padding: clamp(4.75rem, 17vw, 6.2rem) 14px 1rem;
  }
  .hero-truck-shade {
    background: linear-gradient(180deg, rgba(12,25,14,.18) 0%, rgba(12,25,14,.62) 38%, rgba(12,25,14,.96) 100%);
  }
  .hero-truck .hero-copy,
  .hero-parts-preview {
    width: 100%;
    max-width: none;
    justify-self: stretch;
  }
  .hero-truck h1 {
    font-size: clamp(2.35rem, 10.8vw, 3.55rem);
    line-height: .96;
  }
  .hero-truck .hero-lead {
    font-size: 1.02rem;
    line-height: 1.42;
  }
  .machinery-page-hero {
    grid-template-columns: 1fr;
    padding-top: 1.35rem;
  }
  .compact-machinery-preview {
    width: 100%;
    max-width: none;
  }
  .part-search-overlay {
    place-items: stretch;
    padding: max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));
    overflow: hidden;
  }
  .part-search-card {
    width: 100%;
    height: calc(100dvh - 16px);
    max-height: none;
    gap: .75rem;
    padding: .9rem;
    border-radius: 8px;
    -webkit-overflow-scrolling: touch;
  }
  .part-search-head {
    position: sticky;
    top: -.9rem;
    z-index: 2;
    margin: -.9rem -.9rem 0;
    padding: .9rem;
    background: var(--cream);
  }
  .part-search-head h2 {
    max-width: none;
    font-size: clamp(1.7rem, 7vw, 2.45rem);
    line-height: 1;
  }
  .part-search-chips,
  .equipment-chip-row {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding-right: 0;
    padding-bottom: .24rem;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }
  .part-search-chips button,
  .equipment-chip {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }
  .part-search-results {
    grid-template-columns: 1fr;
    gap: .65rem;
  }
  .finder-workbench > .section-heading,
  .finder-panel,
  .matrix-filter-block,
  .path-board,
  .custom-part-panel,
  .cart-panel,
  .matrix-card {
    border-radius: 8px;
  }
  .finder-panel {
    border-left-width: 0;
    border-top: 7px solid var(--gold);
  }
  .finder-panel input,
  .finder-panel select,
  .custom-part-form input,
  .custom-part-form select,
  .custom-part-form textarea,
  .order-form input,
  .order-form select,
  .order-form textarea,
  .part-search-input-label input {
    font-size: 16px;
  }
  .matrix-filter-block {
    padding: .85rem;
    overflow: hidden;
  }
  .path-list,
  .granular-part-grid {
    max-height: none;
  }
  .cart-panel-head {
    display: grid;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  body {
    padding-bottom: calc(7.5rem + env(safe-area-inset-bottom));
  }
  .hero-truck h1,
  .machinery-page-hero h1 {
    max-width: 11.5ch;
    font-size: clamp(1.92rem, 8.8vw, 2.28rem);
    line-height: 1.04;
  }
  .machinery-page-hero h1 {
    max-width: 12.5ch;
  }
  .hero-truck .hero-lead,
  .machinery-page-hero .hero-lead {
    font-size: .98rem;
    line-height: 1.44;
  }
  .hero-truck {
    min-height: max(680px, calc(100svh - 1rem));
    padding-right: 10px;
    padding-bottom: calc(5rem + env(safe-area-inset-bottom));
    padding-left: 10px;
  }
  .hero-parts-preview,
  .compact-machinery-preview,
  .finder-workbench > .section-heading,
  .finder-panel,
  .matrix-filter-block,
  .path-board,
  .custom-part-panel,
  .cart-panel,
  .matrix-card {
    box-shadow: 0 10px 26px rgba(42,33,24,.08);
  }
  .machinery-preview-body,
  .machinery-preview-actions {
    padding-right: .85rem;
    padding-left: .85rem;
  }
  .machinery-preview-actions {
    grid-template-columns: 1fr;
    padding-bottom: .85rem;
  }
  .machinery-route-chips {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: .2rem;
    -webkit-overflow-scrolling: touch;
  }
  .machinery-route-chips b {
    flex: 0 0 auto;
  }
  .machinery-page-hero,
  .finder-layout {
    width: min(100% - 20px, 1180px);
    max-width: calc(100% - 20px);
  }
  .finder-layout {
    gap: .85rem;
    padding-top: 1rem;
  }
  .finder-workbench {
    gap: .85rem;
  }
  .finder-workbench > .section-heading,
  .finder-panel,
  .matrix-filter-block,
  .path-board,
  .custom-part-panel,
  .cart-panel,
  .matrix-card,
  .granular-parts {
    padding: .85rem;
  }
  .finder-workbench > .section-heading h2 {
    max-width: none;
    font-size: 2rem;
  }
  .matrix-card-head,
  .granular-parts-head,
  .open-paths-head {
    display: grid;
    grid-template-columns: 1fr;
  }
  .part-search-launcher {
    bottom: max(10px, env(safe-area-inset-bottom));
    padding: .48rem .75rem;
  }
  .part-search-card {
    height: calc(100dvh - 16px);
  }
  .part-search-result {
    padding: .8rem;
  }
  .cart-line-controls {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .cart-line-controls strong {
    display: grid;
    place-items: center;
  }
}

/* iPhone text containment for simple finder pages. */
@media (max-width: 560px) {
  .page-hero,
  .machinery-page-hero,
  .machinery-page-hero .page-hero-copy,
  .finder-workbench,
  .finder-panel,
  .simple-parts-path,
  .simple-parts-path span {
    min-width: 0;
    max-width: 100%;
  }
  .machinery-page-hero .hero-lead,
  .machinery-page-hero p,
  .finder-workbench p,
  .simple-parts-path em {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  .machinery-page-hero .hero-actions {
    width: 100%;
  }
}

/* iPhone hero lead readable measure. */
@media (max-width: 560px) {
  .hero-truck .hero-lead,
  .machinery-page-hero .hero-lead {
    width: auto;
    max-width: min(31ch, calc(100vw - 40px));
  }
}

/* Intuitive order flow. */
.order-flow-panel {
  display: grid;
  grid-template-columns: minmax(0, .48fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: stretch;
  width: min(1180px, calc(100% - 28px));
  margin: 1.2rem auto 0;
  padding: 1rem;
  border: 3px solid rgba(23,61,31,.18);
  border-left: 9px solid var(--gold);
  border-radius: 12px;
  background: rgba(255,250,240,.98);
  box-shadow: 0 18px 48px rgba(42,33,24,.12);
}
.order-flow-panel h2 {
  margin-bottom: .55rem;
  font-size: clamp(2rem, 4vw, 3.45rem);
}
.order-flow-panel p {
  color: #4f463c;
  font-weight: 780;
}
.order-flow-panel p:last-child {
  margin-bottom: 0;
}
.order-flow-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
}
.order-flow-steps article {
  display: grid;
  gap: .45rem;
  align-content: start;
  min-height: 100%;
  padding: .85rem;
  border: 1px solid rgba(23,61,31,.16);
  border-radius: 10px;
  background: var(--white);
  box-shadow: 0 10px 24px rgba(42,33,24,.06);
}
.order-flow-steps span {
  display: inline-grid;
  width: 2.25rem;
  height: 2.25rem;
  place-items: center;
  border-radius: 999px;
  color: var(--cream);
  background: var(--green);
  font-weight: 950;
}
.order-flow-steps strong {
  color: var(--green);
  font-size: 1.02rem;
  line-height: 1.12;
}
.order-flow-steps p {
  margin: 0;
  font-size: .9rem;
  line-height: 1.35;
}
.order-flow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-top: 1rem;
}
.order-flow-note {
  margin: .85rem 0 0;
  padding: .75rem .85rem;
  border-left: 6px solid var(--gold);
  border-radius: 8px;
  color: var(--green);
  background: #fff6dc;
  font-weight: 900;
}
.order-mini-guide {
  display: grid;
  gap: .55rem;
  margin-bottom: .85rem;
  padding: .8rem;
  border: 1px solid rgba(23,61,31,.16);
  border-left: 7px solid var(--gold);
  border-radius: 8px;
  background: #fff6dc;
}
.order-mini-guide strong {
  color: var(--green);
  font-size: 1.05rem;
}
.order-mini-guide p {
  margin: 0;
  color: #4f463c;
  font-weight: 800;
}
.order-mini-guide b {
  color: var(--green);
}
.order-folder-note {
  padding-top: .15rem;
  color: var(--green) !important;
}
.request-dock {
  display: none;
}
.part-search-launcher strong {
  font-size: 1.04rem;
}
@media (max-width: 820px) {
  .order-flow-panel,
  .order-flow-steps {
    grid-template-columns: 1fr;
  }
  .order-flow-actions {
    flex-direction: column;
  }
  .order-flow-actions .button,
  .order-flow-actions .request-trigger {
    width: 100%;
  }
}
@media (max-width: 560px) {
  .order-flow-panel {
    width: min(100% - 20px, 1180px);
    max-width: calc(100% - 20px);
    padding: .85rem;
  }
  .order-flow-panel h2 {
    font-size: 1.95rem;
  }
  .order-flow-steps article {
    min-height: auto;
    padding: .75rem;
  }
}

@media (max-width: 1040px) {
  body.has-request-dock {
    padding-bottom: calc(8.9rem + env(safe-area-inset-bottom));
  }
  body.has-request-dock .cart-panel {
    scroll-margin-top: 1rem;
    scroll-margin-bottom: 9rem;
  }
  body.has-request-dock .part-search-launcher {
    display: none;
  }
  .request-dock {
    position: fixed;
    right: auto;
    bottom: calc(10px + env(safe-area-inset-bottom));
    left: 50dvw;
    transform: translateX(-50%);
    z-index: 120;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .5rem;
    align-items: stretch;
    box-sizing: border-box;
    width: min(350px, calc(100dvw - 48px));
    max-width: calc(100dvw - 48px);
    overflow: hidden;
    padding: .55rem;
    border: 3px solid var(--gold);
    border-radius: 12px;
    color: var(--cream);
    background: #173d1f;
    box-shadow: 0 20px 60px rgba(0,0,0,.28);
  }
  .request-dock-steps {
    grid-column: 1 / -1;
    display: flex;
    gap: .35rem;
  }
  .request-dock-steps span {
    display: inline-grid;
    flex: 1 1 0;
    min-width: 0;
    min-height: 1.9rem;
    place-items: center;
    border-radius: 8px;
    color: #173d1f;
    background: var(--gold);
    font-size: .82rem;
    font-weight: 950;
    line-height: 1;
  }
  .request-dock-main {
    display: grid;
    gap: .12rem;
    min-width: 0;
    padding: .58rem .65rem;
    border-radius: 9px;
    color: var(--cream);
    background: rgba(255,250,240,.1);
    text-decoration: none;
  }
  .request-dock-main small,
  .request-dock-main span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .request-dock-main small {
    color: #ffe2a3;
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
  }
  .request-dock-main strong {
    font-size: 1.18rem;
    line-height: 1;
  }
  .request-dock-main span {
    color: #fff6dc;
    font-size: .82rem;
    font-weight: 800;
  }
  .request-dock-send {
    min-width: 5.4rem;
    padding: .55rem .7rem;
    border: 0;
    border-radius: 9px;
    color: #173d1f;
    background: var(--gold);
    font: inherit;
    font-weight: 950;
    cursor: pointer;
  }
  .request-dock-send:hover,
  .request-dock-send:focus-visible,
  .request-dock-main:hover,
  .request-dock-main:focus-visible {
    outline: 3px solid rgba(255,250,240,.72);
    outline-offset: 2px;
  }
  .request-dock[data-has-items="true"] .request-dock-send {
    background: #fff6dc;
  }
}

@media (max-width: 560px) {
  body.has-request-dock {
    padding-bottom: calc(9.8rem + env(safe-area-inset-bottom));
  }
  body.has-request-dock .part-search-launcher {
    display: none;
  }
  .request-dock {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    grid-template-columns: 1fr;
    width: min(300px, calc(100vw - 48px));
    max-width: calc(100vw - 48px);
    padding: .5rem;
  }
  .request-dock-steps span {
    min-height: 1.75rem;
    font-size: .76rem;
  }
  .request-dock-main {
    padding: .52rem .56rem;
  }
  .request-dock-main strong {
    font-size: 1.05rem;
  }
  .request-dock-main span {
    font-size: .78rem;
  }
  .request-dock-send {
    min-width: 0;
    width: 100%;
    min-height: 2.35rem;
    padding: .5rem;
  }
}
