
:root{--orange:#ff7900;--dark:#232d31;--text:#293236;--muted:#4b565b;--line:#dedede;--soft:#f5f5f4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:white;line-height:1.45}a{text-decoration:none;color:inherit}.t-hu{display:none}.lang-hu .t-sk{display:none}.lang-hu .t-hu{display:inline}.lang-sk .t-hu{display:none}.lang-sk .t-sk{display:inline}.topbar{position:sticky;top:0;z-index:20;height:76px;display:grid;grid-template-columns:230px 1fr auto;gap:22px;align-items:center;padding:0 4vw;background:rgba(255,255,255,.97);border-bottom:1px solid #e5e5e5}.brand img{width:170px;display:block}.nav{display:flex;justify-content:center;gap:32px;font-size:14px;font-weight:800}.nav a{height:76px;display:flex;align-items:center;border-bottom:2px solid transparent}.nav a.active,.nav a:hover{color:var(--orange);border-bottom-color:var(--orange)}.top-actions{display:flex;gap:14px;align-items:center}.top-cta{background:var(--orange);color:white;padding:13px 22px;border-radius:4px;font-weight:900}.lang-switch{display:flex;gap:4px}.lang-switch button{border:1px solid #ddd;background:white;border-radius:4px;padding:10px 13px;font-weight:900}.lang-switch .active{background:var(--dark);color:white;border-color:var(--dark)}.hero{min-height:520px;display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:40px;padding:52px 4vw 44px;border-bottom:1px solid #ddd;background:linear-gradient(90deg,#fff 0,#fafafa 55%,#f7f4ef 100%);overflow:hidden}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(42px,5.1vw,72px);line-height:1.08;letter-spacing:-.045em;margin:0 0 24px;color:var(--dark);max-width:720px}.hero-area,.hero-lead{font-size:18px;max-width:620px;margin:0 0 16px}.hero-lead{color:#40484c}.hero-actions{display:flex;gap:18px;margin-top:32px}.btn{min-height:50px;padding:0 24px;border-radius:5px;border:1px solid transparent;font-weight:900;display:inline-flex;align-items:center;justify-content:center}.btn.primary{background:var(--orange);color:white;box-shadow:0 10px 24px rgba(255,121,0,.22)}.btn.outline{background:white;border-color:#aeb4b7;color:var(--dark)}.hero-art{min-height:430px;display:grid;place-items:center;position:relative}.hero-art img{width:min(760px,120%);max-width:none;display:block;filter:drop-shadow(0 18px 40px rgba(0,0,0,.02))}.section-title{text-align:center;margin-bottom:24px}.section-title h2{margin:0;font-size:27px;line-height:1.12;font-weight:900;color:var(--dark)}.section-title span,.title-line{display:block;width:64px;height:2px;background:var(--orange);margin:12px auto 0}.services{padding:34px 4vw 24px}.cards.six{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.cards article{min-height:220px;text-align:center;border:1px solid var(--line);border-radius:5px;background:white;padding:22px 14px;box-shadow:0 10px 26px rgba(0,0,0,.035)}.cards img{width:76px;height:76px;object-fit:contain;margin:0 auto 15px;display:block}.cards h3{font-size:17px;line-height:1.2;margin:0 0 9px;color:var(--dark);font-weight:900}.cards p{font-size:13px;line-height:1.4;margin:0;color:#394246}.coop{padding:24px 4vw 30px}.coop-box{background:var(--soft);border-radius:8px;padding:28px 36px 24px}.steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.steps:before{content:"";position:absolute;left:9%;right:9%;top:36px;border-top:2px dotted #c7c7c7}.steps article{position:relative;z-index:1;text-align:center}.steps img{width:58px;height:58px;object-fit:contain;margin:0 auto 18px;display:block}.steps h3{font-size:15px;line-height:1.25;margin:0 0 8px;color:var(--dark);font-weight:900}.steps p{font-size:13px;line-height:1.4;margin:0;color:#4b5458}.coop-note{text-align:center;color:#4d565a;font-size:13px;margin:22px 0 0}.contact{display:grid;grid-template-columns:270px 1fr;gap:42px;padding:24px 4vw 38px}.contact-copy h2{font-size:24px;line-height:1.2;margin:0;color:var(--dark)}.contact-copy .title-line{margin-left:0}.contact-copy p{font-size:15px;color:#3d474b}.contact-copy a{display:block;color:#e85f00;font-size:23px;font-weight:900;margin-top:12px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:13px 14px;font:inherit;background:white}.contact-form textarea,.file-field,.contact-form button,.form-note{grid-column:1/-1}.file-field{border:1px solid #ddd;border-radius:4px;padding:12px 14px;color:#4c5559}.file-field input{display:none}.contact-form button{justify-self:end;width:280px}.form-note{font-size:12px;color:#697177;margin:0}.footer{display:grid;grid-template-columns:230px 1fr 1fr 1.3fr 70px;gap:28px;align-items:center;background:linear-gradient(135deg,#1d2528,#151b1e);color:#d9e0e2;padding:28px 4vw}.footer>img:first-child{width:200px}.footer a{color:white}.footer-mark{width:58px}.footer small{grid-column:2/-1;font-size:12px;opacity:.75}@media(max-width:1100px){.topbar{grid-template-columns:200px 1fr}.nav{display:none}.hero{grid-template-columns:1fr}.hero-art{min-height:320px}.cards.six{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.steps:before{display:none}.contact{grid-template-columns:1fr}.footer{grid-template-columns:1fr 1fr}}@media(max-width:720px){.topbar{height:auto;grid-template-columns:1fr;padding:12px 22px}.brand img{width:165px}.top-cta{display:none}.hero,.services,.coop,.contact{padding-left:22px;padding-right:22px}.hero h1{font-size:39px}.hero-actions{flex-direction:column}.btn{width:100%}.hero-art img{width:110%}.cards.six,.steps,.contact-form,.footer{grid-template-columns:1fr}.contact-form button{width:100%}.footer small{grid-column:auto}}

/* MIKRON V3 MIDDLE SECTIONS FIX 2026-06-17
   Scope: services + cooperation only.
   Fixes:
   - no orange background behind headings
   - only small orange underline
   - equal icon boxes
   - cooperation step icons and dotted line aligned
*/

.services .section-title h2 span,
.coop .section-title h2 span {
  display: inline !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--dark) !important;
}

.services .section-title > span,
.coop .section-title > span {
  display: block !important;
  width: 64px !important;
  height: 2px !important;
  background: var(--orange) !important;
  margin: 12px auto 0 !important;
  padding: 0 !important;
}

.services .section-title,
.coop .section-title {
  text-align: center !important;
  margin-bottom: 24px !important;
}

.services .section-title h2,
.coop .section-title h2 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--dark) !important;
  font-size: 27px !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
}

/* Services cards: equal rhythm */
.services .cards.six {
  align-items: stretch !important;
}

.services .cards article {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 220px !important;
  padding-top: 22px !important;
  padding-bottom: 20px !important;
}

.services .cards article > img {
  width: 82px !important;
  height: 82px !important;
  min-width: 82px !important;
  min-height: 82px !important;
  max-width: 82px !important;
  max-height: 82px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 15px !important;
}

.services .cards h3 {
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 0 8px !important;
}

.services .cards p {
  max-width: 178px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Cooperation block: align steps */
.coop .coop-box {
  padding-top: 28px !important;
  padding-bottom: 24px !important;
}

.coop .steps {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
}

.coop .steps::before {
  content: "" !important;
  position: absolute !important;
  left: 9% !important;
  right: 9% !important;
  top: 32px !important;
  border-top: 2px dotted #c7c7c7 !important;
  z-index: 0 !important;
}

.coop .steps article {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

.coop .steps article > img {
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  min-height: 64px !important;
  max-width: 64px !important;
  max-height: 64px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 16px !important;
  background: var(--soft) !important;
  border-radius: 50% !important;
}

.coop .steps h3 {
  min-height: 38px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 0 8px !important;
}

.coop .steps p {
  max-width: 240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.coop .coop-note {
  margin-top: 22px !important;
  text-align: center !important;
}

@media (max-width: 1100px) {
  .coop .steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .coop .steps::before {
    display: none !important;
  }
}

@media (max-width: 720px) {
  .services .cards article > img {
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    min-height: 76px !important;
  }
  .coop .steps {
    grid-template-columns: 1fr !important;
  }
  .coop .steps article > img {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
  }
}

/* MIKRON V3 LANGUAGE TOGGLE FIX 2026-06-17
   Strong override: never show SK and HU at the same time.
*/

body.lang-sk .t-hu {
  display: none !important;
}

body.lang-sk .t-sk {
  display: inline !important;
}

body.lang-hu .t-sk {
  display: none !important;
}

body.lang-hu .t-hu {
  display: inline !important;
}

/* keep section headings clean, no orange background on language text */
.services .section-title h2 .t-sk,
.services .section-title h2 .t-hu,
.coop .section-title h2 .t-sk,
.coop .section-title h2 .t-hu {
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--dark) !important;
}

/* only the direct empty span under title is the orange underline */
.services .section-title > span,
.coop .section-title > span {
  display: block !important;
  width: 64px !important;
  height: 2px !important;
  background: var(--orange) !important;
  margin: 12px auto 0 !important;
  padding: 0 !important;
}

/* MIKRON V3 LANGUAGE SPECIFICITY FIX 2026-06-17
   Scope: text visibility only.
   Reason: older .section-title h2 span display:inline !important had higher specificity.
   Do not touch icons/layout.
*/

/* Global language visibility */
body.lang-sk .t-hu {
  display: none !important;
}
body.lang-hu .t-sk {
  display: none !important;
}
body.lang-sk .t-sk {
  display: inline !important;
}
body.lang-hu .t-hu {
  display: inline !important;
}

/* Stronger override for section titles */
body.lang-sk .services .section-title h2 span.t-hu,
body.lang-sk .coop .section-title h2 span.t-hu {
  display: none !important;
}

body.lang-hu .services .section-title h2 span.t-sk,
body.lang-hu .coop .section-title h2 span.t-sk {
  display: none !important;
}

body.lang-sk .services .section-title h2 span.t-sk,
body.lang-sk .coop .section-title h2 span.t-sk,
body.lang-hu .services .section-title h2 span.t-hu,
body.lang-hu .coop .section-title h2 span.t-hu {
  display: inline !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Stronger override for nav, hero, cards, steps, contact and footer */
body.lang-sk .nav span.t-hu,
body.lang-sk .hero span.t-hu,
body.lang-sk .cards span.t-hu,
body.lang-sk .steps span.t-hu,
body.lang-sk .contact span.t-hu,
body.lang-sk .footer span.t-hu {
  display: none !important;
}

body.lang-hu .nav span.t-sk,
body.lang-hu .hero span.t-sk,
body.lang-hu .cards span.t-sk,
body.lang-hu .steps span.t-sk,
body.lang-hu .contact span.t-sk,
body.lang-hu .footer span.t-sk {
  display: none !important;
}

body.lang-sk .nav span.t-sk,
body.lang-sk .hero span.t-sk,
body.lang-sk .cards span.t-sk,
body.lang-sk .steps span.t-sk,
body.lang-sk .contact span.t-sk,
body.lang-sk .footer span.t-sk,
body.lang-hu .nav span.t-hu,
body.lang-hu .hero span.t-hu,
body.lang-hu .cards span.t-hu,
body.lang-hu .steps span.t-hu,
body.lang-hu .contact span.t-hu,
body.lang-hu .footer span.t-hu {
  display: inline !important;
}


/* MIKRON HERO CUTOUT V5 START */
/*
  Asset-level javítás:
  - hero-circuit-cutout.png átlátszó hátterű verzió
  - nincs halvány duplikált háttér-logo
  - nincs mix-blend trükk
  - nincs fehér négyzet/kocka vászon
  - jobb oldali grafika marad látható
  - felső bal logó érintetlen
*/
.hero {
  position: relative !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(390px, 1.08fr) !important;
  align-items: center !important;
  gap: clamp(20px, 3vw, 46px) !important;
  min-height: clamp(530px, 65vh, 720px) !important;
  padding: clamp(58px, 7vw, 88px) 4vw clamp(54px, 7vw, 82px) !important;
  border-bottom: 1px solid #ddd !important;
  background:
    linear-gradient(90deg, #ffffff 0%, #fbfbfa 45%, #f7f4ef 100%) !important;
}

.hero::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -20%;
  bottom: -20%;
  left: 36%;
  right: -8%;
  background:
    radial-gradient(circle at 78% 48%, rgba(255,121,0,0.18), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,234,216,0.45) 54%, rgba(247,244,239,0.88) 100%);
  pointer-events: none;
}

.hero-copy {
  position: relative !important;
  z-index: 2 !important;
  max-width: 780px !important;
}

.hero h1 {
  max-width: 760px !important;
}

.hero-area,
.hero-lead {
  max-width: 650px !important;
}

.hero-art {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  place-items: center !important;
  min-height: clamp(390px, 42vw, 610px) !important;
  justify-self: stretch !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  pointer-events: none;
}

.hero-art::before,
.hero-art::after {
  content: none !important;
  display: none !important;
}

.hero-art img {
  width: min(760px, 58vw) !important;
  max-width: none !important;
  height: auto !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: drop-shadow(0 24px 48px rgba(35,45,49,0.10)) !important;
}

@media (min-width: 1360px) {
  .hero {
    padding-left: max(4vw, calc((100vw - 1220px) / 2 + 10px)) !important;
    padding-right: max(4vw, calc((100vw - 1220px) / 2 - 20px)) !important;
  }

  .hero-art img {
    width: min(830px, 55vw) !important;
  }
}

@media (max-width: 1100px) {
  .hero {
    grid-template-columns: 1fr !important;
    text-align: center;
  }

  .hero-copy {
    margin-left: auto;
    margin-right: auto;
  }

  .hero-area,
  .hero-lead {
    margin-left: auto;
    margin-right: auto;
  }

  .hero-actions {
    justify-content: center;
  }

  .hero-art {
    min-height: 300px !important;
    margin-top: 20px;
  }

  .hero-art img {
    width: min(520px, 88vw) !important;
  }

  .hero::before {
    left: -12%;
    right: -12%;
    opacity: 0.65;
  }
}

@media (max-width: 720px) {
  .hero-art {
    min-height: 230px !important;
  }

  .hero-art img {
    width: min(430px, 104vw) !important;
  }
}
/* MIKRON HERO CUTOUT V5 END */

