:root {
  --color-primary: #ffc107;
  --color-secondary: #222831;
  --color-background: #f7f7f7;
  --color-text: #2e2e2e;
  --color-accent: #1976d2;
  --color-emphasis: #ff6f00;
  --color-white: #fff;
  --font-body: "Inter", Arial, sans-serif;
  --font-heading: "Roboto Slab", Georgia, serif;
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-6: 3rem;
  --radius: .5rem;
  --shadow: 0 4px 16px rgb(0 0 0 / 12%);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--color-background); color: var(--color-text); font-family: var(--font-body); line-height: 1.5; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 3px; }
.container { width: min(100% - 2rem, 1120px); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.skip-link { position: fixed; z-index: 20; top: 0; left: var(--space-2); padding: var(--space-2); background: var(--color-primary); color: var(--color-secondary); transform: translateY(-120%); }
.skip-link:focus { transform: translateY(0); }
.site-header { position: sticky; z-index: 10; top: 0; background: var(--color-secondary); box-shadow: var(--shadow); }
.site-header__inner { display: flex; min-height: 4.5rem; align-items: center; justify-content: space-between; gap: var(--space-2); }
.brand { flex: 0 0 auto; }
.brand img { width: 160px; height: 40px; object-fit: contain; object-position: left center; }
.menu-toggle { display: grid; width: 44px; height: 44px; padding: 10px; place-content: center; gap: 4px; border: 0; border-radius: var(--radius); background: transparent; cursor: pointer; }
.menu-toggle span:not(.sr-only) { display: block; width: 24px; height: 2px; background: var(--color-white); }
.main-nav { display: none; position: absolute; top: 100%; right: 0; left: 0; padding: var(--space-2); background: var(--color-secondary); border-top: 1px solid rgb(255 255 255 / 15%); }
.main-nav.is-open { display: block; }
.main-nav__list { display: grid; margin: 0; padding: 0; list-style: none; }
.main-nav a { display: flex; min-height: 44px; align-items: center; padding: 0 var(--space-2); color: var(--color-white); text-decoration: none; border-radius: var(--radius); }
.main-nav a:hover, .main-nav a[aria-current="page"] { background: var(--color-primary); color: var(--color-secondary); font-weight: 700; }
.section { padding-block: var(--space-6); }
.section--muted { background: var(--color-white); }
.section--hero { min-height: 18rem; display: grid; align-items: center; background: var(--color-secondary); color: var(--color-white); }
h1, h2, h3 { margin: 0 0 var(--space-2); font-family: var(--font-heading); line-height: 1.2; }
h1 { font-size: clamp(2rem, 6vw, 3.5rem); }
h2 { font-size: clamp(1.5rem, 4vw, 2.25rem); }
.site-footer { padding-block: var(--space-4); background: var(--color-secondary); color: var(--color-white); }
.site-footer p { margin: 0 0 var(--space-1); }
.whatsapp-float { position: fixed; z-index: 9; right: var(--space-2); bottom: var(--space-2); display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; padding: 0 var(--space-2); border-radius: 999px; background: #25d366; color: #102b19; box-shadow: var(--shadow); font-weight: 700; text-decoration: none; }
.whatsapp-float:hover { background: #1ebe5d; }

@media (min-width: 768px) { .menu-toggle { display: none; } .main-nav { display: block; position: static; padding: 0; border: 0; } .main-nav__list { display: flex; gap: var(--space-1); } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
.hero{position:relative;display:grid;min-height:37rem;overflow:hidden;align-items:center;color:var(--color-white);background:var(--color-secondary)}.hero__image,.hero__overlay{position:absolute;inset:0;width:100%;height:100%}.hero__image{object-fit:cover;object-position:68% center}.hero__overlay{background:linear-gradient(90deg,rgb(18 22 25 / 96%),rgb(18 22 25 / 20%))}.hero__content{position:relative;max-width:48rem;padding-block:var(--space-6)}.hero__text{font-size:1.2rem}.eyebrow{color:var(--color-emphasis);font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero .eyebrow{color:var(--color-primary)}.button-group{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:.65rem 1.1rem;border:2px solid transparent;border-radius:var(--radius);font-weight:700;text-decoration:none}.button--primary{background:var(--color-primary);color:var(--color-secondary)}.button--outline{border-color:#fff;color:#fff}.section-heading{max-width:44rem;margin-bottom:var(--space-4)}.card-grid{display:grid;gap:var(--space-2)}.card{padding:var(--space-3);border-radius:var(--radius);background:var(--color-white);box-shadow:var(--shadow)}.brand-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2);padding:0;list-style:none}.brand-grid li{display:grid;min-height:5rem;place-items:center;border:1px solid #ddd;border-radius:var(--radius);font-family:var(--font-heading)}.pillar{padding:var(--space-3);border-left:4px solid var(--color-primary);background:var(--color-secondary);color:#fff}.section--call{background:var(--color-secondary);color:#fff}.callout{display:grid;gap:var(--space-3)}.callout__actions{display:grid;align-content:center;justify-items:start;gap:var(--space-2)}.phone-link{color:#fff;font-size:1.2rem;font-weight:700}.testimonial{max-width:52rem;text-align:center}.testimonial blockquote{font-family:var(--font-heading);font-size:clamp(1.35rem,3vw,2rem)}@media (min-width:768px){.card-grid--services,.card-grid--pillars{grid-template-columns:repeat(2,1fr)}.brand-grid{grid-template-columns:repeat(5,1fr)}.callout{grid-template-columns:1.5fr 1fr;align-items:center}}@media (min-width:1024px){.card-grid--services,.card-grid--pillars{grid-template-columns:repeat(4,1fr)}}

.lead{font-size:clamp(1.2rem,2.5vw,1.55rem);font-weight:600;line-height:1.45}.about-intro__grid{display:grid;gap:var(--space-4);align-items:center}.experience-card{display:grid;min-height:15rem;padding:var(--space-3);place-content:center;border-radius:var(--radius);background:var(--color-secondary);color:var(--color-white);text-align:center}.experience-card strong{color:var(--color-primary);font-family:var(--font-heading);font-size:clamp(4.5rem,12vw,7rem);line-height:1}.experience-card span{font-weight:600}.button--dark{border-color:var(--color-secondary);background:var(--color-secondary);color:var(--color-white)}.timeline{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:5.5rem 1fr;gap:var(--space-2);position:relative}.timeline__year{color:var(--color-emphasis);font-family:var(--font-heading);font-size:1.15rem;font-weight:700}.timeline li:not(:last-child)::after{position:absolute;top:2rem;bottom:-1.75rem;left:2.7rem;width:2px;background:var(--color-primary);content:""}.timeline h3{margin-bottom:var(--space-1)}.timeline p{margin:0}.mvv-grid,.feature-grid{display:grid;gap:var(--space-2)}.info-card,.feature-grid article{padding:var(--space-3);border-radius:var(--radius);background:var(--color-white);box-shadow:var(--shadow)}.info-card h3,.feature-grid h3{color:var(--color-secondary)}.info-card p,.feature-grid p{margin-bottom:0}.feature-grid article{border-top:4px solid var(--color-primary)}.about-cta{display:grid;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius);background:var(--color-primary);color:var(--color-secondary)}.about-cta h2{max-width:35rem}.about-cta p{margin:0}.about-cta .button-group{margin-top:0}@media (min-width:768px){.about-intro__grid{grid-template-columns:1.6fr 1fr}.mvv-grid{grid-template-columns:repeat(3,1fr)}.feature-grid{grid-template-columns:repeat(3,1fr)}.about-cta{grid-template-columns:1.4fr 1fr;align-items:center}.about-cta .button-group{justify-content:flex-end}}@media (min-width:1024px){.timeline{grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.timeline li{display:block;padding-top:3.5rem}.timeline__year{position:absolute;top:0}.timeline li:not(:last-child)::after{top:1rem;right:-1rem;bottom:auto;left:auto;width:calc(100% + 1rem);height:2px}}

.contact-layout,.location-layout{display:grid;gap:var(--space-4)}.contact-intro{max-width:34rem}.contact-details{display:grid;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.contact-details strong,.contact-details a{display:block}.contact-details a{color:var(--color-accent);font-weight:600}.contact-form{padding:var(--space-3);border-radius:var(--radius);background:var(--color-white);box-shadow:var(--shadow)}.form-row{display:grid;gap:var(--space-2)}.form-field{display:grid;gap:.4rem;margin-bottom:var(--space-2)}.form-field label{font-weight:700}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:44px;padding:.7rem;border:1px solid #aaa;border-radius:.35rem;background:#fff;color:var(--color-text);font:inherit}.form-field textarea{min-height:8rem;resize:vertical}.form-field small{color:#666}.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea{border-color:#b3261e;box-shadow:0 0 0 1px #b3261e}.form-note{margin:.25rem 0 var(--space-2);font-size:.9rem}.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.form-feedback{min-height:1.5rem;margin:var(--space-2) 0 0;font-weight:600}.form-feedback.is-success{color:#16753b}.form-feedback.is-error{color:#b3261e}.map-placeholder{display:grid;min-height:18rem;padding:var(--space-3);place-content:center;border-radius:var(--radius);background:linear-gradient(135deg,#d5e3db,#a9c3b3);color:var(--color-secondary);text-align:center}.map-placeholder span{font-family:var(--font-heading);font-size:2rem;font-weight:700}.map-placeholder p{margin-bottom:0}.location-list{display:grid;gap:var(--space-2)}.location-list div{padding-bottom:var(--space-2);border-bottom:1px solid #ddd}.location-list dt{font-weight:700}.location-list dd{margin:var(--space-1) 0 0}.text-link{color:var(--color-accent);font-weight:700}@media (min-width:768px){.contact-layout{grid-template-columns:.85fr 1.15fr}.location-layout{grid-template-columns:1fr 1fr;align-items:center}.form-row{grid-template-columns:repeat(2,1fr)}}

.form-field { align-content: start; }
.catalog-filters{display:grid;gap:var(--space-2);padding:var(--space-3);background:#fff;box-shadow:var(--shadow)}.catalog-filters .form-field{margin:0}.catalog-results{font-weight:700}.parts-grid{display:grid;gap:var(--space-2)}.part-card{overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.part-card__image{display:grid;min-height:8rem;place-items:center;background:#313941;color:var(--color-primary);font-family:var(--font-heading);text-align:center}.part-card__content{padding:var(--space-3)}.part-card__content h2{font-size:1.2rem}.part-card__code{color:#666;font-size:.88rem;font-weight:700}.catalog-more{display:flex;justify-content:center;margin-top:var(--space-4)}[data-load-more][hidden]{display:none}@media(min-width:768px){.catalog-filters,.parts-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.parts-grid{grid-template-columns:repeat(3,1fr)}}
.parts-category{margin-bottom:var(--space-4)}.parts-category>h2{padding-bottom:var(--space-2);border-bottom:3px solid var(--color-primary);font-size:clamp(1.3rem,3vw,1.75rem)}.parts-category:last-child{margin-bottom:0}
.parts-category{margin-bottom:var(--space-4)}.parts-category>h2{padding-bottom:var(--space-2);border-bottom:3px solid var(--color-primary);font-size:clamp(1.3rem,3vw,1.75rem)}.parts-category:last-child{margin-bottom:0}
