/* ChargeWise / Precision Energy. All overrides remain on this page. */
html[data-app="chargewise"] { --page:#050c14; --page-deep:#050c14; --surface:#0e1a27; --surface-2:#102232; --ink:#f5f8fc; --muted:#aab4c3; --quiet:#7f8998; --accent:#2de8ca; --accent-2:#57e9c9; --energy:#8ce63a; --charging:#88d02e; --line:#213241; --display:"Manrope",sans-serif; --shell:1240px; }
.cw-page { background:#050c14; min-width:0; overflow-x:visible; }
.cw-page :is(h1,h2,h3,p,figure) { margin:0; }
.cw-page :is(h1,h2,h3) { font-family:var(--sans); font-style:normal; }
.cw-page p { color:var(--muted); line-height:1.8; }
.cw-page .app-header { position:relative; background:var(--page); }
.cw-page .app-nav { min-height:80px; }
.cw-shell { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.cw-mono { font:400 10px/1.6 var(--mono); letter-spacing:.09em; }
.cw-page .cw-eyebrow { color:var(--accent); font:400 10px/1.7 var(--mono); letter-spacing:.12em; text-transform:uppercase; }
.cw-page h2 { font-size:clamp(36px,4.5vw,66px); font-weight:600; letter-spacing:-.065em; line-height:1.09; }
.cw-page h2 span { color:#7f8998; }
.cw-section { padding-block:110px; }
.cw-product-line { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:26px 0; }
.cw-brand { display:flex; align-items:center; gap:10px; font-size:19px; font-weight:700; letter-spacing:-.04em; }
.cw-brand-icon { position:relative; display:block; flex:0 0 32px; width:32px; height:32px; overflow:hidden; border-radius:50%; background:#050c14; }
.cw-brand .cw-brand-icon img { position:absolute; top:50%; left:50%; display:block; width:225%; height:225%; max-width:none; object-fit:contain; transform:translate(-50%,-50%); }
.cw-brand .cw-mono { color:var(--muted); margin-left:12px; letter-spacing:.06em; font-size:9px; }
.cw-status { display:flex; align-items:center; gap:9px; font:10px var(--mono); color:var(--muted); }
.cw-status i,.cw-coming i,.cw-instrument-head i { display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--accent); }
.cw-instrument-head i { background:var(--energy); }
.cw-hero-grid { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; min-height:740px; gap:30px; }
.cw-hero-copy { position:relative; z-index:2; padding:24px 0 40px; }
.cw-hero-copy .cw-eyebrow { display:flex; align-items:center; gap:10px; font-size:9px; }
.cw-hero-copy .cw-eyebrow>span { font-size:19px; }
.cw-page h1 { font-size:clamp(62px,7.15vw,104px); font-weight:600; letter-spacing:-.075em; line-height:1.02; margin:26px 0; }
.cw-page h1>span { color:var(--accent); }
.cw-page .cw-lead { max-width:410px; font-size:15px; line-height:1.85; }
.cw-actions { display:flex; align-items:center; gap:25px; margin-top:34px; }
.cw-button { display:flex; justify-content:space-between; align-items:center; gap:28px; min-height:54px; padding:16px 22px; background:var(--accent); color:#041016; border-radius:4px; font-size:12px; font-weight:800; transition:transform .2s,background .2s,box-shadow .2s; }
.cw-button:hover { transform:translateY(-3px); background:#57e9c9; box-shadow:0 9px 35px #2de8ca15; }
.cw-button>span { font-size:20px; font-weight:400; }
.cw-availability { font-size:12px; line-height:1.6; }
.cw-availability small { color:var(--muted); font-size:10px; }
.cw-hero-index { display:flex; align-items:center; gap:16px; margin-top:58px; color:#aab4c3; font-size:9px; }
.cw-hero-index b { color:#7f8998; font-weight:400; }
.cw-hero-visual { position:relative; display:grid; grid-template-columns:minmax(0,1fr); place-items:center; min-width:0; height:740px; isolation:isolate; overflow:clip; }
.cw-hero-visual::before { content:""; position:absolute; z-index:-2; inset:12% -9% 1%; background:radial-gradient(ellipse at 48% 52%,#2de8ca1a,transparent 62%); }
.cw-orbit { position:absolute; z-index:-1; width:530px; height:530px; max-width:112%; border:1px solid #2de8ca12; border-radius:50%; transform:rotate(-22deg) scaleY(.68); }
.cw-orbit-two { width:630px; height:630px; transform:rotate(32deg) scaleY(.82); border-style:dashed; border-color:#2de8ca12; }
.cw-stage-label { position:absolute; top:26px; right:0; color:#aab4c3; font-size:8px; }
.cw-device { position:relative; width:302px; height:636px; padding:42px 21px 16px; border:6px solid #263644; border-radius:44px; background:linear-gradient(160deg,#132b32,#050c14 45%,#0e1a27); box-shadow:0 0 0 1px #52687a,0 0 0 4px #08151f,22px 35px 60px #0008,inset 0 0 0 1px #657f8933; transform:rotate(7deg); }
.cw-device::after { content:""; position:absolute; width:3px; height:48px; right:-10px; top:116px; border-radius:2px; background:#52687a; box-shadow:0 62px 0 #52687a; }
.cw-camera { position:absolute; width:9px; height:9px; top:15px; left:calc(50% - 4px); border:2px solid #213241; background:#050c14; border-radius:50%; }
.cw-device-top { display:flex; justify-content:space-between; font-size:17px; letter-spacing:-.06em; font-weight:700; }
.cw-device-top span span { color:var(--accent); }
.cw-device-top>span:last-child { color:var(--accent); font-size:22px; }
.cw-device-caption { display:flex; justify-content:space-between; margin-top:23px; color:#aab4c3; font-size:8px; }
.cw-gauge { display:grid; place-items:center; position:relative; width:222px; height:222px; margin:19px auto 22px; border-radius:50%; background:conic-gradient(from 220deg,var(--charging) 0deg,var(--charging) 256deg,#263644 256deg,#263644 280deg,transparent 280deg); padding:5px; }
.cw-gauge::before { content:""; position:absolute; inset:-10px; border-radius:50%; border:1px dashed #2de8ca35; }
.cw-gauge>div { width:100%; height:100%; display:flex; align-items:center; flex-direction:column; justify-content:center; border-radius:50%; background:#0e1a27; }
.cw-gauge .cw-mono { color:var(--energy); font-size:8px; }
.cw-gauge strong { font-size:67px; font-weight:400; line-height:1.2; color:var(--energy); }
.cw-gauge div>span:not(.cw-mono) { font-size:21px; letter-spacing:-.04em; }
.cw-gauge small { color:var(--muted); font-size:8px; margin-top:9px; }
.cw-device-metrics { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-block:16px; border-block:1px solid var(--line); }
.cw-device-metrics .cw-mono { font-size:6px; color:#aab4c3; }
.cw-device-metrics strong { display:block; margin-top:7px; font-size:9px; font-weight:500; }
.cw-device-metrics strong span { color:var(--accent-2); }
.cw-device-chart { margin-top:18px; }
.cw-device-chart>.cw-mono { font-size:7px; color:#aab4c3; }
.cw-device-chart svg { width:100%; height:66px; margin-top:8px; }
.cw-chart-grid { stroke:#aab4c318; stroke-width:1; fill:none; }
.cw-chart-path { fill:none; stroke:var(--accent); stroke-width:2; }
.cw-device-chart>div { display:flex; justify-content:space-between; font-size:6px; color:#aab4c3; }
.cw-device-nav { display:flex; justify-content:space-around; padding-top:17px; font-size:18px; color:#7f8998; }
.cw-device-nav span:first-child { color:var(--accent); }
.cw-signal-tag { position:absolute; display:flex; align-items:center; gap:13px; bottom:125px; left:8px; padding:17px 25px 17px 16px; border:1px solid #2de8ca44; border-radius:8px; background:#102232ea; box-shadow:0 12px 30px #0003; transform:rotate(-3deg); }
.cw-signal-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:#2de8ca18; color:var(--accent); font-size:28px; }
.cw-signal-tag small { color:var(--accent); font-size:7px; }
.cw-signal-tag strong { display:block; margin-top:5px; font-size:14px; letter-spacing:-.02em; font-weight:500; }
.cw-visual-note { position:absolute; bottom:4px; font-size:8px; color:var(--muted); text-align:center; }
.cw-hero-bottom { display:flex; justify-content:space-between; padding-block:24px 32px; color:#aab4c3; border-bottom:1px solid var(--line); font-size:9px; }
.cw-hero-bottom a { display:flex; gap:28px; align-items:center; min-height:24px; }
.cw-section-top { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:52px; }
.cw-section-top>.cw-mono { color:#aab4c3; font-size:9px; text-align:right; }
.cw-perspective { border-bottom:1px solid var(--line); background:linear-gradient(145deg,#08151f,#050c14 65%); }
.cw-perspective h2 { font-size:clamp(44px,6.3vw,90px); }
.cw-perspective h2 span { color:#f5f8fc; }
.cw-perspective-bottom { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; margin-top:46px; }
.cw-perspective-bottom p { max-width:440px; font-size:14px; }
.cw-energy-track { height:9px; position:relative; background:repeating-linear-gradient(90deg,#263644 0 3px,transparent 3px 7px); }
.cw-energy-track>span { position:absolute; inset:0 30% 0 0; background:repeating-linear-gradient(90deg,var(--energy) 0 3px,transparent 3px 7px); }
.cw-energy-track i { position:absolute; width:5px; height:23px; top:-7px; left:70%; background:var(--energy); box-shadow:0 0 24px #8ce63a44; }
.cw-charging-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }
.cw-copy>p:not(.cw-eyebrow) { margin-top:26px; max-width:410px; font-size:14px; }
.cw-copy .cw-eyebrow { margin-bottom:28px; }
.cw-page .cw-footnote { color:var(--muted); font-size:11px!important; line-height:1.7; }
.cw-copy>.cw-footnote { max-width:370px; }
.cw-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:38px; min-height:44px; padding-bottom:8px; margin-top:25px; border-bottom:1px solid #208d73; font-size:12px; font-weight:600; transition:color .2s; }
.cw-text-link:hover { color:var(--accent); }
.cw-text-link span { color:var(--accent); }
.cw-instrument { padding:28px 32px; background:radial-gradient(ellipse at 80% 0,#2de8ca0b,transparent 60%),#0e1a27; border:1px solid #213241; border-radius:8px; }
.cw-instrument-head { display:flex; justify-content:space-between; gap:10px; color:var(--muted); font-size:8px; }
.cw-instrument-head>span:first-child { color:var(--energy); display:flex; align-items:center; gap:7px; }
.cw-charge-track { display:flex; align-items:center; gap:4px; margin:47px 0 30px; height:70px; position:relative; background:repeating-linear-gradient(90deg,#263644 0 6px,transparent 6px 11px); }
.cw-charge-track>span { width:72%; height:100%; background:repeating-linear-gradient(90deg,var(--charging) 0 6px,transparent 6px 11px); mask-image:linear-gradient(90deg,#0009,#000); }
.cw-charge-track b { position:absolute; right:10px; font-size:50px; color:var(--energy); font-weight:400; background:#0e1a27; padding:0 4px; }
.cw-instrument-title { display:flex; justify-content:space-between; align-items:end; gap:20px; padding-bottom:30px; }
.cw-instrument-title h3 { font-size:36px; letter-spacing:-.05em; font-weight:500; line-height:1.1; }
.cw-instrument-title>.cw-mono { font-size:8px; color:var(--muted); text-align:right; }
.cw-readouts { margin:0 0 22px; font-size:11px; }
.cw-readouts>div { display:flex; justify-content:space-between; gap:15px; padding:15px 0; border-top:1px solid var(--line); }
.cw-readouts dt { color:var(--muted); }
.cw-readouts dd { margin:0; text-align:right; }
.cw-insights { background:#0e1a27; border-block:1px solid var(--line); }
.cw-insights-heading,.cw-gallery-heading { display:flex; justify-content:space-between; gap:50px; align-items:end; margin-bottom:48px; }
.cw-insights-heading>p,.cw-gallery-heading>p { max-width:355px; font-size:14px; }
.cw-thermal { border:1px solid #213241; background:linear-gradient(150deg,#102232,#08151f); border-radius:7px; padding:34px 38px 24px; }
.cw-thermal-top { display:flex; justify-content:space-between; gap:20px; align-items:center; }
.cw-thermal-top p { color:var(--accent-2); font-size:9px; }
.cw-thermal-top h3 { font-size:24px; font-weight:500; letter-spacing:-.04em; margin-top:9px; }
.cw-chart-key { display:flex; align-items:center; gap:8px; font-size:10px; color:var(--muted); }
.cw-chart-key i { width:14px; height:2px; background:var(--accent-2); }
.cw-thermal-chart { margin-top:34px; }
.cw-axis { color:var(--muted); font-size:8px; }
.cw-thermal-chart svg { height:180px; width:100%; margin-top:12px; overflow:visible; }
.cw-temperature-path { fill:none; stroke:var(--accent-2); stroke-width:2; vector-effect:non-scaling-stroke; }
.cw-chart-labels { display:flex; justify-content:space-between; font-size:8px; color:var(--muted); margin-top:16px; }
.cw-thermal figcaption { color:var(--muted); font-size:10px; line-height:1.7; border-top:1px solid var(--line); margin-top:28px; padding-top:18px; max-width:100%; }
.cw-history-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:80px; align-items:center; }
.cw-history-grid>div>p { max-width:400px; font-size:14px; margin-top:18px; }
.cw-history-grid .cw-history-lead { font-size:17px; margin-top:28px; color:var(--ink); }
.cw-history-ledger { border-top:1px solid #213241; }
.cw-ledger-title { display:flex; justify-content:space-between; color:var(--accent); padding:20px 0; font-size:9px; }
.cw-history-ledger article { display:flex; align-items:center; gap:20px; border-bottom:1px solid var(--line); padding:29px 0; }
.cw-ledger-number { color:#7f8998; font:11px var(--mono); }
.cw-history-ledger h3 { font-size:16px; font-weight:500; letter-spacing:-.025em; }
.cw-history-ledger article p { font-size:11px; margin-top:6px; }
.cw-history-ledger article>span:last-child { margin-left:auto; font-size:23px; color:#aab4c3; }
.cw-tools { background:#08151f; border-block:1px solid var(--line); }
.cw-tools-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.cw-reminder-visual { text-align:center; border:1px solid var(--line); border-radius:50% 50% 8px 8px; padding:65px 24px 35px; background:radial-gradient(ellipse at 50% 25%,#2de8ca10,transparent 65%); }
.cw-bell { width:52px; height:52px; margin:0 auto 28px; stroke:var(--accent); fill:none; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.cw-reminder-visual>.cw-mono { color:var(--accent); font-size:9px; }
.cw-reminder-visual .cw-reminder-title { color:var(--ink); font-size:35px; font-weight:500; line-height:1.25; letter-spacing:-.05em; margin-top:18px; }
.cw-reminder-tags { display:flex; justify-content:center; gap:7px; flex-wrap:wrap; margin:30px 0 25px; }
.cw-reminder-tags span { padding:8px 12px; border:1px solid #213241; border-radius:3px; font-size:9px; color:#aab4c3; }
.cw-gallery[hidden] { display:none !important; }
.cw-gallery-rail { display:flex; gap:24px; overflow-x:auto; padding:8px 2px 24px; scroll-snap-type:x mandatory; scrollbar-color:#208d73 #102232; scrollbar-width:thin; }
.cw-gallery-rail figure { flex:0 0 280px; scroll-snap-align:start; }
.cw-gallery-rail figure>a { position:relative; display:block; overflow:hidden; border-radius:15px; border:1px solid #213241; transition:border-color .25s,transform .25s; }
.cw-gallery-rail figure>a:hover { transform:translateY(-5px); border-color:var(--accent); }
.cw-gallery-rail img { width:100%; height:auto; aspect-ratio:720/1279; }
.cw-gallery-rail a>span { position:absolute; right:12px; bottom:12px; display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--accent); color:#041016; }
.cw-gallery-rail figcaption { padding-top:23px; }
.cw-gallery-rail figcaption .cw-mono { color:var(--accent); font-size:8px; }
.cw-gallery-rail h3 { font-size:19px; font-weight:500; margin-top:9px; letter-spacing:-.035em; }
.cw-gallery-rail figcaption p { font-size:11px; margin-top:6px; }
.cw-gallery-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:23px; color:var(--muted); font-size:8px; }
.cw-closing { background:radial-gradient(ellipse at 95% 100%,#2de8ca20,transparent 60%),#0e1a27; border-block:1px solid #213241; padding:90px 0 60px; position:relative; }
.cw-closing::before { content:""; position:absolute; width:36%; top:0; right:0; bottom:0; background:repeating-linear-gradient(90deg,#2de8ca08 0 1px,transparent 1px 26px); mask-image:linear-gradient(90deg,transparent,#000); pointer-events:none; }
.cw-closing h2 { font-size:clamp(54px,7.8vw,110px); margin-top:25px; }
.cw-closing h2 span { color:var(--accent); }
.cw-closing-bottom { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-top:45px; }
.cw-coming { display:flex; align-items:center; gap:10px; font-size:13px; }
.cw-closing-bottom p { font-size:11px; margin-top:10px; }
.cw-other { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:40px; }
.cw-other>.cw-mono { color:var(--muted); font-size:8px; }
.cw-other nav { display:flex; flex-wrap:wrap; gap:8px 26px; font-size:11px; }
.cw-other nav a { display:flex; align-items:center; min-height:44px; }
.cw-other a:hover { color:var(--accent); }
.cw-page .footer-row { flex-wrap:wrap; }
.cw-lightbox { width:min(800px,calc(100% - 24px)); max-height:95svh; padding:18px 20px; border:1px solid #213241; border-radius:12px; background:#0e1a27; color:var(--ink); }
.cw-lightbox::backdrop { background:#020507eb; }
.cw-lightbox[open] { display:flex; flex-direction:column; }
.cw-lightbox-head,.cw-lightbox-bottom { display:flex; align-items:center; justify-content:space-between; gap:12px; flex:none; }
.cw-lightbox-head .cw-mono { font-size:9px; color:var(--accent); }
.cw-lightbox button { display:grid; place-items:center; flex:none; width:44px; height:44px; border:1px solid #213241; color:var(--ink); background:#102232; border-radius:50%; cursor:pointer; font-size:24px; }
.cw-lightbox button:hover { color:var(--accent); border-color:var(--accent); }
.cw-lightbox>img { display:block; max-width:100%; width:auto; min-height:0; object-fit:contain; margin:15px auto; }
.cw-lightbox-bottom>span { font-size:10px; text-align:center; color:var(--muted); }
@media (min-width:1600px) { .cw-hero-grid { min-height:800px; } }
@media (max-width:1100px) {
 .cw-shell { width:calc(100% - 64px); }
 .cw-hero-grid { gap:10px; min-height:690px; }
 .cw-hero-visual { height:690px; }
 .cw-page h1 { font-size:clamp(58px,7.7vw,84px); }
 .cw-device { transform:rotate(5deg) scale(.91); }
 .cw-signal-tag { left:8px; bottom:115px; padding:12px; }
 .cw-section { padding-block:85px; }
 .cw-charging-grid,.cw-tools-grid,.cw-history-grid { gap:45px; }
 .cw-instrument { padding:24px; }
 .cw-perspective-bottom { gap:60px; }
 .cw-brand .cw-mono { display:none; }
}
@media (max-width:800px) {
 .cw-shell { width:calc(100% - 48px); }
 .cw-hero-grid { grid-template-columns:1fr 1fr; gap:0; }
 .cw-page h1 { font-size:clamp(48px,7.8vw,65px); }
 .cw-lead { font-size:13px!important; }
 .cw-hero-copy .cw-eyebrow { max-width:260px; font-size:8px; }
 .cw-actions { align-items:start; gap:16px; flex-direction:column; margin-top:24px; }
 .cw-availability { display:flex; gap:12px; }
 .cw-hero-index { font-size:7px; gap:9px; margin-top:35px; }
 .cw-hero-visual { height:650px; }
 .cw-device { transform:rotate(4deg) scale(.82); }
 .cw-signal-tag { left:0; bottom:95px; }
 .cw-stage-label { top:14px; font-size:7px; }
 .cw-visual-note { max-width:220px; font-size:7px; bottom:6px; }
 .cw-charging-grid,.cw-tools-grid { gap:30px; }
 .cw-instrument-head { flex-wrap:wrap; }
 .cw-insights-heading,.cw-gallery-heading { align-items:start; gap:25px; }
 .cw-insights-heading>p,.cw-gallery-heading>p { max-width:300px; font-size:12px; }
 .cw-reminder-visual { padding-inline:18px; }
 .cw-reminder-visual .cw-reminder-title { font-size:28px; }
 .cw-history-grid { gap:35px; }
 .cw-other { align-items:start; flex-direction:column; }
}
@media (max-width:640px) {
 .cw-shell { width:calc(100% - 40px); }
 .cw-product-line { padding:23px 0; }
 .cw-brand { font-size:17px; }
 .cw-brand .cw-brand-icon { flex-basis:28px; width:28px; height:28px; }
 .cw-status { font-size:8px; gap:6px; }
 .cw-hero-grid { display:flex; flex-direction:column; align-items:stretch; }
 .cw-hero-copy { padding:30px 0 0; }
 .cw-page h1 { font-size:clamp(49px,12vw,76px); margin:22px 0; }
 .cw-hero-copy .cw-eyebrow { max-width:none; font-size:8px; }
 .cw-page .cw-lead { font-size:14px!important; max-width:410px; }
 .cw-actions { flex-direction:row; align-items:center; gap:19px; }
 .cw-button { min-height:52px; padding:14px 17px; font-size:11px; gap:22px; }
 .cw-availability { display:block; font-size:11px; }
 .cw-hero-index { margin-top:30px; font-size:8px; gap:13px; }
 .cw-hero-visual { height:650px; margin-top:22px!important; }
 .cw-device { transform:rotate(4deg) scale(.88); }
 .cw-stage-label { top:9px; right:0; }
 .cw-signal-tag { left:0; bottom:95px; }
 .cw-visual-note { bottom:3px; max-width:none; font-size:8px; }
 .cw-orbit { max-width:100%; }
 .cw-hero-bottom { font-size:7px; padding:22px 0; gap:20px; }
 .cw-hero-bottom a { gap:12px; }
 .cw-section { padding-block:64px; }
 .cw-page h2 { font-size:clamp(35px,9vw,52px); }
 .cw-section-top { align-items:start; margin-bottom:33px; gap:18px; }
 .cw-section-top .cw-eyebrow { font-size:9px; }
 .cw-section-top>.cw-mono { font-size:7px; max-width:115px; }
 .cw-perspective h2 { font-size:clamp(39px,10.3vw,62px); }
 .cw-perspective-bottom { grid-template-columns:1fr; gap:32px; margin-top:35px; }
 .cw-energy-track { margin-block:9px; }
 .cw-charging-grid,.cw-history-grid,.cw-tools-grid { grid-template-columns:1fr; gap:38px; }
 .cw-instrument { padding:24px; }
 .cw-instrument-head { flex-wrap:nowrap; font-size:7px; }
 .cw-copy>p:not(.cw-eyebrow) { margin-top:22px; }
 .cw-charge-track { margin-top:36px; }
 .cw-insights-heading,.cw-gallery-heading { flex-direction:column; gap:25px; margin-bottom:32px; }
 .cw-insights-heading>p,.cw-gallery-heading>p { max-width:420px; font-size:14px; }
 .cw-thermal { padding:23px 18px; }
 .cw-thermal-top { align-items:start; flex-direction:column; gap:15px; }
 .cw-thermal-top h3 { font-size:22px; }
 .cw-thermal-chart { margin-top:22px; }
 .cw-thermal-chart svg { height:150px; }
 .cw-chart-labels { font-size:6px; letter-spacing:.02em; }
 .cw-thermal figcaption { font-size:10px; }
 .cw-history-grid { gap:32px; }
 .cw-tools-grid .cw-copy { grid-row:1; }
 .cw-reminder-visual { max-width:440px; width:100%; margin-inline:auto; padding-top:50px; }
 .cw-reminder-visual .cw-reminder-title { font-size:32px; }
 .cw-gallery-rail { gap:18px; }
 .cw-gallery-rail figure { flex-basis:min(280px,85%); }
 .cw-gallery-bottom { font-size:7px; gap:24px; line-height:1.8; }
 .cw-gallery-bottom>span:last-child { text-align:right; }
 .cw-closing { padding:62px 0 40px; }
 .cw-closing h2 { font-size:clamp(46px,11.9vw,74px); }
 .cw-closing-bottom { flex-direction:column; align-items:start; margin-top:32px; gap:8px; }
 .cw-other { padding-block:28px; gap:14px; }
 .cw-other nav { gap:4px 20px; }
 .cw-lightbox { padding:10px 12px; }
 .cw-lightbox-head .cw-mono { font-size:8px; }
 .cw-lightbox-bottom>span { font-size:8px; }
}
@media (max-width:360px) {
 .cw-shell { width:calc(100% - 32px); }
 .cw-hero-visual { height:650px; }
 .cw-device { transform:rotate(3deg) scale(.8); }
 .cw-signal-tag { bottom:85px; padding:12px; }
 .cw-signal-tag strong { font-size:12px; }
 .cw-actions { gap:13px; }
 .cw-button { padding-inline:14px; gap:12px; }
 .cw-instrument { padding:20px; }
 .cw-instrument-title h3 { font-size:32px; }
}
@media (prefers-reduced-motion:no-preference) {
 .cw-hero-copy { animation:cw-enter .85s both; }
 .cw-hero-visual { animation:cw-enter 1.1s .1s both; }
 .cw-energy-track i { animation:cw-energy 4s ease-in-out infinite; }
 .cw-page .cw-reveal { transition:opacity .65s,transform .65s; }
 .cw-page .cw-reveal.cw-pending { opacity:0; transform:translateY(18px); }
 @keyframes cw-enter { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }
 @keyframes cw-energy { 50% { transform:translateX(-18px); opacity:.65; } }
}
@media (prefers-reduced-motion:reduce) {
 html[data-app="chargewise"] { scroll-behavior:auto; }
 .cw-page *, .cw-page *::before, .cw-page *::after { animation:none!important; transition:none!important; }
}
