{"id":39883,"date":"2025-11-26T07:46:27","date_gmt":"2025-11-25T23:46:27","guid":{"rendered":"https:\/\/smartairfilters.com\/?page_id=39883"},"modified":"2025-12-31T21:26:36","modified_gmt":"2025-12-31T13:26:36","slug":"contact-smart-air","status":"publish","type":"page","link":"https:\/\/smartairfilters.com\/en\/contact-smart-air\/","title":{"rendered":"Contact Smart Air"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"39883\" class=\"elementor elementor-39883\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1d818bc7 e-con-full banner-clouds e-flex elementor-invisible e-con e-parent\" data-id=\"1d818bc7\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-752c8837 newh1-banner elementor-widget elementor-widget-heading\" data-id=\"752c8837\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Contact Smart Air<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-63e8a97f elementor-widget__width-initial newh2-banner elementor-widget elementor-widget-heading\" data-id=\"63e8a97f\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Reach out to learn more about our clean air solutions and support<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-474cf27f e-con-full e-flex e-con e-parent\" data-id=\"474cf27f\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-410398c5 elementor-widget__width-initial new-subheader elementor-hidden-mobile elementor-widget elementor-widget-heading\" data-id=\"410398c5\" data-element_type=\"widget\" data-settings=\"{&quot;_animation_mobile&quot;:&quot;fadeInDown&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Connect with Us<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a595041 e-con-full e-flex e-con e-child\" data-id=\"a595041\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-92be962 elementor-widget__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"92be962\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tReach out to Smart Air\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a8f6bf3 elementor-widget__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"a8f6bf3\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tFrom bustling cities to quiet towns, our team is here to assist you with any questions or needs. We\u2019re dedicated to supporting you in creating a healthier environment with our clean air solutions\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1331245 elementor-widget elementor-widget-html\" data-id=\"1331245\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script type=\"text\/javascript\" src=\"https:\/\/mailing.smartairfilters.com\/form\/generate.js?id=40\"><\/script>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function () {\n    var message = document.getElementById('mauticform_contactusform_message');\n    var submitWrapper = document.getElementById('mauticform_contactusform_submit');\n\n    if (message && submitWrapper) {\n        submitWrapper.parentNode.insertBefore(message, submitWrapper);\n    }\n});\n<\/script>\n\n\n<style>\n\n\n.e-con.e-con>.e-con-inner>.elementor-widget, .elementor.elementor .e-con>.elementor-widget{\n    max-width:inherit !important;\n}\n\n\/* Two-column grid *\/\n#mauticform_wrapper_contactusform .mauticform-page-wrapper {\n  display: grid !important;\n  grid-template-columns: 1fr 1fr;\n  gap: 30px 40px;\nfont-family: 'Inter', sans-serif; \n\n}\n\n\/* Labels *\/\n#mauticform_wrapper_contactusform .mauticform-label {\n  display: block;\n  font-size: 15px;\n  font-weight: 600;\n  margin-bottom: 40px;\n  color: #333;\n}\n\n\/* Inputs *\/\n#mauticform_wrapper_contactusform .mauticform-input {\n  width: 285px !important;\n  padding: 18px 15px;\n  border: 1px solid transparent;\n  border-radius: 8px;\n  font-size: 14px;\n  box-sizing: border-box;\n  background: #fff;\n}\n.mauticform-helpmessage{\n    display:none !important;\n}\n\/* Submit button centered *\/\n#mauticform_wrapper_contactusform .mauticform-button-wrapper {\n  grid-column: span 2; \/* center button across both columns *\/\n  text-align: center;\n}\n\n#mauticform_wrapper_contactusform .mauticform-button {\n margin-top: 20px;\n  background: #bfbfbf;\n  border: none;\n  padding: 10px 30px;\n  border-radius: 20px;\n  font-size: 14px;\n  cursor: pointer;\n  transition: background 0.3s;\n  width:150px;\n}\n\n#mauticform_wrapper_contactusform .mauticform-button:hover {\n  background: #999;\n  color: #fff;\n}\n\n#mauticform_contactusform_f_message {\n  grid-column: span 2;\n  border-radius: 9px !important;\n  height: 200px;\n}\n\n\/* Full-width Mautic success message *\/\n#mauticform_contactusform_message {\n    width: 100%;\n    display: block;\n    box-sizing: border-box;\n grid-column: 1 \/ -1; \n   text-align: center; \n    color:#A7D7C5; \n    \n    padding: 16px 20px;\n    margin-bottom: 20px;\n\n    border-radius: 4px;\n    font-weight: 500;\n}\n\n\/* Ensure it is not constrained by row styling *\/\n#mauticform_contactusform_message.mauticform-message {\n    max-width: 100% !important;\n}\n\n\n\n\n@media (max-width: 768px) { #mauticform_wrapper_contactusform .mauticform-page-wrapper {\n    display: block !important;\n    grid-template-columns: 1fr; gap: 20px; \n    \n} \n\n.mauticform-row{\n    margin-bottom:65px;\n    text-align-last: center;\n\n    \n} \n    \n}\n\n<\/style>\n\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1e2246d1 e-con-full e-flex elementor-invisible e-con e-parent\" data-id=\"1e2246d1\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;,&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6e3371d1 elementor-widget__width-initial new-subheader elementor-widget elementor-widget-heading\" data-id=\"6e3371d1\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Call Us<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-16fd04d elementor-widget__width-initial new-subheader elementor-widget elementor-widget-heading\" data-id=\"16fd04d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Telephone: (+86) (010) 8447 6121<BR>\nMobile: (+86) 138 1027 2652<BR>\n<BR>\n\n\n\nMon to Fri, 10 AM \u2013 6 PM<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-452ee02 elementor-widget__width-initial new-subheader elementor-widget elementor-widget-heading\" data-id=\"452ee02\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">Head Office Address<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2bf1aef elementor-widget__width-initial new-subheader elementor-widget elementor-widget-heading\" data-id=\"2bf1aef\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p class=\"elementor-heading-title elementor-size-default\">901-B, Huapu Huayuan, 9 Dongzhimen Nan Da Jie,<br>\nDongcheng District, 100007<br>\nBeijing, China<\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9d00b5 elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"c9d00b5\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"512\" src=\"https:\/\/smartairfilters.com\/wordpress\/wp-content\/uploads\/2025\/12\/SCAQMD-South-Coast-Air-Quality-Management-District-11-2-1024x512.png\" class=\"attachment-large size-large wp-image-39995\" alt=\"\" srcset=\"https:\/\/smartairfilters.com\/wordpress\/wp-content\/uploads\/2025\/12\/SCAQMD-South-Coast-Air-Quality-Management-District-11-2-1024x512.png 1024w, https:\/\/smartairfilters.com\/wordpress\/wp-content\/uploads\/2025\/12\/SCAQMD-South-Coast-Air-Quality-Management-District-11-2-600x300.png 600w, https:\/\/smartairfilters.com\/wordpress\/wp-content\/uploads\/2025\/12\/SCAQMD-South-Coast-Air-Quality-Management-District-11-2-300x150.png 300w, https:\/\/smartairfilters.com\/wordpress\/wp-content\/uploads\/2025\/12\/SCAQMD-South-Coast-Air-Quality-Management-District-11-2-768x384.png 768w, https:\/\/smartairfilters.com\/wordpress\/wp-content\/uploads\/2025\/12\/SCAQMD-South-Coast-Air-Quality-Management-District-11-2.png 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fc8a53b elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"fc8a53b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Media &amp; Press Enquiries<\/p><p><a href=\"mailto:media@smartairfilters.com\">media@smartairfilters.com<\/a><\/p><p>Partnership &amp; Distribution Enquiries<\/p><p><a href=\"https:\/\/smartairfilters.com\/cn\/distribute-smart-air-global-partners\/\">Distributor Contact Form<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-369b79f0 e-con-full quick-links-homepage e-flex e-con e-parent\" data-id=\"369b79f0\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-39716a15 elementor-widget__width-initial new-subheader elementor-widget elementor-widget-heading\" data-id=\"39716a15\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Quick Links<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2b8dabe9 e-grid e-con-boxed e-con e-child\" data-id=\"2b8dabe9\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6e4be7ce elementor-align-justify elementor-widget__width-inherit elementor-widget elementor-widget-button\" data-id=\"6e4be7ce\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/smartairfilters.com\/en\/volunteer-at-smart-air\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Join Volunteers<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-59e45828 elementor-align-justify elementor-widget__width-inherit elementor-widget elementor-widget-button\" data-id=\"59e45828\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/smartairfilters.com\/en\/about\/our-impact\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Our Impact<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2943fc3e e-con-full scroll-bg e-flex e-con e-parent\" data-id=\"2943fc3e\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2cfe23bb e-flex e-con-boxed e-con e-parent\" data-id=\"2cfe23bb\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-78c11a03 elementor-widget elementor-widget-html\" data-id=\"78c11a03\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n .homepage-textgradient {\r\n  background: linear-gradient(\r\n    175deg,\r\n    #8CA6DB 0%,\r\n    #8CA6DB 40%,\r\n    #111111 70%,\r\n    #333333 100%\r\n  );\r\n  -webkit-background-clip: text;\r\n  -webkit-text-fill-color: transparent;\r\n  display: inline-block;\r\n}\r\n\r\n\r\n.scroll-bg {\r\n  \r\n  background-repeat: repeat-x;\r\n  background-position: 0 0;\r\n  background-size: cover; \/* or contain, depending on your image *\/\r\n  animation: scrollBackground 30s linear infinite;\r\n  height: 300px; \/* adjust as needed *\/\r\n  width: 100%;\r\n}\r\n\r\n\/* Animation keyframes *\/\r\n@keyframes scrollBackground {\r\n  0% {\r\n    background-position: 0 0;\r\n  }\r\n  100% {\r\n    background-position: -1000px 0; \r\n  }\r\n}\r\n\r\n#homepage-tab1,\r\n#homepage-tab2,\r\n#homepage-tab3 {\r\n  border: none;\r\n \r\n  padding: 5px 40px;\r\n  border-radius: 30px;\r\n  font-size: 16px;\r\n  cursor: pointer;\r\n  transition: background 0.3s, color 0.3s;\r\n  color: black;\r\n}\r\n\r\n\/* Active tab style *\/\r\n#homepage-tab1[aria-selected=\"true\"],\r\n#homepage-tab2[aria-selected=\"true\"],\r\n#homepage-tab3[aria-selected=\"true\"] {\r\n  background-color: #5dade2; \r\n  color: white;\r\n}\r\n.e-n-tabs-heading {\r\n  display: flex;\r\n  background-color: #e0e0e0; \r\n  padding: 0px;\r\n  border-radius: 30px;\r\n  width: fit-content;\r\n}\r\n.homepage-cards-singlecard{\r\n    height:200px;\r\n}\r\n.homepage-hoverclass {\r\n  position: relative; \/* Needed for ::before to align properly *\/\r\n  background-repeat: no-repeat !important;\r\n  background-position: bottom center !important;\r\n  transition: background-size 1.3s ease !important;\r\n  will-change: background-size;\r\n  overflow: hidden; \/* Optional: hide any overflows *\/\r\n}\r\n\r\n.homepage-hoverclass.zoom-small,.homepage-hoverclass.zoom-small-3{\r\n    justify-self: self-end !important;\r\n}\r\n\/* Zoom on hover *\/\r\n.zoom-small {\r\n  background-size: 100% !important;\r\n  transition: background-size 0.4s ease-in-out;\r\n  background-position: center 10px !important;\r\n  background-repeat: no-repeat;\r\n  \r\n}\r\n\r\n\r\n\r\n.homepage-hoverclass.zoom-small, .homepage-hoverclass.zoom-large,.homepage-hoverclass.zoom-large-4{\r\n    height:413px !important;\r\n}\r\n\r\n@media (min-width: 768px) {.banner-clouds {\r\n  position: relative;\r\n}\r\n.zoom-small:hover {\r\n  background-size: 103% !important;\r\n   background-position: center 10px !important;\r\n}\r\n.zoom-small-3 {\r\n  background-size: 100% auto !important;\r\n}\r\n.zoom-small-3:hover {\r\n  background-size: 105% auto !important;\r\n}\r\n.zoom-large {\r\n  background-size: 110% auto !important;\r\n}\r\n.zoom-large:hover {\r\n  background-size: 115% auto !important;\r\n}\r\n.zoom-large-4{\r\n  background-size: 103% auto !important;\r\n}\r\n.zoom-large-4:hover {\r\n  background-size: 108% auto !important;\r\n}\r\n\r\n.fixed-b-corp {\r\n  transition: opacity 0.4s ease;\r\n  opacity: 1;\r\n}\r\n.fixed-b-corp.fade-out {\r\n  opacity: 0;\r\n  pointer-events: none; \/* optional, disables hover\/click when invisible *\/\r\n}\r\n\r\n.fixed-b-corp {\r\n  position: absolute;\r\n  bottom: 20px;\r\n  right: 20px;\r\n  z-index: 999;\r\n  transition: none;\r\n}\r\n\r\n.fixed-b-corp.sticking {\r\n  position: fixed !important;\r\n  bottom: 20px;\r\n  right: 20px;\r\n}\r\n\r\n.fixed-b-corp.stopped {\r\n  position: absolute !important;\r\n  bottom: unset !important;\r\n  top: auto !important;\r\n}\r\n}\r\n\r\n\r\n@media (max-width: 768px) {\r\n \r\n .elementor-widget-container{\r\n     text-wrap-mode: wrap; \r\n }\r\n\/* .horiz-scrol-homepage-mobile {\r\n  overflow-x: auto;\r\n  -webkit-overflow-scrolling: touch; \/* enables momentum scroll & dots on iOS \r\n  white-space: nowrap;\r\n}*\/\r\n\r\n\r\n\/* Container should behave normally *\/\r\n\/*.elementor-element-7c63c65 {\r\n  display: block !important;\r\n  overflow: hidden;\r\n}\r\n\r\n\r\n.elementor-element-1ad7031 {\r\n  float: right;\r\n}\r\n\r\n\r\n.elementor-element-958df5e {\r\n  float: left;\r\n}\r\n\r\n\r\n.elementor-button {\r\n  width: auto !important;\r\n  padding: 10px 20px;\r\n  white-space: nowrap;\r\n}*\/\r\n\r\n  .homepage-hoverclass{\r\n      box-shadow:none !important;\r\n  }\r\n  .scroll-left.disabled,\r\n.scroll-right.disabled {\r\n  opacity: 0.3;\r\n  pointer-events: none;\r\n}\r\n\r\n  .scroll-arrows {\r\n    display: none;\r\n    justify-content: center;\r\n    gap: 20px;\r\n    margin: 10px 0;\r\n  }\r\n\r\n  .scroll-arrows img {\r\n      \r\n    width: 24px;\r\n    height: 24px;\r\n    cursor: pointer;\r\n    transition: transform 0.2s ease;\r\n  }\r\n\r\n  .scroll-arrows img:hover {\r\n    transform: scale(1.1);\r\n  }\r\n\r\n  .horiz-scrol-homepage-mobile {\r\n    display: flex;\r\n    overflow-x: auto;\r\n    scroll-snap-type: x mandatory;\r\n    -webkit-overflow-scrolling: touch;\r\n    scroll-behavior: smooth;\r\n    gap: 20px;\r\n    width: 100%;\r\n     -ms-overflow-style: none;  \/* IE and Edge *\/\r\n  scrollbar-width: none;     \/* Firefox *\/\r\n  }\r\n.horiz-scrol-homepage-mobile::-webkit-scrollbar {\r\n  display: none;             \/* Chrome, Safari, Opera *\/\r\n}\r\n  .horiz-scrol-homepage-mobile > .e-con {\r\n    flex: 0 0 100%;\r\n    scroll-snap-align: center;\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .scroll-dots {\r\n    display: flex;\r\n    justify-content: center;\r\n    gap: 8px;\r\n    margin-top: 10px;\r\n  }\r\n\r\n  .scroll-dots .dot {\r\n    width: 5px;\r\n    height: 5px;\r\n    background: #ccc;\r\n    border-radius: 50%;\r\n    cursor: pointer;\r\n    transition: background 0.3s;\r\n  }\r\n\r\n  .scroll-dots .dot.active {\r\n    background: #333;\r\n  }\r\n  \/* === Generic Button Container Centering === *\/\r\n.homepage-button-group-mobile {\r\n  display: flex !important;\r\n  justify-content: center !important;\r\n  align-items: center;\r\n  \/\/gap: 16px; \/* spacing between buttons *\/\r\n  row-gap:10px;\r\n  flex-wrap: wrap;\r\n  text-align: center;\r\n}\r\n\r\n\/* === Button Styling for all groups === *\/\r\n\/*.homepage-button-single-mobile {\r\n  width: auto !important;\r\n  min-width: auto !important;\r\n  padding: 10px 20px;\r\n  display: inline-flex;\r\n  justify-content: center;\r\n  align-items: center;\r\n  border-radius: 100px; \/* keeps pill shape *\/\r\n}*\/\r\n\r\n\/* Ensure button wrappers don\u2019t interfere *\/\r\n.elementor-button-wrapper {\r\n  display: inline-flex !important;\r\n}\r\n.site-content{\r\n        overflow-x: hidden;\r\n\r\n}\r\n}\r\n\r\n\r\n<\/style>\r\n\r\n<script>\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n    if (window.innerWidth >= 768) return;\r\n  const scrollSections = document.querySelectorAll(\".scroll-block-homepage-1, .scroll-block-homepage-2\");\r\n\r\n  scrollSections.forEach(section => {\r\n    const scrollWrapper = section.querySelector(\".horiz-scrol-homepage-mobile\");\r\n    const dotsContainer = section.querySelector(\".scroll-dots\");\r\n    const leftArrow = section.querySelector(\".scroll-left\");\r\n    const rightArrow = section.querySelector(\".scroll-right\");\r\n\r\n    if (!scrollWrapper || !leftArrow || !rightArrow || !dotsContainer) return;\r\n\r\n    const cards = Array.from(scrollWrapper.children).filter(el => el.classList.contains(\"e-con\"));\r\n    const scrollStep = scrollWrapper.offsetWidth;\r\n\r\n    \/\/ Create dots\r\n    dotsContainer.innerHTML = \"\";\r\n    cards.forEach((_, i) => {\r\n      const dot = document.createElement(\"span\");\r\n      dot.classList.add(\"dot\");\r\n      if (i === 0) dot.classList.add(\"active\");\r\n      dot.addEventListener(\"click\", () => {\r\n        scrollWrapper.scrollTo({ left: scrollStep * i, behavior: \"smooth\" });\r\n      });\r\n      dotsContainer.appendChild(dot);\r\n    });\r\n\r\n    \/\/ Sync dot and arrows\r\n    function updateState() {\r\n      const scrollLeft = scrollWrapper.scrollLeft;\r\n      const maxScrollLeft = scrollWrapper.scrollWidth - scrollWrapper.clientWidth;\r\n      const index = Math.round(scrollLeft \/ scrollStep);\r\n\r\n      \/\/ Highlight active dot\r\n      dotsContainer.querySelectorAll(\".dot\").forEach((dot, i) => {\r\n        dot.classList.toggle(\"active\", i === index);\r\n      });\r\n\r\n      \/\/ Enable\/disable arrows\r\n      if (scrollLeft <= 0) {\r\n        leftArrow.classList.add(\"disabled\");\r\n      } else {\r\n        leftArrow.classList.remove(\"disabled\");\r\n      }\r\n\r\n      if (scrollLeft >= maxScrollLeft - 1) {\r\n        rightArrow.classList.add(\"disabled\");\r\n      } else {\r\n        rightArrow.classList.remove(\"disabled\");\r\n      }\r\n    }\r\n\r\n    scrollWrapper.addEventListener(\"scroll\", updateState);\r\n\r\n    leftArrow.addEventListener(\"click\", () => {\r\n      scrollWrapper.scrollBy({ left: -scrollStep, behavior: \"smooth\" });\r\n    });\r\n\r\n    rightArrow.addEventListener(\"click\", () => {\r\n      scrollWrapper.scrollBy({ left: scrollStep, behavior: \"smooth\" });\r\n    });\r\n\r\n    \/\/ Initial state\r\n    updateState();\r\n  });\r\n});\r\n<\/script>\r\n\r\n<script>\/*\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n  const sticky = document.querySelector(\".fixed-b-corp\");\r\n  const banner = document.querySelector(\".banner-clouds\");\r\n  const stopTarget = document.querySelector(\".quick-links-homepage\");\r\n\r\n  if (!sticky || !banner || !stopTarget) return;\r\n\r\n  const bottomOffset = 20; \/\/ px from bottom of viewport\r\n  const rightOffset = 20;\r\n\r\n  function updatePosition() {\r\n    const scrollY = window.scrollY;\r\n    const viewportHeight = window.innerHeight;\r\n    const stickyHeight = sticky.offsetHeight;\r\n\r\n    const bannerTop = banner.offsetTop;\r\n    const bannerBottom = bannerTop + banner.offsetHeight;\r\n\r\n    const stopTop = stopTarget.offsetTop;\r\n    const stopHeight = stopTarget.offsetHeight;\r\n    const stopBottom = stopTop + stopHeight;\r\n\r\n    const stickyBottomIfFixed = scrollY + viewportHeight - bottomOffset;\r\n\r\n    \/\/ Case 1: Still in banner \u2014 start position\r\n    if (scrollY + viewportHeight < bannerBottom + stickyHeight) {\r\n      sticky.style.position = \"absolute\";\r\n      sticky.style.bottom = `${bottomOffset}px`;\r\n      sticky.style.top = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n    \/\/ Case 2: Sticky bottom would pass stop section's end \u2014 pin it at the bottom of stop section\r\n    else if (stickyBottomIfFixed >= stopBottom) {\r\n      sticky.style.position = \"absolute\";\r\n      sticky.style.top = `${stopBottom - stickyHeight - bannerTop - bottomOffset}px`;\r\n      sticky.style.bottom = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n    \/\/ Case 3: Normal scroll \u2014 fixed to screen\r\n    else {\r\n      sticky.style.position = \"fixed\";\r\n      sticky.style.bottom = `${bottomOffset}px`;\r\n      sticky.style.top = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n  }\r\n\r\n  window.addEventListener(\"scroll\", updatePosition);\r\n  window.addEventListener(\"resize\", updatePosition);\r\n  updatePosition();\r\n});\r\n*\/\r\n\r\n\/*document.addEventListener(\"DOMContentLoaded\", function () {\r\n  const sticky = document.querySelector(\".fixed-b-corp\");\r\n  const banner = document.querySelector(\".banner-clouds\");\r\n  const stopTarget = document.querySelector(\".quick-links-homepage\");\r\n\r\n  if (!sticky || !banner || !stopTarget) return;\r\n\r\n  const bottomOffset = 20; \/\/ distance from bottom of screen when fixed\r\n  const rightOffset = 20;  \/\/ distance from right of screen\r\n  const fadeOutDistance = 200; \/\/ fade-out starts this many px before stop section ends\r\n\r\n  function updatePosition() {\r\n    const scrollY = window.scrollY;\r\n    const viewportHeight = window.innerHeight;\r\n    const stickyHeight = sticky.offsetHeight;\r\n\r\n    const bannerTop = banner.offsetTop;\r\n    const bannerBottom = bannerTop + banner.offsetHeight;\r\n\r\n    const stopTop = stopTarget.offsetTop;\r\n    const stopBottom = stopTop + stopTarget.offsetHeight;\r\n\r\n    const stickyBottomIfFixed = scrollY + viewportHeight - bottomOffset;\r\n\r\n    \/\/ 1. If still within banner \u2014 absolute positioning\r\n    if (scrollY + viewportHeight < bannerBottom + stickyHeight) {\r\n      sticky.style.position = \"absolute\";\r\n      sticky.style.bottom = `${bottomOffset}px`;\r\n      sticky.style.top = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n    \/\/ 2. Scrolling normally \u2014 fixed position\r\n    else {\r\n      sticky.style.position = \"fixed\";\r\n      sticky.style.bottom = `${bottomOffset}px`;\r\n      sticky.style.top = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n\r\n    \/\/ 3. Fade out as we near the bottom of stopTarget\r\n    const fadeOutStart = stopBottom - fadeOutDistance;\r\n    const fadeOutEnd = stopBottom;\r\n\r\n    if (stickyBottomIfFixed >= fadeOutStart) {\r\n      const progress = Math.min(1, (stickyBottomIfFixed - fadeOutStart) \/ (fadeOutEnd - fadeOutStart));\r\n      sticky.style.opacity = `${1 - progress}`;\r\n      sticky.style.pointerEvents = 'none'; \/\/ optional: disables clicks while fading\r\n    } else {\r\n      sticky.style.opacity = \"1\";\r\n      sticky.style.pointerEvents = 'auto';\r\n    }\r\n  }\r\n\r\n  window.addEventListener(\"scroll\", updatePosition);\r\n  window.addEventListener(\"resize\", updatePosition);\r\n  updatePosition(); \/\/ run on load\r\n});*\/\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n  if (window.innerWidth < 768) return; \/\/ <-- prevent running on mobile\r\n\r\n  const sticky = document.querySelector(\".fixed-b-corp\");\r\n  const banner = document.querySelector(\".banner-clouds\");\r\n  const stopTarget = document.querySelector(\".quick-links-homepage\");\r\n\r\n  if (!sticky || !banner || !stopTarget) return;\r\n\r\n  const bottomOffset = 20; \/\/ distance from bottom of screen when fixed\r\n  const rightOffset = 20;\r\n  const fadeOutDistance = 200; \/\/ fade-out starts this many px before stop section ends\r\n\r\n  function updatePosition() {\r\n    const scrollY = window.scrollY;\r\n    const viewportHeight = window.innerHeight;\r\n    const stickyHeight = sticky.offsetHeight;\r\n\r\n    const bannerTop = banner.offsetTop;\r\n    const bannerBottom = bannerTop + banner.offsetHeight;\r\n\r\n    const stopTop = stopTarget.offsetTop;\r\n    const stopBottom = stopTop + stopTarget.offsetHeight;\r\n\r\n    const stickyBottomIfFixed = scrollY + viewportHeight - bottomOffset;\r\n\r\n    \/\/ Case 1: Still within banner\r\n    if (scrollY + viewportHeight < bannerBottom + stickyHeight) {\r\n      sticky.style.position = \"absolute\";\r\n      sticky.style.bottom = `${bottomOffset}px`;\r\n      sticky.style.top = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n    \/\/ Case 2: Normal scroll\r\n    else {\r\n      sticky.style.position = \"fixed\";\r\n      sticky.style.bottom = `${bottomOffset}px`;\r\n      sticky.style.top = \"auto\";\r\n      sticky.style.right = `${rightOffset}px`;\r\n    }\r\n\r\n    \/\/ Case 3: Fade out near stop section\r\n    const fadeOutStart = stopBottom - fadeOutDistance;\r\n    const fadeOutEnd = stopBottom;\r\n\r\n    if (stickyBottomIfFixed >= fadeOutStart) {\r\n      const progress = Math.min(1, (stickyBottomIfFixed - fadeOutStart) \/ (fadeOutEnd - fadeOutStart));\r\n      sticky.style.opacity = `${1 - progress}`;\r\n      sticky.style.pointerEvents = 'none';\r\n    } else {\r\n      sticky.style.opacity = \"1\";\r\n      sticky.style.pointerEvents = 'auto';\r\n    }\r\n  }\r\n\r\n  window.addEventListener(\"scroll\", updatePosition);\r\n  window.addEventListener(\"resize\", updatePosition);\r\n  updatePosition(); \/\/ Run on load\r\n});\r\n\r\n\r\n<\/script>\r\n\r\n\r\n\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Contact Smart Air Reach out to learn more about our clean air solutions and support Connect with Us Reach out to Smart AirFrom bustling cities to quiet towns, our team is here to assist you with any questions or needs. We\u2019re dedicated to supporting you in creating a healthier environment &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Contact Smart Air\" class=\"read-more button\" href=\"https:\/\/smartairfilters.com\/en\/contact-smart-air\/#more-39883\" aria-label=\"Read more about Contact Smart Air\">Read more<\/a><\/p>\n","protected":false},"author":11231,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"8420,11658,19596,38599,8058,5463","_relevanssi_noindex_reason":"","footnotes":""},"class_list":["post-39883","page","type-page","status-publish"],"acf":[],"_links":{"self":[{"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/pages\/39883","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/users\/11231"}],"replies":[{"embeddable":true,"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/comments?post=39883"}],"version-history":[{"count":122,"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/pages\/39883\/revisions"}],"predecessor-version":[{"id":40157,"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/pages\/39883\/revisions\/40157"}],"wp:attachment":[{"href":"https:\/\/smartairfilters.com\/en\/wp-json\/wp\/v2\/media?parent=39883"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}