/* Touch layouts retain IllumiGauge's graphite surfaces and amber light. */
:root{--touch-target:44px;--mobile-copy:#c5cdbd;--mobile-muted:#b2bca8}
.screenshot-open{position:relative;display:block;cursor:zoom-in;font:inherit;color:inherit}
.screenshot-open>img{display:block;width:100%;height:auto}
.screenshot-enlarge{position:absolute;inset:auto 14px 16px;display:flex;justify-content:center;align-items:center;gap:6px;min-height:30px;border-radius:8px;background:#151a13e8;color:#e7ecdd;font-size:11px;opacity:0;transition:opacity .25s ease}
.screenshot-enlarge img{width:14px;height:14px;filter:invert(.85)}
.screenshot-open:hover .screenshot-enlarge,.screenshot-open:focus-visible .screenshot-enlarge{opacity:1}
.screenshot-open.is-loading>img{opacity:.3}
.screenshot-open.is-loading::after{content:'Loading screenshot…';position:absolute;inset:45% 12px auto;text-align:center;background:#111513;color:#e7ecdd;padding:12px;font-size:13px}
.tour-swipe-hint,.case-selector{display:none}
.use-panel{clip-path:inset(0 round 22px)}
.use-photo{inset:0;min-width:100%;min-height:100%;transform:scale(1.08)}
.screenshot-viewer{border:0;padding:24px;background:#111513;color:#f3f2ec;width:min(620px,calc(100% - 32px));max-width:none;height:min(940px,calc(100dvh - 32px));max-height:none;border-radius:16px;margin:auto;overflow:hidden}
.screenshot-viewer[open]{display:flex;flex-direction:column;gap:12px}
.screenshot-viewer::backdrop{background:#070b08e8;backdrop-filter:blur(8px)}
.viewer-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0}
.viewer-header h2{font-size:24px;line-height:1.15;margin:0}
.viewer-header p{font-size:13px;color:#b2bca8;margin:6px 0 0}
.viewer-header button,.viewer-controls button{width:44px;height:44px;border:1px solid #ffffff20;background:#ffffff08;border-radius:12px;display:grid;place-items:center;cursor:pointer}
.viewer-header img,.viewer-controls img{width:20px;height:20px;filter:invert(.9)}
.viewer-image-wrap{display:grid;place-items:center;min-height:0;flex:1;overflow:auto;touch-action:pan-y pinch-zoom}
.viewer-image-wrap img{display:block;max-width:100%;height:100%;min-height:0;object-fit:contain}
.viewer-controls{display:flex;align-items:center;justify-content:center;gap:24px;flex-shrink:0}
.viewer-controls span{color:#c5cdbd;font-size:14px;font-variant-numeric:tabular-nums}
#viewer-prev img{transform:rotate(180deg)}
body.viewer-open{overflow:hidden}
@media(max-width:767px){
  html{scroll-padding-top:90px}
  section[id]{scroll-margin-top:0}
  .light-cursor{display:none}
  html.light-cursor-ready,html.light-cursor-ready body,html.light-cursor-ready body *{cursor:auto!important}
  .container{width:calc(100% - 40px)}
  .section{padding-block:64px}
  .header{top:max(12px,env(safe-area-inset-top));height:64px;width:calc(100% - 24px);padding:8px 10px 8px 14px;gap:4px;justify-content:initial}
  .header .brand{margin-right:auto;gap:8px;min-width:0}
  .header .brand>span{font-size:22px;letter-spacing:-.03em}
  .header .brand img{width:30px;height:30px;flex-shrink:0}
  .header .brand-sub{font-size:7px;letter-spacing:.15em}
  .header .button-small{display:none}
  .header .motion-toggle,.header .menu-button{width:44px;height:44px;min-width:44px;margin:0;padding:12px}
  .header .motion-toggle img{width:18px;height:18px}
  .header .motion-toggle span{display:none}
  .header nav{top:76px;border-radius:16px;padding:12px 18px;max-height:calc(100svh - 120px);overflow-y:auto;background:#171c15}
  .header nav a{font-size:19px;min-height:48px;padding:12px 4px}
  .hero{padding-block:108px 30px;gap:22px}
  .hero h1{font-size:clamp(36px,10.5vw,60px);letter-spacing:-.035em;line-height:1.06}
  .hero-copy>p{font-size:17px;line-height:1.55;margin-top:18px;color:var(--mobile-copy);max-width:34ch}
  .hero .actions{margin-top:22px;gap:20px;flex-wrap:wrap}
  .hero .button{min-height:52px;font-size:14px;gap:16px;padding-left:22px}
  .hero .text-link{font-size:14px;min-height:44px;display:inline-flex;align-items:center;gap:8px}
  .hero-visual{height:min(400px,49svh);max-width:100%;overflow:visible}
  .hero-phone{width:min(184px,22svh);border-radius:28px;padding:5px}
  .hero-phone>img{border-radius:22px}
  #light-field{opacity:.7}
  .light-statement{padding-top:50px}
  .light-statement .word-reveal{font-size:clamp(28px,7.4vw,38px);letter-spacing:-.03em}
  .light-statement>span{font-size:14px;color:var(--mobile-muted)}
  .quality-marquee{padding-block:18px}
  .qualities span{font-size:13px}
  .section-intro{margin-bottom:28px}
  .section-intro h2,.demo-copy h2,.exposure-intro h2{font-size:clamp(34px,9vw,46px);letter-spacing:-.03em;line-height:1.08}
  .section-intro p,.feature p,.demo-copy>p,.exposure-intro p,.steps p,.calibration-tip p,.faq-list p{font-size:16px;line-height:1.6;color:var(--mobile-copy)}
  .feature-grid{gap:16px}
  .feature{padding:26px;border-radius:16px;min-height:0}
  .feature h3{font-size:27px;letter-spacing:-.025em}
  .feature-measure .measurement-art{padding-top:24px}
  .art-value{font-size:96px}
  .feature-track .chart-art{margin-top:25px}
  .record-example{padding:18px 0;margin-top:24px}
  .record-main{gap:8px}
  .record-main>strong{font-size:24px;white-space:nowrap}
  .record-main>span{font-size:14px;min-width:0}
  .record-main small{font-size:12px}
  .tour-stage{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding-block:24px 60px;min-height:0}
  .tour-copy{display:contents}
  .tour-copy .section-intro{order:0;margin-bottom:20px}
  .tour-copy h2{font-size:clamp(34px,9.5vw,46px);letter-spacing:-.03em}
  .tour-copy h2 br{display:none}
  .tour-copy h2 .accent{margin-inline-start:.15em}
  .tour-copy .section-intro p{font-size:16px;margin-top:12px;line-height:1.5}
  .platform-selector{order:1;margin:0 0 12px;justify-content:center;gap:0;border:1px solid #ffffff18;border-radius:12px;padding:4px;background:#0f140e;justify-self:center}
  .platform-selector button{min-height:44px;min-width:100px;border:0;border-radius:8px;font-size:15px;padding:10px 20px;color:var(--mobile-muted)}
  .platform-selector button[aria-pressed=true]{background:#efad3920;color:#efad39}
  .tour-selector{order:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;margin:0 0 16px;flex-wrap:nowrap;background:#ffffff04;padding:4px;border-radius:12px}
  .tour-selector button,.tour-selector button:first-child{font-size:13px;min-height:46px;padding:10px 2px;border-radius:8px;width:100%;color:var(--mobile-muted)}
  .tour-selector button[aria-selected=true]{color:#efad39;background:#efad3920}
  .tour-product{order:3;min-height:0;height:auto;max-width:none;padding:8px 0 30px;touch-action:pan-y pinch-zoom}
  .tour-screen .phone{width:min(200px,44vw);transform:none;padding:5px;border-radius:28px;transition:box-shadow .35s ease}
  .tour-screen .phone>img{border-radius:22px;max-width:100%}
  .tour-side{display:none}
  .tour-light{inset:0 -10%}
  .tour-light::after{bottom:20px}
  .tour-product .screenshot-caption{font-size:12px;bottom:0;position:absolute;color:var(--mobile-muted)}
  .screenshot-enlarge{opacity:1;inset:auto 12px 14px;font-size:12px;background:#111513e8;min-height:32px}
  .tour-controls{order:4;justify-content:center;margin:16px 0 24px;gap:18px}
  .tour-controls button{width:48px;height:48px;background:#ffffff06}
  .tour-controls>span{font-size:14px;color:var(--mobile-muted)}
  .tour-controls .tour-swipe-hint{display:block;font-family:inherit;font-size:13px}
  .tour-description{order:5;min-height:0;padding-top:24px;border-top:1px solid #ffffff15}
  .tour-description h3{font-size:27px;line-height:1.15;margin:0;letter-spacing:-.025em}
  .tour-description p{font-size:16px;line-height:1.6;color:var(--mobile-copy);margin-top:14px}
  .tour-description ul{margin-top:18px}
  .tour-description li{font-size:14px;line-height:1.55;color:var(--mobile-copy)}
  .demo-section{gap:26px}
  .demo-copy .fine-print{font-size:13px;line-height:1.6;margin-top:16px;color:var(--mobile-muted)}
  .demo-meter{padding:26px;border-radius:16px}
  .demo-top{font-size:12px;gap:10px;flex-wrap:wrap}
  .demo-top>span:first-child{font-size:11px}
  .demo-reading output{font-size:clamp(54px,17.5vw,96px);letter-spacing:-.035em}
  .demo-conversions{font-size:13px;gap:16px;flex-wrap:wrap}
  .demo-meter label{font-size:15px}
  #light-range{height:44px;cursor:ew-resize;touch-action:pan-y}
  #light-range::-webkit-slider-thumb{width:28px;height:28px}
  #light-range::-moz-range-thumb{width:28px;height:28px}
  .scene-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
  .scene-buttons button{min-height:48px;font-size:14px;padding:10px}
  .scene-buttons button.selected{transform:none;background:#efad3924}
  .demo-context p{font-size:14px;line-height:1.6;color:var(--mobile-copy)}
  #export-demo{font-size:14px;min-height:44px;text-align:left}
  .case-selector{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}
  .case-selector button{font:inherit;min-height:48px;border:1px solid #ffffff18;border-radius:8px;padding:10px;color:var(--mobile-muted);background:#ffffff04;font-size:15px}
  .case-selector button[aria-pressed=true]{background:#efad3920;border-color:#efad3960;color:#efad39}
  .use-cases{display:block;min-height:360px}
  .use-panel,.use-panel.selected{height:360px;border-radius:16px;clip-path:inset(0 round 16px)}
  .use-panel:not(.selected){display:none}
  .use-panel.selected .case-copy{opacity:1;transform:none;transition:none}
  .case-button{font-size:14px;padding:24px;min-height:44px}
  .case-plus{display:none}
  .case-copy{left:24px;right:24px;bottom:24px}
  .case-copy h3{font-size:35px;letter-spacing:-.03em}
  .case-copy p{font-size:16px;line-height:1.6;color:#d7dece;max-width:34ch;margin-top:14px}
  .use-photo,.use-panel.selected .use-photo{filter:brightness(.65) saturate(.8);transform:scale(1.08)}
  .use-panel::after{background:linear-gradient(0deg,#0a100af2,transparent 90%)}
  .exposure-workbench{margin-top:28px;border-radius:16px;grid-template-columns:1fr}
  .exposure-inputs{border-right:0;padding:26px;border-bottom:1px solid #ffffff15}
  .exposure-inputs>div{padding-top:16px}
  .exposure-inputs>div>span{font-size:14px}
  .exposure-result{padding:26px}
  .exposure-result>strong{font-size:90px;letter-spacing:-.03em}
  .exposure-result>span,.exposure-result p{font-size:14px}
  .exposure-capabilities{grid-column:auto;padding:22px 26px;font-size:13px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .exposure-note{font-size:13px;line-height:1.6;color:var(--mobile-muted)}
  .steps{grid-template-columns:1fr;gap:28px}
  .steps h3{font-size:25px}
  .calibration-tip{border-radius:16px;padding:24px;align-items:start}
  .privacy-section{padding:28px;border-radius:16px;margin-bottom:0}
  .privacy-section p{font-size:16px;color:var(--mobile-copy)}
  .privacy-facts{gap:16px}
  .privacy-facts span{font-size:13px;color:var(--mobile-copy)}
  .faq-section{gap:0}
  .faq-list summary{font-size:18px;line-height:1.3;min-height:64px}
  .closing{padding-block:48px 64px}
  .closing h2{font-size:clamp(38px,10vw,55px);letter-spacing:-.03em}
  .closing p{font-size:17px;color:var(--mobile-copy)}
  .availability-note{font-size:13px;line-height:1.5;color:var(--mobile-muted)}
  .footer{grid-template-columns:1fr;gap:20px;padding-bottom:max(28px,env(safe-area-inset-bottom))}
  .footer .brand>span{font-size:22px}
  .footer>div{font-size:15px;gap:24px;flex-wrap:wrap}
  .footer>div a{min-height:44px;display:inline-flex;align-items:center}
  .footer>span{grid-column:auto;text-align:left;font-size:12px}
  .screenshot-viewer{width:100%;height:100dvh;border-radius:0;margin:0;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom))}
  button:active,.button:active{filter:brightness(1.15)}
}
@media(min-width:768px){.header nav>a[href='#app-tour'],.header nav>a[href='#demo']{display:none}}
@media(max-width:359px){.container{width:calc(100% - 32px)}.header .brand>span{font-size:19px}.header .brand img{width:26px;height:26px}.hero .actions{gap:12px}.hero .button{font-size:13px;padding-left:18px;gap:10px}.hero .text-link{font-size:13px}.tour-selector button,.tour-selector button:first-child{font-size:12px}.demo-meter{padding:20px}.tour-controls{gap:12px}.case-copy h3{font-size:32px}.case-copy p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.screenshot-open,.screenshot-enlarge{transition:none}}

html[data-motion=off]{scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
