/* Final layout pass: readable anchors, compact mobile entry, independent cases. */
:root{--anchor-offset:150px}
[id]{scroll-margin-top:var(--anchor-offset)}
.exec-case-grid{align-items:start}
.exec-case .exec-meta{display:block;min-height:3em}
.exec-case h3{min-height:2.1em;margin-top:20px}
nav .booking-nav a{color:var(--accent);font-weight:500}
nav .booking-nav a:hover,nav .booking-nav a:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:5px}
.nav-links,.exec-mobile{position:relative}
.exec-mobile{position:sticky}
.nav-marker{position:absolute;left:0;bottom:0;height:2px;list-style:none;pointer-events:none;background:var(--accent);width:var(--marker-width,0px);transform:translateX(var(--marker-x,0px));opacity:var(--marker-opacity,0);transition:transform .24s ease,width .24s ease,opacity .16s;box-shadow:none}
nav a[aria-current="location"],.exec-mobile a[aria-current="location"]{color:var(--accent)}
.hero-quicklinks{display:flex;gap:10px 22px;flex-wrap:wrap;margin:13px 0 18px;font:500 13px/1.6 var(--sans)}
.hero-quicklink{color:var(--muted);text-decoration:underline;text-decoration-color:#596372;text-underline-offset:4px;min-height:32px;display:inline-flex;align-items:center}
.hero-quicklink:hover,.hero-quicklink:focus-visible{color:var(--accent);text-decoration-color:currentColor}
.hero .btns [data-i="16"]{border-color:#87919f}
body:has(.motion-hero-grid) .hero h1{font-size:clamp(38px,4.65vw,65px)!important;letter-spacing:-.055em}
/* Body copy and data are crisp from their first visible frame. */
@keyframes polish-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.reveal{filter:none!important;scale:1!important}
@supports(animation-timeline:view()){
 .reveal{animation:polish-reveal linear both;animation-timeline:view();animation-range:entry 0% entry 25%}
}
#tools,#tools .product,#tools .poster-top,#tools .poster-title,#tools .poster-copy,#tools .poster-footer>*{font-family:var(--sans)}
#tools .product h3{font-weight:600;letter-spacing:-.04em}
#tools .product{cursor:default}
#tools .product:hover{transform:none;box-shadow:none}
#tools .product:focus-within{transform:translateY(-4px);box-shadow:0 14px 32px #0004}
#tools .product .product-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:12px}
#tools .product-actions button{font:500 12px/1.35 var(--sans);cursor:pointer;min-height:44px;padding:11px 13px;background:transparent;color:inherit;border:1px solid currentColor;border-radius:4px;transition:background-color .18s,transform .18s}
#tools .product-actions button[data-demo]{background:var(--shop-bg);border-color:var(--shop-bg);color:var(--shop-paper)}
#tools .product.electric .product-actions button[data-demo],#tools .product.graphite .product-actions button[data-demo]{background:var(--shop-lime);border-color:var(--shop-lime);color:var(--shop-bg)}
#tools .product-actions button:hover{transform:translateY(-2px)}
#tools .product-actions button:focus-visible{outline:2px solid currentColor;outline-offset:4px}
#tools .product-dialog[data-mode="info"] .frame{display:none}
#tools .product-dialog[data-mode="info"]{max-width:850px}
#tools .product-dialog[data-mode="demo"] .tool-info{max-width:none;margin-bottom:16px}
#tools .product-dialog[data-mode="demo"] .tool-info>p:not(.tnote),#tools .product-dialog[data-mode="demo"] .tlist{display:none}
#tools .product-dialog[data-mode="demo"] .tool-info>h3{font:600 25px/1.2 var(--sans);margin:0 0 10px}
#tools .product-dialog[data-mode="demo"] .tool-info .btns{margin:0 0 10px}
#tools .product-dialog[data-mode="demo"] .tool-info .btns a{font-size:12px;padding:7px 11px;min-height:36px;background:transparent;color:var(--ink);border-color:#596372}
#tools .product-dialog[data-mode="demo"] .tool-info .tnote{font-size:11px;line-height:1.5;margin:0;padding:8px 10px}
#tools .product-dialog[data-mode="demo"] .demo-start{display:none}
#tools .demo-start{font:500 14px var(--sans);cursor:pointer}
#tools .product-dialog .fbody{min-height:390px;height:65dvh}
#tools .product-dialog iframe{background:#101116}
#tools .product-dialog-top{margin-bottom:18px}
#tools .tool-info .btns{gap:10px}
@media(max-width:1100px){.exec-mobile{position:sticky}.exec-mobile a{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:6px 8px;min-height:40px}.exec-mobile{gap:4px;padding:6px 12px}}
@media(max-width:600px){
 .hero,.preview-badge+header.hero{padding-top:24px!important;padding-bottom:36px!important}
 .hero h1{font-size:42px!important}
 .hero .eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:14px}
 .hero .lead{font-size:15px;line-height:1.6;margin-bottom:20px}
 .hero .btns{display:flex;flex-direction:column;gap:9px;align-items:stretch;margin:0}
 .hero .btns>.btn{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;padding:11px 12px;font-size:13px}
 .hero-quicklinks{gap:8px 18px;margin:10px 0 14px;font-size:12px}
 .hero .facts{gap:6px;margin:0 0 12px}
 .hero .facts li{font-size:10px;padding:5px 7px}
 .hero-grid{gap:30px}
 .exec-case .exec-meta,.exec-case h3{min-height:0}
 .exec-case h3{margin-top:20px}
 .exec-case{padding:23px}
 .motion-hero-grid h1{font-size:39px!important}
 .exec-mobile a{font-size:11px;padding-inline:7px}
 #tools .product-actions{gap:8px}
 #tools .product-actions button{flex:1;min-width:100px;font-size:11px}
 #tools .product-dialog .fbody{min-height:370px;height:62dvh}
}
@media(prefers-reduced-motion:reduce){.nav-marker{transition:none}.reveal{animation:none!important;opacity:1!important;transform:none!important}.product-dialog{animation:none!important}}
@media print{.hero-quicklinks,.nav-marker{display:none!important}}
