:root {
  --font-sans: "DM Sans", sans-serif;
  --font-display: "Barlow Condensed", sans-serif;

  --radius: 0.125rem;
  --background: oklch(0.985 0.002 100);
  --foreground: oklch(0.22 0.009 240);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.22 0.009 240);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.22 0.009 240);
  --primary: oklch(0.65 0.17 49);
  --primary-foreground: oklch(1 0 0);
  --secondary: oklch(0.94 0.004 100);
  --secondary-foreground: oklch(0.22 0.009 240);
  --muted: oklch(0.955 0.003 100);
  --muted-foreground: oklch(0.48 0.01 240);
  --accent: oklch(0.9 0.02 50);
  --accent-foreground: oklch(0.22 0.009 240);
  --destructive: oklch(0.58 0.2 25);
  --destructive-foreground: oklch(1 0 0);
  --border: oklch(0.87 0.006 240);
  --input: oklch(0.87 0.006 240);
  --ring: oklch(0.65 0.17 49);
  --surface-dark: oklch(0.21 0.009 240);
  --surface-dark-2: oklch(0.26 0.01 240);
  --text-on-dark: oklch(0.97 0.002 100);
  --text-on-dark-muted: oklch(0.73 0.006 240);
  --hero-scrim: linear-gradient(90deg, oklch(0.11 0.01 240 / .89) 0%, oklch(0.11 0.01 240 / .65) 42%, oklch(0.11 0.01 240 / .12) 100%);
  --shadow-image: 0 18px 40px oklch(0.18 0.01 240 / .11);
}
@layer base { * { box-sizing: border-box; border-color: var(--border); } html { scroll-behavior: smooth; } body { margin: 0; background: var(--background); color: var(--foreground); font-family: var(--font-sans); } ::selection { background: var(--primary); color: var(--primary-foreground); } }
.container-wide { width: min(100% - 112px, 1460px); margin-inline: auto; }
.site-header { position: sticky; top: 0; z-index: 50; height: 86px; background: var(--background); border-bottom: 1px solid var(--border); transition: height .25s, box-shadow .25s; }
.site-header.is-compact { height: 68px; box-shadow: 0 8px 24px oklch(0.2 0 0 / .07); }
.site-header-inner { height: 100%; display: flex; align-items: center; gap: 28px; justify-content: space-between; }
.wordmark { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; color: var(--foreground); font: 800 27px/.78 var(--font-display); letter-spacing: 0; white-space: nowrap; }
.wordmark small { display: block; font: 700 9px/1 var(--font-sans); letter-spacing: .27em; margin-top: 7px; }
.wordmark-symbol { width: 28px; height: 30px; display: flex; align-items: flex-end; gap: 3px; transform: skewY(-12deg); }
.wordmark-symbol i { display: block; width: 7px; background: var(--primary); height: 100%; } .wordmark-symbol i:nth-child(2) { height: 76%; } .wordmark-symbol i:nth-child(3) { height: 54%; }
.desktop-nav { display: flex; align-items: center; justify-content: center; gap: clamp(12px, 1.5vw, 28px); margin-left: auto; }
.desktop-nav a { font-size: 12px; font-weight: 700; color: var(--muted-foreground); text-decoration: none; transition: color .2s; white-space: nowrap; }
.desktop-nav a:hover, .desktop-nav .nav-active { color: var(--primary); }
.header-cta { font-size: 12px; padding-inline: 22px; height: 44px; } .menu-toggle { display: none; }
.mobile-nav { display: none; }
.hero { height: min(720px, calc(100svh - 86px)); min-height: 580px; color: var(--text-on-dark); position: relative; overflow: hidden; display: flex; align-items: center; background: var(--surface-dark); }
.hero-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.hero-shade { position: absolute; inset: 0; background: var(--hero-scrim); }
.hero-content { position: relative; z-index: 1; padding-bottom: 25px; animation: hero-enter .8s ease-out both; }
.eyebrow { display: flex; align-items: center; gap: 11px; font-size: 11px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; color: white; }
.eyebrow-line { display: inline-block; width: 24px; height: 2px; background: currentColor; flex: none; }.eyebrow-light { color: var(--primary); }
h1,h2,h3,p { margin-top: 0; } h1,h2,h3 { font-family: var(--font-display); letter-spacing: 0; text-transform: uppercase; } h1 em { font-style: normal; color: var(--primary); }
.hero h1 { font-size: clamp(66px, 7vw, 112px); font-weight: 700; line-height: .89; max-width: 1050px; margin: 24px 0 28px; }
.hero-content > p { max-width: 540px; color: var(--text-on-dark); font-size: 16px; line-height: 1.75; margin-bottom: 31px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }.hero-actions a svg, .cta-band-actions a svg { transition: transform .2s; }.hero-actions a:hover svg, .cta-band-actions a:hover svg { transform: translate(3px,-3px); }
.hero-foot { position: absolute; bottom: 29px; left: 0; right: 0; z-index: 1; display: flex; justify-content: space-between; color: var(--text-on-dark-muted); font-size: 10px; font-weight: 700; letter-spacing: .15em; }.hero-foot b { color: var(--primary); padding: 0 7px; }.down-arrow { font-size: 19px; margin-left: 10px; vertical-align: middle; }
.trust-band { background: var(--surface-dark); color: var(--text-on-dark); }.trust-inner { display: grid; grid-template-columns: 1fr 1.45fr; align-items: center; gap: 50px; min-height: 148px; }.trust-inner h2 { font-size: 30px; line-height: 1.03; margin: 0; font-weight: 700; }.trust-inner h2 span { color: var(--primary); }.trust-items { display: grid; grid-template-columns: repeat(3,1fr); }.trust-items span { padding: 8px 25px; border-left: 1px solid oklch(1 0 0 / .2); font-size: 12px; font-weight: 600; line-height: 1.5; }
.section { padding: 110px 0; }.section-muted { background: var(--muted); }.about-grid { display: grid; grid-template-columns: .95fr 1fr; gap: 9%; align-items: center; }.about-copy h2, .section-heading h2, .engineering-copy h2, .contact-details h2, .project-empty h2 { font-size: clamp(52px, 5vw, 78px); line-height: .96; margin: 28px 0 26px; font-weight: 700; }.about-copy h2 span, .section-heading h2 span, .engineering-copy h2 span, .contact-details h2 span, .project-empty h2 span { color: var(--primary); }.about-copy p, .engineering-copy p, .contact-details > p, .project-empty p { color: var(--muted-foreground); line-height: 1.85; max-width: 540px; font-size: 15px; margin-bottom: 25px; }.text-link { display: inline-flex; align-items: center; gap: 22px; text-decoration: none; text-transform: uppercase; color: var(--foreground); font-size: 12px; font-weight: 800; letter-spacing: .08em; border-bottom: 2px solid var(--primary); padding-bottom: 10px; transition: gap .2s; }.text-link:hover { gap: 29px; }.about-visual { position: relative; }.about-visual img { width: 100%; height: 540px; object-fit: cover; }.image-caption { background: var(--surface-dark); color: var(--text-on-dark); display: flex; justify-content: space-between; padding: 19px 23px; font-size: 10px; font-weight: 700; letter-spacing: .15em; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 40px; }.section-heading h2 { margin-bottom: 0; }.section-heading > p { max-width: 290px; color: var(--muted-foreground); line-height: 1.7; }.section-heading .text-link { flex: none; margin-bottom: 6px; }
.solution-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }.solution-grid-all { grid-template-columns: repeat(2,minmax(0,1fr)); }.solution-card { display: block; text-decoration: none; color: var(--foreground); background: var(--card); transition: box-shadow .25s, transform .25s; }.solution-card:hover { box-shadow: var(--shadow-image); transform: translateY(-4px); }.solution-image { height: 275px; position: relative; overflow: hidden; }.solution-grid-all .solution-image { height: 380px; }.solution-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }.solution-card:hover img, .product-card:hover img { transform: scale(1.045); }.solution-number { position: absolute; left: 20px; top: 20px; padding: 9px 11px; background: var(--surface-dark); color: var(--text-on-dark); font-size: 10px; font-weight: 700; letter-spacing: .1em; }.solution-content { display: flex; align-items: end; justify-content: space-between; min-height: 148px; padding: 24px; gap: 10px; }.solution-content h3 { font-size: 28px; line-height: 1; margin: 0 0 12px; }.solution-content p { font-size: 12px; line-height: 1.6; color: var(--muted-foreground); margin: 0; max-width: 290px; }.circle-arrow { display: grid; place-items: center; border: 1px solid var(--border); width: 42px; height: 42px; flex: none; transition: background .2s, color .2s; }.solution-card:hover .circle-arrow { background: var(--primary); color: var(--primary-foreground); }
.product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }.product-card { min-width: 0; color: var(--foreground); text-decoration: none; background: var(--card); border: 1px solid var(--border); transition: border-color .2s, transform .2s; }.product-card:hover { border-color: var(--primary); transform: translateY(-3px); }.product-image { height: 220px; position: relative; overflow: hidden; }.product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }.product-image span { position: absolute; left: 14px; bottom: 14px; background: var(--background); padding: 7px 10px; font-size: 10px; text-transform: uppercase; font-weight: 800; letter-spacing: .1em; }.product-copy { padding: 22px; }.product-copy h3 { font-size: 25px; line-height: 1; margin-bottom: 11px; }.product-copy p { font-size: 12px; color: var(--muted-foreground); line-height: 1.6; min-height: 58px; }.product-bottom { display: flex; justify-content: space-between; align-items: center; padding-top: 17px; border-top: 1px solid var(--border); font-size: 11px; font-weight: 700; text-transform: uppercase; }.product-bottom svg { color: var(--primary); }
.why-section { background: #9f7f03; color: var(--text-on-dark); padding: 108px 0 115px; }.why-section h2 { font-size: clamp(58px, 5.8vw, 88px); line-height: .92; margin: 28px 0 55px; }.why-section h2 span { color: white; }.why-top { display: flex; justify-content: space-between; align-items: end; gap: 40px; }.why-top p { max-width: 320px; color: var(--text-on-dark-muted); line-height: 1.8; font-size: 14px; margin-bottom: 58px; }.why-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid oklch(1 0 0 / .2); }.why-item { padding: 28px 30px 0 0; }.why-item > span { display:none; font: 700 15px var(--font-display); }.why-line { width: 100%; height: 1px; background: oklch(1 0 0 / .17); margin: 37px 0 28px; }.why-item h3 { font-size: 26px; line-height: 1; margin-bottom: 12px; }.why-item p { font-size: 12px; line-height: 1.7; color: white; max-width: 225px; }
.process-grid { display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid var(--border); margin-top: 42px; }.process-item { padding: 24px 24px 0 0; position: relative; }.process-item:before { content:""; width: 9px; height: 9px; background: var(--primary); position: absolute; top: -5px; left: 0; }.process-num { color: var(--primary); font: 700 38px var(--font-display); }.process-item h3 { font-size: 27px; margin: 34px 0 9px; }.process-item p { font-size: 12px; line-height: 1.7; color: var(--muted-foreground); max-width: 180px; }
.engineering-section { background: var(--muted); }.engineering-grid { display: grid; grid-template-columns: 1fr 1fr; min-height: 650px; }.engineering-image { margin-left: calc((min(100vw - 112px, 1460px) - 100vw) / 2); overflow: hidden; }.engineering-image img { height: 100%; width: 100%; object-fit: cover; }.engineering-copy { padding: 90px 0 90px 12%; align-self: center; }.engineering-copy ul, .detail-copy ul { list-style: none; padding: 0; margin: 28px 0 34px; }.engineering-copy li, .detail-copy li { display: flex; align-items: center; gap: 13px; border-bottom: 1px solid var(--border); padding: 13px 0; font-size: 13px; font-weight: 600; }.engineering-copy li svg, .detail-copy li svg { color: var(--primary); flex: none; }
.service-rows { border-top: 1px solid var(--border); }.service-row { display: grid; grid-template-columns: 90px 1fr 1fr 30px; align-items: center; gap: 20px; padding: 25px 0; border-bottom: 1px solid var(--border); }.service-row > span { color: var(--primary); font: 700 20px var(--font-display); }.service-row h3 { font-size: 30px; margin: 0; }.service-row p { font-size: 12px; line-height: 1.6; color: var(--muted-foreground); margin: 0; }.service-row > svg { color: var(--primary); }
.cta-band { background: var(--primary); color: var(--primary-foreground); padding: 76px 0; }.cta-band-inner { display: flex; align-items: end; justify-content: space-between; gap: 35px; }.cta-band .eyebrow { color: #9f7f03; }.cta-band h2 { font-size: clamp(58px, 6vw, 90px); line-height: .9; margin: 24px 0 20px; }.cta-band p { max-width: 560px; font-size: 14px; line-height: 1.6; opacity: .9; margin: 0; }.cta-band-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 19px; flex: none; }.cta-band-actions .bg-primary { background: var(--surface-dark); }.cta-call { color: var(--primary-foreground); display: flex; gap: 12px; align-items: center; text-decoration: none; font-size: 13px; font-weight: 700; }
.site-footer { background: var(--surface-dark); color: var(--text-on-dark); }.footer-main { padding: 75px 0 80px; display: grid; grid-template-columns: 1.5fr .65fr 1fr 1fr; gap: 50px; }.wordmark-footer { color: var(--text-on-dark); }.footer-brand p { color: var(--text-on-dark-muted); font-size: 13px; line-height: 1.8; max-width: 280px; margin: 27px 0 56px; }.footer-location { color: var(--primary); font-size: 10px; letter-spacing: .15em; font-weight: 700; }.site-footer h3 { font: 700 13px var(--font-sans); text-transform: none; margin-bottom: 26px; }.footer-links, .footer-contact { display: flex; flex-direction: column; align-items: start; }.footer-links a, .footer-contact a:not(.inline-flex) { text-decoration: none; color: var(--text-on-dark-muted); font-size: 12px; line-height: 1.5; margin-bottom: 13px; transition: color .2s; }.footer-links a:hover, .footer-contact a:hover { color: var(--text-on-dark); }.footer-contact a:not(.inline-flex) { display: flex; align-items: flex-start; gap: 12px; }.footer-contact a svg { flex: none; color: var(--primary); }.footer-bottom { border-top: 1px solid oklch(1 0 0 / .16); padding: 24px 0; display: flex; justify-content: space-between; gap: 20px; color: var(--text-on-dark-muted); font-size: 10px; letter-spacing: .08em; }.whatsapp-float { position: fixed; right: 22px; bottom: 22px; z-index: 40; width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: var(--surface-dark); color: var(--text-on-dark); box-shadow: var(--shadow-image); transition: transform .2s; }.whatsapp-float:hover { transform: translateY(-4px); }.mobile-bottom-cta { display: none; }
.page-intro { padding: 92px 0 86px; background: #9f7f03; color: var(--text-on-dark); }.page-intro h1 { font-size: clamp(68px, 7.5vw, 118px); max-width: 1040px; line-height: .88; margin: 24px 0 25px; }.page-intro p { color: white; font-size: 15px; max-width: 630px; line-height: 1.7; margin: 0; }
.catalog-toolbar { display: grid; grid-template-columns: minmax(220px,1.5fr) repeat(3,minmax(160px,1fr)) auto; align-items: center; gap: 12px; margin-bottom: 34px; }.catalog-search { min-width: 0; display: flex; align-items: center; gap: 12px; border: 1px solid var(--border); padding: 0 18px; height: 50px; background: var(--card); }.catalog-search svg { color: var(--muted-foreground); flex: none; }.catalog-search input { border: 0; outline: 0; background: transparent; width: 100%; min-width: 0; font-size: 13px; }.catalog-select { height: 50px; min-width: 0; border: 1px solid var(--border); background: var(--card); padding: 0 12px; display: flex; align-items: center; gap: 8px; }.catalog-select span { color: var(--muted-foreground); font-size: 10px; }.catalog-select select { flex: 1; min-width: 0; appearance: none; background: transparent; outline: none; font-size: 11px; font-weight: 700; }.catalog-select svg { pointer-events: none; flex: none; }.result-count { font-size: 10px; font-weight: 800; letter-spacing: .12em; white-space: nowrap; margin-left: 8px; }.catalog-grid { row-gap: 22px; }.empty-results { padding: 90px 20px; text-align: center; color: var(--muted-foreground); border: 1px solid var(--border); }
.detail-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 9%; align-items: start; }.detail-visual img { width: 100%; min-height: 530px; object-fit: cover; }.detail-copy { padding-top: 10px; }.detail-copy h2 { font-size: clamp(50px, 5vw, 76px); line-height: .95; margin: 23px 0; }.detail-copy h2 span { color: var(--primary); }.detail-copy p { color: var(--muted-foreground); line-height: 1.8; font-size: 14px; }.detail-copy h3 { font-size: 25px; margin: 38px 0 10px; }.detail-facts { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid var(--border); margin-top: 35px; }.detail-facts > div { padding: 20px 10px 20px 0; display: flex; flex-direction: column; gap: 9px; }.detail-facts small { font-size: 10px; letter-spacing: .14em; color: var(--muted-foreground); }.detail-facts strong { font-size: 13px; }.not-available { padding: 130px 0; }.not-available h1 { font-size: 70px; }
.industry-list { border-top: 1px solid var(--border); margin-top: 30px; }.industry-row { display: grid; grid-template-columns: 160px 50px 1fr 40px; gap: 35px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--border); text-decoration: none; color: var(--foreground); }.industry-row img { width: 160px; height: 100px; object-fit: cover; filter: brightness(.8); transition: filter .25s; }.industry-row:hover img { filter: brightness(1); }.industry-row > span { color: var(--primary); font: 700 18px var(--font-display); }.industry-row h2 { font-size: 34px; margin: 0 0 5px; transition: transform .25s; }.industry-row:hover h2 { transform: translateX(6px); }.industry-row p { color: var(--muted-foreground); font-size: 12px; margin: 0; }.industry-row > svg { color: var(--primary); }
.project-empty { display: grid; grid-template-columns: .9fr 1fr; gap: 10%; align-items: center; }.project-empty img { width: 100%; height: 490px; object-fit: cover; }.project-actions { display: flex; gap: 30px; flex-wrap: wrap; }
.contact-grid { display: grid; grid-template-columns: .8fr 1fr; gap: 9%; }.contact-methods { border-top: 1px solid var(--border); margin-top: 44px; }.contact-methods a { display: flex; align-items: center; gap: 22px; border-bottom: 1px solid var(--border); padding: 21px 0; text-decoration: none; color: var(--foreground); font-size: 13px; font-weight: 700; }.contact-methods a > svg:first-child { color: var(--primary); flex: none; }.contact-methods a > svg:last-child { margin-left: auto; color: var(--primary); flex: none; }.contact-methods small { display: block; color: var(--muted-foreground); font-size: 10px; letter-spacing: .1em; margin-bottom: 5px; }.map-link { color: var(--primary); text-decoration: none; display: inline-flex; gap: 7px; align-items: center; margin-top: 22px; font-size: 12px; font-weight: 700; }.contact-form-wrap { background: var(--card); border: 1px solid var(--border); padding: 35px; }.form-heading { display: flex; justify-content: space-between; font-size: 11px; letter-spacing: .1em; font-weight: 800; padding-bottom: 27px; border-bottom: 1px solid var(--border); margin-bottom: 27px; }.form-heading span:last-child { color: var(--primary); }.contact-form-wrap form { display: flex; flex-direction: column; gap: 20px; }.form-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.contact-form-wrap label { display: flex; flex-direction: column; gap: 9px; font-size: 11px; font-weight: 700; }.contact-form-wrap input, .contact-form-wrap select, .contact-form-wrap textarea { border: 1px solid var(--border); background: var(--background); padding: 14px; width: 100%; min-width: 0; border-radius: 0; font: 400 12px var(--font-sans); color: var(--foreground); outline-color: var(--primary); }.contact-form-wrap textarea { resize: vertical; }.contact-form-wrap button { align-self: flex-start; }.form-note { color: var(--muted-foreground); font-size: 11px; margin: -8px 0 0; }.form-success { padding: 55px 0; }.form-success svg { color: var(--primary); }.form-success h3 { font-size: 35px; margin: 18px 0 8px; }.form-success p { color: var(--muted-foreground); max-width: 400px; font-size: 13px; line-height: 1.7; }
@keyframes hero-enter { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1160px) { .desktop-nav { gap: 12px; }.desktop-nav a { font-size: 11px; }.header-cta { display: none; }.container-wide { width: min(100% - 72px, 1460px); }.engineering-image { margin-left: -36px; }.catalog-toolbar { grid-template-columns: repeat(3,minmax(0,1fr)); }.catalog-search { grid-column: span 2; }.result-count { margin-left: 0; } }
@media (max-width: 900px) { .desktop-nav { display: none; }.menu-toggle { display: inline-flex; min-width: 44px; min-height: 44px; }.mobile-nav { display: flex; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0; background: var(--background); box-shadow: var(--shadow-image); padding: 15px 36px 28px; max-height: calc(100svh - 70px); overflow-y: auto; }.mobile-nav > a { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--border); padding: 14px 0; text-decoration: none; font: 700 21px var(--font-display); text-transform: uppercase; color: var(--foreground); }.mobile-nav > a[data-status="active"] { color: var(--primary); }.mobile-nav .inline-flex { margin-top: 18px; width: 100%; }.trust-inner { grid-template-columns: 1fr; gap: 25px; padding-block: 30px; }.trust-items span:first-child { padding-left: 0; border-left: 0; }.about-grid, .detail-grid, .contact-grid { gap: 5%; }.about-visual img { height: 430px; }.solution-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.why-grid { grid-template-columns: repeat(2,1fr); gap: 25px; }.process-grid { grid-template-columns: repeat(3,1fr); gap: 30px 0; }.footer-main { grid-template-columns: 1.2fr 1fr 1fr; }.footer-brand { grid-column: 1 / -1; }.footer-brand p { margin-bottom: 15px; }.engineering-copy { padding-left: 9%; }.engineering-image { margin-left: -36px; } }
@media (max-width: 640px) { .container-wide { width: min(100% - 40px, 1460px); }.site-header { height: 66px; }.site-header.is-compact { height: 60px; }.wordmark { font-size: 23px; }.wordmark-symbol { width: 24px; height: 27px; }.wordmark-symbol i { width: 6px; }.hero { min-height: 600px; height: calc(100svh - 66px); max-height: 760px; align-items: end; }.hero-photo { object-position: 52% center; }.hero-shade { background: linear-gradient(0deg, oklch(0.1 0.01 240 / .92), oklch(0.1 0.01 240 / .4) 72%, oklch(0.1 0.01 240 / .1)); }.hero-content { padding-bottom: 105px; }.hero h1 { font-size: clamp(54px, 13vw, 76px); margin: 19px 0 21px; }.hero-content > p { font-size: 13px; line-height: 1.6; margin-bottom: 23px; }.hero-actions { gap: 8px; }.hero-actions a { height: 48px; padding-inline: 14px; font-size: 11px; }.hero-foot { bottom: 26px; font-size: 9px; }.hero-foot > span:last-child { display: none; }.trust-inner { padding: 30px 0; }.trust-inner h2 { font-size: 27px; }.trust-items { gap: 8px; }.trust-items span { padding: 0 8px; font-size: 10px; line-height: 1.4; }.section { padding: 70px 0; }.about-grid, .detail-grid, .contact-grid, .project-empty { grid-template-columns: 1fr; gap: 35px; }.about-copy h2, .section-heading h2, .engineering-copy h2, .contact-details h2, .project-empty h2 { font-size: clamp(49px, 12vw, 65px); margin: 22px 0; }.about-copy p, .engineering-copy p { font-size: 13px; }.about-visual img { height: 340px; }.section-heading { display: block; margin-bottom: 28px; }.section-heading .text-link { margin-top: 23px; }.solution-grid, .solution-grid-all, .product-grid { grid-template-columns: 1fr; }.solution-image, .solution-grid-all .solution-image { height: 260px; }.solution-content { min-height: 125px; }.product-image { height: 250px; }.product-copy p { min-height: 0; }.why-section { padding: 70px 0; }.why-section h2 { font-size: clamp(55px, 12vw, 72px); margin-bottom: 32px; }.why-top { display: block; }.why-top p { margin-bottom: 35px; }.why-grid { gap: 8px; }.why-item { padding-right: 12px; }.why-line { margin: 20px 0; }.why-item h3 { font-size: 23px; }.process-grid { grid-template-columns: 1fr; border-top: 0; margin-top: 35px; }.process-item { border-top: 1px solid var(--border); display: grid; grid-template-columns: 62px 1fr; gap: 0 10px; padding: 17px 0 0; }.process-item h3 { margin: 7px 0 3px; }.process-item p { grid-column: 2; max-width: none; }.engineering-grid { width: 100%; display: flex; flex-direction: column; }.engineering-image { margin: 0; height: 310px; }.engineering-copy { padding: 58px 20px 65px; }.service-row { grid-template-columns: 40px 1fr 22px; gap: 10px; padding: 19px 0; }.service-row h3 { font-size: 26px; }.service-row p { grid-column: 2; grid-row: 2; }.service-row > svg { grid-column: 3; grid-row: 1; }.cta-band { padding: 65px 0; }.cta-band-inner { display: block; }.cta-band h2 { font-size: 59px; }.cta-band-actions { margin-top: 27px; }.footer-main { grid-template-columns: 1fr 1fr; gap: 35px 25px; padding: 60px 0; }.footer-brand { grid-column: 1/-1; }.footer-contact { grid-column: 1/-1; }.footer-bottom { flex-direction: column; }.whatsapp-float { right: 16px; bottom: 82px; width: 47px; height: 47px; }.mobile-bottom-cta { position: fixed; bottom: 0; left: 0; right: 0; z-index: 45; display: grid; grid-template-columns: 38% 62%; background: var(--surface-dark); height: 60px; box-shadow: var(--shadow-image); }.mobile-bottom-cta a { display: flex; align-items: center; justify-content: center; gap: 9px; color: var(--text-on-dark); text-decoration: none; font-size: 12px; font-weight: 700; }.mobile-bottom-cta a:last-child { background: var(--primary); color: var(--primary-foreground); }.site-footer { padding-bottom: 60px; }.page-intro { padding: 70px 0; }.page-intro h1 { font-size: clamp(58px, 13vw, 80px); }.page-intro p { font-size: 13px; }.catalog-toolbar { display: grid; grid-template-columns: 1fr; gap: 10px; }.catalog-select { min-width: 0; }.result-count { margin: 5px 0; }.detail-visual img { min-height: 0; height: 340px; }.industry-row { grid-template-columns: 83px 1fr 20px; gap: 12px; }.industry-row img { width: 83px; height: 85px; }.industry-row > span { display: none; }.industry-row h2 { font-size: 24px; }.industry-row p { font-size: 10px; }.project-empty img { height: 320px; }.contact-form-wrap { padding: 22px; }.form-pair { grid-template-columns: 1fr; }.contact-methods a { font-size: 12px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } }
@media (min-width: 641px) and (max-width: 900px) { .catalog-toolbar { grid-template-columns: repeat(2,minmax(0,1fr)); }.catalog-search { grid-column: span 2; } }

.form-error { color: var(--destructive); font-size: 12px; font-weight: 700; margin: 0; }

.visual-note { color: var(--muted-foreground); font-size: 11px; line-height: 1.5; margin-top: 12px; }
.footer-legal { display: flex; gap: 24px; }
.footer-legal a { color: inherit; text-decoration: none; }
.footer-legal a:hover { color: var(--primary); }
.legal-content { max-width: 760px; }
.legal-content h2 { font-family: var(--font-display); font-size: clamp(32px, 5vw, 56px); text-transform: uppercase; }
.legal-content p { color: var(--muted-foreground); line-height: 1.7; margin: 16px 0; }
.legal-content a { color: var(--foreground); }

*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}button{cursor:pointer}svg{flex:none}img{display:block;max-width:100%}section[id]{scroll-margin-top:100px}
.product-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:14px 24px;background:var(--primary);color:var(--primary-foreground);border:1px solid transparent;text-decoration:none;font:700 12px var(--font-sans);transition:filter .2s}.product-button:hover{filter:brightness(.94)}.product-button svg{width:18px;height:18px}.product-button-dark{background:var(--surface-dark);color:var(--text-on-dark)}.product-button-outline{background:transparent;border-color:var(--border);color:var(--foreground)}.menu-toggle{align-items:center;justify-content:center;background:transparent;color:var(--foreground);border:0}.page-intro h1{font-size:88px;line-height:.95;max-width:1180px;overflow-wrap:break-word}.detail-copy h2{font-size:64px}.detail-visual img{height:600px}.detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.spec-list{margin:0;border-top:1px solid var(--border)}.spec-row{display:grid;grid-template-columns:270px 1fr;gap:40px;padding:25px 0;border-bottom:1px solid var(--border)}.spec-row dt{font-weight:700;font-size:14px}.spec-row dd{margin:0;font-size:14px;line-height:1.8;color:var(--muted-foreground)}.spec-note{font-size:12px;line-height:1.7;color:var(--muted-foreground);margin:25px 0 0}.why-item p{max-width:none}.application-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid var(--border);padding-top:30px}.application-list h3{font-size:30px;line-height:1.1}.application-number{color:var(--primary);display:block;margin-bottom:24px;font-size:13px;font-weight:700}.product-footer .footer-main{grid-template-columns:1fr 1fr}.product-footer .footer-contact a{overflow-wrap:anywhere}.product-footer .footer-brand{grid-column:auto}.product-footer .footer-brand p{margin-bottom:25px}.product-footer .footer-contact .product-button{color:var(--primary-foreground)}a:focus-visible,button:focus-visible{outline:3px solid var(--ring);outline-offset:5px}.mobile-nav>a{min-height:48px}.detail-facts strong{line-height:1.6}
@media(max-width:900px){.page-intro h1{font-size:70px}.detail-copy h2{font-size:48px}.detail-visual img{height:500px}.application-list{grid-template-columns:1fr}.spec-row{grid-template-columns:200px 1fr;gap:24px}.header-cta{display:none}}
@media(max-width:640px){.page-intro h1{font-size:48px;line-height:1.02}.page-intro{padding:55px 0}.detail-visual img{height:360px}.detail-copy h2{font-size:48px}.spec-row{grid-template-columns:1fr;gap:12px}.application-list{gap:15px}.application-list h3{font-size:28px}.product-footer .footer-main{grid-template-columns:1fr}.cta-band h2{font-size:48px}.eyebrow{font-size:10px}.detail-actions .product-button{width:100%}.why-grid{grid-template-columns:1fr;gap:20px}.why-item{padding-right:0}.why-item h3{font-size:28px}.why-line{margin:20px 0}.footer-contact{grid-column:auto}}
.site-logo {
    height: 60px;
    width: auto;
    display: block;
}