.case-details{padding:0 0 96px}
.case-details .detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}
.detail-panel{background:var(--paper);padding:34px 34px 38px}
.detail-panel.graphite-panel{background:var(--graphite);color:var(--paper)}
.detail-panel h2{margin:0 0 20px;font-size:clamp(26px,3vw,42px);line-height:1;letter-spacing:-.045em}
.detail-panel p{max-width:68ch;margin:0 0 18px;color:var(--muted)}
.graphite-panel p{color:#a1a1a6}
.detail-list{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none}
.tech-tags + .detail-list{margin-top:26px}
.detail-list li{position:relative;padding-left:18px;color:var(--ink)}
.graphite-panel .detail-list li{color:#f5f5f7}
.detail-list li::before{content:"→";position:absolute;left:0;color:var(--orange);font-weight:700}
.detail-note{margin-top:22px!important;padding-top:18px;border-top:1px solid var(--line);font-size:13px}
.detail-panel .proof-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.detail-panel .proof-actions a{display:inline-flex;align-items:center;min-height:42px;padding:10px 14px;border:1px solid currentColor;color:inherit;text-decoration:none;font:700 11px/1 Arial,Helvetica,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.detail-panel .proof-actions a:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.case-content + .case-details{border-top:1px solid var(--line)}
.case-gallery{display:grid;gap:14px;margin-top:34px}
.case-gallery.gta-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-gallery.lr-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-shot{margin:0;min-width:0;border:1px solid var(--line);background:#111113;overflow:hidden}
.case-shot.wide{grid-column:1/-1}
.case-shot img{display:block;width:100%;height:100%;min-height:210px;object-fit:contain;background:#111113}
.case-shot img,.case-shot video,.case-feature-shot img,.case-feature-shot video{cursor:zoom-in}
.case-gallery.gta-gallery .case-shot img{aspect-ratio:16/9}
.case-gallery.lr-gallery .case-shot{grid-column:auto}
.case-gallery.lr-gallery .case-shot img{aspect-ratio:16/9;object-fit:cover}
.case-gallery.lr-gallery .case-shot.tall img{aspect-ratio:16/9;object-fit:cover}
.case-shot figcaption{padding:11px 13px;background:var(--paper2);color:var(--ink);font:700 10px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.07em;text-transform:uppercase}
.freelance-section .case-section-body>p{max-width:76ch}
.case-details{padding-top:42px}
.case-details>.container>.section-label{margin-bottom:22px;padding-bottom:13px}
.detail-panel .proof-actions a{background:transparent;transition:background-color .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease),transform .22s var(--ease),box-shadow .22s var(--ease)}
.detail-panel .proof-actions a:hover,.detail-panel .proof-actions a:focus-visible{background:var(--orange);border-color:var(--orange);color:#fff!important;transform:translateY(-2px);box-shadow:0 8px 0 rgba(41,151,255,.18)}
.case-nav a{display:block;position:relative;transition:background-color .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease),padding .22s var(--ease),transform .22s var(--ease)}
.case-nav a:hover,.case-nav a:focus-visible{background:var(--orange);color:#fff;border-color:var(--orange);padding-left:18px;padding-right:18px;transform:translateY(-3px)}
.case-nav a:hover small,.case-nav a:focus-visible small{color:#fff}
.case-media-photo{position:relative;background:#111113}
.case-feature-shot{position:relative;width:100%;height:100%;margin:0;background:#111113;overflow:hidden}
.case-feature-shot img{display:block;width:100%;height:100%;object-fit:cover}
.case-feature-shot figcaption{position:absolute;left:24px;bottom:24px;padding:10px 13px;background:rgba(17,17,19,.86);color:#fff;font:700 10px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){.case-details .detail-grid{grid-template-columns:1fr}.detail-panel{padding:28px 22px 32px}}
@media(max-width:700px){.case-gallery.gta-gallery,.case-gallery.lr-gallery{grid-template-columns:1fr}.case-shot.wide{grid-column:auto}.case-gallery.lr-gallery .case-shot.tall img{aspect-ratio:16/9}}
@media(max-width:600px){.case-details{padding-top:32px;padding-bottom:65px}.detail-panel h2{font-size:32px}.detail-list li{font-size:14px}.case-shot img{min-height:150px}.case-feature-shot img{object-fit:contain}.case-feature-shot figcaption{left:12px;bottom:12px}}

.media-viewer[hidden]{display:none}
.media-viewer{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:clamp(16px,4vw,60px);color:#fff;opacity:0;transition:opacity .18s ease}
.media-viewer.is-open{opacity:1}
.media-viewer-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.96);cursor:default}
.media-viewer-panel{position:relative;z-index:1;width:min(1400px,100%);height:min(calc(100dvh - 24px),920px);display:grid;grid-template-columns:58px minmax(0,1fr) 58px;grid-template-rows:40px minmax(0,1fr) 30px;align-items:center;gap:0 12px}
.media-viewer-toolbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}
.media-viewer-counter{font:700 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;color:#a1a1a6}
.media-viewer-close,.media-viewer-arrow{border:1px solid rgba(255,255,255,.42);background:rgba(20,20,20,.7);color:#fff;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}
.media-viewer-close{width:42px;height:42px;font-size:30px;line-height:1;font-weight:300}
.media-viewer-arrow{width:46px;height:64px;padding:0;display:grid;place-items:center;align-self:center;font-size:0;font-weight:300;line-height:1}
.media-viewer-arrow>span{display:block;font-size:46px;line-height:1;transform:translateY(-4px)}
.media-viewer-close:hover,.media-viewer-close:focus-visible,.media-viewer-arrow:hover,.media-viewer-arrow:focus-visible{background:var(--orange);border-color:var(--orange);color:#fff}
.media-viewer-arrow:hover{transform:translateY(-2px)}
.media-viewer-stage{grid-column:2;grid-row:2;min-width:0;min-height:0;width:100%;height:100%;display:grid;place-items:center;overflow:hidden;touch-action:pan-y}
.media-viewer-content{display:block;max-width:100%;max-height:calc(100dvh - 96px);width:auto;height:auto;object-fit:contain;background:#111113;cursor:default!important}
.media-viewer-stage video.media-viewer-content{width:min(100%,1200px);height:auto}
.media-viewer-prev{grid-column:1;grid-row:2}.media-viewer-next{grid-column:3;grid-row:2}
.media-viewer-caption{grid-column:1/-1;min-height:26px;padding-top:12px;text-align:center;color:#a1a1a6;font:700 11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}
.case-metrics{border-left:0;overflow:hidden}
.case-metrics>div{min-width:0}
.case-metrics>div:first-child{border-left:1px solid var(--ink)}
.case-metrics span{display:block;white-space:normal;overflow-wrap:anywhere}
.v-row p a{color:var(--orange);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .18s ease,background-color .18s ease}
.v-row p a:hover,.v-row p a:focus-visible{color:#fff;background:var(--orange);text-decoration-color:#fff;outline-offset:2px}
.footer-bottom span:last-child{display:none}
.footer-bottom{justify-content:flex-start}
.footer-statement{justify-content:space-between;gap:clamp(18px,5vw,96px);flex-wrap:nowrap;font-size:clamp(13px,3.2vw,42px);letter-spacing:clamp(.04em,.14vw,.16em)}
.footer-statement span{display:block!important;white-space:nowrap;min-width:0}
@media(max-width:600px){.media-viewer{padding:12px}.media-viewer-panel{height:calc(100dvh - 24px);grid-template-columns:40px minmax(0,1fr) 40px;grid-template-rows:36px minmax(0,1fr) 28px;gap:0 6px}.media-viewer-arrow{width:36px;height:54px;padding:0;font-size:0}.media-viewer-arrow>span{font-size:38px;transform:translateY(-3px)}.media-viewer-content{max-width:100%;max-height:calc(100dvh - 82px)}.media-viewer-caption{font-size:9px}.footer-statement{font-size:clamp(13px,3.9vw,22px);gap:8px;letter-spacing:.06em}}

/* 2.3.7: full-height media viewer; media is constrained by the stage, not the viewport alone. */
.media-viewer{
  padding:clamp(12px,2vw,32px);
}
.media-viewer-panel{
  width:min(1600px,100%);
  height:calc(100dvh - clamp(24px,4vw,64px));
  max-height:none;
  grid-template-columns:58px minmax(0,1fr) 58px;
  grid-template-rows:44px minmax(0,1fr) 34px;
  gap:0 12px;
}
.media-viewer-stage{
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  overflow:hidden;
}
.media-viewer-content{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.footer-statement{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:space-between;
  gap:clamp(8px,2vw,36px);
  font-size:clamp(15px,5vw,58px);
  letter-spacing:.08em;
  line-height:.9;
}
.footer-statement span,
.footer-statement span:nth-child(2),
.footer-statement span:nth-child(3){
  display:block!important;
  min-width:0;
  white-space:nowrap;
}
@media(max-width:600px){
  .media-viewer{padding:12px;}
  .media-viewer-panel{
    height:calc(100dvh - 24px);
    grid-template-columns:40px minmax(0,1fr) 40px;
    grid-template-rows:40px minmax(0,1fr) 30px;
    gap:0 6px;
  }
  .media-viewer-content{max-width:100%;max-height:100%;}
  .footer-statement{font-size:clamp(15px,5vw,22px);gap:8px;letter-spacing:.06em;}
}

/* 2.4.0 Route Engine: autonomous autoplay live-navigation demo reconstructed from the working route-web UI language. */
.route-live-demo{padding:8px 0 92px;border-top:1px solid var(--line)}
.route-live-demo .section-label{margin-bottom:24px}
.route-demo-shell{position:relative;--rd-bg:#050506;--rd-panel:#111113;--rd-panel2:#1c1c1e;--rd-line:rgba(255,255,255,.10);--rd-text:#f5f5f7;--rd-muted:#86868b;--rd-accent:#2997ff;--rd-blue:#2997ff;--rd-route:#8e8e93;--rd-live:#2997ff;overflow:hidden;border:1px solid #2c2c2e;border-radius:18px;background:var(--rd-bg);color:var(--rd-text);box-shadow:0 24px 70px rgba(16,16,16,.18);font-family:Arial,Helvetica,sans-serif}
.route-demo-shell *{box-sizing:border-box}
.route-demo-topbar{display:grid;grid-template-columns:1.4fr .7fr 1fr auto;gap:1px;background:var(--rd-line);border-bottom:1px solid var(--rd-line)}
.route-demo-field,.route-demo-live-pill{min-height:70px;background:#0b0b0d;padding:13px 16px;display:flex;flex-direction:column;justify-content:center}
.route-demo-field small{margin-bottom:5px;color:#86868b;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
.route-demo-field strong{font-size:13px;letter-spacing:.015em}
.route-demo-live-pill{min-width:176px;flex-direction:row;align-items:center;gap:8px;white-space:nowrap}
.route-demo-live-pill i{width:8px;height:8px;border-radius:50%;background:#30d158;box-shadow:0 0 0 5px rgba(48,209,88,.10)}
.route-demo-live-pill span{font:900 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}
.route-demo-live-pill b{margin-left:auto;color:#9ed7b3;font-size:11px}
.route-demo-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(330px,.78fr);min-height:570px}
.route-demo-map{position:relative;min-height:570px;overflow:hidden;background:#0d0d0f;border-right:1px solid var(--rd-line)}
.route-demo-map-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.route-demo-map-bg{fill:#0d0d0f}
.route-demo-blocks{fill:none;stroke:#171719;stroke-width:52;opacity:.72}
.route-demo-roads-minor{fill:none;stroke:#2c2c2e;stroke-width:8;stroke-linecap:round;opacity:.78}
.route-demo-roads-major{fill:none;stroke:#48484a;stroke-width:16;stroke-linecap:round;opacity:.9}
.route-demo-route-underlay{fill:none;stroke:#111113;stroke-width:14;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.route-demo-route-line{fill:none;stroke:var(--rd-route);stroke-width:8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(142,142,147,.18));transition:stroke .25s ease}
.route-demo-live-line{fill:none;stroke:var(--rd-live);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(41,151,255,.28));transition:d .25s ease,opacity .2s ease}
.route-demo-stop circle{fill:#111113;stroke:#fff;stroke-width:3}
.route-demo-stop text{fill:#fff;font:900 12px Arial;text-anchor:middle;pointer-events:none}
.route-demo-stop.is-done circle{fill:#1f6f3e;stroke:#9ed7b3}.route-demo-stop.is-active circle{fill:#2997ff;stroke:#d6eaff}.route-demo-stop.is-upcoming{opacity:.78}
.route-demo-gps{filter:drop-shadow(0 6px 10px rgba(0,0,0,.55));transition:opacity .2s ease}
.route-demo-gps-ring{fill:#2997ff;stroke:#fff;stroke-width:4}.route-demo-gps-core{fill:#2997ff}.route-demo-gps path{fill:#fff}
.route-demo-distance-chip{position:absolute;z-index:3;left:50%;top:14px;transform:translateX(-50%);display:flex;align-items:baseline;gap:7px;max-width:65%;padding:8px 13px;border:1px solid rgba(41,151,255,.42);border-radius:999px;background:rgba(13,13,15,.88);box-shadow:0 5px 18px rgba(0,0,0,.42);backdrop-filter:blur(8px);white-space:nowrap}
.route-demo-distance-chip strong{color:#f5f5f7;font-size:12px}.route-demo-distance-chip span{color:#8e8e93;font-size:10px}
.route-demo-map-controls{position:absolute;z-index:3;right:12px;top:12px;display:grid;gap:6px}
.route-demo-map-controls span{display:grid;width:39px;height:39px;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:11px;background:rgba(10,10,10,.86);box-shadow:0 5px 18px rgba(0,0,0,.42);color:#fff}
.route-demo-map-controls span.is-active{border-color:rgba(41,151,255,.78);background:rgba(22,61,104,.92);color:#64b5ff}
.route-demo-map-controls svg,.route-demo-gps-quality svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.route-demo-reroute{position:absolute;z-index:4;left:18px;top:18px;display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid rgba(41,151,255,.55);border-radius:10px;background:rgba(16,34,54,.92);color:#d6eaff;font:900 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em;box-shadow:0 7px 22px rgba(0,0,0,.36)}
.route-demo-reroute[hidden]{display:none}.route-demo-reroute i{width:9px;height:9px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:route-demo-spin .8s linear infinite}
.route-demo-map-caption{position:absolute;z-index:2;left:14px;bottom:12px;padding:6px 8px;background:rgba(5,5,5,.72);color:#86868b;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}
.route-demo-side{display:flex;flex-direction:column;gap:10px;padding:10px;background:#050506}
.route-demo-next-card,.route-demo-eta,.route-demo-stops{border:1px solid var(--rd-line);border-radius:14px;background:#101010}
.route-demo-next-card{padding:12px}
.route-demo-next-title{display:grid;grid-template-columns:36px minmax(0,1fr) 30px;gap:10px;align-items:center}
.route-demo-order{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:#2997ff;color:#fff;font-weight:900;font-size:13px}
.route-demo-next-title>div{min-width:0}.route-demo-next-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.route-demo-next-title small{display:block;margin-top:4px;color:#a1a1a6;font-size:11px}
.route-demo-gps-quality{display:grid;width:30px;height:30px;place-items:center;border:1px solid rgba(48,209,88,.42);border-radius:50%;background:rgba(20,20,22,.82);color:#9ed7b3}
.route-demo-navigation-summary{display:grid;gap:8px;margin-top:9px;padding:8px 9px;border:1px solid rgba(41,151,255,.24);border-radius:11px;background:rgba(41,151,255,.10)}
.route-demo-navigation-summary>span{color:#f5f5f7;font-size:11px;line-height:1.35}.route-demo-navigation-summary>div{display:flex;gap:6px;flex-wrap:wrap}
.route-demo-navigation-summary b,.route-demo-navigation-summary small{display:inline-flex;min-height:22px;align-items:center;padding:3px 7px;border-radius:999px;background:rgba(28,28,30,.88);font-size:10px;font-weight:900;line-height:1;white-space:nowrap}
.route-demo-navigation-summary b{color:#64b5ff}.route-demo-navigation-summary small{color:#9ed7b3}
.route-demo-eta{display:grid;grid-template-columns:1fr 1fr;gap:1px;overflow:hidden;background:var(--rd-line)}
.route-demo-eta>div{min-height:67px;padding:10px 11px;background:linear-gradient(135deg,rgba(41,151,255,.08),#0f0f0f);display:grid;align-content:center;gap:4px}
.route-demo-eta span{color:#86868b;font:800 8px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em}.route-demo-eta strong{font-size:13px;color:#f5f5f7}
.route-demo-stops{overflow:hidden}.route-demo-stops-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--rd-line)}
.route-demo-stops-head span,.route-demo-stops-head b{font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.route-demo-stops-head b{color:#64b5ff}
.route-demo-stop-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;padding:8px 11px;border-bottom:1px solid rgba(255,255,255,.06);opacity:.56;transition:opacity .2s ease,background .2s ease}
.route-demo-stop-row:last-child{border-bottom:0}.route-demo-stop-row i{display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;font-style:normal;font-size:10px;font-weight:900}
.route-demo-stop-row span{min-width:0}.route-demo-stop-row b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.route-demo-stop-row small{display:block;color:#86868b;font-size:9px;margin-top:2px}
.route-demo-stop-row.is-done{opacity:.76}.route-demo-stop-row.is-done i{border-color:#2f8f4e;background:#1f6f3e;color:#d9f7e2}.route-demo-stop-row.is-active{opacity:1;background:rgba(41,151,255,.12)}.route-demo-stop-row.is-active i{border-color:#2997ff;background:#2997ff;color:#fff}
.route-demo-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:auto;align-items:stretch}
.route-demo-actions button{min-height:44px;padding:9px 12px;border:1px solid var(--rd-accent);border-radius:11px;background:var(--rd-accent);color:#fff;font-size:10px;font-weight:900;pointer-events:none;transition:transform .16s ease,filter .16s ease,background .16s ease}
.route-demo-actions button.is-pressed{transform:translateY(2px) scale(.985);filter:brightness(.78)}
.route-demo-actions button.is-done{background:#1f5f36;border-color:#2f8f4e;color:#d9f7e2}
.route-demo-auto-state{display:flex;min-height:44px;align-items:center;gap:8px;padding:9px 11px;border:1px solid rgba(41,151,255,.22);border-radius:11px;background:rgba(41,151,255,.08);color:#64b5ff;white-space:nowrap}
.route-demo-auto-state i{width:8px;height:8px;border-radius:50%;background:#2997ff;box-shadow:0 0 0 0 rgba(41,151,255,.35);animation:route-demo-pulse 1.6s ease-out infinite}
.route-demo-auto-state span{font:900 8px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em}
.route-demo-autocursor{position:absolute;z-index:30;left:0;top:0;width:22px;height:27px;opacity:0;pointer-events:none;transform:translate(0,0);transition:transform .48s cubic-bezier(.22,.75,.18,1),opacity .18s ease;filter:drop-shadow(0 4px 7px rgba(0,0,0,.58))}
.route-demo-autocursor.is-visible{opacity:1}
.route-demo-autocursor span{display:block;width:18px;height:23px;background:#fff;clip-path:polygon(0 0,0 100%,5px 76%,9px 100%,13px 98%,9px 74%,18px 74%);transform-origin:3px 3px;transition:transform .12s ease}
.route-demo-autocursor.is-clicking span{transform:scale(.82)}
.route-demo-footnote{display:flex;gap:14px;align-items:flex-start;padding:11px 14px;border-top:1px solid var(--rd-line);background:#0b0b0d;color:#86868b;font-size:10px;line-height:1.4}
.route-demo-footnote b{color:#f5f5f7;font:900 9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;white-space:nowrap}
.route-demo-shell[data-state="rerouting"] .route-demo-route-line{stroke:#2997ff}.route-demo-shell[data-state="rerouting"] .route-demo-live-pill i{background:#2997ff}.route-demo-shell[data-state="complete"] .route-demo-live-pill i{background:#30d158}.route-demo-shell[data-state="complete"] .route-demo-navigation-summary{border-color:rgba(48,209,88,.28);background:rgba(48,209,88,.09)}
@keyframes route-demo-spin{to{transform:rotate(360deg)}}
@keyframes route-demo-pulse{0%{box-shadow:0 0 0 0 rgba(41,151,255,.35)}70%,100%{box-shadow:0 0 0 8px rgba(41,151,255,0)}}
@media(max-width:1050px){.route-demo-grid{grid-template-columns:1fr}.route-demo-map{min-height:460px;border-right:0;border-bottom:1px solid var(--rd-line)}.route-demo-side{min-height:0}.route-demo-actions{margin-top:0}}
@media(max-width:700px){.route-live-demo{padding-bottom:64px}.route-demo-topbar{grid-template-columns:1fr 1fr}.route-demo-live-pill{min-width:0}.route-demo-grid{min-height:0}.route-demo-map{min-height:390px}.route-demo-distance-chip{left:44%;max-width:62%;padding-inline:10px}.route-demo-distance-chip span{display:none}.route-demo-side{padding:8px}.route-demo-actions{grid-template-columns:1fr}.route-demo-auto-state{justify-content:center}.route-demo-footnote{display:grid;gap:5px}}
@media(max-width:480px){.route-demo-field,.route-demo-live-pill{min-height:61px;padding:10px}.route-demo-field strong{font-size:10px}.route-demo-live-pill span{font-size:9px}.route-demo-live-pill b{font-size:9px}.route-demo-map{min-height:340px}.route-demo-distance-chip{top:10px;left:41%}.route-demo-map-controls{top:9px;right:9px}.route-demo-map-controls span{width:35px;height:35px}.route-demo-reroute{left:10px;top:55px;font-size:8px}.route-demo-next-title strong{font-size:11px}.route-demo-eta>div{min-height:60px}}
@media(prefers-reduced-motion:reduce){.route-demo-reroute i,.route-demo-auto-state i{animation:none}.route-demo-actions button,.route-demo-autocursor{transition:none}}


/* 2.5.1 — Apple-inspired premium palette for case media and live demo. */
.detail-panel{background:#0b0b0d}.detail-panel.graphite-panel{background:#000;color:#f5f5f7}.graphite-panel p{color:#a1a1a6}
.case-shot,.case-shot img,.case-media-photo,.case-feature-shot{background:#111113}
.detail-panel .proof-actions a:hover,.detail-panel .proof-actions a:focus-visible,.case-nav a:hover,.case-nav a:focus-visible,.media-viewer-close:hover,.media-viewer-close:focus-visible,.media-viewer-arrow:hover,.media-viewer-arrow:focus-visible{background:#2997ff;border-color:#2997ff;color:#fff!important;box-shadow:none}
.media-viewer-close,.media-viewer-arrow{border-color:rgba(255,255,255,.22);background:rgba(28,28,30,.76);color:#f5f5f7}
.media-viewer-counter,.media-viewer-caption{color:#a1a1a6}
.route-demo-shell{border-color:#2c2c2e;background:#050506;box-shadow:0 28px 80px rgba(0,0,0,.38)}
.route-demo-field,.route-demo-live-pill,.route-demo-footnote{background:#0b0b0d}
.route-demo-map{background:#0d0d0f}.route-demo-map-bg{fill:#0d0d0f}.route-demo-blocks{stroke:#171719}.route-demo-roads-minor{stroke:#2c2c2e}.route-demo-roads-major{stroke:#48484a}.route-demo-route-underlay{stroke:#111113}
.route-demo-stop circle{fill:#111113;stroke:#f5f5f7}.route-demo-stop.is-active circle{fill:#2997ff;stroke:#d6eaff}.route-demo-order{background:#2997ff}
.route-demo-map-controls span.is-active{border-color:rgba(41,151,255,.72);background:rgba(41,151,255,.14);color:#64b5ff}
.route-demo-navigation-summary,.route-demo-auto-state{border-color:rgba(41,151,255,.22);background:rgba(41,151,255,.08);color:#64b5ff}
.route-demo-navigation-summary b,.route-demo-stops-head b{color:#64b5ff}.route-demo-navigation-summary>span{color:#d6eaff}
.route-demo-stop-row.is-active{background:rgba(41,151,255,.12)}.route-demo-stop-row.is-active i{border-color:#2997ff;background:#2997ff;color:#fff}
.route-demo-actions button{background:#2997ff;border-color:#2997ff}.route-demo-auto-state i{background:#2997ff}
.route-demo-shell[data-state="rerouting"] .route-demo-route-line,.route-demo-shell[data-state="rerouting"] .route-demo-live-pill i{stroke:#2997ff;background:#2997ff}

/* 2.5.1: restrained emphasis for HR-relevant scale, revenue and performance metrics. */
.metric-highlight{display:inline;font-weight:800;color:#f5f5f7;padding:0 .06em;box-shadow:inset 0 -.28em 0 rgba(41,151,255,.22);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.metric-highlight.metric-multiplier{color:#64b5ff;box-shadow:inset 0 -.22em 0 rgba(41,151,255,.12)}


/* 2.6.4 — light site palette for case-study chrome; embedded product demo/viewer keep their native dark UI. */
html[data-theme="light"] .detail-panel{background:#f5f7fa;color:#111827}
html[data-theme="light"] .detail-panel.graphite-panel{background:#eaf1f8;color:#111827}
html[data-theme="light"] .detail-panel p,html[data-theme="light"] .graphite-panel p{color:#5d6775}
html[data-theme="light"] .detail-list li,html[data-theme="light"] .graphite-panel .detail-list li{color:#111827}
html[data-theme="light"] .case-shot{border-color:#d8e1eb;background:#edf2f7}
html[data-theme="light"] .case-shot img,html[data-theme="light"] .case-media-photo,html[data-theme="light"] .case-feature-shot{background:#edf2f7}
html[data-theme="light"] .case-shot figcaption{background:#fff;color:#111827}
html[data-theme="light"] .detail-panel .proof-actions a{border-color:#aebdcd;color:#111827}
html[data-theme="light"] .detail-panel .proof-actions a:hover,html[data-theme="light"] .detail-panel .proof-actions a:focus-visible,html[data-theme="light"] .case-nav a:hover,html[data-theme="light"] .case-nav a:focus-visible{background:#0071e3;border-color:#0071e3;color:#fff!important}
html[data-theme="light"] .metric-highlight{color:#111827;box-shadow:inset 0 -.28em 0 rgba(0,113,227,.16)}
html[data-theme="light"] .metric-highlight.metric-multiplier{color:#0065c9;box-shadow:inset 0 -.22em 0 rgba(0,113,227,.10)}
