/* Homepage content from Custom Services down grows with translated text. */
.home-content.content-flow-home .flow-section, .home-content.content-flow-home #footer {
  position: relative; display: block; width: 100%; height: auto !important;
  min-height: 0 !important; padding: 80px 12.135417%; box-sizing: border-box;
}
.home-content.content-flow-home .flow-section .live-text, .home-content.content-flow-home #footer .live-text {
  position: static !important; top: auto !important; right: auto !important;
  bottom: auto !important; left: auto !important; width: auto !important;
  max-width: 100%; height: auto !important; min-height: 0;
  margin: 0; overflow: visible !important; white-space: normal;
  line-height: 1.8 !important; word-wrap: break-word; box-sizing: border-box;
}
.home-content.content-flow-home .flow-section h2.live-text, .home-content.content-flow-home .flow-section h2 { margin: 0 0 20px !important; line-height: 1.35 !important; }
.home-content.content-flow-home .flow-section > h2, .home-content.content-flow-home .flow-section > p { text-align: center; }
.home-content.content-flow-home .flow-section > p { max-width: 980px; margin: 0 auto 24px !important; }
.home-content.content-flow-home .flow-section h3.live-text, .home-content.content-flow-home .flow-section h3 { margin: 0 0 12px !important; line-height: 1.5 !important; }
.home-content.content-flow-home .flow-section p br { display: none; }
.home-content.content-flow-home .home-custom-grid, .home-content.content-flow-home .home-quality-grid, .home-content.content-flow-home .home-workflow-grid,
.home-content.content-flow-home .home-application-grid { display: flex; flex-wrap: wrap; align-items: stretch; margin: 36px -12px 0; }
.home-content.content-flow-home .home-custom-card { display: block; flex: 1 1 40%; min-width: 0; margin: 0 12px 24px; padding: 40px 46px; border-radius: 24px; background: #fff; box-sizing: border-box; text-align: left; }
.home-content.content-flow-home #custom .custom-card-backdrop { display: none; }
.home-content.content-flow-home #custom .home-custom-icon { position: static; width: 96px; height: 96px; margin: 0 0 24px; }
.home-content.content-flow-home #custom .custom-service-action { position: static !important; width: auto !important; height: auto !important; min-height: 52px; min-width: 0; margin: 20px auto 0 !important; padding: 12px 30px; }
.home-content.content-flow-home .quality-intro, .home-content.content-flow-home .quality-card { position: relative; top: auto; right: auto; bottom: auto; left: auto; flex: 0 0 calc(25% - 24px); width: calc(25% - 24px); height: auto !important; min-height: 0; margin: 0 12px 24px; padding: 28px; box-sizing: border-box; }
.home-content.content-flow-home #quality .quality-intro { padding: 10px 12px 24px 0; color: #fff; }
.home-content.content-flow-home #quality .quality-intro h2, .home-content.content-flow-home #quality .quality-intro p { color: #fff; }
.home-content.content-flow-home #quality .quality-intro > p { margin-bottom: 16px !important; }
.home-content.content-flow-home .quality-card { border-radius: 18px; background: #fff; }
.home-content.content-flow-home .quality-card .quality-number { display: block; margin-bottom: 20px !important; color: #ee8301; font-size: 30px !important; line-height: 1 !important; }
.home-content.content-flow-home .quality-card h3 { color: #023b80; }
.home-content.content-flow-home .quality-card p { color: #555; }
.home-content.content-flow-home .home-workflow-step { display: block; flex: 1 1 calc(16.666667% - 24px); min-width: 0; margin: 0 12px 24px; box-sizing: border-box; text-align: left; }
.home-content.content-flow-home #process .home-workflow-icon { position: static; width: 74px; height: 74px; margin-bottom: 24px; }
.home-content.content-flow-home .home-workflow-step::before { display: none !important; }
.home-content.content-flow-home .application-card { position: relative; top: auto; right: auto; bottom: auto; left: auto; display: flex; flex-direction: column; flex: 1 1 calc(20% - 24px); min-width: 0; width: auto; height: auto !important; margin: 0 12px 24px; overflow: hidden; border-radius: 16px; background: #fff; box-sizing: border-box; }
.home-content.content-flow-home .application-photo { display: block; width: 100%; height: 320px; object-fit: cover; }
.home-content.content-flow-home .application-caption { position: relative !important; top: auto !important; right: auto !important; bottom: auto !important; left: auto !important; flex: 1; width: auto !important; height: auto !important; margin: -65px 12px 12px; padding: 22px 18px; border-radius: 6px; background: #fff; box-sizing: border-box; }
.home-content.content-flow-home .application-caption h3 { font-size: 20px; }
.home-content.content-flow-home #values { display: flex; flex-wrap: wrap; align-items: stretch; }
.home-content.content-flow-home #values > h2 { flex: 0 0 100%; width: 100% !important; }
.home-content.content-flow-home .home-value-list { display: block; flex: 1 1 44%; min-width: 0; margin-right: 5%; order: 1; }
.home-content.content-flow-home .value-item { position: relative; top: auto; right: auto; bottom: auto; left: auto; width: auto; height: auto !important; min-height: 0; margin: 0 0 25px; padding-left: 100px; box-sizing: border-box; }
.home-content.content-flow-home .value-icon { position: absolute; top: 0; left: 0; width: 76px; height: 76px; }
.home-content.content-flow-home .values-visual { position: relative; top: auto; right: auto; bottom: auto; left: auto; flex: 1 1 44%; min-width: 0; width: auto; height: auto !important; margin: 0; order: 2; }
.home-content.content-flow-home .values-photo-frame { position: relative; width: 100%; height: 100%; min-height: 420px; margin: 0; overflow: hidden; border-radius: 18px; }
.home-content.content-flow-home .values-photo-frame img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.home-content.content-flow-home .values-caption { position: relative; top: auto; right: -10%; bottom: 20%; left: auto; width: 65%; height: auto; margin: -110px 0 24px auto; padding: 22px; border-radius:12px; box-sizing: border-box; }
.home-content.content-flow-home #supplier .supplier-content { position: relative; top: auto; right: auto; bottom: auto; left: auto; }
.home-content.content-flow-home #supplier .supplier-content h2, .home-content.content-flow-home #supplier .supplier-content p { text-align: center; }
.home-content.content-flow-home #supplier .supplier-content p { margin: 20px auto !important; max-width: 1100px; }
.home-content.content-flow-home #supplier .supplier-actions { position: static; width: auto; height: auto; margin: 30px 0 0; flex-wrap: wrap; }
.home-content.content-flow-home #supplier .supplier-action { width: auto; height: auto; min-height: 50px; margin: 6px; padding: 12px 26px; white-space: normal; text-align: center; }
.home-content.content-flow-home #faq .faq-columns { width: 100%; margin: 30px 0 0; grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-flow: row; grid-template-rows: none; gap: 24px; }
.home-content.content-flow-home #faq .faq-accordion summary { height: auto; min-height: 60px; padding: 18px 24px; font-size: 18px !important; line-height: 1.7 !important; box-sizing: border-box; }
.home-content.content-flow-home #faq .faq-answer { padding: 0 24px 24px; background: #fff; }
.home-content.content-flow-home #faq .faq-answer p { font-size: 16px !important; line-height: 1.8 !important; }
.home-content.content-flow-home #contact { display: flex; flex-wrap: wrap; align-items: flex-start; }
.home-content.content-flow-home #contact > .psd-layer-24, .home-content.content-flow-home #contact > .psd-layer-25 { flex: 0 0 100%; width: 100% !important; max-width: 100%; position: relative !important; z-index: 1; }
.home-content.content-flow-home .flow-contact-copy { position: relative; z-index: 1; flex: 1 1 40%; min-width: 0; padding-right: 6%; box-sizing: border-box; }
.home-content.content-flow-home .flow-contact-copy > p { margin-bottom: 24px !important; }
.home-content.content-flow-home .flow-contact-copy .psd-layer-28 br { display: block; }
.home-content.content-flow-home #contact .home-quote-form { position: relative !important; top: auto !important; right: auto !important; bottom: auto !important; left: auto !important; display: flex !important; flex-wrap: wrap; flex: 1 1 48%; min-width: 0; width: auto !important; height: auto !important; margin: 0; padding: 0; gap: 0; box-sizing: border-box; }
.home-content.content-flow-home #contact .home-quote-form input:not([type="hidden"]), .home-content.content-flow-home #contact .home-quote-form select, .home-content.content-flow-home #contact .home-quote-form textarea { position: static !important; top: auto !important; right: auto !important; bottom: auto !important; left: auto !important; flex: 1 1 calc(50% - 16px); width: calc(50% - 16px) !important; min-width: 0; height: 48px !important; margin: 0 8px 16px !important; padding: 12px 14px !important; border-radius: 5px; font-size: 16px; line-height: 1.5; box-sizing: border-box; }
.home-content.content-flow-home #contact .home-quote-form textarea { flex-basis: calc(100% - 16px); width: calc(100% - 16px) !important; min-height: 150px; resize: vertical; }
.home-content.content-flow-home #contact .home-quote-form small, .home-content.content-flow-home #contact .home-quote-form .cms-captcha { position: static; flex: 0 0 calc(100% - 16px); width: calc(100% - 16px); height: auto; margin: 0 8px 16px; font-size: 14px; line-height: 1.6; }
.home-content.content-flow-home #contact .home-quote-form button { position: static; flex: 0 0 auto; width: auto; height: auto; min-height: 48px; margin: 0 8px 16px; padding: 12px 30px; background: #ee8301; color: #fff; border: 0; border-radius: 5px; font-size: 16px; }
.home-content.content-flow-home #contact input[type="hidden"] { display: none !important; }
.home-content.content-flow-home #contact .cms-captcha input { width: 160px !important; }
.home-content.content-flow-home #footer { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; grid-template-areas: "story-title contact-title social products-title" "story phone social products" "story email social products" "copyright copyright copyright copyright"; gap: 18px 48px; padding-top: 50px; padding-bottom: 24px; color: #fff; }
.home-content.content-flow-home #footer::after { display: none; }
.home-content.content-flow-home #footer .live-text { color: #fff; font-size: 15px; }
.home-content.content-flow-home #footer .psd-layer-35 { grid-area: story-title; }
.home-content.content-flow-home #footer .psd-layer-36 { grid-area: contact-title; }
.home-content.content-flow-home #footer .psd-layer-38 { grid-area: products-title; }
.home-content.content-flow-home #footer .psd-layer-44 { grid-area: story; }
.home-content.content-flow-home #footer .psd-layer-45 { grid-area: phone; }
.home-content.content-flow-home #footer .psd-layer-46 { grid-area: email; }
.home-content.content-flow-home #footer .psd-layer-48 { grid-area: products; }
.home-content.content-flow-home #footer .psd-layer-37 { display: block; grid-area: social; }
.home-content.content-flow-home #footer .psd-layer-32 { grid-area: copyright; margin-top: 24px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.18); text-align: center; font-size: 13px; }
.home-content.content-flow-home #footer .psd-layer-35, .home-content.content-flow-home #footer .psd-layer-36, .home-content.content-flow-home #footer .psd-layer-37, .home-content.content-flow-home #footer .psd-layer-38 { font-size: 18px; }
.home-content.content-flow-home #footer .psd-layer-35::before, .home-content.content-flow-home #footer .psd-layer-36::before, .home-content.content-flow-home #footer .psd-layer-37::before, .home-content.content-flow-home #footer .psd-layer-38::before, .home-content.content-flow-home #footer .psd-layer-45::before, .home-content.content-flow-home #footer .psd-layer-46::before { display: none; }
.home-content.content-flow-home #footer .psd-layer-37::after { content: ''; background-image: url(../images/footer-social-icons.png),url(../images/footer-youtube-icon.png); background-repeat: no-repeat; background-position: left top,right top; position: static; display: block; width: 217px; max-width: 100%; height: 40px; margin-top: 24px; background-size: 74.654378% 100%,17.050691% 90%; }
.home-content.content-flow-home #footer .psd-layer-45, .home-content.content-flow-home #footer .psd-layer-46 { padding-left: 28px; background-position: left 5px; background-size: 18px 18px; background-repeat: no-repeat; }
.home-content.content-flow-home #footer .psd-layer-45 { background-image: url(../images/footer-phone-icon.png); }
.home-content.content-flow-home #footer .psd-layer-46 { background-image: url(../images/footer-email-icon.png); }
@media (max-width: 1199px) {
  .home-content.content-flow-home .flow-section, .home-content.content-flow-home #footer { padding: 52px 5%; }
  .home-content.content-flow-home .quality-intro, .home-content.content-flow-home .quality-card { flex-basis: calc(50% - 24px); width: calc(50% - 24px); }
  .home-content.content-flow-home .home-workflow-step { flex-basis: calc(33.333333% - 24px); }
  .home-content.content-flow-home .application-card { flex-basis: calc(33.333333% - 24px); }
  .home-content.content-flow-home #values { display: flex; }
  .home-content.content-flow-home .home-custom-grid, .home-content.content-flow-home .home-quality-grid, .home-content.content-flow-home .home-workflow-grid, .home-content.content-flow-home .home-application-grid { display: flex; gap: 0; }
  .home-content.content-flow-home #custom .home-custom-card { display: block; padding: 28px; }
  .home-content.content-flow-home #custom .home-custom-icon { width: 72px; height: 72px; }
  .home-content.content-flow-home #footer { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-areas: "story-title products-title" "story products" "contact-title social" "phone social" "email social" "copyright copyright"; gap: 18px 30px; }
}
@media (max-width: 767px) {
  .home-content.content-flow-home .flow-section, .home-content.content-flow-home #footer { padding: 40px 20px; }
  .home-content.content-flow-home .home-custom-card, .home-content.content-flow-home .application-card { flex-basis: calc(100% - 24px); }
  .home-content.content-flow-home .home-workflow-step { flex-basis: calc(50% - 24px); }
  .home-content.content-flow-home .quality-intro, .home-content.content-flow-home .quality-card { flex-basis: calc(100% - 24px); width: calc(100% - 24px); }
  .home-content.content-flow-home .home-value-list, .home-content.content-flow-home .values-visual { flex-basis: 100%; width: 100%; margin-right: 0; }
  .home-content.content-flow-home .values-visual { margin-top: 24px; }
  .home-content.content-flow-home .value-item { padding-left: 76px; }
  .home-content.content-flow-home .value-icon { width: 56px; height: 56px; }
  .home-content.content-flow-home #faq .faq-columns { grid-template-columns: 1fr; }
  .home-content.content-flow-home .flow-contact-copy, .home-content.content-flow-home #contact .home-quote-form { flex-basis: 100%; padding-right: 0; }
  .home-content.content-flow-home #contact .home-quote-form { margin-top: 20px; }
  .home-content.content-flow-home #footer { grid-template-columns: 1fr; grid-template-areas: "story-title" "story" "products-title" "products" "contact-title" "phone" "email" "social" "copyright"; }
}
@media (max-width: 479px) {
  .home-content.content-flow-home .home-workflow-step { flex-basis: calc(100% - 24px); }
  .home-content.content-flow-home #contact .home-quote-form input:not([type="hidden"]), .home-content.content-flow-home #contact .home-quote-form select { flex-basis: calc(100% - 16px); width: calc(100% - 16px) !important; }
}
