.availability-preview{display:grid;gap:28px;width:100%;max-width:100%;min-width:0;overflow:hidden}.availability-time-card,.availability-time-card *{box-sizing:border-box}.availability-time-card{display:grid;min-height:96px;align-content:center;gap:9px;border:1px solid rgba(52,82,77,.12);border-radius:18px;padding:16px 22px;color:#667572;background:#e3ebe8;box-shadow:0 4px 10px #34524d14}.availability-time-card span{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.availability-time-card strong{color:#34524d;font-size:clamp(1rem,2vw,1.24rem);line-height:1.1}.dashboardContainer,.dashboardContainer *{box-sizing:border-box}.dashboardContainer{width:100%;max-width:100%;min-width:0;overflow-x:hidden;background-color:#eef3f1;padding:15px}.topBar{display:flex;flex-direction:column;align-items:stretch;gap:15px;margin-bottom:20px;width:100%}.statusLegend{background-color:#e3ebe8;padding:8px 15px;border-radius:50px;display:flex;justify-content:space-between;align-items:center;gap:10px;box-shadow:0 4px 10px #34524d14;color:#34524d;font-weight:600;font-size:.75rem;white-space:nowrap}.legendItem{display:flex;align-items:center;gap:5px}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;border:1px solid rgba(52,82,77,.14)}.greenDot{background-color:#74e26d}.redDot{background-color:#ff5a5f}.yellowDot{background-color:#ffd43b}.orangeDot{background-color:#ff9f1c}.searchWrapper{width:100%;display:flex}.searchInput{width:100%;padding:10px 18px;min-width:0;font-size:16px;color:#667572;border:1px solid rgba(52,82,77,.16);border-radius:50px;outline:none;transition:all .2s ease;background:#fafbfa;cursor:pointer;-webkit-user-select:none;user-select:none}.collegeCard{background:#fafbfa;border-radius:18px;padding:15px;width:100%;max-width:100%;margin:0 0 20px;box-shadow:0 6px 20px #34524d0f}.collegeTitle{font-size:1.2rem;font-weight:800;color:#15201f;margin-top:0;margin-bottom:15px}.buildingsContainer{width:100%;max-width:100%;min-width:0}.buildingCard{width:100%;max-width:100%;min-width:0;background:#fafbfa;border:1px solid rgba(52,82,77,.14);border-radius:12px;padding:15px;margin-bottom:12px;transition:all .2s ease}.buildingHeader{display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.buildingInfo{display:flex;flex-direction:column;gap:4px}.buildingName{font-size:1rem;font-weight:700;color:#15201f}.buildingSub{font-size:.85rem;color:#667572;font-weight:500}.arrow{font-size:14px;color:#667572;transition:transform .3s}.down{transform:rotate(180deg)}.floorList{margin-top:15px;display:flex;flex-direction:column;gap:10px;border-top:1px solid rgba(52,82,77,.1);padding-top:15px}.floorCard{width:100%;max-width:100%;min-width:0;background:#eef3f1;border:1px solid rgba(52,82,77,.14);border-radius:12px;padding:14px 18px;display:flex;flex-direction:column;gap:14px}.floorTitle{font-size:.96rem;font-weight:500;color:#667572;letter-spacing:.01em}.floorRoomsList{display:grid}.roomRow{display:flex;align-items:center;width:100%}.roomRow+.roomRow{padding-top:16px;border-top:1px solid rgba(52,82,77,.1)}.roomInfo{width:100%}.roomTitleRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;width:100%}.roomName{font-size:1rem;font-weight:600;color:#15201f;margin:0;line-height:1.35;min-width:0;overflow-wrap:anywhere}.roomDetails{margin:2px 0 0;font-size:.88rem;font-weight:500;color:#667572;line-height:1.4}.statusContainer{display:flex;align-items:center;align-self:start;gap:3px;flex-shrink:0}.statusPercent{font-size:.95rem;font-weight:500;line-height:1;color:#34524d}.statusDot{width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 2px #ffffffbf}.noResults{padding:24px;color:#667572;background:#fafbfa;border-radius:12px;text-align:center}@media(max-width:900px){.dashboardContainer{padding:12px}.statusLegend{justify-content:flex-start;flex-wrap:wrap;white-space:normal;row-gap:8px}.collegeCard,.buildingCard{padding:14px}.floorCard{padding:13px 16px}}@media(max-width:640px){.availability-preview{gap:16px}.availability-time-card{min-height:auto;border-radius:14px;padding:14px}.availability-time-card strong{font-size:1rem}.dashboardContainer{padding:10px}.topBar{gap:12px;margin-bottom:16px}.statusLegend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;padding:8px 12px;border-radius:16px;gap:8px;font-size:.68rem;white-space:normal}.legendItem{min-width:0;gap:5px;justify-content:flex-start}.searchInput{padding:10px 16px;font-size:16px}.collegeCard{padding:12px;border-radius:16px}.collegeTitle{font-size:1.1rem;margin-bottom:12px}.buildingCard{padding:14px 12px;border-radius:14px}.buildingHeader{gap:10px;align-items:center}.buildingName{font-size:.95rem;line-height:1.3}.buildingSub{font-size:.82rem}.floorList{margin-top:12px;padding-top:12px}.floorCard{padding:12px;gap:12px}.floorTitle{font-size:.9rem}.roomRow+.roomRow{padding-top:14px}.roomTitleRow{gap:6px;grid-template-columns:minmax(0,1fr) auto;align-items:start}.roomName{font-size:.96rem;line-height:1.4}.roomDetails{font-size:.84rem}.statusContainer{gap:2px}.statusPercent{font-size:.9rem}.statusDot{width:14px;height:14px}}@media(max-width:480px){.availability-time-card{padding:11px 12px}.availability-time-card span{font-size:.62rem}.availability-time-card strong{font-size:.92rem}.dashboardContainer{padding:8px}.topBar{gap:10px;margin-bottom:12px}.statusLegend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;gap:7px;overflow:visible;font-size:.64rem}.legendItem{justify-content:flex-start;gap:4px}.dot{width:8px;height:8px}.collegeCard{padding:10px}.buildingCard{padding:12px 10px}.buildingName{font-size:.86rem;overflow-wrap:anywhere}.buildingSub{font-size:.76rem}.arrow{font-size:12px}.floorCard{padding:10px;border-radius:10px}.roomTitleRow{grid-template-columns:minmax(0,1fr) auto}.roomName{font-size:.84rem;overflow-wrap:anywhere}.roomDetails,.statusPercent{font-size:.76rem}.statusContainer{justify-content:flex-start}}:root{color:#15201f;background:#eef2f0;font-family:Open Sans,ui-sans-serif,system-ui,-apple-system,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--mint: #e3ebe8;--mint-dark: #34524d;--teal: #34524d;--teal-deep: #34524d;--ink: #15201f;--muted: #667572;--line: #cbd8d4;--panel: #ffffff;--soft-panel: #eef3f1}*{box-sizing:border-box}html{width:100%;max-width:100%;overflow-x:hidden;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{width:100%;max-width:100%;min-width:320px;margin:0;overflow-x:hidden;background:radial-gradient(circle at top left,rgba(52,82,77,.08),transparent 34%),linear-gradient(180deg,#f4f6f5,#e8eeeb 52%,#f2f5f3)}#root{width:100%;max-width:100%;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}input,textarea,select{font-size:16px}.page-shell{width:100%;max-width:1180px;margin:0 auto;padding-inline:22px}.site-header{position:sticky;top:0;z-index:10;width:100%;background:var(--teal-deep);border-bottom:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.navbar,.footer{display:flex;align-items:center;justify-content:space-between;gap:24px}.navbar{min-height:68px;padding-block:10px}.nav-actions{display:flex;align-items:center;gap:4px}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);border-radius:8px;color:#fff;background:#ffffff1a;cursor:pointer}.nav-toggle:hover{background:#ffffff29}.brand{display:inline-flex;align-items:center;width:168px;overflow:hidden;border-radius:0;color:var(--ink);letter-spacing:0}.brand-logo{display:block;width:100%;height:auto;flex:0 0 auto}.nav-link{display:inline-flex;min-height:36px;align-items:center;justify-content:center;border-radius:8px;padding:0 10px;color:#fff;font-size:.82rem;font-weight:700;text-shadow:none;opacity:.9}.login-menu-trigger{min-width:0}.nav-link:hover{color:#fff;background:#ffffff1a;opacity:1}.login-menu{position:relative;display:inline-flex;align-items:center}.login-menu-trigger{appearance:none;width:auto;border:0;background:transparent;cursor:pointer}.login-menu-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:20;display:grid;min-width:100%;width:max-content;padding:8px;border:1px solid rgba(52,82,77,.22);border-radius:8px;background:#fafbfa;box-shadow:0 18px 42px #263b3829;opacity:0;pointer-events:none;transform:translateY(0);transition:opacity .16s ease,transform .16s ease}.login-menu-panel:before{position:absolute;right:0;bottom:100%;left:0;height:10px;content:""}.login-menu:hover .login-menu-panel,.login-menu:focus-within .login-menu-panel{opacity:1;pointer-events:auto;transform:translateY(0)}.login-menu-panel a{display:flex;min-height:40px;align-items:center;border-radius:6px;padding:0 12px;color:#274846;font-size:.9rem;font-weight:700;white-space:nowrap}.login-menu-panel a:hover,.login-menu-panel a:focus-visible{color:var(--teal);background:#34524d1a}.footer a:hover{color:var(--mint-dark)}.hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(340px,520px);gap:clamp(42px,5vw,76px);row-gap:28px;align-items:center;min-height:calc(100vh - 64px);padding:74px 0 56px}.hero-copy{max-width:700px;min-width:0}.eyebrow{display:inline-flex;align-items:center;gap:9px;margin:0 0 16px;border:1px solid rgba(52,82,77,.18);border-radius:999px;padding:8px 12px;color:var(--teal);background:#ffffff8a;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.eyebrow span{color:var(--teal);font-weight:700}.eyebrow-separator{color:#34524d5c}h1,h2,h3,p{margin-top:0}h1{display:grid;gap:10px;max-width:620px;margin-bottom:26px;color:var(--ink);font-size:clamp(2.3rem,3.55vw,3.95rem);line-height:1;letter-spacing:0;text-wrap:balance}h1 span{display:block;white-space:normal}.hero-description{max-width:600px;margin-bottom:34px;color:var(--muted);font-size:clamp(1rem,1.18vw,1.12rem);line-height:1.68}.hero-description strong{color:var(--ink);font-weight:700}.hero-signal-row{display:flex;flex-wrap:wrap;gap:8px;margin:-14px 0 28px}.hero-signal-row span{display:inline-flex;min-height:32px;align-items:center;border:1px solid rgba(52,82,77,.2);border-radius:999px;padding:0 12px;color:var(--teal);background:#ffffffb8;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:8px;padding:0 18px;font-weight:700;white-space:nowrap;cursor:pointer}.hero-primary-cta,.hero-secondary-cta{min-width:0}.button-primary{color:#fff;background:var(--teal);box-shadow:0 14px 30px #34524d38}.button-primary:hover{background:var(--teal-deep)}.button-secondary{color:var(--teal-deep);background:#ffffffb3;border-color:#34524d33}.button-secondary:hover{border-color:#34524d61;background:#fff}.product-preview{display:flex;flex-direction:column;width:min(100%,520px);height:clamp(560px,calc(100vh - 146px),670px);justify-self:end;overflow:hidden;border:1px solid rgba(52,82,77,.24);border-radius:8px;background:#fbfcfb;box-shadow:0 28px 80px #34524d21}.backing-strip{grid-column:1 / -1;margin-top:4px;padding:12px 0 0;color:#667572;text-align:center;background:transparent}.backing-strip p{margin-bottom:10px;color:#667572;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.backing-logos{width:min(760px,100%);margin:0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.backing-logo-track{display:flex;align-items:center;width:max-content;animation:backing-marquee 30s linear infinite}.backing-logo-group{display:grid;grid-template-columns:repeat(3,220px);align-items:center;gap:28px;padding-right:28px}.backing-logo-item{display:flex;width:100%;height:40px;align-items:center;justify-content:center}.backing-logo-image{display:block;width:auto;max-width:100%;object-fit:contain;opacity:.74}.backing-logo-image.ucsd{max-height:28px}.backing-logo-image.blackstone{max-height:24px}.backing-logo-image.basement{max-height:30px}@keyframes backing-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.backing-logo-track{width:100%;justify-content:center;animation:none}.backing-logo-group{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,4vw,42px);padding-right:0}.backing-logo-group[aria-hidden=true]{display:none}}.preview-toolbar{display:flex;align-items:center;gap:8px;min-height:48px;border-bottom:1px solid rgba(255,255,255,.14);padding:0 16px;color:#fafbfac2;font-size:.84rem;background:var(--teal-deep)}.preview-toolbar strong{margin-left:8px}.preview-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid rgba(52,82,77,.18);gap:8px;padding:8px;background:#eef3f1}.preview-tab{display:flex;min-height:44px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;color:#34524db3;background:transparent;font-weight:700;cursor:pointer}.preview-tab:hover{color:var(--teal);background:#34524d14}.preview-tab.active{color:#fff;background:var(--teal);border-color:var(--teal);box-shadow:0 10px 22px #34524d29}.window-dot{width:10px;height:10px;border-radius:999px;background:#ffffff70}.preview-content{display:grid;grid-template-columns:1fr;flex:1;min-height:0;overflow:auto}.preview-content-link{cursor:pointer;transition:background .18s ease,box-shadow .18s ease}.preview-content-link:hover{background:#34524d0f}.preview-content-link:focus-visible{outline:3px solid rgba(52,82,77,.26);outline-offset:-3px}.preview-main{display:grid;gap:16px;align-content:start;padding:16px}.occupancy-preview-stack{display:grid;gap:12px}.occupancy-analytics-preview{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch;border:1px solid rgba(52,82,77,.14);border-radius:8px;padding:14px;background:#fbfcfb;box-shadow:0 10px 24px #263b3812}.occupancy-analytics-copy{display:flex;min-width:0;align-items:flex-end;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(52,82,77,.12);padding-bottom:10px}.occupancy-analytics-copy span{color:var(--teal);font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.occupancy-analytics-copy strong{color:var(--ink);font-size:1rem;line-height:1.2;text-align:right}.occupancy-analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.occupancy-analytics-card{display:grid;gap:7px;min-width:0;border:1px solid rgba(52,82,77,.12);border-radius:8px;padding:12px;background:#fff}.occupancy-analytics-card span{overflow:hidden;color:#667572;font-size:.58rem;font-weight:700;letter-spacing:.07em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.occupancy-analytics-card strong{display:flex;align-items:baseline;gap:5px;color:var(--ink);font-size:1.35rem;line-height:1}.occupancy-analytics-card em{color:#667572;font-size:.72rem;font-style:normal;font-weight:700}.occupancy-trend-preview{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:7px;height:86px;border:1px solid rgba(52,82,77,.12);border-radius:8px;padding:12px 12px 0;background:linear-gradient(to bottom,transparent 0 48%,#dfe8e5 48% 50%,transparent 50%),#fafbfa}.occupancy-trend-preview span{display:block;min-height:10px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#6e8f88,#34524d)}.product-snapshot{display:grid;grid-template-rows:auto 1fr;min-width:0;overflow:hidden;border:1px solid rgba(52,82,77,.14);border-radius:8px;background:#fff}.product-snapshot-heading{display:grid;gap:3px;min-height:58px;align-content:center;border-bottom:1px solid var(--line);padding:10px 12px;background:#eef3f1}.product-snapshot-heading span{color:var(--teal);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.product-snapshot-heading strong{min-width:0;overflow:hidden;color:var(--ink);font-size:.96rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.preview-header,.space-row{border:1px solid rgba(52,82,77,.14);border-radius:8px;background:var(--panel)}.preview-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px}.preview-header span,.space-row span{color:#667572;font-size:.82rem;font-weight:600}.preview-header strong{display:block;margin-top:4px;color:var(--ink);font-size:1.12rem}.status-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 10px;color:#34524d;background:#34524d1f}.status-pill:before{width:8px;height:8px;border-radius:999px;background:#34524d;content:""}.space-list{display:grid;gap:10px}.space-row{display:grid;grid-template-columns:128px 1fr 42px;gap:14px;align-items:center;min-height:68px;padding:12px 14px}.space-row strong,.space-row span{display:block}.occupancy-meter{overflow:hidden;height:10px;border-radius:999px;background:#e7eeeb}.occupancy-meter span{display:block;height:100%;border-radius:inherit}.occupancy-meter .available{background:#34524d}.occupancy-meter .steady{background:var(--mint)}.occupancy-meter .busy{background:#8b6a3d}.analytics-showcase{display:grid;gap:20px}.analytics-sensor-row{display:flex;align-items:center;gap:12px}.analytics-sensor-label{color:var(--ink);font-size:14px;font-weight:700}.analytics-sensor-indicators{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.analytics-health-indicator{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:600}.analytics-health-dot{width:12px;height:12px;border:2px solid rgba(52,82,77,.14);border-radius:50%;background:#8b9995}.analytics-health-dot.active{border-color:#34524d;background:#34524d;box-shadow:0 0 0 2px #34524d2e}.analytics-charts-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;width:100%}.analytics-chart-wrapper{padding:22px 22px 18px;border:1px solid rgba(52,82,77,.14);border-radius:20px;background:linear-gradient(180deg,#fafbfafa,#eef2f0c2),#fafbfa;box-shadow:0 14px 32px #34524d1a}.analytics-chart-inner{position:relative;width:100%;min-height:380px;border-radius:12px;padding:20px;background:#fafbfa}.analytics-chart-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.analytics-chart-header h4{margin:0;color:var(--ink);font-size:14px;font-weight:700}.analytics-peak-key{display:flex;align-items:center;gap:8px;color:#667572;font-size:12px;font-weight:700}.analytics-peak-key span{display:inline-block;width:28px;border-top:2px dashed #34524d}.analytics-line-chart{display:block;width:100%;height:280px}.analytics-grid-line{stroke:#dfe8e5;stroke-dasharray:3 3}.analytics-axis-label{fill:#8b9995;font-size:13px;font-weight:500}.analytics-peak-label{fill:#667572;font-size:14px;font-weight:700}.analytics-chart-point{cursor:pointer;outline:none}.analytics-chart-point:focus circle:last-child,.analytics-chart-point:hover circle:last-child{r:6.5;stroke:#fff;stroke-width:2}.analytics-chart-tooltip{position:absolute;z-index:2;display:grid;gap:4px;min-width:138px;transform:translate(-50%,calc(-100% - 16px));border:1px solid rgba(52,82,77,.16);border-radius:8px;padding:10px 12px;color:var(--muted);background:#fff;box-shadow:0 6px 18px #34524d1a;font-size:12px;pointer-events:none}.analytics-chart-tooltip strong{color:var(--ink);font-weight:700}.analytics-chart-tooltip span:first-of-type{color:#34524d}.snapshot-module,.transportation-preview-module{display:grid;gap:10px;align-content:start;padding:14px}.traffic-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.traffic-summary-card{display:grid;gap:6px;min-width:0;border:1px solid rgba(52,82,77,.14);border-radius:8px;min-height:78px;padding:12px;background:#fafbfa}.traffic-summary-card span{color:var(--muted);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.traffic-summary-card strong{display:flex;align-items:baseline;gap:6px;color:var(--ink);font-size:1.36rem;line-height:1}.traffic-summary-card em{color:#667572;font-size:.78rem;font-style:normal;font-weight:700}.snapshot-status-card{display:grid;gap:4px;min-height:74px;align-content:center;border:1px solid rgba(52,82,77,.16);border-radius:8px;padding:12px;background:#eef3f1}.snapshot-status-card span{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.snapshot-status-card strong{color:#667572;font-size:1.08rem;line-height:1.2}.transportation-time-card{background:#eef2f0}.traffic-preview-card,.traffic-preview-row{border:1px solid rgba(52,82,77,.14);border-radius:8px;background:#fafbfa;box-shadow:0 10px 24px #263b3814}.traffic-preview-card{display:grid;gap:12px;padding:14px}.traffic-preview-header,.traffic-preview-footer,.traffic-preview-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.traffic-preview-header span,.traffic-preview-footer,.traffic-preview-row em{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.traffic-preview-header strong{display:block;margin-top:4px;color:var(--ink);font-size:1rem;line-height:1.18}.traffic-chart-preview{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:8px;height:92px;border:1px solid rgba(52,82,77,.14);border-radius:8px;padding:12px;background:linear-gradient(180deg,transparent 0 31%,#e7eeeb 31% 32%,transparent 32% 65%,#e7eeeb 65% 66%,transparent 66%),#fafbfa}.traffic-chart-preview span{display:block;min-height:12px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,#6e8f88,var(--teal))}.traffic-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;padding:0 10px;color:#34524d!important;background:#e3ebe8}.traffic-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.traffic-metric-grid div{display:grid;gap:4px;min-width:0}.traffic-metric-grid strong{color:var(--ink);font-size:1.18rem;line-height:1}.traffic-metric-grid span{color:var(--muted);font-size:.72rem;font-weight:700}.traffic-direction-preview{display:flex;height:8px;overflow:hidden;border-radius:999px;background:#eef2f0}.traffic-direction-preview span:first-child{background:var(--teal)}.traffic-direction-preview span:last-child{background:var(--mint)}.traffic-preview-list{display:grid;gap:8px}.traffic-preview-row{display:flex;min-height:50px;padding:10px 12px}.traffic-preview-row span{min-width:0;overflow:hidden;color:var(--ink);font-size:.88rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.traffic-preview-row strong{color:var(--teal);font-size:.88rem;white-space:nowrap}.traffic-preview-row em{font-style:normal;white-space:nowrap}.workflow-section{margin-top:18px;padding:54px 0 34px}.workflow-grid{display:grid;--workflow-arrow-gap: clamp(26px, 3vw, 40px);gap:var(--workflow-arrow-gap);margin-top:18px}.workflow-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workflow-card{border:1px solid rgba(52,82,77,.14);border-radius:8px;background:#fbfcfbc7;box-shadow:0 12px 34px #34524d0f}.workflow-card strong{color:var(--ink);font-size:1.05rem;font-weight:700;line-height:1.25}.workflow-card p{margin:0;color:var(--muted);line-height:1.55}.workflow-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;min-height:0;align-content:start;padding:14px}.workflow-card:not(:last-child):before,.workflow-card:not(:last-child):after{position:absolute;top:50%;display:block;content:""}.workflow-card:not(:last-child):before{right:calc(var(--workflow-arrow-gap) * -.72);width:calc(var(--workflow-arrow-gap) * .42);border-top:2px solid rgba(52,82,77,.34);transform:translateY(-50%)}.workflow-card:not(:last-child):after{right:calc(var(--workflow-arrow-gap) * -.72);width:8px;height:8px;border-top:2px solid rgba(52,82,77,.34);border-right:2px solid rgba(52,82,77,.34);transform:translateY(-50%) rotate(45deg)}.workflow-icon{display:inline-flex;grid-row:1 / span 3;width:30px;height:30px;align-items:center;justify-content:center;border:0;border-radius:6px;color:#fff;background:var(--teal)}.workflow-card small{color:var(--teal);font-size:.68rem;font-weight:700;letter-spacing:.09em}.workflow-time-note{display:inline-flex;align-items:center;margin-top:18px;border:1px solid rgba(52,82,77,.2);border-radius:999px;padding:10px 16px;color:#5f706d;background:#ffffffb8;box-shadow:0 12px 28px #263b380f}.workflow-time-note strong{color:var(--teal-deep);font-size:.92rem;font-weight:700}.products,.contact{padding:90px 0}.workflow-section h2,.products h2,.contact h2{margin:0;color:var(--ink);font-size:clamp(2rem,4vw,3.45rem);letter-spacing:0;line-height:1}.section-heading{max-width:680px}.products{border-top:1px solid rgba(52,82,77,.14)}.product-selector{display:grid;grid-template-columns:minmax(220px,.26fr) minmax(0,1fr);gap:0;align-items:start;margin-top:22px}.product-options{display:grid;align-content:start;gap:8px;padding-top:18px}.product-option{appearance:none;-webkit-tap-highlight-color:transparent;display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;width:100%;min-width:0;border:1px solid rgba(52,82,77,.16);border-right:0;border-radius:8px 0 0 8px;min-height:48px;padding:9px 12px;color:var(--ink);background:#f4f8f6;text-align:left;touch-action:manipulation;cursor:pointer}.product-option:hover,.product-option.active{border-color:#34524d38;background:#ffffffb8}.product-option.active{position:relative;z-index:2;width:calc(100% + 1px);color:#fff;border-color:var(--teal);background:var(--teal);box-shadow:-8px 12px 24px #34524d1f}.product-option-icon{display:inline-flex;width:30px;height:30px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:7px;color:var(--teal);background:#34524d0d}.product-option.active .product-option-icon{color:#fff;background:#ffffff29}.product-option-copy{display:grid;gap:3px;min-width:0}.product-option strong{color:var(--ink);font-size:.95rem;font-weight:700;line-height:1.25;overflow:visible;white-space:nowrap}.product-option.active strong{color:#fff}.product-option em,.product-option small{display:none}.product-detail{display:grid;align-content:start;gap:14px;min-height:100%;border:1px solid rgba(52,82,77,.16);border-radius:8px;padding:16px;background:#fafbfa;box-shadow:0 18px 48px #34524d14}.product-detail-with-media{grid-template-columns:minmax(260px,.62fr) minmax(0,1fr);align-items:center;gap:16px}.product-detail-media{display:grid;min-height:100%;place-items:center;overflow:visible;border:1px solid rgba(52,82,77,.12);border-radius:8px;background:#fff}.product-gallery{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;width:min(100%,300px);min-width:0;min-height:0;height:100%;touch-action:pan-y}.product-gallery-track{height:300px;max-height:300px}.product-gallery-track{display:flex;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab}.product-gallery-track:active{cursor:grabbing}.product-gallery-track::-webkit-scrollbar{display:none}.product-gallery-slide{position:relative;display:grid;flex:0 0 100%;min-width:100%;height:100%;margin:0;padding:14px;place-items:center;scroll-snap-align:center}.product-gallery-slide img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;pointer-events:none}.product-gallery-slide.portrait img{width:auto;height:auto;max-width:82%;max-height:82%}.product-gallery-slide figcaption{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.product-gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;border-top:1px solid rgba(52,82,77,.1);padding:8px 12px 0}.product-gallery-title{border-radius:999px;padding:6px 0;color:var(--teal-deep);font-size:.78rem;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase}.product-gallery-controls{display:inline-flex;gap:7px;align-items:center;border:1px solid rgba(52,82,77,.12);border-radius:999px;padding:7px;background:#ffffffb8}.product-gallery-controls button{width:9px;height:9px;border:0;border-radius:999px;padding:0;background:#34524d47;cursor:pointer}.product-gallery-controls button.active{width:22px;background:var(--teal)}.product-detail-copy{display:grid;align-content:start;gap:12px;min-width:0}.product-detail-heading{display:flex;align-items:center;gap:12px;min-width:0}.product-detail-heading>svg{display:grid;flex:0 0 auto;color:var(--teal)}.product-detail-heading span{display:inline-flex;width:fit-content;margin-bottom:8px;border:1px solid rgba(52,82,77,.16);border-radius:999px;padding:5px 9px;color:var(--teal);background:#34524d14;font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.product-detail h3{margin:0;color:var(--ink);font-size:clamp(1.42rem,2.35vw,2.2rem);line-height:1.05;overflow-wrap:anywhere}.product-detail p{max-width:640px;margin:0;color:var(--muted);line-height:1.5}.product-detail ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.product-detail li{position:relative;border-top:1px solid rgba(52,82,77,.1);padding:10px 0 0 24px;color:var(--muted);font-weight:500;line-height:1.55;overflow-wrap:anywhere}.product-detail li:before{position:absolute;top:17px;left:0;width:10px;height:10px;border-radius:999px;background:var(--teal);content:""}.product-detail-link{justify-self:start;margin-top:4px;border-color:var(--teal);color:#fff;background:var(--teal);box-shadow:0 14px 30px #34524d2e}.product-detail-link:hover{border-color:var(--teal-deep);background:var(--teal-deep)}.contact{display:grid;grid-template-columns:minmax(0,.72fr) minmax(320px,.62fr);gap:48px;align-items:start;border-top:1px solid rgba(52,82,77,.14)}.resource-tabs{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:1px solid rgba(52,82,77,.16);border-radius:8px;padding:8px;background:#eef3f1;box-shadow:0 12px 28px #34524d0f}.resource-tab{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:6px;padding:0 18px;color:var(--muted);background:transparent;font-weight:600;white-space:nowrap;cursor:pointer}.resource-tab:hover{color:#34524d;background:#ffffffb8}.resource-tab.active{color:#fff;background:#34524d;border-color:#34524d;box-shadow:0 8px 18px #34524d24}.resource-panel{width:100%;max-width:900px;margin:20px auto 0;overflow:hidden;border:1px solid rgba(52,82,77,.16);border-radius:8px;background:#fff;box-shadow:0 10px 30px #34524d0f}.resource-modal{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:22px}.resource-modal-backdrop{position:absolute;inset:0;background:#15201f70}.resource-modal-content{position:relative;z-index:1;width:min(960px,100%);max-height:min(86vh,820px);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 28px 80px #15201f47}.resource-modal-actions{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(52,82,77,.14);padding:20px;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.resource-modal-content .resource-panel{margin:0 auto;border:0;border-radius:0;box-shadow:none}.resource-close{display:inline-flex;width:44px;height:44px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid rgba(52,82,77,.16);border-radius:8px;color:#333;background:#fff;cursor:pointer}.resource-close:hover{color:#34524d;border-color:#34524d}.resource-panel-header{display:grid;gap:8px;border-bottom:0;padding:40px 40px 12px;text-align:center}.resource-date{margin:0;color:var(--muted);font-size:1rem;font-weight:400}.resource-panel h3{margin:0 0 18px;color:var(--ink);font-size:2rem;font-weight:700}.resource-sections{display:grid;grid-template-columns:1fr;gap:0;padding:0 40px 40px;background:#fff}.resource-section{padding:0;background:#fff}.resource-section h4{margin:18px 0 15px;border-bottom:2px solid rgba(52,82,77,.1);padding-bottom:10px;color:var(--teal);font-size:1.25rem;font-weight:700}.resource-section p{margin-bottom:20px;color:var(--muted);font-size:1rem;line-height:1.6}.resource-section p:last-child{margin-bottom:0}.resource-section ul{display:grid;gap:10px;margin:0 0 20px;padding:0;color:var(--muted);line-height:1.6;list-style:none}.contact-copy .section-heading+p{max-width:560px;margin-top:30px;margin-left:0;color:var(--muted);line-height:1.65}.contact-form{display:grid;gap:16px}.contact-form label{display:grid;gap:8px;color:#34524d;font-weight:700}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(52,82,77,.18);border-radius:8px;color:var(--ink);background:#fff;outline:none;font:inherit}.contact-form input{min-height:50px;padding:0 14px}.contact-form textarea{min-height:132px;padding:14px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px #34524d24}.contact-form button:disabled{cursor:wait;opacity:.72}.form-error{color:#a23434;font-size:.9rem;font-weight:700}.form-success{border:1px solid rgba(52,82,77,.24);border-radius:8px;padding:18px;color:#34524d;background:#e3ebe8cc;font-weight:700}.footer{border-top:1px solid var(--line);padding:28px 0 36px;color:#5f706d;font-size:.95rem}.email-link{display:inline-flex;align-items:center;gap:8px}.footer-links{display:flex;align-items:center;gap:18px}.footer-link{border:0;padding:0;color:#5f706d;background:transparent;font:inherit;font-weight:700;cursor:pointer}.footer-link:hover{color:var(--mint-dark)}@media(max-width:860px){.page-shell{max-width:680px;padding-inline:14px}.products,.contact{padding:68px 0}.hero,.contact,.preview-content{grid-template-columns:1fr}.hero{min-height:auto;gap:30px;padding-top:32px;padding-bottom:48px}.product-preview{height:auto;justify-self:stretch;max-width:100%}.preview-content{overflow:visible}.product-selector{grid-template-columns:1fr}.product-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding-top:0}.product-detail-with-media{grid-template-columns:1fr}.product-option{border-right:1px solid rgba(52,82,77,.16);border-bottom:0;border-radius:8px 8px 0 0}.product-option.active{width:100%}.product-detail{border-radius:0 0 8px 8px}.audience-grid,.workflow-grid{grid-template-columns:1fr}.workflow-card:not(:last-child):before,.workflow-card:not(:last-child):after{display:none}.contact{gap:32px}.resource-sections{grid-template-columns:1fr}}@media(max-width:560px){:root{--section-heading-optical-offset: -4px}.page-shell{max-width:none;padding-inline:16px;overflow:hidden}.hero,.products,.contact,.footer,.product-preview,.product-selector,.contact-form{width:100%;max-width:100%;min-width:0}.hero,.audience-section,.workflow-section,.products,.contact{scroll-margin-top:104px}.footer{align-items:flex-start;flex-direction:column;gap:16px}.navbar{position:relative;flex-wrap:wrap;min-height:auto;align-items:center;gap:12px}.nav-toggle{display:inline-flex;margin-left:auto}.brand{width:148px}.nav-actions{display:none;flex-basis:100%;width:100%;align-items:stretch;flex-direction:column;gap:8px;padding-top:4px}.nav-actions.open{display:flex}.nav-link{display:flex;min-height:46px;align-items:center;justify-content:flex-start;border:1px solid rgba(52,82,77,.18);border-radius:8px;padding:12px 14px;color:#274846;background:#ffffff94;text-shadow:none}.login-menu{display:grid;width:100%}.login-menu-trigger{min-width:0;width:100%;text-align:left}.login-menu-panel{position:static;display:grid;min-width:0;margin-top:6px;padding:6px;box-shadow:none;opacity:1;pointer-events:auto;transform:none}.products,.contact{padding:52px 0}.audience-section,.workflow-section{padding:46px 0}.hero{gap:24px;padding-top:max(36px,env(safe-area-inset-top));padding-bottom:44px}.eyebrow{max-width:100%;flex-wrap:wrap;gap:6px;margin-bottom:10px;padding:7px 10px;font-size:.72rem;line-height:1.2;letter-spacing:.08em}.eyebrow-separator{transform:translateY(-1px)}h1{gap:8px;max-width:12ch;margin-bottom:14px;font-size:clamp(2.25rem,12.8vw,3.15rem);line-height:1}h1 span{white-space:normal}.audience-section h2,.workflow-section h2,.products h2,.contact h2{font-size:clamp(1.82rem,9.4vw,2.35rem);line-height:1.04}.hero-description{font-size:1rem;line-height:1.62;margin-bottom:18px}.hero-signal-row{gap:7px;margin:-4px 0 22px}.hero-signal-row span{min-height:30px;padding:0 10px;font-size:.66rem}.backing-strip{padding-top:2px}.backing-strip p{margin-bottom:10px;font-size:.7rem}.backing-logos{width:100%;overflow:hidden;-webkit-mask-image:none;mask-image:none}.backing-logo-track{width:200%;animation:backing-marquee 24s linear infinite}.backing-logo-group{width:50%;flex:0 0 50%;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-right:0}.backing-logo-group[aria-hidden=true]{display:grid}.backing-logo-item{width:100%;height:32px}.backing-logo-image.ucsd{max-height:21px}.backing-logo-image.blackstone{max-height:18px}.backing-logo-image.basement{max-height:23px}.product-preview{width:100%;min-width:0;max-height:540px;border-radius:8px}.preview-content{overflow-x:hidden;overflow-y:auto}.preview-main{gap:12px;min-width:0;padding:10px}.occupancy-preview-stack{gap:10px}.occupancy-analytics-preview{grid-template-columns:1fr;gap:8px;padding:10px}.occupancy-analytics-copy{display:grid;gap:6px;align-items:start}.occupancy-analytics-copy span{font-size:.58rem;letter-spacing:.07em}.occupancy-analytics-copy strong{text-align:left}.occupancy-analytics-copy strong{font-size:.86rem;line-height:1.25}.occupancy-analytics-grid{gap:5px}.occupancy-analytics-card{gap:4px;padding:8px 7px}.occupancy-analytics-card span{font-size:.52rem;letter-spacing:.05em}.occupancy-analytics-card strong{gap:4px;font-size:1rem}.occupancy-analytics-card em{font-size:.62rem}.occupancy-trend-preview{height:58px;padding:8px 8px 0}.snapshot-module,.transportation-preview-module{min-width:0;padding:10px}.traffic-summary-grid,.traffic-metric-grid{grid-template-columns:1fr}.traffic-summary-card{min-height:70px;padding:12px}.traffic-summary-card strong{min-width:0;flex-wrap:wrap;gap:4px 7px;font-size:1.18rem}.traffic-summary-card em{font-size:.74rem;white-space:normal}.traffic-preview-card{min-width:0;padding:12px}.traffic-preview-header,.traffic-preview-footer,.traffic-preview-row{min-width:0}.traffic-chart-preview{gap:6px;min-width:0;padding:10px}.preview-tabs{gap:8px;padding:8px;border-radius:0}.preview-tab{min-height:44px;font-size:.9rem;line-height:1}.space-row{grid-template-columns:1fr}.analytics-sensor-row{align-items:flex-start;flex-direction:column}.analytics-charts-grid{gap:16px}.analytics-chart-wrapper{padding:10px;border-radius:8px}.analytics-chart-inner{min-height:286px;padding:10px}.analytics-chart-header{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:10px}.analytics-line-chart{height:210px}.analytics-axis-label,.analytics-peak-label{font-size:12px}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px;max-width:360px;margin-bottom:14px}.hero-actions .button{min-width:0;min-height:46px;width:100%;padding-inline:14px}.product-selector{gap:14px;margin-top:28px}.product-options{grid-template-columns:1fr;gap:6px}.audience-grid,.workflow-grid{gap:12px;margin-top:24px}.audience-card,.workflow-card{min-height:auto;padding:18px}.product-option{grid-template-columns:28px minmax(0,1fr);gap:8px;min-height:48px;border:1px solid rgba(52,82,77,.16);border-radius:8px;overflow:hidden;padding:9px 10px}.product-option-icon{width:26px;height:26px}.product-option-copy{min-height:0;overflow:hidden}.product-option strong{font-size:.96rem;white-space:normal}.product-option em{display:none}.product-option small{align-self:start;justify-self:end}.product-detail{padding:18px}.product-detail-link{width:100%;justify-self:stretch}.product-detail li{padding-left:24px}.product-detail p,.product-detail li,.contact-copy .section-heading+p{font-size:.98rem;line-height:1.55}.contact-copy .section-heading+p{margin-top:20px}.contact{gap:24px}.resource-tabs{display:grid;width:100%}.resource-tab{min-width:0;padding:0 10px;font-size:.9rem}.resource-panel-header,.resource-section{padding:18px}.resource-panel-header{padding-bottom:0}.resource-sections{padding:0 18px 18px}.resource-modal{align-items:start;padding:calc(12px + env(safe-area-inset-top)) 10px calc(12px + env(safe-area-inset-bottom))}.resource-modal-content{width:100%;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.resource-modal-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px}.resource-close{align-self:center;justify-self:end}.contact-form{gap:14px}.contact-form label{gap:7px}.contact-form input,.contact-form textarea{font-size:16px}.contact-form textarea{min-height:118px}.email-link{overflow-wrap:anywhere}.footer-links{flex-wrap:wrap;gap:12px 16px}}@media(max-width:420px){.page-shell{padding-inline:14px}.hero{gap:20px;padding-bottom:38px}.hero-description{margin-bottom:16px}.eyebrow{display:grid;grid-template-columns:auto auto auto;justify-content:start;max-width:100%;padding-inline:8px;font-size:.62rem;letter-spacing:.055em}.eyebrow span:not(.eyebrow-separator){min-width:0;white-space:normal}.occupancy-analytics-preview{padding:9px}.occupancy-analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.occupancy-analytics-card{padding:8px 6px}.occupancy-trend-preview{height:52px}.hero-signal-row{margin-bottom:18px}.products,.contact{padding:46px 0}.audience-section,.workflow-section{padding:40px 0}.product-preview{max-height:500px}.product-selector{gap:14px}.product-option{grid-template-columns:28px minmax(0,1fr);min-height:48px}.product-option small{align-self:end;justify-self:start}.product-option em{font-size:.88rem}.product-gallery{width:min(100%,280px)}.product-gallery-track{height:280px}.button{min-height:46px}}
