/* Native Divi modules remain editable in the Theme Builder. */
.sw-header { position:relative; overflow:visible!important; }
#page-container .sw-header .sw-header-bar { width:calc(100% - 48px)!important; max-width:1160px!important; }
.sw-header-bar > .et_pb_column { margin:0!important; }
.sw-header-bar > .sw-header-actions { display:flex!important; align-items:center; gap:12px; }
.sw-header-actions .et_pb_code { margin:0!important; }
.sw-services-trigger, .sw-menu-close { appearance:none; font-family:inherit; cursor:pointer; }
.sw-services-trigger { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:10px 13px; border:1px solid #e6d6c5; border-radius:6px; background:#fff; color:#14213d; font-size:14px; line-height:20px; font-weight:700; white-space:nowrap; }
.sw-services-trigger svg { width:14px; height:14px; transition:transform .15s; }
.sw-services-trigger[aria-expanded="true"] { background:#fff6eb; border-color:#c66800; }
.sw-services-trigger[aria-expanded="true"] svg { transform:rotate(180deg); }
.sw-header a:focus-visible, .sw-header button:focus-visible, .sw-header summary:focus-visible, .sw-header [role="button"]:focus-visible { outline:3px solid #c66800!important; outline-offset:4px; border-radius:3px; }
#page-container .et-l--header .sw-services-panel { display:none!important; position:absolute!important; top:100%; left:50%; transform:translateX(-50%); width:calc(100% - 48px)!important; max-width:1160px!important; padding:0!important; margin:0!important; background:#fff; border:1px solid #eadfd2; border-top:3px solid #c66800; border-radius:0 0 12px 12px; box-shadow:0 20px 38px rgba(20,33,61,.16); z-index:1002; overflow-y:auto; max-height:var(--sw-menu-height,80vh); overscroll-behavior:contain; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0!important; text-align:left; }
#page-container .et-l--header .sw-services-panel.is-open { display:grid!important; }
#page-container .sw-services-panel > .et_pb_column { width:auto!important; max-width:none!important; margin:0!important; min-width:0; float:none; padding:22px 24px!important; }
#page-container .sw-services-panel > .sw-menu-toolbar, #page-container .sw-services-panel > .sw-menu-footer { grid-column:1 / -1; padding:16px 24px!important; }
.sw-services-panel .et_pb_text { margin:0!important; }
.sw-menu-toolbar { border-bottom:1px solid #ece6df; }
.sw-menu-toolbar .et_pb_text_inner { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.sw-menu-eyebrow { color:#8c4a00; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; line-height:1.5; display:block; }
.sw-menu-title { display:block; color:#14213d; font-size:19px; line-height:1.45; font-weight:700; }
.sw-menu-close { display:flex; gap:8px; align-items:center; padding:8px 10px; color:#465367; background:#fff; border:1px solid #eadfd2; border-radius:5px; font-size:13px; line-height:20px; }
.sw-menu-close span { font-size:22px; font-weight:400; }
.sw-menu-group + .sw-menu-group { border-left:1px solid #ece6df; }
.sw-menu-group details { margin:0; }
.sw-menu-group summary { list-style:none; color:#14213d; font-size:18px; font-weight:750; line-height:1.4; margin-bottom:15px; cursor:default; }
.sw-menu-group summary::-webkit-details-marker { display:none; }
.sw-menu-group summary small { display:block; font-size:12px; font-weight:400; line-height:1.6; color:#677567; margin-top:4px; }
.sw-menu-group ul { padding:0!important; list-style:none!important; margin:0!important; }
.sw-menu-group li { padding:0!important; margin:0 0 8px!important; }
.sw-menu-group li:last-child { margin-bottom:0!important; }
.sw-menu-group a.sw-service-card { display:block; padding:10px 12px; border:1px solid #ece6df; border-radius:7px; color:#14213d!important; line-height:1.45; transition:background .15s,border-color .15s; text-decoration:none; }
.sw-menu-group a.sw-service-card:hover { background:#fff8f0; border-color:#f49120; }
.sw-service-brand { display:flex; align-items:center; gap:10px; min-height:30px; margin-bottom:5px; }
.sw-service-brand img { display:block; max-width:112px; height:30px; width:auto; object-fit:contain; object-position:left center; }
.sw-service-card strong { display:block; font-size:14px; font-weight:700; }
.sw-service-card small { display:block; color:#546173; font-size:12px; line-height:1.5; margin-top:2px; }
.sw-menu-group.sw-compliance .sw-service-card { padding:9px 12px; }
.sw-menu-footer { background:#fff8f0; border-top:1px solid #ece6df; }
.sw-menu-footer .et_pb_text_inner { display:flex; align-items:center; justify-content:space-between; gap:16px; color:#546173; font-size:13px; }
.sw-menu-footer a { color:#8c4a00!important; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.sw-mobile-contact { display:none!important; }
@media (min-width:981px) and (max-width:1120px) {
 .sw-header-bar > .et_pb_column:first-child { flex-basis:155px!important; width:155px!important; }
 .sw-header-bar .et_pb_menu__menu > nav > ul > li { padding-left:7px; padding-right:7px; }
 .sw-header-bar > .sw-header-actions { gap:8px; }
}
@media (max-width:980px) {
 #page-container .sw-header .sw-header-bar { width:100%!important; padding:0 24px!important; }
 .sw-header-bar > .sw-header-nav { order:3; flex:0 0 34px!important; width:34px!important; }
 .sw-header-bar > .sw-header-actions { order:2; margin-left:auto!important; }
 .sw-header-bar > .et_pb_column:first-child { flex:0 0 150px!important; width:150px!important; }
 .sw-mobile-contact { display:block!important; }
 .sw-header .et_mobile_menu { max-height:75vh; overflow-y:auto; z-index:1003; }
 #page-container .sw-services-panel > .et_pb_column { padding:20px 16px!important; }
 .sw-menu-group summary { font-size:16px; }
 .sw-menu-group a.sw-service-card { padding:9px; }
}
@media (max-width:767px) {
 #page-container .sw-header .sw-header-bar { padding:0 16px!important; gap:10px!important; }
 .sw-header-bar > .et_pb_column:first-child { flex:0 0 110px!important; width:110px!important; }
 .sw-header-bar .et_pb_image img { max-width:110px; }
 .sw-header-actions .et_pb_button_module_wrapper { display:none!important; }
 .sw-services-trigger { padding:8px 10px; gap:6px; font-size:13px; }
 #page-container .et-l--header .sw-services-panel { width:calc(100% - 24px)!important; grid-template-columns:minmax(0,1fr); border-radius:0 0 10px 10px; }
 #page-container .sw-services-panel > .et_pb_column { padding:0 16px!important; }
 #page-container .sw-services-panel > .sw-menu-toolbar, #page-container .sw-services-panel > .sw-menu-footer { padding:12px 16px!important; }
 .sw-menu-title { font-size:17px; }
 .sw-menu-eyebrow { font-size:10px; }
 .sw-menu-group + .sw-menu-group { border-left:0; border-top:1px solid #ece6df; }
 .sw-menu-group summary { display:block; position:relative; cursor:pointer; padding:16px 25px 16px 0; margin:0; font-size:17px; }
 .sw-menu-group summary::after { content:'+'; position:absolute; right:0; top:19px; color:#c66800; font-size:22px; }
 .sw-menu-group details[open] summary::after { content:'−'; }
 .sw-menu-group details ul { padding-bottom:16px!important; }
 .sw-menu-group a.sw-service-card { padding:11px 12px; }
 .sw-menu-footer .et_pb_text_inner { align-items:flex-start; flex-direction:column; gap:5px; }
}
@media (prefers-reduced-motion:reduce) { .sw-header * { transition:none!important; scroll-behavior:auto!important; } }
/* Show all editable menu modules inside Divi's Visual Builder. */
body.et-fb #page-container .et-l--header .sw-services-panel { position:relative!important; display:grid!important; top:auto; left:auto; transform:none; margin:auto!important; max-height:none; }
/* CSS sticky positioning avoids Divi cloning interactive menu controls on scroll. */
#page-container .et-l--header { position:sticky; top:0; z-index:1000; }
body.admin-bar #page-container .et-l--header { top:32px; }
.sw-menu-footer .et_pb_text_inner > p { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; padding:0; }
@media(max-width:782px) { body.admin-bar #page-container .et-l--header { top:46px; } }
@media(max-width:767px) { .sw-menu-footer .et_pb_text_inner > p { flex-direction:column; align-items:flex-start; gap:8px; } }
body.et-fb #page-container .et-l--header { position:relative; top:auto; }

/* Smarter Warehouse's existing orange, navy and white identity. */
#page-container .sw-header .sw-header-bar{max-width:1160px!important;min-height:76px;padding:12px 0!important;gap:20px!important}
.sw-header-bar > .et_pb_column:first-child{flex:0 0 180px!important;width:180px!important}
.sw-header-bar > .sw-header-actions{flex:0 0 auto!important;width:auto!important;order:2}
.sw-header-bar > .sw-header-nav{flex:1 1 0!important;min-width:0;width:auto!important;order:3}
.sw-header .sw-header-bar .et_pb_menu__menu ul{flex-wrap:nowrap}
.sw-header .sw-header-bar .et_pb_menu__menu > nav > ul > li{padding-left:9px;padding-right:9px}
#page-container .sw-header .sw-contact-strip{width:100%!important;max-width:none!important;margin:0!important;padding:7px 24px!important;background:#202020;color:white}
#page-container .sw-contact-strip .et_pb_column{width:100%!important;margin:0!important}
.sw-contact-strip .et_pb_text{margin:0!important}
.sw-contact-links{display:flex;gap:24px;max-width:1160px;margin:auto;font-size:13px;line-height:20px;font-weight:600}
.sw-contact-links a{color:white!important}
.sw-contact-links p{padding:0;display:contents}
.sw-menu-footer-inner{display:flex;justify-content:space-between;gap:20px;width:100%}
.sw-header .sw-services-trigger{font-family:Montserrat,sans-serif}
#solutions,#about,#why-us,#features,#devices,#partner,#contact{scroll-margin-top:125px}
.sw-header-bar .et_pb_menu__menu .current-menu-item a{color:#14213d!important}
@media(max-width:1100px) and (min-width:981px){.sw-header .sw-header-bar .et_pb_menu__menu > nav > ul > li{padding-left:5px;padding-right:5px}.sw-header-bar .et_pb_menu a{font-size:13px!important}.sw-header-bar > .et_pb_column:first-child{flex-basis:150px!important;width:150px!important}}
@media(max-width:980px){#page-container .sw-header .sw-header-bar{padding:12px 24px!important}.sw-header-bar > .sw-header-actions{margin-left:auto!important}.sw-header-bar > .sw-header-nav{flex:0 0 34px!important;width:34px!important}.sw-header-bar,.sw-header-bar .et_pb_column{position:static!important}.sw-header .et_mobile_menu{top:100%!important}.sw-header .sw-header-bar .et_pb_menu{position:static!important}}
@media(max-width:767px){#page-container .sw-header .sw-header-bar{padding:10px 16px!important;gap:10px!important;min-height:66px}.sw-header-bar > .et_pb_column:first-child{flex:0 0 130px!important;width:130px!important}.sw-header-bar .et_pb_image img{max-width:130px}.sw-contact-links{justify-content:center;gap:10px;font-size:11px;flex-wrap:wrap}.sw-contact-strip{padding:5px 8px!important}.sw-menu-footer-inner{flex-direction:column;gap:5px}}

/* Home section links share a URL; avoid marking every section as the active page. */
#page-container .sw-header .et_pb_menu .et_pb_menu__menu .current-menu-item.menu-item-home a{color:#14213d!important}
#page-container .sw-header .et_pb_menu .et_pb_menu__menu a:hover{color:#c66800!important}
/* Preserve the responsive category archive grid when retiring the Divi 4 helper. */
body.category #main-content .container::before{display:none}
body.category #main-content #left-area{width:100%;padding-right:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 5.5%;box-sizing:border-box}
body.category #main-content #sidebar{display:none}
body.category #left-area .et_pb_post{width:auto;margin:0;padding:0;float:none;min-width:0}
body.category #left-area .pagination{grid-column:1 / -1}
@media(min-width:768px) and (max-width:980px){body.category #main-content #left-area{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){body.category #main-content #left-area{grid-template-columns:minmax(0,1fr)}}
/* Anchor targets on the Mobiledock page sit below the sticky navigation. */
#prorank-enquiry,#overview{scroll-margin-top:125px}
/* Divi 5 wraps buttons: retain the original 8px gap between floated hero actions. */
body.home .heroSection .et_pb_button_module_wrapper,
body.home .multiButtons .et_pb_button_module_wrapper{margin-right:8px!important}
