/* Production refinements: compact branding and consistent catalogue. */
.section.contact-map{height:auto;margin-top:0;padding-top:0;padding-bottom:clamp(62px,7vw,110px)}.section.contact-map iframe{display:block;height:420px}.footer-credits{padding-right:54px}
@media(max-width:767px){.section.contact-map iframe{height:310px!important}.footer-bottom-inner{padding-bottom:60px!important}.footer-credits{padding-right:0}}
.navigation-inner{min-height:80px}.brand{padding:10px 22px;gap:13px}.brand-mark svg{height:48px;width:48px}.brand-type small{margin-top:7px}.main-navigation>a{padding-block:30px}.main-navigation>a:after{bottom:16px}.footer-bottom-inner{min-height:86px}.footer-bottom .brand{padding-block:10px}.footer-credits{text-align:right}.footer-credits p+p{margin-top:5px}.footer-credits a{display:inline-block;padding:3px 0}.footer-social{display:flex;gap:10px;margin-top:24px}.footer-social a{display:flex;align-items:center;justify-content:center;width:43px;height:43px;padding:0;border:1px solid #ffffff30;border-radius:50%;transition:background .2s,border-color .2s}.footer-social a:hover{background:var(--brand);border-color:var(--brand)}.footer-social svg{width:18px;height:18px}.footer-links a{display:inline-block;padding-block:3px}.catalog-card__body{padding-top:34px}.catalog-card--service .catalog-card__body{padding-top:34px}.catalog-card--service .catalog-top{margin-bottom:24px}.catalog-top{margin-bottom:24px}.catalog-card--product{background:#f8f6f3}.catalog-card--product .catalog-icon{background:white}.catalog-number{font-size:14px}.catalog-grid{align-items:stretch}
@media(max-width:991px){.navigation-inner{min-height:74px}.brand{padding:9px 17px}.brand-mark svg{width:44px;height:44px}.main-navigation>a{padding-block:26px}.main-navigation>a:after{bottom:12px}}
@media(max-width:767px){.navigation-inner{min-height:68px}.brand{padding:8px 15px;gap:11px}.brand-mark svg{height:42px;width:42px}.brand-type strong{font-size:20px}.brand-type small{font-size:8px;margin-top:6px}.main-navigation>a{padding:14px 4px}.main-navigation>a:after{bottom:8px}.footer-bottom .brand{padding-block:12px}.footer-bottom-inner{gap:19px;padding-bottom:25px}.footer-credits{text-align:center;align-self:center}.footer-credits p{font-size:11px;line-height:1.8}.catalog-card__body,.catalog-card--service .catalog-card__body{padding:27px}.catalog-top,.catalog-card--service .catalog-top{margin-bottom:20px}}

/* Contact map: unique names keep section height separate from iframe height. */
.section.contact-location-section {
  padding-top: 0;
  padding-bottom: clamp(62px, 7vw, 110px);
  margin: 0;
  height: auto;
}

iframe.contact-location-map {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 420px;
  border: 0;
  border-radius: 16px;
  background: #f5f4f2;
}

@media (max-width: 767px) {
  iframe.contact-location-map {
    height: 310px;
  }
}

/* Impericon IC v2 — additive replacement for the existing .brand component.
   Insert the contents of brand-mark-v2.svg into .brand-mark.
   Existing IMPERICON / d.o.o. HTML remains unchanged. */
.brand { gap: 16px; }
.brand .brand-mark { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; }
.brand .brand-mark svg { display: block; width: 52px; height: 52px; color: inherit; }
.brand .brand-type { gap: 0; }
.brand .brand-type strong { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 23px; line-height: 1; letter-spacing: .032em; }
.brand .brand-type small { font-family: 'Poppins', sans-serif; font-weight: 500; font-size: 9px; line-height: 1; letter-spacing: .16em; margin-top: 10px; }
.footer-bottom .brand .brand-mark svg { width: 52px; height: 52px; }
@media (max-width: 1100px) {
  .brand { gap: 13px; }
  .brand .brand-mark svg { width: 46px; height: 46px; }
  .brand .brand-type strong { font-size: 21px; }
}
@media (max-width: 700px) {
  .brand { gap: 12px; }
  .brand .brand-mark svg { width: 42px; height: 42px; }
  .brand .brand-type strong { font-size: 20px; }
  .brand .brand-type small { font-size: 8px; margin-top: 8px; }
  .footer-bottom .brand .brand-mark svg { width: 48px; height: 48px; }
}
