/* Shared finishing layer. No external fonts, scripts or dependencies. */
body.tws-shell-active { --tws-polish-ink: #172c35; --tws-polish-copy: #405a63; --tws-polish-line: #d5e5e7; }
body.tws-shell-active :is(.entry-content, .elementor[data-elementor-type="wp-page"]) img { vertical-align: middle; }
body.tws-shell-active :is(.entry-content, .elementor[data-elementor-type="wp-page"]) p:empty { display: none; }
body.tws-shell-active :is(.entry-content, .elementor[data-elementor-type="wp-page"]) :is(p, li) { text-wrap: pretty; }
body.tws-shell-active .tws-product-page { color: var(--tws-polish-copy); }
body.tws-shell-active .tws-product-page :is(p, li) { color: inherit; }
body.tws-shell-active .tws-product-page .wp-block-table table { margin: 0; border-collapse: collapse; }
body.tws-shell-active .tws-product-page .wp-block-table :is(th, td) {
  padding: 13px 14px; color: #40545b; font: 400 16px/1.55 Arial, sans-serif; text-align: left; vertical-align: top;
}
body.tws-shell-active .tws-product-page .wp-block-table th { width: 34%; color: #253e47; font-weight: 600; }
body.tws-shell-active .tws-product-page .wp-block-table.is-style-stripes { border-bottom: 0; }
body.tws-shell-active .tws-product-page .wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background: #edf3f4; }
body.tws-shell-active .tws-product-page .wp-block-image { overflow: hidden; }
body.tws-shell-active .tws-product-page .wp-block-image figcaption { margin: 12px 0 0; font: 400 14px/1.55 Arial, sans-serif; color: #526b74; }
body.tws-shell-active .tws-product-page .wp-block-column > .wp-block-group > .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
body.tws-shell-active .tws-naezdnik-hero > * { min-width: 0; }
body.tws-shell-active .tws-product-page :is(ul, ol) { padding-left: 22px; }
body.tws-shell-active .tws-product-page li + li { margin-top: 8px; }

/* Elementor pages share one type scale and clear text contrast. */
body.tws-shell-active :is(.elementor-256, .elementor-273, .elementor-290) .elementor-widget-text-editor {
  color: var(--tws-polish-copy); font: 400 16px/1.65 Arial, sans-serif;
}
body.tws-shell-active :is(.elementor-256, .elementor-273, .elementor-290) .elementor-widget-text-editor p { margin: 0 0 16px; }
body.tws-shell-active :is(.elementor-256, .elementor-273, .elementor-290) .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
body.tws-shell-active :is(.elementor-256, .elementor-273) h2.elementor-heading-title {
  color: var(--tws-polish-ink); font: 700 clamp(28px, 3vw, 34px)/1.2 Arial, sans-serif !important; letter-spacing: -.02em;
}
body.tws-shell-active :is(.elementor-256, .elementor-273) h3.elementor-heading-title {
  color: var(--tws-polish-ink); font: 700 22px/1.3 Arial, sans-serif !important; letter-spacing: -.01em;
}
body.tws-shell-active .tws-kicker,
body.tws-shell-active .tws-kicker .elementor-heading-title {
  color: #08717a; font: 700 12px/1.5 Arial, sans-serif !important; letter-spacing: .08em; text-transform: uppercase;
}

/* About: compact sections, service grid and environmental application photos. */
body.tws-shell-active .elementor-256 { padding-top: 48px; }
body.tws-shell-active .elementor-256 > .tws-about-section {
  width: calc(100% - 40px); max-width: 1128px; margin: 0 auto 56px !important; padding: 0 !important;
}
body.tws-shell-active .elementor-256 .tws-about-section > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
body.tws-shell-active .elementor-256 .elementor-widget-heading { margin-bottom: 18px; text-align: left; }
body.tws-shell-active .elementor-256 .elementor-widget-text-editor { margin-bottom: 0; }
body.tws-shell-active .elementor-256 .elementor-widget > .elementor-widget-container { margin: 0 !important; padding: 0 !important; }
body.tws-shell-active .elementor-256 :is(h2, h3).elementor-heading-title { color: #172c35 !important; }
body.tws-shell-active .elementor-256 .elementor-widget-text-editor { color: #405a63 !important; text-align: left !important; }
body.tws-shell-active .elementor-256 .tws-kicker .elementor-heading-title { color: #08717a !important; }
body.tws-shell-active .elementor-256 p.elementor-heading-title { max-width: 860px; color: var(--tws-polish-copy); font: 400 17px/1.65 Arial, sans-serif !important; }
body.tws-shell-active .elementor-256 .tws-about-intro > .elementor-container { display: grid; grid-template-columns: 1.04fr 1fr; gap: 38px; align-items: center; }
body.tws-shell-active .elementor-256 .tws-about-intro > .elementor-container > .elementor-column { width: auto; min-width: 0; order: initial; }
body.tws-shell-active .elementor-256 .tws-about-intro img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 16px; }
body.tws-shell-active .elementor-256 .tws-about-intro .elementor-widget-heading { margin-bottom: 22px; }
body.tws-shell-active .elementor-256 .tws-about-services > .elementor-container { padding: 30px; background: #f2f7f8; border: 1px solid #e0ebed; border-radius: 18px; }
body.tws-shell-active .elementor-256 .tws-about-services .tws-kicker { margin-bottom: 8px; }
body.tws-shell-active .elementor-256 .tws-service-grid { margin: 20px 0 0 !important; padding: 0 !important; }
body.tws-shell-active .elementor-256 .tws-service-grid > .elementor-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.tws-shell-active .elementor-256 .tws-service-card { width: auto; }
body.tws-shell-active .elementor-256 .tws-service-card > .elementor-widget-wrap {
  align-content: start; padding: 24px !important; background: #fff; border: 1px solid var(--tws-polish-line); border-radius: 12px;
}
body.tws-shell-active .elementor-256 .tws-service-card .elementor-widget-heading { margin-bottom: 12px; }
body.tws-shell-active .elementor-256 .tws-service-card h3.elementor-heading-title { font-size: 20px !important; }
body.tws-shell-active .elementor-256 .tws-service-card .elementor-widget-text-editor { text-align: left; font-size: 15px; }
body.tws-shell-active .elementor-256 > .tws-section-heading { margin-bottom: 24px !important; }
body.tws-shell-active .elementor-256 .tws-section-heading .elementor-widget:last-child { margin-bottom: 0; }
body.tws-shell-active .elementor-256 .tws-about-benefits > .elementor-container { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: stretch; }
body.tws-shell-active .elementor-256 .tws-about-benefits > .elementor-container > .elementor-column { width: auto; min-width: 0; }
body.tws-shell-active .elementor-256 .tws-about-project-photo { min-height: 370px; overflow: hidden; border-radius: 16px; background-position: center; background-size: cover; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-widget-icon-box { margin: 0; padding: 18px 0; border-bottom: 1px solid #e0eaec; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-widget-icon-box:first-child { padding-top: 6px; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-widget-icon-box:last-child { border-bottom: 0; padding-bottom: 6px; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-icon-box-wrapper { display: flex; flex-direction: row !important; align-items: flex-start !important; gap: 16px; text-align: left; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-icon-box-icon { flex: 0 0 24px; margin: 2px 0 0 !important; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-icon-box-content { flex: 1; min-width: 0; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-icon { color: #08717a !important; fill: #08717a !important; font-size: 22px; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-icon-box-title { margin: 0 0 7px; color: #172c35; font: 600 18px/1.4 Arial, sans-serif; }
body.tws-shell-active .elementor-256 .tws-about-benefits .elementor-icon-box-description { color: #405a63; font: 400 15px/1.6 Arial, sans-serif; }
body.tws-shell-active .elementor-256 .tws-applications > .elementor-container > .elementor-column > .elementor-widget-wrap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
body.tws-shell-active .elementor-256 .tws-application-card { margin: 0 !important; padding: 0 !important; border: 1px solid #d5e5e7; border-radius: 16px; overflow: hidden; background: #fff; }
body.tws-shell-active .elementor-256 .tws-application-card > .elementor-container { height: 100%; display: flex; flex-direction: column; }
body.tws-shell-active .elementor-256 .tws-application-card .elementor-column { width: 100%; }
body.tws-shell-active .elementor-256 .tws-application-card .tws-application-photo { order: 0 !important; }
body.tws-shell-active .elementor-256 .tws-application-card .tws-application-copy { order: 1 !important; }
body.tws-shell-active .elementor-256 .tws-application-photo .elementor-widget-wrap { padding: 0 !important; }
body.tws-shell-active .elementor-256 .tws-application-photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
body.tws-shell-active .elementor-256 .tws-application-copy { flex: 1; }
body.tws-shell-active .elementor-256 .tws-application-copy > .elementor-widget-wrap { padding: 24px !important; align-content: flex-start !important; }
body.tws-shell-active .elementor-256 .tws-application-copy .elementor-widget-heading { margin-bottom: 12px; }
body.tws-shell-active .elementor-256 .tws-application-copy h3.elementor-heading-title { font-size: 25px !important; }

/* Home: genuine project photos remain in the portfolio; technical images fit in full. */
body.tws-shell-active .elementor-273 > .elementor-top-section:not(.elementor-element-b4b2d36) { padding: 56px 20px !important; }
body.tws-shell-active .elementor-273 > .elementor-top-section:not(.elementor-element-b4b2d36) :is(.elementor-widget-heading, .elementor-widget-text-editor) > .elementor-widget-container { margin: 0 !important; }
body.tws-shell-active .elementor-273 > .elementor-top-section:not(.elementor-element-b4b2d36) .elementor-widget-heading { margin-bottom: 16px; }
body.tws-shell-active .elementor-273 > .elementor-top-section:not(.elementor-element-b4b2d36) .elementor-widget-text-editor { margin-bottom: 0; }
body.tws-shell-active .elementor-273 .tws-home-card-grid { margin-top: 24px !important; }
body.tws-shell-active .elementor-273 .tws-home-card-grid > .elementor-container,
body.tws-shell-active .elementor-273 .tws-product-gallery > .elementor-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.tws-shell-active .elementor-273 :is(.tws-home-card-grid, .tws-product-gallery) > .elementor-container > .elementor-column { width: auto !important; min-width: 0; }
body.tws-shell-active .elementor-273 .tws-home-card-grid > .elementor-container > .elementor-column > .elementor-widget-wrap { align-content: start; }
body.tws-shell-active .elementor-273 .tws-home-card-grid .elementor-widget-heading { margin-bottom: 14px; }
body.tws-shell-active .elementor-273 .tws-home-stats h3.elementor-heading-title { color: #08717a; font-size: 28px !important; }
body.tws-shell-active .elementor-273 .tws-home-applications > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0 0 24px !important; overflow: hidden; }
body.tws-shell-active .elementor-273 .tws-home-applications .elementor-widget-heading,
body.tws-shell-active .elementor-273 .tws-home-applications .elementor-widget-text-editor { padding: 0 22px; }
body.tws-shell-active .elementor-273 .tws-home-application-photo { margin-bottom: 22px; }
body.tws-shell-active .elementor-273 .tws-home-application-photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
body.tws-shell-active .elementor-273 .tws-home-applications h3.elementor-heading-title { min-height: 2.6em; font-size: 21px !important; }
body.tws-shell-active .elementor-273 .tws-product-gallery > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 16px; border: 1px solid #dbe8ea; border-radius: 14px; background: #fff; }
body.tws-shell-active .elementor-273 .tws-product-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; }
body.tws-shell-active .elementor-273 .tws-project-gallery > .elementor-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.tws-shell-active .elementor-273 .tws-project-gallery .elementor-column { width: auto !important; min-width: 0; }
body.tws-shell-active .elementor-273 .tws-project-gallery .elementor-widget-wrap { padding: 0; }
body.tws-shell-active .elementor-273 .tws-project-gallery .elementor-widget-image { margin: 0; }
body.tws-shell-active .elementor-273 .tws-project-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid #d5e5e7; border-radius: 14px; }
body.tws-shell-active .elementor-273 .tws-project-gallery a:focus-visible { display: block; outline: 3px solid #08717a; outline-offset: 4px; border-radius: 14px; }
body.tws-shell-active .elementor-273 .elementor-icon-box-title { color: #172c35; font: 700 21px/1.3 Arial, sans-serif; }
body.tws-shell-active .elementor-273 .elementor-icon-box-description { color: #405a63; font: 400 16px/1.65 Arial, sans-serif; }

/* Equipment application cards need real gaps and readable copy on the dark card. */
body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b > .elementor-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b > .elementor-container > .elementor-column { width: auto; min-width: 0; }
body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b h3.elementor-heading-title { min-height: 2.6em; }
body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b > .elementor-container > .elementor-column:last-child .elementor-widget-text-editor,
body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b > .elementor-container > .elementor-column:last-child .elementor-widget-text-editor :is(p, li) { color: #e3eef0 !important; }

/* Contact details and the office location share a consistent card style. */
body.tws-shell-active .elementor-112 .tws-contacts-section { width: 100%; max-width: 1128px; margin: 44px auto 56px; padding: 0; }
body.tws-shell-active .elementor-112 .tws-contacts-section .elementor-widget-wrap { padding: 0; }
.tws-contact-page { color: #405a63; font: 400 16px/1.65 Arial, sans-serif; }
.tws-contact-page .tws-contact-intro { max-width: 760px; margin-bottom: 30px; }
.tws-contact-page h2 { margin: 8px 0 18px; color: #172c35; font: 700 34px/1.2 Arial, sans-serif; }
.tws-contact-page h3 { margin: 0 0 18px; color: #172c35; font: 700 22px/1.3 Arial, sans-serif; }
body.tws-shell-active .tws-contact-page p { margin: 0; line-height: 1.65; color: #405a63; }
.tws-contact-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.tws-contact-card { padding: 28px; border: 1px solid #d5e5e7; border-radius: 16px; background: #f7fafb; }
.tws-contact-card p { margin-top: 16px; font-size: 15px; }
.tws-contact-card address { font-style: normal; }
.tws-contact-page .tws-contact-primary { display: block; width: fit-content; margin: 8px 0; color: #08717a; font-size: 20px; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.tws-contact-map { display: inline-flex; gap: 12px; align-items: center; min-height: 44px; margin-top: 8px; color: #08717a; font-weight: 700; text-decoration: none; }
.tws-contact-bottom { display: grid; grid-template-columns: 1fr 1.2fr; gap: 32px; margin-top: 32px; padding-top: 32px; border-top: 1px solid #dbe8ea; }
.tws-contact-bottom h3 { font-size: 21px; }
.tws-contact-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.tws-contact-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 17px; border: 1px solid #bfd9dd; border-radius: 9px; background: #fff; color: #08717a; font-weight: 700; text-decoration: none; }
.tws-contact-page a:hover { color: #054f56; text-decoration: underline; text-underline-offset: 4px; }
.tws-contact-page a:focus-visible { outline: 3px solid #08717a; outline-offset: 4px; border-radius: 3px; }


.tws-contact-location { margin-top: 40px; overflow: hidden; border: 1px solid #d5e5e7; border-radius: 16px; background: #f7fafb; }
.tws-contact-location-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px 32px; padding: 26px 28px; }
.tws-contact-page .tws-contact-location-heading h2 { margin: 0; font-size: 28px; }
.tws-contact-location-heading p { text-align: right; }
.tws-contact-map-frame { border-top: 1px solid #d5e5e7; background: #eaf0f2; }
.tws-contact-map-frame iframe { display: block; width: 100%; max-width: 100%; height: 400px; margin: 0; border: 0; }
@media (max-width: 767px) {
  .tws-contact-location { margin-top: 30px; }
  .tws-contact-location-heading { flex-direction: column; align-items: flex-start; gap: 8px; padding: 22px 24px; }
  .tws-contact-page .tws-contact-location-heading h2 { font-size: 26px; }
  .tws-contact-location-heading p { text-align: left; }
  .tws-contact-map-frame iframe { height: 340px; }
}

/* The common consultation panel uses the same industrial image language. */
body.tws-shell-active :is(.elementor-2629, .elementor-273) .elementor-element-872130e > .elementor-widget-wrap {
  background-image: linear-gradient(110deg, rgba(4, 30, 37, .94), rgba(4, 30, 37, .78)), url('images/sector-cold-storage.png') !important;
  background-position: center !important; background-size: cover !important; border-radius: 16px !important;
}
body.tws-shell-active :is(.elementor-2629, .elementor-273) .elementor-element-b465ce4 .elementor-heading-title { color: #fff !important; font: 700 32px/1.25 Arial, sans-serif !important; }
body.tws-shell-active :is(.elementor-2629, .elementor-273) .elementor-element-f0e8df6 .elementor-heading-title { color: #e1edef !important; font: 400 16px/1.65 Arial, sans-serif !important; }

/* Articles, author and legal templates retain their content and structure. */
body.tws-shell-active .tws-media-prose figure { overflow: hidden; border: 1px solid #dce7ea; border-radius: 14px; background: #f7fafb; }
body.tws-shell-active .tws-media-prose figure > img { display: block; width: 100%; border-radius: 0; }
body.tws-shell-active .tws-media-prose figcaption { margin: 0; padding: 14px 18px; color: #526b74; font-size: 14px; }
body.tws-shell-active .tws-media-prose :is(th, td) { padding: 13px 14px; text-align: left; vertical-align: top; line-height: 1.6; }
body.tws-shell-active .tws-media-prose th { background: #edf5f6; color: #253e47; font: 600 15px/1.55 Arial, sans-serif; }
body.tws-shell-active .tws-media-prose tbody tr:nth-child(even) { background: #f7fafb; }
body.tws-shell-active .tws-media-prose blockquote > :last-child { margin-bottom: 0; }
body.tws-shell-active .tws-media-card h2 { text-wrap: pretty; }
body.tws-shell-active .tws-media-author-profile__bio > :last-child { margin-bottom: 0; }
body.tws-shell-active:is(.page-id-746, .page-id-2624) .entry-content { max-width: 960px; margin-right: auto; margin-left: auto; color: #405a63; font: 400 17px/1.75 Arial, sans-serif; }
body.tws-shell-active:is(.page-id-746, .page-id-2624) .entry-content h2 { padding-top: 10px; color: #172c35; font: 700 27px/1.3 Arial, sans-serif; }
body.tws-shell-active:is(.page-id-746, .page-id-2624) .entry-content li + li { margin-top: 10px; }
body.tws-shell-active:is(.page-id-746, .page-id-2624) .entry-content p { line-height: 1.75; }
.tws-not-found { padding: 48px 20px 64px; background: #fff; }
.tws-not-found__inner { max-width: 1128px; margin: 0 auto; padding: 32px; border: 1px solid #d5e5e7; border-radius: 16px; background: #f2f7f8; }
.tws-not-found h2 { margin: 12px 0 16px; color: #172c35; font: 700 32px/1.2 Arial, sans-serif; }
.tws-not-found p { color: #405a63; font: 400 16px/1.65 Arial, sans-serif; }
.tws-not-found__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 26px; }
.tws-not-found__actions > a:last-child { padding: 10px 0; color: #08717a; font-weight: 700; }

@media (max-width: 960px) {
  body.tws-shell-active .elementor-256 .tws-service-grid > .elementor-container { gap: 14px; }
  body.tws-shell-active .elementor-256 .tws-service-card > .elementor-widget-wrap { padding: 20px !important; }
  body.tws-shell-active .elementor-273 .tws-home-card-grid > .elementor-container { gap: 16px; }
  .tws-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tws-contact-card:last-child { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  body.tws-shell-active .elementor-256 { padding-top: 32px; }
  body.tws-shell-active .elementor-256 > .tws-about-section { width: calc(100% - 36px); margin-bottom: 36px !important; }
  body.tws-shell-active .elementor-256 .tws-about-intro > .elementor-container,
  body.tws-shell-active .elementor-256 .tws-about-benefits > .elementor-container { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  body.tws-shell-active .elementor-256 .tws-about-services > .elementor-container { padding: 20px; }
  body.tws-shell-active .elementor-256 .tws-service-grid > .elementor-container { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  body.tws-shell-active .elementor-256 .tws-service-grid { margin-top: 14px !important; }
  body.tws-shell-active .elementor-256 .tws-about-project-photo { min-height: 280px; }
  body.tws-shell-active .elementor-256 .tws-applications > .elementor-container > .elementor-column > .elementor-widget-wrap { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  body.tws-shell-active .elementor-256 .tws-application-copy > .elementor-widget-wrap { padding: 22px !important; }
  body.tws-shell-active .elementor-273 > .elementor-top-section:not(.elementor-element-b4b2d36) { padding: 36px 0 !important; }
  body.tws-shell-active .elementor-273 :is(.tws-home-card-grid, .tws-product-gallery, .tws-project-gallery) > .elementor-container { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  body.tws-shell-active .elementor-273 .tws-home-applications h3.elementor-heading-title { min-height: 0; }
  body.tws-shell-active .elementor-273 .tws-product-gallery img { max-height: 320px; }
  body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b > .elementor-container { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  body.tws-shell-active .elementor-290 .elementor-element-e1f2a3b h3.elementor-heading-title { min-height: 0; }
  .tws-contact-grid, .tws-contact-bottom { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .tws-contact-card:last-child { grid-column: auto; }
  .tws-contact-card { padding: 24px; }
  .tws-contact-bottom { margin-top: 26px; padding-top: 26px; gap: 28px; }
  .tws-contact-page h2 { font-size: 28px; }
  body.tws-shell-active .elementor-112 .tws-contacts-section { width: 100%; margin-top: 30px; margin-bottom: 36px; }
  body.tws-shell-active :is(.elementor-2629, .elementor-273) .elementor-element-b465ce4 .elementor-heading-title { font-size: 28px !important; }
  .tws-not-found { padding: 30px 18px 40px; }
  .tws-not-found__inner { padding: 24px; }
  .tws-not-found h2 { font-size: 26px; }
  .tws-not-found__actions { align-items: stretch; flex-direction: column; }
}
@media (max-width: 520px) {
  body.tws-shell-active .tws-product-page .wp-block-table :is(th, td) { padding: 11px 8px; font-size: 14px; }
  body.tws-shell-active .tws-product-page .wp-block-table th { width: 42%; }
  body.tws-shell-active .tws-media-prose :is(th, td) { padding: 10px; font-size: 14px; }
  body.tws-shell-active .tws-media-prose figure { margin: 24px 0; }
  body.tws-shell-active .tws-media-prose figcaption { padding: 12px 14px; }
  body.tws-shell-active:is(.page-id-746, .page-id-2624) .entry-content { font-size: 16px; overflow-wrap: anywhere; }
}
@media (max-width: 360px) {
  body.tws-shell-active .tws-product-page .wp-block-table :is(th, td) { padding: 10px 5px; font-size: 13px; }
  body.tws-shell-active .tws-product-page .wp-block-table th { width: 44%; font-weight: 500; overflow-wrap: normal; word-break: normal; }
  body.tws-shell-active .tws-naezdnik-hero h2 { font-size: 24px !important; }
}

/* The long certification label needs a full row on tablet widths. */
@media (min-width: 768px) and (max-width: 1023px) {
  body.tws-shell-active .elementor-273 .tws-home-stats > .elementor-container { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.tws-shell-active .elementor-273 .tws-home-stats > .elementor-container > .elementor-column:last-child { grid-column: 1 / -1; }
}

/* Contact messenger icons, scoped to the contact block. */
.tws-contact-messengers .tws-contact-icon-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link{display:grid;place-items:center;width:50px;height:50px;min-width:50px;min-height:50px;padding:0;border:0;border-radius:50%;color:#fff!important;box-shadow:0 3px 10px #163e4a12;transition:transform .2s ease,box-shadow .2s ease;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link--wa{background:#19b85a;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link--tg{background:transparent;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link--max{background:linear-gradient(145deg,#00bfff 0%,#471aff 56%,#9500ff 100%);}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link svg{display:block;width:28px;height:28px;fill:currentColor;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link--tg svg{width:100%;height:100%;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link:hover{transform:translateY(-3px);box-shadow:0 7px 16px #163e4a26;}
.tws-contact-messengers .tws-contact-icon-actions .tws-social-link:focus-visible{outline:3px solid #10a7b1;outline-offset:4px;}
@media(prefers-reduced-motion:reduce){.tws-contact-messengers .tws-contact-icon-actions .tws-social-link{transition:none;}.tws-contact-messengers .tws-contact-icon-actions .tws-social-link:hover{transform:none;}}


/* Keep footer messenger buttons clear of the company description. */
.tws-site-shell.tws-site-footer .tws-footer-brand > .tws-socials { column-gap: 10px; }
@media (min-width: 651px) {
  .tws-site-shell.tws-site-footer .tws-footer-brand > .tws-socials { margin-top: 18px; }
}
@media (max-width: 360px) {
  .tws-site-shell.tws-site-footer .tws-footer-brand > .tws-socials { column-gap: 7px; }
}

/* City contacts, 29 October 2026. Content remains editable in WordPress. */
.tws-contact-page .tws-contact-offices { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.tws-contact-offices .tws-contact-card:last-child { grid-column: auto; }
.tws-contact-page .tws-contact-office { display: flex; flex-direction: column; align-items: flex-start; padding: 30px 32px; border-top: 4px solid #08717a; background: #f7fafb; }
.tws-contact-page .tws-contact-office h3 { margin: 0 0 22px; font-size: 27px; }
body.tws-shell-active .tws-contact-office .tws-contact-label { margin: 0 0 6px; color: #59717a; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.tws-contact-office address { min-height: 54px; margin: 0 0 24px; }
.tws-contact-page .tws-contact-office .tws-contact-primary { margin: 0 0 14px; }
.tws-contact-office .tws-contact-map { margin-top: auto; }
.tws-contact-page .tws-contact-bottom--cities { grid-template-columns: 1fr 1fr; gap: 26px 40px; }
.tws-contact-bottom--cities .tws-contact-brief { grid-column: 1 / -1; padding: 20px 24px; border-radius: 12px; background: #f0f6f7; }
.tws-contact-bottom--cities .tws-contact-brief h3 { margin-bottom: 8px; font-size: 19px; }
.tws-contact-page .tws-contact-locations { margin-top: 40px; }
.tws-contact-map-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.tws-contact-map-grid .tws-contact-location { min-width: 0; margin-top: 0; }
.tws-contact-map-grid .tws-contact-location-heading { display: block; padding: 22px 24px; }
.tws-contact-page .tws-contact-map-grid h3 { margin: 0 0 6px; font-size: 22px; }
.tws-contact-map-grid .tws-contact-location-heading p { text-align: left; font-size: 15px; }
.tws-contact-map-grid .tws-contact-map-frame iframe { height: 320px; }
@media (max-width: 767px) {
  .tws-contact-page .tws-contact-offices, .tws-contact-page .tws-contact-bottom--cities, .tws-contact-map-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .tws-contact-page .tws-contact-office { padding: 24px; }
  .tws-contact-page .tws-contact-office h3 { margin-bottom: 18px; font-size: 25px; }
  .tws-contact-bottom--cities .tws-contact-brief { padding: 20px; }
  .tws-contact-page .tws-contact-locations { margin-top: 30px; }
  .tws-contact-map-grid .tws-contact-map-frame iframe { height: 300px; }
}
