/* The comparison image, data and divider share one bounded canvas. */
body.modal-open{overflow:hidden}
.twin-console-panels{display:contents}
.comparison #compare-range{appearance:none;-webkit-appearance:none;inset:auto;left:-24px;top:calc(var(--handle-top,54%) - 24px);width:calc(100% + 48px);height:48px;margin:0;padding:0;opacity:0;background:transparent;pointer-events:none;touch-action:pan-y;z-index:9}
.comparison #compare-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:48px;height:48px;border:0;background:transparent;pointer-events:auto;touch-action:pan-y;cursor:ew-resize}
.comparison #compare-range::-moz-range-thumb{width:48px;height:48px;border:0;border-radius:50%;background:transparent;pointer-events:auto;touch-action:pan-y;cursor:ew-resize}
.comparison #compare-handle{pointer-events:none;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none;min-width:48px;min-height:48px}
.comparison:has(#compare-range:focus-visible) #compare-handle{outline:3px solid #fff;outline-offset:4px}
.comparison:has(#compare-range:focus-visible) .compare-divider[hidden]{display:block!important}
.twin-console-main>*{min-width:0}
.twin-console .inline-twin-filters label{min-width:0}
.twin-console .ops-camera-dialog{max-width:100%}
@media(max-width:1023px){
 .header-inner .menu-toggle{display:block;min-height:44px}
 .header-inner .nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);border-bottom:1px solid #33445e;padding:16px 20px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 76px);overflow:auto;margin:0}
 .header-inner .nav.open{display:flex}
 .header-inner .nav a{font-size:16px;padding:12px 8px;white-space:normal}
 .header-inner .nav-parent>a{flex:1}
 .header-inner .submenu-toggle{width:44px;min-width:44px}
 .header-inner .nav-submenu{position:static;min-width:0;margin:0 8px 8px 20px;padding:4px;border-color:#334863;box-shadow:none}
 .header-inner .nav-submenu a{font-size:14px}
 .language-switcher button{min-height:44px;min-width:30px}
 .nav-wrap .menu-button{min-height:44px}
}
@media(max-width:767px){
 .inline-twin-widget .comparison,.comparison.full-real{height:960px;min-height:0;aspect-ratio:auto}
 .comparison>img.comparison-base,.comparison .comparison-twin-image,.comparison.full-real>img.comparison-base,.comparison.full-real .comparison-twin-image{top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
 .comparison .compare-divider{top:0;bottom:0;height:100%}
 .comparison .compare-divider>span{top:var(--handle-top,50%);width:48px;height:48px;font-size:24px}
 .comparison.full-real .compare-divider{display:block}
 .twin-console{position:absolute;inset:0;min-height:0}
 .twin-console-main{position:absolute;inset:44px 10px 83px;margin:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto 168px minmax(0,1fr) auto;gap:8px;font-size:11px;line-height:1.4}
 .twin-console-header{grid-column:1;grid-row:1;padding:10px;order:initial}
 .twin-console-header h3,html[lang=en] .twin-console-header h3{font-size:18px}
 .twin-console-header .eyebrow{margin-bottom:5px;font-size:8px;letter-spacing:.08em}
 .twin-console-header .ops-demo{display:block;font-size:7px;line-height:1.4;padding:3px 5px;width:fit-content;margin-top:3px}
 .twin-console .inline-twin-filters{display:grid;grid-template-columns:1fr 1fr;margin-top:9px;gap:8px}
 .twin-console .inline-twin-filters label{font-size:9px}
 .twin-console .inline-twin-filters select{font-size:16px;min-height:40px;padding:6px;width:100%;max-width:100%}
 .twin-campus-summary{grid-column:1;grid-row:2;gap:6px;order:initial}
 .twin-campus-summary article{padding:6px 8px}
 .twin-campus-summary article>span{font-size:9px;line-height:1.3}
 .twin-campus-summary strong{font-size:22px;line-height:1.2;margin:3px 0}
 .twin-campus-summary article>small{font-size:8px}
 .twin-console .twin-layer-toolbar{grid-column:1;grid-row:3;padding:8px;order:initial}
 .twin-console .twin-layer-toolbar>span{font-size:9px;display:block;margin-bottom:6px}
 .twin-console .twin-layer-toolbar>div{display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;padding-bottom:3px}
 .twin-console .twin-layer-toolbar button{flex:1 0 auto;min-width:54px;min-height:40px;font-size:10px;padding:5px 7px;line-height:1.3}
 .twin-console-map-space{grid-column:1;grid-row:4;min-height:0;height:168px;padding-top:3px;order:initial}
 .twin-console-panels{grid-column:1;grid-row:5;min-height:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#75d4e8 #102c39;border-radius:7px;padding:2px}
 .twin-console-left,.twin-console-right{display:flex;flex-direction:column;gap:8px;min-height:0;width:100%;height:auto;max-height:none;overflow:visible;order:initial;flex-shrink:0}
 .twin-console .ops-card{flex-shrink:0;padding:12px;font-size:11px;line-height:1.5}
 .twin-console .ops-card h4{font-size:14px}
 .twin-console .ops-energy-chart{height:122px}
 .twin-console .ops-energy-chart button>div{height:78px}
 .twin-console .ops-energy-chart button{min-width:0}
 .twin-console .ops-energy-chart button>span,.twin-console .ops-energy-chart small{font-size:9px}
 .twin-console .ops-sensors article{padding:9px}
 .twin-console .ops-sensors strong{font-size:18px}
 .twin-console .ops-sensors small{font-size:9px}
 .twin-console .ops-camera-tabs button,html[lang=en] .twin-console .ops-camera-tabs button{min-height:44px;font-size:9px}
 .twin-console .ops-camera-actions button,html[lang=en] .twin-console .ops-camera-actions button{min-height:44px;font-size:10px}
 .twin-console .ops-camera-view{aspect-ratio:16/9}
 .twin-console .twin-panel-detail summary{padding:7px 0;min-height:38px}
 .twin-console .ops-alerts button{min-height:36px}
 .twin-console[data-layer=overview] .twin-environment-card{display:block}
 .twin-console .inline-twin-insight{grid-column:1;grid-row:6;order:initial;font-size:9px;max-height:62px;overflow-y:auto;padding:8px}
 .campus-data-pin{font-size:8px;padding:5px 7px;gap:5px;min-height:44px}
 .campus-data-pin strong{font-size:9px;line-height:1.4;white-space:normal;max-width:136px}
 .pin-a{left:7%}.pin-b{left:45%}.pin-c{left:18%}
 .inline-twin-widget .comparison-footer{left:10px;right:10px;bottom:10px;padding:8px}
 .comparison-footer .compare-toggles button{min-height:40px;font-size:10px;line-height:1.3;padding:5px}
 .comparison .compare-label{font-size:8px;top:10px}
 .ops-camera-dialog{width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);overflow:auto;padding:14px}
 .ops-camera-dialog>div{gap:10px}
 .ops-camera-dialog h3{font-size:18px;overflow-wrap:anywhere}
 .ops-camera-dialog button{min-width:44px;min-height:44px}
 .lead-form input:not([type=checkbox]),.lead-form select,.lead-form textarea{font-size:16px;min-width:0}
 .lead-form label,.lead-form fieldset,.lead-form .form-row{min-width:0}
 .language-switcher button{min-width:27px;min-height:44px}
 .menu-button,.menu-toggle{min-height:44px}
 .lab-tabs button{min-height:44px}
 .close-dialog{width:44px;min-width:44px;height:44px}
 .header-inner .brand-region{display:none}
 .mobile-cta{padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .footer a,.site-footer a{overflow-wrap:anywhere}
 .k12-video-card>header{flex-wrap:wrap}
}
@media(max-width:359px){
 .nav-wrap .brand>span{display:none}
 .nav-wrap .brand img,.header-inner .brand img{width:110px}
 .segment-grid{grid-template-columns:1fr}
 .k12-video-card{padding:14px}
 .k12-video-card h4,html[lang=en] .k12-video-card h4{font-size:20px}
 .k12-video-count{margin-left:0}
 .twin-console-main{inset-inline:7px}
 .twin-console .twin-layer-toolbar button{font-size:9px}
}
@media(min-width:768px) and (max-width:1023px){
 html[lang=en] .twin-console .ops-energy-chart small,html[lang=en] .twin-console .inline-twin-chart small{font-size:7px;letter-spacing:-.04em}
}
