:root { --ink:#071116; --ink-2:#0b1519; --green:#5a9218; --green-dark:#4d7e22; --paper:#f3f4f3; color-scheme:light; font-family:Arial,Helvetica,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; min-width:320px; min-height:100vh; background:var(--ink); color:#fff; }
a { color:inherit; }
img { display:block; max-width:100%; }
.svg-sprite { position:absolute; width:0; height:0; overflow:hidden; }
.page-shell { display:flex; flex-direction:column; width:100%; min-height:100vh; overflow:hidden; background:var(--paper); }
.content-grid { display:grid; grid-template-columns:minmax(0,1fr) clamp(320px,24vw,470px); flex:1 0 auto; min-height:calc(100vh - 94px); }
.main-column,.side-column { min-width:0; }
.side-column { display:grid; grid-template-rows:542px 134px 254px; border-left:12px solid #fff; background:var(--paper); }

.hero { position:relative; height:484px; overflow:hidden; background:#050c10; }
.navbar { position:relative; z-index:10; display:grid; grid-template-columns:260px minmax(0,1fr) 106px; align-items:center; height:110px; padding:0 16px 0 18px; background:linear-gradient(90deg,rgba(3,10,13,.98),rgba(3,10,13,.92)); }
.brand { align-self:stretch; display:flex; align-items:center; width:252px; overflow:hidden; }
.brand img { width:252px; height:auto; object-fit:contain; transform:translateY(6px); }
.nav-links { display:flex; align-items:center; justify-content:space-between; min-width:0; height:100%; gap:12px; }
.nav-links a { position:relative; white-space:nowrap; text-transform:uppercase; text-decoration:none; font-size:12px; line-height:1; font-weight:800; letter-spacing:.02em; transition:color .2s ease; }
.nav-links a span { font-size:8px; margin-left:3px; }
.nav-links a:hover,.nav-links a:focus-visible,.nav-links .active { color:var(--green); }
.nav-links .active::after { content:""; position:absolute; left:0; right:0; bottom:-14px; height:2px; background:var(--green); }
.home-products-menu { position:relative; display:flex; align-items:center; align-self:stretch; }
.home-products-dropdown { position:absolute; z-index:40; top:calc(100% - 8px); left:50%; display:grid; width:310px; padding:10px; border:1px solid rgba(255,255,255,.1); border-radius:5px; background:#0b171c; box-shadow:0 22px 48px rgba(0,0,0,.45); opacity:0; visibility:hidden; transform:translate(-50%,10px); transition:opacity .18s ease,transform .18s ease,visibility .18s ease; }
.home-products-dropdown::before { content:""; position:absolute; top:-13px; left:0; right:0; height:14px; }
.home-products-menu:hover .home-products-dropdown,.home-products-menu:focus-within .home-products-dropdown,.home-products-menu.is-open .home-products-dropdown { opacity:1; visibility:visible; transform:translate(-50%,0); }
.nav-links .home-products-dropdown a { display:grid; gap:4px; padding:12px 14px; border-radius:3px; color:#fff; text-transform:none; }
.nav-links .home-products-dropdown a:hover,.nav-links .home-products-dropdown a:focus-visible { color:#fff; background:#17262c; }
.nav-links .home-products-dropdown b { text-transform:uppercase; color:#fff; font-size:12px; }
.nav-links .home-products-dropdown small { color:#96a2a7; font-size:10px; font-weight:500; }
.nav-links .home-products-dropdown a::after { content:"→"; position:absolute; right:14px; top:18px; color:var(--green); font-size:17px; }
.quote-button { justify-self:end; padding:15px 16px; border-radius:3px; background:var(--green); text-transform:uppercase; text-decoration:none; font-size:12px; font-weight:800; white-space:nowrap; }
.hero-media { position:absolute; z-index:1; inset:110px 0 0 32%; overflow:hidden; }
.hero-media>img:first-child { width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-green { position:absolute; inset:0; background:var(--green-dark); clip-path:polygon(100% 0,100% 100%,28% 100%); }
.hero-green-logo { position:absolute; right:2.5%; bottom:13%; width:198px; }
.hero-shade { position:absolute; z-index:2; inset:110px 0 0; background:linear-gradient(90deg,rgba(3,10,13,.98) 0%,rgba(3,10,13,.92) 24%,rgba(3,10,13,.35) 48%,transparent 68%); }
.hero-copy { position:relative; z-index:4; width:520px; padding:42px 0 0 34px; }
.hero-copy h1 { margin:0; text-transform:uppercase; font-size:40px; line-height:.99; letter-spacing:-.025em; font-weight:900; }
.hero-copy h1 strong { color:var(--green); }
.hero-copy>p { max-width:470px; margin:20px 0 22px; color:#f3f5f5; font-size:13px; line-height:1.55; }
.hero-features { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; width:520px; }
.hero-features>div { display:flex; align-items:center; gap:10px; min-width:0; }
.hero-features svg { flex:0 0 auto; width:46px; height:46px; padding:7px; border:1.5px solid var(--green); border-radius:50%; fill:none; stroke:var(--green); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.hero-features span { text-transform:uppercase; font-size:9px; line-height:1.55; }
.hero-features b { font-size:12px; }
.hero-actions { display:flex; gap:14px; margin-top:24px; }
.hero-actions a { min-width:210px; padding:13px 15px; border-radius:3px; text-align:center; text-transform:uppercase; text-decoration:none; font-size:11px; font-weight:800; }
.primary-button { background:linear-gradient(90deg,#659b20,#4b7e16); }
.primary-button b { float:right; font-size:20px; line-height:11px; }
.secondary-button { border:1px solid #788084; background:rgba(31,35,37,.88); }
.secondary-button b { float:right; font-size:16px; line-height:11px; }

.categories { display:grid; grid-template-columns:repeat(5,1fr); height:220px; background:#f1f2f1; color:#11191d; }
.category-card { display:grid; grid-template-rows:auto minmax(0,1fr); min-width:0; min-height:0; padding:14px 10px 10px 20px; border-right:1px solid #d5d8d7; text-decoration:none; transition:background .2s ease; }
.category-card:last-child { border-right:0; }
.category-card:hover,.category-card:focus-visible { background:#fff; }
.category-card h2 { display:flex; align-items:flex-start; gap:10px; margin:0; text-transform:uppercase; font-size:14px; line-height:1.08; }
.category-card h2 i { flex:0 0 23px; width:23px; height:23px; border:2px solid var(--green); border-radius:4px; }
.category-card img { width:100%; height:100%; min-height:0; object-fit:contain; align-self:end; }

.stats { display:grid; grid-template-columns:repeat(4,1fr); height:78px; background:linear-gradient(90deg,#071116,#0b1519); }
.stats>div { display:flex; align-items:center; justify-content:center; gap:17px; border-right:1px solid #233035; }
.stats>div:last-child { border-right:0; }
.stats svg { width:47px; height:47px; fill:none; stroke:var(--green); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.stats p { margin:0; text-transform:uppercase; }
.stats strong,.stats span { display:block; }
.stats strong { font-size:23px; line-height:1; }
.stats span { margin-top:5px; font-size:9px; }

.excellence { display:grid; grid-template-columns:278px repeat(4,minmax(0,1fr)); gap:10px; height:176px; padding:14px 26px 10px; background:#f1f2f1; color:#11191d; }
.excellence-copy { padding-top:3px; }
.excellence-copy h2 { margin:0; text-transform:uppercase; font-size:25px; line-height:.98; letter-spacing:-.02em; }
.excellence-copy p { margin:12px 0 7px; max-width:240px; color:#384044; font-size:12px; line-height:1.35; }
.excellence-copy a { display:inline-block; min-width:185px; padding:6px 12px; border-radius:3px; background:var(--green); text-transform:uppercase; text-decoration:none; font-size:10px; font-weight:800; }
.excellence-copy a b { float:right; }
.machine-card { position:relative; min-width:0; margin:0; overflow:hidden; background:var(--ink); color:#fff; }
.machine-card img { width:100%; height:139px; object-fit:cover; }
.machine-card h3 { position:absolute; inset:auto 0 0; margin:0; padding:6px; background:rgba(5,13,16,.95); text-align:center; text-transform:uppercase; font-size:11px; }

.catalog-card { margin:0 12px 0 0; padding:0 0 24px; background:#e9ebea; box-shadow:0 8px 14px rgba(0,0,0,.16); }
.catalog-card>img { width:100%; height:382px; object-fit:cover; background:#111; }
.catalog-copy { height:136px; padding:28px 42px 20px; background:#071116; }
.catalog-copy h2 { margin:0 0 8px; text-transform:uppercase; font-size:25px; line-height:1.05; }
.catalog-copy h2 strong { color:var(--green); }
.catalog-copy a { display:block; width:118px; padding:6px; border-radius:3px; background:var(--green); text-align:center; text-transform:uppercase; text-decoration:none; font-size:12px; font-weight:800; }
.service-features { display:grid; grid-template-columns:repeat(4,1fr); align-items:center; padding:11px 0; color:#10181b; background:#f4f4f3; }
.service-features>div { display:grid; place-items:center; align-content:center; min-width:0; height:92px; border-right:1px solid #c8cccb; }
.service-features>div:last-child { border-right:0; }
.service-features svg { width:42px; height:42px; fill:none; stroke:var(--green-dark); stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.service-features span { margin-top:7px; text-align:center; text-transform:uppercase; font-size:9px; line-height:1.3; font-weight:800; }
.responsive-showcase { display:flex; align-items:center; justify-content:center; padding:12px 0 0; background:#f5f6f5; }
.responsive-showcase img { width:100%; height:240px; object-fit:contain; }

.footer { display:grid; grid-template-columns:280px 320px minmax(360px,1fr) 240px; align-items:center; flex:0 0 auto; min-height:94px; padding:0 34px 0 54px; background:linear-gradient(90deg,#071116,#0b1519); }
.footer>*+* { border-left:1px solid #3c464a; }
.footer-brand { display:flex; align-items:center; height:78px; overflow:hidden; }
.footer-brand img { width:205px; height:79px; object-fit:cover; }
.footer address { font-style:normal; }
.footer svg { flex:0 0 auto; width:18px; height:18px; fill:none; stroke:var(--green); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.footer-contact { display:grid; gap:6px; padding-left:28px; }
.footer-contact a { display:flex; align-items:center; gap:12px; text-decoration:none; font-size:12px; }
.footer-contact a:hover { color:#8bc735; }
.footer-address { display:flex; align-items:flex-start; gap:16px; padding-left:40px; font-size:13px; line-height:1.45; }
.footer-address svg { width:22px; height:22px; }
.socials { display:grid; justify-items:center; gap:11px; padding-left:28px; text-transform:uppercase; font-size:11px; font-weight:800; }
.socials div { display:flex; gap:16px; }
.socials a { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--green); text-decoration:none; text-transform:none; font-size:15px; }
:focus-visible { outline:3px solid #91d32d; outline-offset:3px; }

@media (min-width:1181px) {
  .content-grid { flex:0 0 auto; height:max(930px,calc(100vh - 94px)); min-height:0; }
  .main-column,.side-column { height:100%; min-height:0; }
  .main-column { display:grid; grid-template-rows:49.03% 23.66% 78px minmax(176px,1fr); }
  .main-column>*,.side-column>* { min-height:0; }
  .hero,.categories,.stats,.excellence { height:auto; }
  .category-card img { height:100%; min-height:0; }
  .machine-card img { height:calc(100% - 28px); min-height:0; }
  .side-column { grid-template-rows:58.28% 134px minmax(254px,1fr); }
  .catalog-card { display:grid; grid-template-rows:minmax(382px,1fr) 136px; height:100%; padding-bottom:0; }
  .catalog-card>img { height:100%; min-height:382px; }
  .catalog-copy { height:auto; }
  .responsive-showcase img { height:100%; min-height:240px; }
}

@media (max-width:1400px) {
  .navbar { grid-template-columns:220px minmax(0,1fr) 92px; padding-left:10px; }
  .brand,.brand img { width:215px; }
  .nav-links { gap:7px; }
  .nav-links a { font-size:10px; }
  .quote-button { padding:13px 11px; font-size:10px; }
}

@media (max-width:1250px) {
  .hero-copy { width:500px; padding-left:25px; }
  .categories { height:210px; }
  .category-card { padding-left:10px; }
  .excellence { grid-template-columns:215px repeat(4,minmax(0,1fr)); padding-left:25px; padding-right:20px; }
  .catalog-card>img { height:346px; }
  .catalog-copy { height:120px; padding:20px 30px; }
  .footer { grid-template-columns:230px 285px minmax(320px,1fr) 190px; padding-left:35px; padding-right:20px; }
}

@media (max-width:1180px) {
  .content-grid { display:block; }
  .side-column { grid-template-columns:1.3fr 1fr; grid-template-rows:auto auto; border:0; }
  .catalog-card { grid-row:1/span 2; margin:0; }
  .service-features,.responsive-showcase { grid-column:2; }
  .navbar { grid-template-columns:200px 1fr 90px; }
  .nav-links { justify-content:flex-start; overflow-x:auto; padding:0 10px; }
  .footer { grid-template-columns:repeat(2,1fr); gap:18px 0; padding:16px 35px; }
  .footer>*+* { border-left:0; }
  .footer-contact,.footer-address,.socials { padding-left:0; }
}

@media (max-width:720px) {
  .navbar { grid-template-columns:170px 1fr; height:124px; padding:0 12px; }
  .brand,.brand img { width:165px; }
  .nav-links { grid-column:1/-1; grid-row:2; height:42px; }
  .home-products-dropdown { position:fixed; top:120px; right:10px; left:10px; width:auto; transform:translateY(8px); }
  .home-products-menu:hover .home-products-dropdown,.home-products-menu:focus-within .home-products-dropdown,.home-products-menu.is-open .home-products-dropdown { transform:translateY(0); }
  .quote-button { grid-column:2; grid-row:1; }
  .hero { height:650px; }
  .hero-media { inset:124px 0 0; opacity:.62; }
  .hero-shade { inset:124px 0 0; background:rgba(3,10,13,.63); }
  .hero-green,.hero-green-logo { display:none; }
  .hero-copy { width:auto; padding:42px 24px 0; }
  .hero-copy h1 { font-size:clamp(34px,9vw,46px); }
  .hero-copy>p { max-width:560px; }
  .hero-features { width:100%; grid-template-columns:repeat(2,1fr); gap:14px; }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .hero-actions a { width:100%; }
  .categories { grid-template-columns:repeat(2,1fr); height:auto; }
  .category-card { min-height:210px; border-bottom:1px solid #d5d8d7; }
  .category-card:last-child { grid-column:1/-1; }
  .stats { grid-template-columns:repeat(2,1fr); height:auto; }
  .stats>div { min-height:86px; border-bottom:1px solid #233035; }
  .excellence { grid-template-columns:repeat(2,1fr); height:auto; padding:20px; }
  .excellence-copy { grid-column:1/-1; padding-bottom:8px; }
  .machine-card { min-height:180px; }
  .machine-card img { height:150px; }
  .side-column { display:block; }
  .catalog-card { padding:0; }
  .catalog-card>img { height:auto; max-height:420px; }
  .service-features { min-height:140px; }
  .responsive-showcase { min-height:250px; }
  .footer { grid-template-columns:1fr; text-align:center; }
  .footer-brand,.footer-contact,.footer-address,.socials { justify-self:center; }
  .footer-contact a,.footer-address { justify-content:center; }
}

@media (max-width:430px) {
  .categories,.excellence { grid-template-columns:1fr; }
  .category-card:last-child { grid-column:auto; }
  .machine-card { min-height:210px; }
  .machine-card img { height:180px; }
  .service-features { grid-template-columns:repeat(2,1fr); }
  .footer-address { font-size:12px; }
}
