/* zh-v2: Oct 30 2026 approved design pass. Built on the live site tokens (var(--card), var(--border), var(--accent)...). */
.mk-wrap{width:min(100% - 2rem,72rem);margin:clamp(2.75rem,7vw,5.5rem) auto;position:relative;z-index:10}
.mk-narrow{width:min(100% - 2rem,46rem)}
.mk-hero{padding:clamp(5.5rem,11vw,8rem) 1.25rem clamp(2rem,5vw,3.5rem);text-align:center;position:relative;z-index:10}
.mk-hero h1{margin:0 auto;max-width:18ch;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.04;font-weight:600;letter-spacing:-0.03em;text-wrap:balance}
.mk-hero .mk-sub{margin:1rem auto 0;max-width:40rem;color:var(--muted-foreground);font-size:clamp(1rem,1.6vw,1.12rem);line-height:1.55}
.mk-hero .mk-credit{margin:.6rem 0 0;font-size:.85rem;color:var(--muted-foreground)}
.mk-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.6rem}
.mk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.7rem 1.3rem;border-radius:.875rem;font-weight:600;font-size:.95rem;border:1px solid var(--border);color:var(--foreground);background:transparent;text-decoration:none}
.mk-btn--primary{background:var(--primary);color:var(--primary-foreground);border-color:transparent}
.mk-btn:hover{border-color:color-mix(in oklab,var(--accent) 60%,transparent)}
.mk-trust{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;justify-content:center;align-items:center;margin-top:1.4rem;font-size:.85rem;color:var(--muted-foreground)}
.mk-strip{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-radius:1rem;border:1px solid color-mix(in oklab,var(--accent) 45%,transparent);background:linear-gradient(90deg,color-mix(in oklab,var(--accent) 22%,var(--card)),var(--card))}
.mk-strip p{margin:0}.mk-strip strong{font-size:1.05rem}
.mk-strip a{font-weight:600;text-decoration:underline;text-underline-offset:.25em}
.mk-grid{display:grid;gap:1rem}
.mk-g2{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-g3{grid-template-columns:repeat(3,minmax(0,1fr))}.mk-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mk-card{border:1px solid var(--border);border-radius:1rem;padding:clamp(1.1rem,2vw,1.5rem);background:linear-gradient(to bottom right,color-mix(in oklab,var(--accent) 10%,transparent) 0%,var(--card) 50%,var(--card) 100%);box-shadow:0 1px 3px rgb(0 0 0/.1)}
.mk-card h3{margin:.2rem 0 .4rem;font-size:1.22rem;line-height:1.2;font-weight:600}
.mk-card p{margin:0;color:var(--muted-foreground);font-size:.94rem;line-height:1.5}
.mk-card .mk-price{margin-top:.9rem;font-weight:600;color:var(--foreground)}
.mk-card .mk-price del{color:var(--muted-foreground);font-weight:500;margin-left:.35rem;font-size:.9em}
.mk-card .mk-link{display:inline-block;margin-top:.9rem;font-weight:600;font-size:.92rem;text-decoration:underline;text-underline-offset:.25em}
.mk-icon{display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:.75rem;border:1px solid var(--border);background:color-mix(in oklab,var(--background) 85%,transparent);color:color-mix(in oklab,var(--accent) 55%,var(--foreground));font-weight:700;font-size:.9rem;margin-bottom:.6rem}
.mk-list{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.4rem}
.mk-list li{display:flex;gap:.55rem;font-size:.92rem;line-height:1.4;color:color-mix(in oklab,var(--foreground) 82%,transparent)}
.mk-list li::before{content:"";flex:none;width:.42rem;height:.42rem;margin-top:.4rem;border-radius:999px;background:#8ea2ff}
.mk-who{margin-top:.5rem;font-size:.86rem;color:var(--muted-foreground)}
.mk-who b{color:var(--foreground);font-weight:600}
.mk-row{display:flex;flex-wrap:wrap;gap:.5rem}
.mk-chip{display:inline-flex;padding:.4rem .8rem;border-radius:999px;border:1px solid var(--border);font-size:.84rem;color:var(--foreground);background:color-mix(in oklab,var(--card) 70%,transparent);text-decoration:none}
.mk-chip.is-on{background:var(--accent);border-color:var(--accent);color:#fff}
.mk-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:1rem;background:var(--card)}
.mk-table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:40rem}
.mk-table th,.mk-table td{padding:1rem 1.1rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.mk-table thead th{background:color-mix(in oklab,var(--accent) 12%,var(--card));font-size:.78rem;letter-spacing:.07em;text-transform:uppercase}
.mk-table tbody th{width:20%;font-weight:600;color:var(--foreground)}
.mk-table td{color:color-mix(in oklab,var(--foreground) 85%,transparent)}
.mk-table tr:last-child th,.mk-table tr:last-child td{border-bottom:0}
.mk-table .mk-big{font-size:1.6rem;font-weight:700;line-height:1.1;color:var(--foreground)}
.mk-table .mk-big del{display:block;font-size:.95rem;font-weight:500;color:var(--muted-foreground)}
.mk-table .mk-list{margin:0}
.mk-ph{display:none!important;;padding:.1rem .45rem;border-radius:.4rem;border:1px dashed #f5c542;color:#f5c542;font-size:.82em;font-weight:600;background:rgb(245 197 66/.08)}
.mk-rating{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center}
.mk-rating .mk-score{font-size:2.6rem;font-weight:700;line-height:1}
.mk-stars{color:#fbbc05;letter-spacing:.1em;font-size:1.1rem}
.mk-quote{margin:0;font-size:1rem;line-height:1.6;color:var(--foreground)}
.mk-quote-by{margin-top:.8rem;font-size:.86rem;color:var(--muted-foreground)}
.mk-quote-by b{color:var(--foreground)}
.mk-answer{border-left:3px solid var(--accent);padding:1rem 1.25rem;border-radius:0 1rem 1rem 0;background:color-mix(in oklab,var(--accent) 10%,var(--card))}
.mk-answer p{margin:0;font-size:1.05rem;line-height:1.6}
.mk-prose{font-size:1.06rem;line-height:1.75;color:color-mix(in oklab,var(--foreground) 86%,transparent)}
.mk-prose h2{margin:2.4rem 0 .6rem;font-size:clamp(1.45rem,2.6vw,1.9rem);line-height:1.2;color:var(--foreground);font-weight:600}
.mk-prose p{margin:0 0 1.1rem}
.mk-prose a{text-decoration:underline;text-underline-offset:.2em}
.mk-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;justify-content:center;margin-top:1rem;font-size:.85rem;color:var(--muted-foreground)}
.mk-author{display:flex;gap:1rem;align-items:center}
.mk-mono{flex:none;display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:var(--accent);color:#fff;font-weight:700}
.mk-steps{display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}
.mk-dir-search{display:flex;gap:.6rem;flex-wrap:wrap}
.mk-input{flex:1 1 16rem;min-height:2.9rem;border-radius:.875rem;border:1px solid var(--border);background:var(--card);color:var(--foreground);padding:.6rem 1rem;font:inherit}
.mk-listing{display:grid;grid-template-columns:3.2rem 1fr;gap:.9rem;align-items:start}
.mk-logo{width:3.2rem;height:3.2rem;border-radius:.8rem;display:grid;place-items:center;font-weight:700;background:color-mix(in oklab,var(--accent) 30%,var(--card));border:1px solid var(--border)}
.mk-tag{display:inline-block;margin-top:.5rem;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#8ea2ff}
.mk-split{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:2.5rem;align-items:start}
.mk-aside{position:sticky;top:5rem;display:grid;gap:1rem}

@media (max-width:1023px){.mk-g4{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-g3{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-split{grid-template-columns:1fr}.mk-aside{position:static}}
@media (max-width:680px){.mk-g2,.mk-g3,.mk-g4,.mk-steps{grid-template-columns:1fr}.mk-strip{flex-direction:column;align-items:flex-start}.mk-actions .mk-btn{flex:1 1 100%}}
.mk-hero p,.mk-hero .mk-credit{margin-left:auto;margin-right:auto;text-align:center;max-width:40rem}
.mk-trust{width:min(100%,46rem);margin-left:auto;margin-right:auto}
.mk-trust>*{margin:0!important;position:static!important;transform:none!important}

.mk-only-m{display:none}
@media (max-width:680px){.mk-only-d{display:none}.mk-only-m{display:grid}}

/* ---------- Footer (multi-column) ---------- */
.zf{position:relative;z-index:10;border-top:1px solid var(--border);margin-top:3rem}
.zf-in{width:min(100% - 2rem,72rem);margin:0 auto;padding:3.5rem 0 1.5rem}
.zf-grid{display:grid;grid-template-columns:1.5fr repeat(3,minmax(0,1fr)) 1.3fr;gap:2rem 2.25rem}
.zf-brand .zh-brand-logo{display:inline-block;width:12.5rem}
.zf-blurb{margin:1rem 0 0;font-size:.9rem;line-height:1.6;color:var(--muted-foreground);max-width:22rem}
.zf-social{display:flex;gap:.75rem;align-items:center;margin-top:1.1rem}
.zf h3{margin:0 0 .9rem;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--foreground);font-weight:600}
.zf ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.zf ul a{font-size:.9rem;color:var(--muted-foreground);text-decoration:none;transition:color .2s}
.zf ul a:hover,.zf-contact a:hover{color:var(--foreground)}
.zf-contact{display:grid;gap:.55rem;font-size:.9rem;color:var(--muted-foreground)}
.zf-contact a{color:var(--muted-foreground);text-decoration:none}
.zf-card{margin-top:1.1rem;display:flex;gap:.75rem;align-items:center;padding:.8rem .9rem;border:1px solid var(--border);border-radius:1rem;background:linear-gradient(to bottom right,color-mix(in oklab,var(--accent) 10%,transparent),var(--card) 60%)}
.zf-card .mk-mono{width:2.5rem;height:2.5rem;font-size:.85rem}
.zf-card p{margin:0;font-size:.82rem;line-height:1.35;color:var(--muted-foreground)}
.zf-card b{display:block;color:var(--foreground);font-size:.9rem}
.zf-cta{display:inline-flex;margin-top:1rem;min-height:2.5rem;align-items:center;padding:.55rem 1.1rem;border-radius:.875rem;background:var(--primary);color:var(--primary-foreground)!important;font-weight:600;font-size:.9rem;text-decoration:none}
.zf-bottom{margin-top:2.75rem;padding-top:1.25rem;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--muted-foreground)}
.zf-bottom nav ul{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.zf-bottom nav ul a{font-size:.8rem}
.zf-bottom p{margin:0}
@media (max-width:1023px){.zf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.zf-brand,.zf-get{grid-column:1/-1}}
@media (max-width:640px){.zf-in{padding-top:2.75rem}.zf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 1.25rem}.zf-bottom{flex-direction:column;align-items:flex-start}}

/* ---------- Mobile drawer: overlay + readable items + offer badge ---------- */
.zh-nav-overlay{position:fixed;inset:0;z-index:45;background:rgb(0 0 0/.62);opacity:0;pointer-events:none;transition:opacity .35s ease}
.zh-nav-overlay.is-open{opacity:1;pointer-events:auto}
[role="dialog"][aria-label="Main navigation"]{width:82vw!important;max-width:24rem!important}
[role="dialog"][aria-label="Main navigation"] ul.text-xl{gap:1.4rem!important}
[role="dialog"][aria-label="Main navigation"] ul.text-xl a{font-size:1.25rem!important;line-height:1.3;color:var(--foreground)}
.zh-drawer-offer{display:inline-flex!important;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem;text-align:center}
.zh-offer-badge{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.78rem!important;font-weight:700;line-height:1.2;white-space:nowrap}
.zh-drawer-offer small{display:block;width:100%;font-size:.8rem;font-weight:500;color:var(--muted-foreground)}

/* ---------- Directory ---------- */
.zd-toolbar{display:flex;gap:.6rem;flex-wrap:wrap}
.zd-cats{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
.zd-cats .mk-chip b{margin-left:.35rem;color:var(--muted-foreground);font-weight:500}
.zd-list{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.zd-list .mk-listing h3{font-size:1.05rem;word-break:break-word}
.zd-list .mk-listing p{font-size:.86rem}
.zd-url{display:block;margin-top:.35rem;font-size:.8rem;color:var(--muted-foreground);word-break:break-all}
.zd-pager{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:2rem}
.zd-pager a,.zd-pager span{min-width:2.5rem;text-align:center;padding:.5rem .8rem;border:1px solid var(--border);border-radius:.75rem;text-decoration:none;font-size:.9rem;color:var(--foreground)}
.zd-pager span[aria-current]{background:var(--accent);border-color:var(--accent);color:#fff}
.zd-note{font-size:.84rem;color:var(--muted-foreground);text-align:center;margin:0 auto 1.25rem;max-width:44rem}
.zd-empty{display:none;text-align:center;color:var(--muted-foreground)}
@media (max-width:1023px){.zd-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.zd-list{grid-template-columns:1fr}}

/* ---------- What it costs ---------- */
.zc-cost{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.zc-cost .mk-big{font-size:1.75rem;font-weight:700;line-height:1.1;color:var(--foreground);margin-top:.2rem}
.zc-cost del{color:var(--muted-foreground);font-size:.95rem;font-weight:500;margin-left:.4rem}
@media (max-width:640px){.zc-cost{grid-template-columns:1fr}}

/* ---------- Device showcase ---------- */
.zh-dev{position:relative;margin:1.5rem auto 2rem;max-width:60rem}
.zh-dev__stage{position:relative;aspect-ratio:16/9.2;perspective:1600px;transform-style:preserve-3d;--rx:0deg;--ry:0deg}
.zh-dev__laptop{position:absolute;left:4%;top:2%;width:78%;transform:rotateX(calc(6deg + var(--rx))) rotateY(calc(-10deg + var(--ry)));transform-origin:50% 100%;transition:transform .5s cubic-bezier(.2,.7,.2,1);will-change:transform}
.zh-dev__lid{border-radius:1rem 1rem .4rem .4rem;padding:2.2% 2.2% 2.6%;background:linear-gradient(160deg,#2a2d3a,#13151d);box-shadow:0 30px 60px -20px rgb(0 0 0/.6),inset 0 0 0 1px rgb(255 255 255/.08)}
.zh-dev__screen,.zh-dev__pscreen{position:relative;overflow:hidden;background:#0b0c12;contain:paint}
.zh-dev__screen{aspect-ratio:16/10;border-radius:.35rem}
.zh-dev__base{height:.9rem;margin:0 -6%;border-radius:0 0 1.2rem 1.2rem;background:linear-gradient(#3a3d4b,#1a1c25);box-shadow:0 18px 30px -12px rgb(0 0 0/.55)}
.zh-dev__phone{position:absolute;right:3%;bottom:0;width:22%;padding:2.2%;border-radius:2rem;background:linear-gradient(160deg,#30333f,#111319);box-shadow:0 30px 50px -18px rgb(0 0 0/.65),inset 0 0 0 1px rgb(255 255 255/.1);transform:translateZ(60px) rotateX(calc(4deg + var(--rx))) rotateY(calc(14deg + var(--ry)));transition:transform .5s cubic-bezier(.2,.7,.2,1);will-change:transform}
.zh-dev__pscreen{aspect-ratio:9/19.5;border-radius:1.5rem}
.zh-dev__notch{position:absolute;top:3.4%;left:50%;width:30%;height:2.2%;transform:translateX(-50%);border-radius:999px;background:#0b0c12}
.zh-dev img{position:absolute;inset:0 0 auto 0;width:100%;height:auto;opacity:0;transform:translate3d(0,0,0);transition:opacity .6s ease;will-change:transform,opacity}
.zh-dev img.is-on{opacity:1;animation:zhDevScroll 2.8s cubic-bezier(.45,0,.2,1) both}
.zh-dev.is-paused img.is-on{animation-play-state:paused}
@keyframes zhDevScroll{0%,12%{transform:translate3d(0,0,0)}100%{transform:translate3d(0,-28%,0)}}
.zh-dev__cap{margin:1rem 0 0;text-align:center;font-size:.86rem;color:var(--muted-foreground)}
.zh-dev__cap b{color:var(--foreground);font-weight:600}
.zh-dev__cap a{text-decoration:underline;text-underline-offset:.2em}
.zh-dev__dot{display:inline-block;width:.5rem;height:.5rem;margin-right:.45rem;border-radius:999px;background:#22c55e;box-shadow:0 0 0 3px rgb(34 197 94/.2)}
@media (max-width:640px){.zh-dev__stage{aspect-ratio:4/3.3}.zh-dev__laptop{left:0;width:86%}.zh-dev__phone{width:30%;right:0;border-radius:1.4rem}.zh-dev__pscreen{border-radius:1rem}}
@media (prefers-reduced-motion:reduce){.zh-dev img,.zh-dev__laptop,.zh-dev__phone{transition:none;animation:none!important}}

/* ---------- Shared immersive bits (pop-up, intake) ---------- */
.zh-x,.zh-snd{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:999px;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 80%,transparent);color:var(--foreground);font-size:1.4rem;line-height:1;cursor:pointer}
.zh-snd[aria-pressed="false"]{color:var(--muted-foreground)}
.zh-tile{display:grid;gap:.3rem;text-align:left;padding:1rem 1.1rem;border-radius:1rem;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 92%,transparent);color:var(--foreground);font:inherit;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.zh-tile strong{font-size:1rem;font-weight:600}
.zh-tile span{font-size:.86rem;color:var(--muted-foreground);line-height:1.4}
.zh-tile:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--accent) 55%,var(--border))}
.zh-tile.is-on{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 16%,var(--card));box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 25%,transparent)}
.zh-tile:focus-visible,.zh-x:focus-visible,.zh-snd:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* ---------- Offer pop-up ---------- */
.zh-pop{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:1rem}
.zh-pop__scrim{position:absolute;inset:0;background:rgb(0 0 0/.6);opacity:0;transition:opacity .3s ease}
.zh-pop__card{position:relative;width:min(100%,30rem);max-height:calc(100dvh - 2rem);overflow:auto;padding:1.4rem 1.4rem 1.2rem;border-radius:1.4rem;border:1px solid var(--border);background:linear-gradient(to bottom right,color-mix(in oklab,var(--accent) 16%,var(--card)),var(--card) 55%);color:var(--foreground);box-shadow:0 40px 80px -30px rgb(0 0 0/.7);opacity:0;transform:translate3d(0,24px,0) scale(.97);transition:opacity .32s ease,transform .32s cubic-bezier(.2,.8,.2,1)}
.zh-pop.is-in .zh-pop__scrim{opacity:1}.zh-pop.is-in .zh-pop__card{opacity:1;transform:none}
.zh-pop__top{display:flex;justify-content:flex-end;gap:.5rem;margin-bottom:.25rem}
.zh-pop h2{margin:.35rem 0 .35rem;font-size:clamp(1.7rem,5vw,2.2rem);line-height:1.1;font-weight:600;letter-spacing:-.02em}
.zh-pop__sub{margin:0 0 1rem;color:var(--muted-foreground);font-size:.95rem}
.zh-pop__opts{display:grid;gap:.6rem}
.zh-pop .zh-tile{opacity:0;transform:translate3d(0,10px,0);animation:zhIn .4s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(.12s + var(--i) * .07s)}
@keyframes zhIn{to{opacity:1;transform:none}}
.zh-pop__go{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
.zh-pop__go .mk-btn{flex:1 1 auto}
.zh-pop__fine{margin:.9rem 0 0;font-size:.8rem;color:var(--muted-foreground);line-height:1.45}
.zh-pop__fine a{text-decoration:underline}
@media (prefers-reduced-motion:reduce){.zh-pop__card,.zh-pop__scrim{transition:none}.zh-pop .zh-tile{animation:none;opacity:1;transform:none}}

/* ---------- Recent work toast ---------- */
.zh-toast{position:fixed;left:1rem;bottom:1rem;z-index:120;display:flex;align-items:center;gap:.7rem;max-width:min(calc(100vw - 6rem),22rem);padding:.55rem .6rem;border-radius:1rem;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 94%,transparent);backdrop-filter:blur(8px);color:var(--foreground);box-shadow:0 18px 40px -18px rgb(0 0 0/.6);opacity:0;transform:translate3d(0,16px,0);transition:opacity .3s ease,transform .3s cubic-bezier(.2,.8,.2,1)}
.zh-toast.is-in{opacity:1;transform:none}
.zh-toast img{width:4rem;height:2.5rem;object-fit:cover;object-position:top;border-radius:.5rem;flex:none}
.zh-toast p{margin:0;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground)}
.zh-toast b{display:block;font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zh-toast div{min-width:0;flex:1}
.zh-toast a{font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:.2em;white-space:nowrap}
.zh-toast button{border:0;background:none;color:var(--muted-foreground);font-size:1.2rem;cursor:pointer;padding:.2rem .3rem}
@media (prefers-reduced-motion:reduce){.zh-toast{transition:none}}
.mk-chip{white-space:normal;max-width:100%;text-align:center}
@media (max-width:640px){.zc-cost .mk-big del,.mk-table .mk-big del{display:block;margin:.2rem 0 0}}
.zh-v2-niche{max-width:46rem;margin:0 auto;padding:2.5rem 1.25rem}
.zh-v2-niche .zh-svc-prose{margin:0 0 2rem}
.zh-v2-niche h2{font-size:clamp(1.4rem,3vw,1.9rem);line-height:1.2;margin:1.6rem 0 .7rem}
.zh-v2-niche p,.zh-v2-niche li{line-height:1.7}
.zh-dev:empty::before{content:"";display:block;aspect-ratio:16/9.2;margin-bottom:2.3rem}
@media (max-width:640px){.zh-dev:empty::before{aspect-ratio:4/3.3}}
.zh-pop__opts{grid-template-columns:1fr 1fr}
.zh-pop__price{font-size:1.05rem;font-weight:700;color:var(--foreground)}
.zh-pop__price del{display:block;font-size:.8rem;font-weight:400;color:var(--muted-foreground)}
.zh-pop__terms{margin:1rem 0 0;padding:0;list-style:none;display:grid;gap:.35rem;font-size:.86rem;color:var(--muted-foreground)}
.zh-pop__terms li{position:relative;padding-left:1.2rem}
.zh-pop__terms li::before{content:"";position:absolute;left:.2rem;top:.55em;width:.4rem;height:.4rem;border-radius:50%;background:var(--accent)}

/* ===== Trademark hero + living background (Oct 30 r3) ===== */
.zh-th{position:relative;isolation:isolate;padding:clamp(7rem,16vh,10rem) 0 clamp(3rem,8vh,5rem)!important;min-height:auto;text-align:center;overflow:hidden}
.zh-th::before{content:"";position:absolute;inset:-20% -10% -10%;z-index:-2;pointer-events:none;
 background:radial-gradient(42% 46% at 22% 8%,rgba(122,132,176,.28),transparent 70%),radial-gradient(36% 40% at 82% 0%,rgba(53,56,245,.26),transparent 72%),radial-gradient(50% 50% at 50% 110%,rgba(74,139,255,.12),transparent 70%);
 animation:zhAur 22s ease-in-out infinite alternate;will-change:transform}
.zh-th::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.18;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
@keyframes zhAur{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(3%,2%,0) scale(1.06)}100%{transform:translate3d(-3%,1%,0) scale(1.02)}}
@media (prefers-reduced-motion:reduce){.zh-th::before{animation:none}}
.zh-th .eyebrow{letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}
.zh-th h1.hero-text{margin-left:auto;margin-right:auto}
.zh-th .zh-arrow svg{display:inline-block;vertical-align:middle}
.zh-th .mk-actions,.zh-th .flex-row{justify-content:center}
html.light .zh-th::before,[data-theme="light"] .zh-th::before{opacity:.6}
/* soft glow behind later sections so pages don't feel flat */
body::before{content:"";position:fixed;left:0;top:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;background:radial-gradient(70% 35% at 50% 100%,rgba(53,56,245,.07),transparent 70%)}

/* reply badge */
.zh-reply{display:inline-flex;align-items:center;gap:.5rem;margin:1rem auto 0;padding:.4rem .85rem;border-radius:99px;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 85%,transparent);font-size:.85rem;font-weight:600;color:var(--foreground)}
.zh-reply__dot{width:.55rem;height:.55rem;border-radius:50%;background:#22c55e;box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:zhPulse 2s infinite}
@keyframes zhPulse{70%{box-shadow:0 0 0 .5rem rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
@media (prefers-reduced-motion:reduce){.zh-reply__dot{animation:none}}

/* SEO strip */
.zh-seo-strip{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between;padding:clamp(1.25rem,3vw,2rem);border-radius:1.25rem;border:1px solid var(--border);background:radial-gradient(80% 140% at 0% 0%,rgba(53,56,245,.18),transparent 60%),color-mix(in oklab,var(--card) 90%,transparent)}
.zh-seo-strip>div:first-child{max-width:40rem}.zh-seo-strip h2{margin:.3rem 0 .5rem;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.15}
.zh-seo-strip p{color:var(--muted-foreground)}.zh-seo-strip__go{display:flex;gap:.6rem;flex-wrap:wrap}

/* Reviews marquee */
.zr-wrap{padding:clamp(2.5rem,6vw,4.5rem) 0;overflow:hidden}
.zr-head{max-width:72rem;margin:0 auto 1.6rem;padding:0 clamp(1rem,4vw,2.5rem);display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
.zr-head h2{flex:1;min-width:12rem;margin:0;font-size:clamp(1.6rem,3.4vw,2.4rem)}
.zr-badge{display:flex;align-items:center;gap:.6rem;padding:.5rem .9rem .5rem .55rem;border-radius:99px;background:#fff;color:#1f2937}
.zr-badge .zh-g{width:1.9rem;height:1.9rem}.zr-badge b{display:block;font-size:.85rem}.zr-badge .zr-stars{font-size:.8rem}
.zr-stars{color:#fbbc05;letter-spacing:.08em}
.zr-marquee{mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.zr-track{display:flex;width:max-content;animation:zrScroll 60s linear infinite}
.zr-marquee:hover .zr-track{animation-play-state:paused}
.zr-dup{display:flex}
@keyframes zrScroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.zr-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.zr-dup{display:none}}
.zr-card{flex:0 0 auto;width:min(22rem,80vw);margin:0 .5rem;padding:1.2rem 1.3rem;border-radius:1.1rem;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 92%,transparent);display:flex;flex-direction:column;gap:.7rem}
.zr-top{display:flex;align-items:center;gap:.7rem}.zr-top b{display:block;font-size:.95rem}.zr-top small{color:var(--muted-foreground);font-size:.78rem}
.zr-av{flex:0 0 2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.9rem;color:#fff;background:linear-gradient(135deg,#3538f5,#7cb3ff)}
.zr-card blockquote{margin:0;font-size:.95rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.zr-src{margin-top:auto;display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted-foreground)}.zr-src .zh-g{width:1rem;height:1rem}
/* call-booking helper */
.zb-launch{position:fixed;right:1rem;bottom:5.2rem;z-index:60;display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:99px;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 92%,#000);color:var(--foreground);font:600 .9rem/1 inherit;box-shadow:0 .6rem 1.6rem -.6rem rgba(0,0,0,.6);cursor:pointer}
.zb-dot{width:.55rem;height:.55rem;border-radius:50%;background:#22c55e}
.zb-panel{position:fixed;right:1rem;bottom:8.6rem;z-index:61;width:min(22rem,calc(100vw - 2rem));max-height:min(32rem,70vh);display:flex;flex-direction:column;border-radius:1.1rem;border:1px solid var(--border);background:var(--card,#0d1020);color:var(--foreground);box-shadow:0 1.2rem 3rem -1rem rgba(0,0,0,.7);overflow:hidden}
.zb-panel[hidden]{display:none}
.zb-h{display:flex;justify-content:space-between;gap:.6rem;padding:.9rem 1rem;border-bottom:1px solid var(--border)}.zb-h b{display:block}.zb-h small{color:var(--muted-foreground);font-size:.78rem}
.zb-x{background:none;border:0;color:inherit;font-size:1.4rem;line-height:1;cursor:pointer}
.zb-log{flex:1;overflow:auto;padding:.8rem;display:flex;flex-direction:column;gap:.5rem}
.zb-m{max-width:85%;padding:.55rem .75rem;border-radius:.9rem;font-size:.9rem;line-height:1.45}
.zb-a{align-self:flex-start;background:color-mix(in oklab,var(--foreground) 8%,transparent)}.zb-u{align-self:flex-end;background:#3538f5;color:#fff}
.zb-wa{display:block;margin-top:.5rem;padding:.45rem .7rem;border-radius:.6rem;background:#25d366;color:#05301a;font-weight:700;text-decoration:none;text-align:center}
.zb-chips{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 .8rem .6rem}.zb-chips button{font:inherit;font-size:.78rem;padding:.3rem .6rem;border-radius:99px;border:1px solid var(--border);background:none;color:inherit;cursor:pointer}
.zb-f{display:flex;gap:.4rem;padding:.6rem;border-top:1px solid var(--border)}.zb-f input{flex:1;min-width:0;padding:.55rem .7rem;border-radius:.6rem;border:1px solid var(--border);background:transparent;color:inherit;font:inherit}
.zb-f button{padding:0 .8rem;border-radius:.6rem;border:0;background:#3538f5;color:#fff;cursor:pointer}
@media (max-width:640px){.zb-launch{bottom:5.6rem;right:.75rem;padding:.5rem .8rem;font-size:.82rem}.zb-panel{right:.5rem;left:.5rem;width:auto;bottom:8.8rem}}
.zh-toast__f{display:block;font-size:.78rem;color:var(--muted-foreground);line-height:1.35;margin-top:.15rem}
.zh-toast__ic{flex:0 0 3rem;height:3rem;border-radius:.6rem;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,#4285f4,#34a853)}

/* devices.css v0.2.0 subset (iPhone 14 Pro, MacBook Pro) | MIT License | github.com/picturepan2/devices.css */
.device,.device *,.device ::after,.device ::before,.device::after,.device::before{box-sizing:border-box;display:block}.device{position:relative;transform:scale(1);z-index:1}.device-iphone-14-pro{height:868px;width:428px}.device-iphone-14-pro .device-frame{background:#010101;border:1px solid #1b1721;border-radius:68px;box-shadow:inset 0 0 4px 2px #c0b7cd,inset 0 0 0 6px #342c3f;height:868px;padding:19px;width:428px}.device-iphone-14-pro .device-screen{border-radius:49px;height:830px;width:390px}.device-iphone-14-pro .device-stripe::after,.device-iphone-14-pro .device-stripe::before{border:solid rgba(1,1,1,.25);border-width:0 7px;content:"";height:7px;left:0;position:absolute;width:100%;z-index:9}.device-iphone-14-pro .device-stripe::after{top:85px}.device-iphone-14-pro .device-stripe::before{bottom:85px}.device-iphone-14-pro .device-header{background:#010101;border-radius:20px;height:35px;left:50%;margin-left:-60px;position:absolute;top:29px;width:120px}.device-iphone-14-pro .device-sensors::after,.device-iphone-14-pro .device-sensors::before{content:"";position:absolute}.device-iphone-14-pro .device-sensors::after{background:#010101;border-radius:17px;height:33px;left:50%;margin-left:-60px;top:30px;width:74px}.device-iphone-14-pro .device-sensors::before{background:radial-gradient(farthest-corner at 20% 20%,#6074bf 0,transparent 40%),radial-gradient(farthest-corner at 80% 80%,#513785 0,#24555e 20%,transparent 50%);border-radius:50%;box-shadow:0 0 1px 1px rgba(255,255,255,.05);height:9px;left:50%;margin-left:36px;top:42px;width:9px}.device-iphone-14-pro .device-btns{background:#1b1721;border-radius:2px;height:32px;left:-2px;position:absolute;top:115px;width:3px}.device-iphone-14-pro .device-btns::after,.device-iphone-14-pro .device-btns::before{background:#1b1721;border-radius:2px;content:"";height:62px;left:0;position:absolute;width:3px}.device-iphone-14-pro .device-btns::after{top:60px}.device-iphone-14-pro .device-btns::before{top:140px}.device-iphone-14-pro .device-power{background:#1b1721;border-radius:2px;height:100px;position:absolute;right:-2px;top:200px;width:3px}.device-iphone-14-pro .device-home::after,.device-iphone-14-pro .device-home::before{border:solid rgba(1,1,1,.25);border-width:6px 0;content:"";height:6px;position:absolute;width:6px;z-index:9}.device-iphone-14-pro .device-home::after{right:86px;top:0}.device-iphone-14-pro .device-home::before{bottom:0;left:86px}.device-iphone-14-pro.device-silver .device-frame{border-color:#c8cacb;box-shadow:inset 0 0 4px 2px #fff,inset 0 0 0 6px #e2e3e4}.device-iphone-14-pro.device-silver .device-btns{background:#c8cacb}.device-iphone-14-pro.device-silver .device-btns::after,.device-iphone-14-pro.device-silver .device-btns::before{background:#c8cacb}.device-iphone-14-pro.device-silver .device-power{background:#c8cacb}.device-iphone-14-pro.device-black .device-frame{border-color:#5c5956;box-shadow:inset 0 0 4px 2px #fff,inset 0 0 0 6px #76726f}.device-iphone-14-pro.device-black .device-btns{background:#5c5956}.device-iphone-14-pro.device-black .device-btns::after,.device-iphone-14-pro.device-black .device-btns::before{background:#5c5956}.device-iphone-14-pro.device-black .device-power{background:#5c5956}.device-macbook-pro{height:434px;width:740px}.device-macbook-pro .device-frame{background:#0d0d0d;border-radius:20px;box-shadow:inset 0 0 0 2px #c8cacb;height:418px;margin:0 auto;padding:9px 9px 23px 9px;position:relative;width:618px}.device-macbook-pro .device-frame::after{background:linear-gradient(to bottom,#272727,#0d0d0d);border-radius:0 0 20px 20px;bottom:2px;content:"";height:24px;left:2px;position:absolute;width:614px}.device-macbook-pro .device-header{background:#0d0d0d;border-bottom-left-radius:4px;border-bottom-right-radius:4px;height:12px;left:50%;margin-left:-32px;position:absolute;top:11px;width:64px;z-index:2}.device-macbook-pro .device-header::after,.device-macbook-pro .device-header::before{content:"";height:4px;position:absolute;top:0;width:4px}.device-macbook-pro .device-header::after{background:radial-gradient(circle at bottom left,transparent 0,transparent 75%,#0d0d0d 75%,#0d0d0d 100%);left:-4px}.device-macbook-pro .device-header::before{background:radial-gradient(circle at bottom right,transparent 0,transparent 75%,#0d0d0d 75%,#0d0d0d 100%);right:-4px}.device-macbook-pro .device-screen{border:2px solid #121212;border-radius:10px 10px 0 0;height:375px;width:600px}.device-macbook-pro .device-power{background:radial-gradient(circle at center,#e2e3e4 85%,#c8cacb 100%);border:solid #a0a3a7;border-radius:2px 2px 12px 12px;border-width:1px 2px 0 2px;box-shadow:inset 0 -2px 8px 0 #6c7074;height:24px;margin-top:-10px;position:relative;width:740px;z-index:9}.device-macbook-pro .device-power::after{background:#e2e3e4;border-radius:0 0 10px 10px;box-shadow:inset 0 0 4px 2px #babdbf;content:"";height:10px;left:50%;margin-left:-60px;position:absolute;top:0;width:120px}.device-macbook-pro .device-power::before{background:0 0;border-radius:0 0 3px 3px;bottom:-2px;box-shadow:-300px 0 #272727,300px 0 #272727;content:"";height:2px;left:50%;margin-left:-20px;position:absolute;width:40px}.device-macbook-pro.device-spacegray .device-frame{box-shadow:inset 0 0 0 2px #767a7d}.device-macbook-pro.device-spacegray .device-power{background:radial-gradient(circle at center,#83878a 85%,#767a7d 100%);border-color:#454749;box-shadow:inset 0 -2px 8px 0 #202121}.device-macbook-pro.device-spacegray .device-power::after{background:#b7babc;box-shadow:inset 0 0 4px 2px #6a6d70}
/* real-device showcase */
.zx{max-width:56rem;margin:1rem auto 0}
.zx-fit{position:relative;width:100%;overflow:visible}
.zx-canvas{position:absolute;left:0;top:0;width:900px;height:540px;transform-origin:0 0}
.zx-lap{position:absolute;left:0;top:30px}
.zx-ph{position:absolute;left:668px;top:70px;transform:scale(.52);transform-origin:0 0;filter:drop-shadow(0 24px 40px rgba(0,0,0,.45))}
.zx-lap{filter:drop-shadow(0 30px 50px rgba(0,0,0,.4))}
.zx-scr{position:relative;overflow:hidden;background:#0b0e1c}
.zx-scr img{position:absolute;left:0;top:0;width:100%;height:auto;opacity:0;transition:opacity .8s ease;will-change:transform}
.zx-scr img.is-on{opacity:1;animation:zxScroll 9s cubic-bezier(.45,0,.25,1) infinite}
.zx-lap .zx-scr img{--end:calc(-100% + 375px)}
.zx-ph .zx-scr img{--end:calc(-100% + 830px)}
@keyframes zxScroll{0%,14%{transform:translateY(0)}86%,100%{transform:translateY(var(--end))}}
.zx.is-paused .zx-scr img{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.zx-scr img.is-on{animation:none}}
.zx-cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem .8rem;margin-top:1rem;font-size:.88rem;color:var(--muted-foreground);text-align:center}
.zx-cap a{color:inherit;text-decoration:underline}
.zx-dot{width:.5rem;height:.5rem;border-radius:50%;background:#22c55e}
.zx-pick{display:inline-flex;gap:.3rem}
.zx-pick button{width:.6rem;height:.6rem;padding:0;border-radius:50%;border:0;background:color-mix(in oklab,var(--foreground) 25%,transparent);cursor:pointer}
.zx-pick button.is-on{background:#3538f5;width:1.4rem;border-radius:99px}
.zh-th .zx{margin-top:2.2rem}
.zh-offer-line{margin:1rem auto 0;display:flex;gap:.5rem;align-items:center;justify-content:center;flex-wrap:wrap;font-size:.92rem;color:var(--muted-foreground)}.zh-offer-line a{color:inherit;text-decoration:underline}
/* nested menu */
.zh-dd{position:relative}
.zh-dd>a{display:inline-flex;align-items:center;gap:.25rem}
.zh-dd-c{width:.75rem;height:.75rem;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .2s}
.zh-dd-m{position:absolute;left:50%;top:100%;padding-top:.8rem;transform:translate(-50%,.3rem);opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility 0s .18s;z-index:60}
.zh-dd:hover .zh-dd-m,.zh-dd:focus-within .zh-dd-m{opacity:1;visibility:visible;transform:translate(-50%,0);transition-delay:0s}
.zh-dd:hover .zh-dd-c,.zh-dd:focus-within .zh-dd-c{transform:rotate(180deg)}
.zh-dd-in{display:grid;grid-template-columns:1fr auto;gap:.25rem 1.25rem;min-width:25rem;padding:.9rem;border-radius:1rem;border:1px solid var(--border);background:color-mix(in oklab,var(--background) 94%,transparent);backdrop-filter:blur(14px);box-shadow:0 1.2rem 3rem -1rem rgba(0,0,0,.5)}
.zh-dd-in ul{list-style:none;margin:0;padding:0;display:grid;gap:.1rem}
.zh-dd-in a{display:block;padding:.45rem .65rem;border-radius:.55rem;font-size:.88rem;color:var(--foreground);text-decoration:none;white-space:nowrap}
.zh-dd-in a:hover{background:color-mix(in oklab,var(--foreground) 7%,transparent);color:var(--accent)}
.zh-dd-more{border-left:1px solid var(--border);padding-left:1rem!important}
.zh-dd-more a{color:var(--muted-foreground)}
.zh-dm summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.zh-dm summary::-webkit-details-marker{display:none}
.zh-dm summary::after{content:"+";font-weight:400;opacity:.7}
.zh-dm[open] summary::after{content:"\2212"}
.zh-dm ul{list-style:none;margin:.5rem 0 .25rem;padding:0 0 0 .9rem;border-left:1px solid var(--border);display:grid;gap:.45rem}
.zh-dm ul a{font-size:1rem;opacity:.85}
.zh-hero-vis{margin-top:2.2rem}
.zh-fit{display:grid;gap:.6rem;align-content:start}.zh-fit-why{margin:0;padding:0 .25rem}
.zh-svc-link{text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}.zh-svc-link:hover{border-color:var(--accent);transform:translateY(-2px)}.zh-svc-link h3{font-size:1rem;margin:0 0 .4rem}.zh-svc-link p{font-size:.88rem;color:var(--muted-foreground);margin:0}
/* case studies */
.zc-vid{margin:0 auto;max-width:60rem}
.zc-frame{border-radius:1rem;overflow:hidden;border:1px solid var(--border);background:#0b0e1c;box-shadow:0 2rem 4rem -2rem rgba(0,0,0,.65)}
.zc-bar{display:flex;align-items:center;gap:.35rem;height:2rem;padding:0 .8rem;background:#141a2e}
.zc-bar i{width:.55rem;height:.55rem;border-radius:50%;background:#ff5f57}.zc-bar i:nth-child(2){background:#febc2e}.zc-bar i:nth-child(3){background:#28c840}
.zc-bar span{margin-left:.6rem;font-size:.75rem;color:#9aa1c0;background:#0b0e1c;padding:.15rem .7rem;border-radius:99px}
.zc-frame video{display:block;width:100%;height:auto;aspect-ratio:16/10;background:#0b0e1c}
.zc-vid figcaption{margin-top:.7rem;text-align:center;font-size:.85rem;color:var(--muted-foreground)}
.zc-ann{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:1.5rem;align-items:center}
.zc-shot{position:relative;border-radius:.9rem;overflow:hidden;border:1px solid var(--border)}
.zc-shot img{display:block;width:100%;height:auto}
.zc-box{position:absolute;border:2px solid #3538f5;border-radius:.5rem;box-shadow:0 0 0 4px rgba(53,56,245,.25),0 0 24px rgba(53,56,245,.5);animation:zcPulse 2.4s ease-in-out infinite}
.zc-box b{position:absolute;left:-.7rem;top:-.7rem;width:1.4rem;height:1.4rem;border-radius:50%;background:#3538f5;color:#fff;font-size:.75rem;display:grid;place-items:center}
@keyframes zcPulse{50%{box-shadow:0 0 0 8px rgba(53,56,245,.12),0 0 30px rgba(53,56,245,.6)}}
.zc-leg{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.zc-leg li{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem}
.zc-leg b{flex:0 0 1.5rem;height:1.5rem;border-radius:50%;background:#3538f5;color:#fff;font-size:.8rem;display:grid;place-items:center}
@media (max-width:760px){.zc-ann{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.zc-box{animation:none}}
.zd-built{border-color:color-mix(in oklab,#3538f5 45%,var(--border))}.zd-built .mk-logo{background:#3538f5;color:#fff}
/* ===== v3b (Oct 30 12:49-12:58): cleaner sections, buttons, compact service blocks, real videos ===== */
/* no outlined boxes: cards sit on soft fills, CTA box loses its outline */
.mk-card{border-color:transparent;background:color-mix(in oklab,var(--card) 82%,transparent);box-shadow:none}
.zh-dp-cta>div{border-color:transparent!important;box-shadow:none!important;background:radial-gradient(120% 140% at 50% 0%,color-mix(in oklab,var(--accent) 16%,transparent),transparent 70%)!important}
.mk-strip{border-color:transparent}
.mk-table-wrap{border-color:transparent}
.zh-pkg{padding:1.25rem 0;border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.zh-pkg:first-child{border-top:0}
.zc-cost{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2.5rem}
.zc-cost .zh-pkg{border:0;padding:0}
@media(max-width:700px){.zc-cost{grid-template-columns:1fr;gap:1.5rem}}
/* compact "who it's for" and "included" lists (no empty boxes) */
.zh-who{list-style:none;margin:1rem auto 0;padding:0;display:grid;gap:.65rem;max-width:44rem}
.zh-who li{position:relative;padding-left:1.6rem;line-height:1.55;color:var(--foreground)}
.zh-who li::before{content:"";position:absolute;left:.2rem;top:.6em;width:.55rem;height:.55rem;border-radius:50%;background:var(--accent,#6366f1);box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 20%,transparent)}
.zh-incl{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.6rem 2rem}
.zh-incl li{position:relative;padding:.55rem 0 .55rem 1.9rem;line-height:1.45}
.zh-incl li::before{content:"";position:absolute;left:0;top:.7rem;width:1.15rem;height:1.15rem;border-radius:50%;background:color-mix(in oklab,var(--accent) 22%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.6 2.6L12 5.5' fill='none' stroke='%23a5b4fc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/70% no-repeat}
.zh-svc-price{margin:1.75rem auto 0;max-width:52rem;text-align:center;line-height:1.6;color:var(--muted-foreground)}
.zh-svc-price b{color:var(--foreground)}
.zh-svc-price .eyebrow{display:inline-block;margin-right:.4rem}
.zh-svc-price .mk-link{margin-left:.35rem}
/* Google reviews button beside the one review slider */
.zh-gbtn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.6rem 1rem;border-radius:999px;background:color-mix(in oklab,var(--card) 85%,transparent);color:var(--foreground);font-weight:600;font-size:.92rem;text-decoration:none}
.zh-gbtn .zh-g{width:1.1rem;height:1.1rem}
.zh-gbtn .zr-stars{color:#fbbc05;letter-spacing:.05em}
/* centred View all work */
.zh-view-all{display:flex;justify-content:center;width:100%;margin:2rem 0 0;grid-column:1/-1}
.zh-btn-sec{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.7rem 1.4rem;border-radius:.875rem;font-weight:600;color:var(--foreground);background:color-mix(in oklab,var(--card) 85%,transparent);text-decoration:none}
/* button micro-interactions: transform/opacity only */
.mk-btn,.zh-btn-sec,.zh-gbtn,a[data-slot=button],.zh-card-actions a,.zh-live,.zs-send,.zs-cont{position:relative;transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .2s,box-shadow .25s;will-change:transform}
.mk-btn--primary,a[data-slot=button].bg-primary,.zs-send{overflow:hidden;isolation:isolate}
.mk-btn--primary::after,a[data-slot=button].bg-primary::after,.zs-send::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);transform:translateX(-120%);opacity:0;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .3s}
.zh-arr{display:inline-block;transition:transform .22s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){
 .mk-btn:hover,.zh-btn-sec:hover,.zh-gbtn:hover,a[data-slot=button]:hover,.zh-card-actions a:hover,.zh-live:hover,.zs-send:hover,.zs-cont:hover{transform:translateY(-2px)}
 .mk-btn--primary:hover,a[data-slot=button].bg-primary:hover,.zs-send:hover{box-shadow:0 .6rem 1.6rem -.6rem color-mix(in oklab,var(--primary) 75%,transparent)}
 .mk-btn--primary:hover::after,a[data-slot=button].bg-primary:hover::after,.zs-send:hover::after{transform:translateX(120%);opacity:1}
 .zh-btn-sec:hover .zh-arr,.zs-cont:hover span,.zh-card-actions a:hover::after{transform:translateX(3px)}
}
.mk-btn:active,.zh-btn-sec:active,.zh-gbtn:active,a[data-slot=button]:active,.zh-card-actions a:active,.zh-live:active,.zs-send:active,.zs-cont:active{transform:scale(.97);transition-duration:.08s}
.mk-btn:focus-visible,.zh-btn-sec:focus-visible,.zh-gbtn:focus-visible,a[data-slot=button]:focus-visible,.zh-card-actions a:focus-visible,.zh-live:focus-visible,.zs-send:focus-visible,.zs-cont:focus-visible,.mk-link:focus-visible{outline:2px solid var(--accent,#6366f1);outline-offset:3px}
.zs-cont span{display:inline-block;transition:transform .22s cubic-bezier(.2,.8,.2,1)}
@media (prefers-reduced-motion:reduce){.mk-btn,.zh-btn-sec,.zh-gbtn,a[data-slot=button],.zh-card-actions a,.zh-live,.zs-send,.zs-cont,.zh-arr,.zs-cont span{transition:none!important;transform:none!important}.mk-btn--primary::after,a[data-slot=button].bg-primary::after,.zs-send::after{display:none}}
/* real screen recordings (laptop + phone) */
.zv{margin:1.75rem auto 0;max-width:46rem}
.zv-frame{position:relative;border-radius:.9rem;overflow:hidden;background:#0b0e1c;box-shadow:0 1.6rem 3rem -1.6rem rgba(0,0,0,.7)}
.zv-frame::before{content:"";display:block;height:1.6rem;background:#151a2e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 10'%3E%3Ccircle cx='5' cy='5' r='3.2' fill='%23ff5f57'/%3E%3Ccircle cx='16' cy='5' r='3.2' fill='%23febc2e'/%3E%3Ccircle cx='27' cy='5' r='3.2' fill='%2328c840'/%3E%3C/svg%3E") .7rem center/2.6rem auto no-repeat}
.zv video,.zv img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top}
.zv figcaption{margin-top:.7rem;text-align:center;font-size:.86rem;color:var(--muted-foreground)}
@media(max-width:699px){.zv{max-width:17.5rem}.zv-frame{border-radius:2rem;padding:.45rem;background:#05070f}.zv-frame::before{display:none}.zv video,.zv img{aspect-ratio:390/844;border-radius:1.6rem}}
/* Zach's GBP logo mark (not in the header menu) */
.zh-mark{display:inline-block;width:auto;height:2.5rem;vertical-align:middle}
.zf-marks{display:flex;align-items:center;gap:.75rem}
.zf-marks .zh-mark{height:2.25rem}
.zh-byline{display:flex;align-items:center;justify-content:center;gap:.6rem;margin:1rem 0 0;font-size:.88rem;color:var(--muted-foreground)}
.zh-byline .zh-mark{height:1.9rem}
.mk-author .zh-mark{height:2.6rem;flex:0 0 auto}
.zh-mark--hero{display:block;margin:0 auto 1rem;height:3rem}
.zd-built-head{display:flex;justify-content:center;margin-bottom:-.5rem}
.zh-pop__mark{display:block;height:2.2rem;margin:0 0 .6rem}
/* mobile menu: drop-down panel from the top (Zach 1:02 PM), page dimmed below */
@media (max-width:767px){
 [role=dialog][aria-label="Main navigation"]{left:0!important;right:0!important;top:0!important;width:100%!important;max-width:none!important;height:auto!important;max-height:88vh;overflow-y:auto;border-radius:0 0 1.25rem 1.25rem;translate:none!important;transform:translateY(0);transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s!important;opacity:1;box-shadow:0 1.5rem 3rem -1rem rgba(0,0,0,.65)!important}
 [role=dialog][aria-label="Main navigation"].translate-x-full{transform:translateY(-105%);opacity:0;pointer-events:none}
 [role=dialog][aria-label="Main navigation"]>div{height:auto!important;justify-content:flex-start!important;gap:1.4rem;padding:4.75rem 1.5rem 1.75rem!important}
 [role=dialog][aria-label="Main navigation"] ul{gap:1.1rem!important;font-size:1.1rem!important}
 .zh-nav-overlay{top:0}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){[role=dialog][aria-label="Main navigation"]{transition:none!important}}
/* trademark hero arrow: the original 7643ceb flip, always playing on every page (Zach 1:08 PM) */
@keyframes zhArrowFlip{0%{transform:rotateX(0)}40%{transform:rotateX(180deg)}50%{transform:rotateX(180deg)}90%{transform:rotateX(360deg)}to{transform:rotateX(360deg)}}
.zh-arrow{perspective:400px}
.zh-arrow svg{animation:zhArrowFlip 4s cubic-bezier(.65,0,.35,1) infinite!important;transform-style:preserve-3d;will-change:transform;backface-visibility:visible}
@media (prefers-reduced-motion:reduce){.zh-arrow svg{animation:zhArrowFlip 9s ease-in-out infinite!important}}
@media (min-width:768px){[role=dialog][aria-label="Main navigation"]{display:none!important}}
@media (max-width:767px){[role=dialog][aria-label="Main navigation"].translate-x-full{visibility:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s,visibility 0s .45s!important}}
/* 10% code */
.zh-dn del{opacity:.55;font-weight:400}
.zh-dn b{font-weight:700}
.zh-badge-disc{display:inline-block;padding:.1rem .5rem;border-radius:999px;background:rgba(126,226,168,.15);color:#7ee2a8;font-size:.72em;font-weight:600;vertical-align:middle;white-space:nowrap}
.zh-code-chip{position:fixed;left:50%;bottom:1rem;z-index:60;margin:0;max-width:min(92vw,34rem);padding:.6rem 1rem;border-radius:999px;background:rgba(10,13,32,.95);color:#fff;font-size:.82rem;box-shadow:0 1rem 2rem -1rem rgba(0,0,0,.8);transform:translate(-50%,150%);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
.zh-code-chip.is-in{transform:translate(-50%,0);opacity:1}
.zh-pop__ten{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}
.zh-pop__ten-h{margin:0 0 .6rem;font-size:.88rem}
.zh-pop__ten-f{display:flex;flex-wrap:wrap;gap:.45rem}
.zh-pop__ten-f label{flex:1 1 9rem}
.zh-pop__ten-f input{width:100%;padding:.6rem .8rem;border-radius:.6rem;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:inherit;font:inherit;font-size:.88rem}
.zh-pop__ten-e{margin:.4rem 0 0;font-size:.8rem;color:#ff8a8a;min-height:1em}
.zh-pop__code{margin:.2rem 0 .4rem;font-size:1.5rem;font-weight:700;letter-spacing:.14em}
.zh-pop__ten-ok{margin:0;font-size:.82rem;opacity:.8}
.zs-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.zh-code-chip{transition:none}}
.zh-allw{max-width:72rem;margin:0 auto;padding-top:2rem;padding-bottom:2rem}
.zh-allw__g{margin:1.8rem 0 .7rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}
.zh-allw__l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem}
.zh-allw__l a{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem .6rem;padding:.9rem 1rem;border-radius:.9rem;background:rgba(255,255,255,.04);text-decoration:none;color:inherit;transition:transform .2s,background .2s}
.zh-allw__l a:hover{transform:translateY(-2px);background:rgba(255,255,255,.07)}
.zh-allw__l a:focus-visible{outline:2px solid #6366f1;outline-offset:2px}
.zh-allw__l b{flex:1;font-size:.98rem}
.zh-allw__l span{order:3;width:100%;font-size:.8rem;color:var(--muted-foreground)}
.zh-allw__l i{font-style:normal;opacity:.6}
@media (prefers-reduced-motion:reduce){.zh-allw__l a{transition:none}}
/* t261u: phones get the ceiling lights too. WebGL rays stay desktop only (perf), so phones get a CSS copy of the same top-center beams */
@media (max-width:767px){
 html .light-rays-container{overflow:hidden}
 html .light-rays-container::before{content:"";position:absolute;left:-60%;right:-60%;top:-6%;height:96%;z-index:0;pointer-events:none;
  transform-origin:50% 0;
  background:
   radial-gradient(22% 16% at 50% 0%,rgba(240,244,255,.42),transparent 78%),
   radial-gradient(45% 40% at 50% 0%,rgba(200,210,240,.13),transparent 80%),
   conic-gradient(from 110deg at 50% 0%,
    transparent 0deg, rgba(225,232,255,0.19) 7deg, transparent 13deg,
    rgba(225,232,255,0.08) 18deg, rgba(225,232,255,0.3) 25deg, transparent 32deg,
    rgba(225,232,255,0.11) 37deg, rgba(225,232,255,0.35) 45deg, rgba(225,232,255,0.08) 52deg,
    rgba(225,232,255,0.19) 59deg, rgba(235,240,255,0.41) 70deg, rgba(225,232,255,0.19) 81deg,
    rgba(225,232,255,0.08) 88deg, rgba(225,232,255,0.35) 95deg, rgba(225,232,255,0.11) 103deg,
    transparent 108deg, rgba(225,232,255,0.3) 115deg, rgba(225,232,255,0.08) 122deg,
    transparent 127deg, rgba(225,232,255,0.19) 133deg, transparent 140deg);
  -webkit-mask-image:radial-gradient(70% 100% at 50% 0%,#000 30%,transparent 100%);mask-image:radial-gradient(70% 100% at 50% 0%,#000 30%,transparent 100%);
  filter:blur(6px);
  animation:zhRays 9s ease-in-out infinite alternate;will-change:transform}
}
@keyframes zhRays{from{transform:rotate(-2deg)}to{transform:rotate(2deg)}}
@media (max-width:767px) and (prefers-reduced-motion:reduce){html .light-rays-container::before{animation:none}}
.zh-nav-tel{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:.2rem auto .8rem;font-size:.95rem;color:var(--muted-foreground);text-decoration:none}
.zh-nav-tel:hover{color:var(--foreground)}
/* footer author card -> LinkedIn (Zach 1:57 PM) */
.zf-card--li{position:relative;text-decoration:none;color:inherit;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s,border-color .25s}
.zf-card--li:hover{transform:translateY(-2px);border-color:color-mix(in oklab,#0a66c2 55%,var(--border));box-shadow:0 .9rem 1.8rem -1.1rem rgba(10,102,194,.55)}
.zf-card--li:focus-visible{outline:2px solid #6366f1;outline-offset:3px}
.zf-card--li:active{transform:translateY(0) scale(.98)}
.zf-card__av{width:2.75rem;height:auto;flex:none}
.zf-card__av--photo{height:2.75rem;border-radius:50%;object-fit:cover}
.zf-card__ic{margin-left:auto;display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:.45rem;background:#0a66c2;color:#fff;flex:none;transition:transform .25s}
.zf-card--li:hover .zf-card__ic{transform:translateX(2px)}
@media (prefers-reduced-motion:reduce){.zf-card--li,.zf-card__ic{transition:none}.zf-card--li:hover{transform:none}}
/* a11y: eyebrow contrast on dark (was 2.4:1) */
html.dark .eyebrow:not(.eyebrow-primary){color:#a5b4fc;opacity:1}
html.dark .bg-card p.m-0.uppercase{color:#a5b4fc}
/* currency switcher (Zach 2:04 PM) */
.zh-cur-w{position:relative}
.zh-cur select{appearance:none;-webkit-appearance:none;height:2.25rem;padding:0 1.6rem 0 .65rem;border-radius:.5rem;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 80%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23a5b4fc' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right .55rem center;color:var(--foreground);font:600 .78rem/1 inherit;letter-spacing:.04em;cursor:pointer}
.zh-cur select:hover{border-color:color-mix(in oklab,#6366f1 60%,var(--border))}
.zh-cur select:focus-visible{outline:2px solid #6366f1;outline-offset:2px}
.zh-cur-w .zh-cur-note{position:absolute;right:0;top:calc(100% + .4rem);width:15rem;margin:0;padding:.5rem .65rem;border-radius:.5rem;background:var(--card);border:1px solid var(--border);font-size:.72rem;line-height:1.35;color:var(--muted-foreground);box-shadow:0 .6rem 1.4rem -.8rem rgba(0,0,0,.6);z-index:60;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s}
.zh-cur-w:hover .zh-cur-note,.zh-cur-w:focus-within .zh-cur-note{opacity:1;transform:none}
.zh-cur-m{margin:.75rem 0;padding:.75rem;border:1px solid var(--border);border-radius:.75rem}
.zh-cur-m .zh-cur{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.9rem;font-weight:600}
.zh-cur-m select{height:2.6rem;min-width:7rem;font-size:.9rem}
.zh-cur-m .zh-cur-note{margin:.5rem 0 0;font-size:.75rem;color:var(--muted-foreground)}
.zs-sub .zh-cur select{height:2rem}
html[data-cur]:not([data-cur="USD"]) .zc{white-space:nowrap}
/* polish 30 Oct: list items with price spans wrapped as flex items and overflowed at 375 */
.mk-list li{display:block;position:relative;padding-left:.97rem}
.mk-list li::before{position:absolute;left:0;top:0}
/* t247u (Zach 3:07 PM): header = ZH mark + wordmark left, tabs centred, actions right */
.zh-nav-mark{height:1.35rem;width:auto;flex:none;display:block;margin-right:.5rem;color:var(--text,currentColor)}
@media (min-width:768px){
 .zh-hdr>div{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:1rem}
 .zh-hdr>div>div:first-child{justify-self:start;grid-column:1}
 .zh-hdr>div>ul{justify-self:center;grid-column:2}
 .zh-hdr>div>div:nth-child(3){justify-self:end;grid-column:3}
 .zh-hdr>div>div:nth-child(4){position:fixed}
}
@media (min-width:768px) and (max-width:1439px){.zh-hdr>div>ul{gap:1rem!important}.zh-hdr>div>div:nth-child(3){gap:.5rem}.zh-hdr>div>div:nth-child(3) .gap-3{gap:.5rem}}
@media (min-width:768px) and (max-width:1279px){.zh-hdr>div{column-gap:.6rem}.zh-hdr>div>ul{gap:.55rem!important}.zh-hdr>div>ul .nav-link{font-size:.76rem}.zh-hdr>div>div:nth-child(3) a[data-slot=button]{padding:0 .55rem;font-size:.76rem}.zh-hdr .zh-cur select{padding-left:.4rem;padding-right:1.2rem;font-size:.76rem}.zh-hdr>div>div:nth-child(3){gap:.45rem}.zh-hdr>div>div:nth-child(3) .gap-3{gap:.45rem}.zh-hdr .zh-offer-badge{font-size:.62rem;padding:.1rem .35rem}.zh-hdr .logo{font-size:.95em}}
@media (min-width:1440px){.zh-hdr>div>ul{gap:1.6rem!important}}
/* t251u/t252u: Google rating row under the home hero CTAs (no count) */
.zh-hero-g{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 1rem;margin:2rem auto 0}
.zh-hg-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border:1px solid var(--border);border-radius:99px;background:color-mix(in oklab,var(--card) 85%,transparent);font-size:.88rem;font-weight:600;color:var(--foreground)}
.zh-hg-stars{color:#fbbc05;letter-spacing:.08em;font-size:.95rem}
.zh-hg-act{display:inline-flex;align-items:center;gap:.9rem}
.zh-hg-btn{display:inline-flex;align-items:center;min-height:2.25rem;padding:0 .95rem;border-radius:.5rem;border:1px solid var(--border);color:var(--foreground);font-size:.85rem;font-weight:600;text-decoration:none;transition:border-color .2s,background .2s}
.zh-hg-btn:hover,.zh-hg-btn:focus-visible{border-color:#8ea2ff;background:color-mix(in oklab,#3538f5 14%,transparent)}
.zh-hg-link{font-size:.85rem;color:var(--muted-foreground);text-decoration:underline;text-underline-offset:4px;padding:.4rem 0}
.zh-hg-link:hover{color:var(--foreground)}
@media (max-width:640px){.zh-hero-g{margin-top:1.6rem}.zh-hg-badge{font-size:.82rem}}
/* t262u: rating group smaller and centred as a tight group under the hero CTAs (pill, then the two links) */
.zh-hero-g{flex-direction:column;flex-wrap:nowrap;gap:.55rem;width:100%;margin:1.25rem auto 0;text-align:center}
.zh-hg-badge{gap:.4rem;padding:.3rem .7rem;font-size:.8125rem;line-height:1.2}
.zh-hg-badge svg{width:14px;height:14px}
.zh-hg-stars{font-size:.78rem;letter-spacing:.05em}
.zh-hg-act{justify-content:center;gap:.8rem}
.zh-hg-btn{min-height:1.9rem;padding:0 .75rem;border-radius:.45rem;font-size:.8rem}
.zh-hg-link{font-size:.8rem;padding:.3rem 0}
@media (max-width:640px){.zh-hero-g{margin-top:1.1rem}.zh-hg-badge{font-size:.8125rem}}
/* t250u (Zach 3:16 PM): mobile menu, IS Auto Repairs pattern in Zach Sites colours */
@media (max-width:767px){
 html.zm-open .zh-float-dock,html.zm-open .zh-sticky-cta{visibility:hidden!important}
 .zh-nav-overlay{position:fixed!important;inset:0!important;z-index:49!important;background:#000!important;opacity:.5!important;display:block!important;visibility:hidden;transform:translateX(-100%);transition:transform .5s ease .5s,visibility .5s ease .5s!important;pointer-events:none}
 .zh-nav-overlay.is-open{visibility:visible;transform:translateX(0);transition:transform .5s ease 0s,visibility .5s ease 0s!important;pointer-events:auto;cursor:pointer}
 [role=dialog][aria-label="Main navigation"].zm{left:0!important;right:auto!important;top:0!important;bottom:0!important;width:300px!important;max-width:86vw!important;height:100%!important;max-height:none!important;border-radius:0!important;background:#0b0f26!important;color:#fff;box-shadow:none!important;overflow-y:auto;overscroll-behavior:contain;opacity:1;visibility:visible;transform:translateX(0)!important;translate:none!important;transition:opacity .5s ease .5s,visibility .5s ease .5s,transform .5s ease .5s!important;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}
 [role=dialog][aria-label="Main navigation"].zm.translate-x-full{opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-100%)!important;transition:opacity .5s ease 0s,visibility .5s ease 0s,transform .5s ease 0s!important}
 [role=dialog][aria-label="Main navigation"].zm>div{display:block!important;height:auto!important;padding:30px 15px!important;background:transparent!important;text-align:left}
 [role=dialog][aria-label="Main navigation"].zm .zm-x{position:absolute;top:18px;right:12px;width:36px;height:36px;display:grid;place-items:center;border:0;background:transparent;color:#fff;cursor:pointer;z-index:2;border-radius:.4rem}
 [role=dialog][aria-label="Main navigation"].zm .zm-logo{display:inline-flex!important;align-items:center;margin:0 0 40px!important;color:#fff!important;font-size:1.35rem}
 [role=dialog][aria-label="Main navigation"].zm .zm-mark{height:26px;width:auto;margin-right:.55rem;color:#fff}
 [role=dialog][aria-label="Main navigation"].zm ul.zm-list{display:block!important;margin:0!important;padding:0!important;list-style:none;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);font-size:14px!important}
 [role=dialog][aria-label="Main navigation"].zm ul.zm-list>li:not(:last-child){border-bottom:1px solid rgba(255,255,255,.1)}
 [role=dialog][aria-label="Main navigation"].zm ul.zm-list>li>a,[role=dialog][aria-label="Main navigation"].zm ul.zm-list summary{display:flex!important;align-items:center;justify-content:space-between;height:46px;line-height:30px;color:#fff!important;font-size:14px!important;font-weight:500;text-decoration:none;transition:color .5s}
 [role=dialog][aria-label="Main navigation"].zm ul.zm-list>li>a:hover,[role=dialog][aria-label="Main navigation"].zm ul.zm-list summary:hover,[role=dialog][aria-label="Main navigation"].zm ul.zm-list a:focus-visible{color:#8ea2ff!important}
 [role=dialog][aria-label="Main navigation"].zm .zh-dm summary::after{content:none!important}
 [role=dialog][aria-label="Main navigation"].zm .zm-tg{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#3538F5;color:#fff;transform:rotate(-90deg);transition:transform .5s ease,background .3s,color .3s;flex:none}
 [role=dialog][aria-label="Main navigation"].zm .zh-dm[open] .zm-tg{transform:rotate(0);background:#fff;color:#3538F5}
 [role=dialog][aria-label="Main navigation"].zm .zh-dm ul{display:block!important;margin:0 0 0 .5em!important;padding:0!important;border-left:0!important;border-top:1px solid rgba(255,255,255,.1)}
 [role=dialog][aria-label="Main navigation"].zm .zh-dm ul li:not(:last-child){border-bottom:1px solid rgba(255,255,255,.1)}
 [role=dialog][aria-label="Main navigation"].zm .zh-dm ul a{display:flex;align-items:center;height:46px;font-size:14px!important;font-weight:500;color:#fff!important;opacity:1!important;text-decoration:none}
 [role=dialog][aria-label="Main navigation"].zm .zh-drawer-offer{display:flex!important;justify-content:flex-start!important;gap:.5rem!important;text-align:left!important}
 [role=dialog][aria-label="Main navigation"].zm .zh-drawer-offer small{display:none!important}
 [role=dialog][aria-label="Main navigation"].zm .zm-contact{list-style:none;margin:20px 0!important;padding:0}
 [role=dialog][aria-label="Main navigation"].zm .zm-contact li{display:flex;align-items:center;font-size:14px;font-weight:500}
 [role=dialog][aria-label="Main navigation"].zm .zm-contact li+li{margin-top:15px}
 [role=dialog][aria-label="Main navigation"].zm .zm-contact i{width:30px;height:30px;border-radius:50%;background:#3538F5;color:#fff;display:flex;align-items:center;justify-content:center;margin-right:10px;flex:none}
 [role=dialog][aria-label="Main navigation"].zm .zm-contact a{color:#fff;text-decoration:none;transition:color .5s;word-break:break-all}
 [role=dialog][aria-label="Main navigation"].zm .zm-contact a:hover{color:#8ea2ff}
 [role=dialog][aria-label="Main navigation"].zm>div>div:last-child{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;margin-top:4px}
 [role=dialog][aria-label="Main navigation"].zm>div>div:last-child>div{justify-content:flex-start!important}
 [role=dialog][aria-label="Main navigation"].zm .zh-nav-tel{display:none!important}
 [role=dialog][aria-label="Main navigation"].zm .zh-cur-m{margin:0!important;border-color:rgba(255,255,255,.14)!important;color:#fff}
 [role=dialog][aria-label="Main navigation"].zm .social-links a{color:#fff}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){.zh-nav-overlay,[role=dialog][aria-label="Main navigation"].zm{transition:none!important}}
/* v4 case studies (t248u/t249u) */
.zc4-label{margin:0 auto;padding:.8rem 1rem;border:1px dashed color-mix(in oklab,#8ea2ff 50%,transparent);border-radius:.9rem;font-size:.92rem;color:var(--muted-foreground);text-align:center}
.zc4-label b{color:var(--foreground);margin-right:.35rem}
.zc4-glance{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem;margin:1.4rem 0 0}
.zc4-glance div{padding:.85rem 1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--card)}
.zc4-glance dt{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}
.zc4-glance dd{margin:.25rem 0 0;font-weight:600;font-size:.95rem;word-break:break-word}
.zc4-glance a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.zc4-dev{display:flex;align-items:flex-end;justify-content:center;gap:clamp(1rem,4vw,3rem);margin-top:1.8rem;flex-wrap:wrap}
.zc4-laptop{margin:0;flex:1 1 34rem;max-width:52rem}
.zc4-lscreen{position:relative;border:10px solid #1b1f33;border-bottom-width:14px;border-radius:14px 14px 4px 4px;background:#000;overflow:hidden;box-shadow:0 2rem 3rem -1.5rem rgba(0,0,0,.6)}
.zc4-lbar{display:flex;align-items:center;gap:.35rem;height:26px;padding:0 .6rem;background:#11152a;font-size:.7rem;color:#9aa3c7}
.zc4-lbar i,.zc4-gbar i{width:8px;height:8px;border-radius:50%;background:#3a4064}.zc4-lbar span{margin-left:.5rem;padding:.15rem .6rem;border-radius:99px;background:#0b0f26}
.zc4-lscreen video,.zc4-pscreen video{display:block;width:100%;height:auto;background:#0b0f26}
.zc4-lbase{height:14px;margin:0 -4%;border-radius:0 0 18px 18px;background:linear-gradient(#2a2f4a,#14182b)}
.zc4-phone{margin:0;flex:0 0 auto;width:clamp(11rem,22vw,15rem)}
.zc4-pscreen{border:9px solid #1b1f33;border-radius:2rem;overflow:hidden;background:#000;box-shadow:0 2rem 3rem -1.5rem rgba(0,0,0,.6)}
.zc4-dev figcaption{margin-top:.7rem;font-size:.82rem;color:var(--muted-foreground);text-align:center}
.zc4-card h3{margin:0 0 .6rem}
.zc4-ph{margin:0;padding:.6rem .8rem;border:1px dashed #f5b14a;border-radius:.6rem;font-size:.88rem;color:var(--muted-foreground)}
.zc4-ph b{color:#f5b14a;margin-right:.35rem;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}
.zc4-did{margin:1.2rem 0}
.zc4-pages{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:.75rem;counter-reset:zp}
.zc4-page{padding:1rem 1.1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--card);font-size:.9rem;counter-increment:zp}
.zc4-ph1{display:flex;justify-content:space-between;gap:.6rem;align-items:baseline}
.zc4-ph1 b::before{content:counter(zp,decimal-leading-zero) "  ";color:#8ea2ff;font-weight:700}
.zc4-ph1 code{font-size:.72rem;color:var(--muted-foreground);word-break:break-all}
.zc4-page p{margin:.45rem 0 0;color:var(--muted-foreground);line-height:1.45}
.zc4-why b{color:var(--foreground)}
.zc4-pal{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.9rem}
.zc4-sw{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .5rem .25rem .25rem;border:1px solid var(--border);border-radius:99px;font-size:.75rem}
.zc4-sw i{width:1.3rem;height:1.3rem;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.mk-g3{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.zc4-note{margin:.7rem 0 0;font-size:.85rem;color:var(--muted-foreground)}
.zc4-ann{display:grid;gap:1.2rem;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;margin-top:1.4rem}
@media (max-width:900px){.zc4-ann{grid-template-columns:1fr}}
.zc4-shot{position:relative;border-radius:.9rem;overflow:hidden;border:1px solid var(--border)}
.zc4-shot img{display:block;width:100%;height:auto}
.zc4-box{position:absolute;border:2px solid #3538F5;border-radius:.5rem;box-shadow:0 0 0 9999px rgba(3,5,20,0) ,0 0 0 3px rgba(53,56,245,.25)}
.zc4-box b{position:absolute;top:-.8rem;left:-.8rem;width:1.6rem;height:1.6rem;border-radius:50%;background:#3538F5;color:#fff;display:grid;place-items:center;font-size:.8rem}
.zc4-leg{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.zc4-leg li{display:flex;gap:.7rem;align-items:flex-start;padding:.75rem .9rem;border:1px solid var(--border);border-radius:.8rem;background:var(--card);font-size:.9rem}
.zc4-leg li b{flex:none;width:1.6rem;height:1.6rem;border-radius:50%;background:#3538F5;color:#fff;display:grid;place-items:center;font-size:.8rem}
.zc4-gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.4rem}
.zc4-g{margin:0;border:1px solid var(--border);border-radius:.8rem;overflow:hidden;background:#11152a}
.zc4-gbar{display:flex;gap:.3rem;padding:.45rem .6rem}
.zc4-g img{display:block;width:100%;height:auto}
.zc4-galm{display:flex;justify-content:center;gap:1rem;margin-top:1.2rem;flex-wrap:wrap}
.zc4-gp{margin:0;width:clamp(8.5rem,26vw,12rem);border:7px solid #1b1f33;border-radius:1.5rem;overflow:hidden;background:#000}
.zc4-gp img{display:block;width:100%;height:auto}
@media (max-width:640px){.zc4-phone{width:62%}.zc4-laptop{flex-basis:100%}.zc4-lscreen{border-width:6px;border-bottom-width:9px}.zc4-gp{width:30%}}
@media (max-width:640px){.zc4-lbase{margin:0 -2%}.zc4-gal{grid-template-columns:1fr}}
.zc4-laptop{min-width:0}
/* t253u: 50% launch pop-up and 10% reward pop-up look clearly different */
.zh-pop--50 .zh-pop__card{background:radial-gradient(120% 80% at 100% 0%,rgba(53,56,245,.45),transparent 60%),linear-gradient(180deg,#10143a,#0a0d24)!important;border-color:rgba(142,162,255,.35)!important}
.zh-pop__big{display:flex;align-items:flex-start;gap:.3rem;margin:-.2rem 0 .3rem;line-height:.8}
.zh-pop__big span{font-size:clamp(4.2rem,15vw,5.6rem);font-weight:700;letter-spacing:-.06em;background:linear-gradient(135deg,#ffffff 10%,#8ea2ff 55%,#3538f5);-webkit-background-clip:text;background-clip:text;color:transparent}
.zh-pop__big i{font-style:normal;font-weight:700;font-size:1.05rem;line-height:1.05;margin-top:.55rem;color:#8ea2ff;text-transform:uppercase;letter-spacing:.06em}
.zh-pop__alt{margin:.9rem 0 0;text-align:center}
.zh-pop__altb{border:0;background:none;color:var(--muted-foreground);font:inherit;font-size:.84rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:.4rem}
.zh-pop__altb:hover{color:#f5b14a}
.zh-ten{position:fixed;left:1.25rem;bottom:1.25rem;z-index:190;width:min(26rem,calc(100vw - 2.5rem));pointer-events:none}
.zh-ten__card{position:relative;display:grid;grid-template-columns:5.2rem 1fr;border-radius:1rem;overflow:hidden;background:#15110a;border:1px solid rgba(245,177,74,.45);box-shadow:0 1.6rem 3rem -1rem rgba(0,0,0,.7);color:#fff;opacity:0;transform:translate3d(0,24px,0) rotate(-1deg);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:auto}
.zh-ten.is-in .zh-ten__card{opacity:1;transform:none}
.zh-ten__stub{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(160deg,#f5b14a,#e08a1e);color:#1a1205;position:relative}
.zh-ten__stub::after{content:"";position:absolute;right:-1px;top:.6rem;bottom:.6rem;border-right:2px dashed rgba(21,17,10,.55)}
.zh-ten__stub b{font-size:1.7rem;line-height:1;font-weight:800;letter-spacing:-.03em}
.zh-ten__stub span{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.zh-ten__body{padding:1rem 1.1rem 1rem 1.1rem}
.zh-ten__k{margin:0;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#f5b14a;font-weight:700}
.zh-ten h2{margin:.25rem 0 .3rem;font-size:1.2rem;line-height:1.15;font-weight:700}
.zh-ten__p{margin:0 0 .7rem;font-size:.82rem;color:rgba(255,255,255,.72);line-height:1.4}
.zh-ten__f{display:grid;gap:.4rem}
.zh-ten__f input{width:100%;padding:.55rem .7rem;border-radius:.5rem;border:1px solid rgba(245,177,74,.3);background:rgba(255,255,255,.05);color:#fff;font:inherit;font-size:.85rem}
.zh-ten__f input:focus{outline:2px solid #f5b14a;outline-offset:1px}
.zh-ten__btn{margin-top:.15rem;padding:.6rem .9rem;border:0;border-radius:.5rem;background:#f5b14a;color:#1a1205;font:inherit;font-weight:700;font-size:.88rem;cursor:pointer}
.zh-ten__btn:hover{background:#ffc266}.zh-ten__btn:disabled{opacity:.6}
.zh-ten__e{margin:0;min-height:1em;font-size:.78rem;color:#ff9b8a}
.zh-ten__code{margin:.2rem 0;font-size:1.5rem;font-weight:800;letter-spacing:.14em;color:#f5b14a}
.zh-ten__ok{margin:0;font-size:.8rem;color:rgba(255,255,255,.75)}
.zh-ten__fine{margin:.55rem 0 0;font-size:.72rem;color:rgba(255,255,255,.55)}
.zh-ten__x{position:absolute;top:.35rem;right:.4rem;z-index:2;width:2rem;height:2rem;border:0;background:transparent;color:rgba(255,255,255,.8);font-size:1.3rem;cursor:pointer;border-radius:.4rem}
@media (max-width:640px){.zh-ten{left:.6rem;right:.6rem;bottom:.6rem;width:auto}.zh-ten__card{grid-template-columns:4.2rem 1fr}}
@media (prefers-reduced-motion:reduce){.zh-ten__card{transition:none}}
/* t255u (Zach 4:47 PM): one continuous background on every page, like 7643ceb. The hero keeps the template light rays only;
   the extra aurora + noise layers that made the hero a lighter band are switched off. */
.zh-th::before,.zh-th::after{content:none!important;background:none!important;animation:none!important}
.zf-card__av--photo{width:3rem;height:3rem;border-radius:50%;object-fit:cover}
.zh-vaw{display:flex;justify-content:center;width:100%;margin:1rem 0 3rem}
.zh-view-all{max-width:none!important}
/* t263u: /start leave confirmation uses the 50% pop-up card */
.zh-pop--leave .zh-pop__card{width:min(100%,27rem)}
.zh-pop--leave h2{font-size:clamp(1.45rem,4.6vw,1.8rem)}
.zh-pop--leave .zh-pop__go{margin-top:1.1rem}
/* t266u: phones, Get in touch sits beside Company; long email wraps cleanly */
@media (max-width:640px){.zf-grid>.zf-get{grid-column:auto}.zf-get .zf-contact a,.zf-get .zf-contact span{overflow-wrap:anywhere;word-break:break-word;font-size:.84rem}.zf-get .zf-card{margin-top:1rem}}
.zf-contact a{overflow-wrap:anywhere}
/* t268u: industries and areas hubs, tidy grids */
.zh-ind .zh-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch}
.zh-ind .zh-price-card{height:100%;display:flex;flex-direction:column}
.zh-ind .zh-price-card h2{font-size:clamp(1.25rem,1.8vw,1.55rem);line-height:1.2;margin:0 0 .75rem}
@media (max-width:1023px){.zh-ind .zh-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.zh-ind .zh-price-grid{grid-template-columns:1fr}}
#zh-live-work .zh-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;align-items:stretch}
#zh-live-work .zh-proof-card{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;height:100%;padding:1rem 1rem 1.1rem;text-decoration:none;color:inherit}
#zh-live-work .zh-proof-card .zh-mock-badge{position:static;transform:none;margin:0}
#zh-live-work .zh-proof-card strong{display:block;margin:0}
@media (max-width:1023px){#zh-live-work .zh-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){#zh-live-work .zh-proof-grid{grid-template-columns:1fr}}
.zh-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}@media (max-width:640px){.zh-tools-grid{grid-template-columns:1fr!important}}
/* t270u: recordings always shown in full. Desktop recordings keep the laptop frame on phones; only recordings with a phone cut (data-m) use the phone frame. */
.zv video,.zv img{object-fit:contain;object-position:center;background:#0b0e1c}
@media(max-width:699px){
 .zv:not([data-m]){max-width:46rem}
 .zv:not([data-m]) .zv-frame{border-radius:.9rem;padding:0;background:#0b0e1c}
 .zv:not([data-m]) .zv-frame::before{display:block}
 .zv:not([data-m]) video,.zv:not([data-m]) img{aspect-ratio:16/10;border-radius:0}
}
@media (max-width:640px){.zf-get .zf-card{flex-wrap:wrap;gap:.55rem;padding:.75rem}.zf-get .zf-card p{order:3;flex:1 1 100%}.zf-get .zf-card__av--photo{width:2.5rem;height:2.5rem}}
/* t274u: Work with me button in the header on desktop only. On phones it lives in the menu (Work with me row). */
@media (max-width:767px){nav.zh-hdr a[data-slot="button"][href="/start"]{display:none}}
/* t274u WhatsApp "Message or call?" panel (existing pop + tile look) */
.zh-pop--wa .zh-pop__card{width:min(100%,26rem)}
.zh-pop--wa h2{margin:0 0 .35rem;font-size:1.35rem}
.zh-pop--wa .zh-wa-opts{grid-template-columns:1fr}
.zh-pop--wa a.zh-tile{text-decoration:none}
.zh-wa-num{font-size:1.15rem!important;font-weight:700;color:var(--foreground)!important;letter-spacing:.02em}
.zh-wa-hint{font-size:.78rem!important;opacity:.85}
/* t274u /services picks: real recording at the top of each pick, then a button into /start with the service picked */
.zh-pick-vid{margin:0 0 1rem;max-width:none}
.zh-pick-go{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:.9rem}
@media(max-width:699px){.zh-pick-vid.zv[data-m]{max-width:15rem;margin-left:auto;margin-right:auto}}
/* t274u (Zach 8:49 PM): phone lights MOVE like the desktop WebGL rays. Two CSS beam layers sway on different
   clocks and cross-fade, so single beams brighten and dim the way the desktop shader shimmers.
   Only transform and opacity animate (compositor only, no JS loop). Off for reduced motion. */
@media (max-width:767px){
 html .light-rays-container::before{animation:zhRaysA 7s ease-in-out infinite alternate;will-change:transform,opacity}
 html .light-rays-container::after{content:"";position:absolute;left:-60%;right:-60%;top:-6%;height:92%;z-index:0;pointer-events:none;
  transform-origin:50% 0;opacity:.55;
  background:conic-gradient(from 112deg at 50% 0%,
    transparent 0deg, rgba(230,236,255,.26) 4deg, transparent 10deg,
    transparent 20deg, rgba(230,236,255,.3) 28deg, transparent 35deg,
    transparent 48deg, rgba(235,240,255,.36) 56deg, transparent 63deg,
    rgba(230,236,255,.14) 74deg, rgba(240,244,255,.42) 79deg, transparent 86deg,
    transparent 98deg, rgba(230,236,255,.3) 105deg, transparent 112deg,
    transparent 120deg, rgba(230,236,255,.22) 128deg, transparent 136deg);
  -webkit-mask-image:radial-gradient(68% 100% at 50% 0%,#000 25%,transparent 100%);mask-image:radial-gradient(68% 100% at 50% 0%,#000 25%,transparent 100%);
  filter:blur(5px);
  animation:zhRaysB 5.3s ease-in-out infinite alternate;will-change:transform,opacity}
}
@keyframes zhRaysA{0%{transform:rotate(-3.5deg) scaleY(1);opacity:1}50%{opacity:.62}100%{transform:rotate(3deg) scaleY(1.06);opacity:.95}}
@keyframes zhRaysB{0%{transform:rotate(4deg) scaleY(1.04);opacity:.2}45%{opacity:.85}100%{transform:rotate(-3deg) scaleY(.97);opacity:.35}}
@media (max-width:767px) and (prefers-reduced-motion:reduce){html .light-rays-container::before,html .light-rays-container::after{animation:none}html .light-rays-container::after{opacity:.4}}
/* t274u articles: easy reading. ~68 characters a line, calm type scale, clear spacing, sticky contents on desktop. */
.zh-art .mk-split{grid-template-columns:minmax(0,1fr) 17rem;gap:3rem;max-width:66rem;margin:0 auto}
.zh-art .mk-prose{max-width:68ch;font-size:1.0625rem;line-height:1.8}
@media(min-width:1024px){.zh-art .mk-prose{font-size:1.125rem}}
.zh-art .mk-prose h2{margin:2.8rem 0 .8rem;font-size:clamp(1.4rem,2.4vw,1.75rem);scroll-margin-top:5.5rem}
.zh-art .mk-prose h3{margin:1.8rem 0 .5rem;font-size:1.15rem;font-weight:600;color:var(--foreground)}
.zh-art .mk-prose p{margin:0 0 1.25rem}
.zh-art .mk-prose ul,.zh-art .mk-prose ol{margin:0 0 1.4rem;padding-left:1.3rem;display:grid;gap:.5rem}
.zh-art .mk-prose li::marker{color:var(--accent)}
.zh-art .mk-prose strong{color:var(--foreground)}
.zh-art .mk-prose .mk-answer{margin:0 0 2rem}
.zh-art .mk-prose code{font-size:.9em;padding:.1em .35em;border-radius:.35rem;background:rgba(255,255,255,.07)}
.zh-art .zh-art-cta{margin:2.2rem 0}
.zh-art .zh-rel-end{display:none;margin-top:1.5rem}
@media(max-width:1023px){
 .zh-art .mk-split{grid-template-columns:1fr;gap:1.5rem}
 .zh-art .mk-aside{order:-1}
 .zh-art .mk-aside .zh-rel,.zh-art .mk-aside article:not(:first-child){display:none}
 .zh-art .zh-rel-end{display:block}
}
.zh-article-card time{font-variant-numeric:tabular-nums}
/* t274u #10: the header currency picker shows only on /pricing (html[data-zh-cur]); the builder keeps its own toolbar picker */
html:not([data-zh-cur="on"]) .zh-cur-w:not(.zs-curw),html:not([data-zh-cur="on"]) .zh-cur-m{display:none!important}
html:not([data-zh-cur="tool"]) .zs-curw{display:none!important}
.zt-curl{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.zt-curl select{appearance:none;-webkit-appearance:none;height:2.3rem;padding:0 1.6rem 0 .7rem;border-radius:.5rem;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 80%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23a5b4fc' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right .55rem center;color:var(--foreground);font:600 .85rem/1 inherit;cursor:pointer}
/* t278u industry CTA card */
.zh-ind-cta{display:flex;flex-direction:column;gap:.7rem;justify-content:center}
.zh-ind-cta .zh-ind-go{align-self:flex-start;white-space:normal;text-align:left}
.zh-ind-fine{margin:0;font-size:.8rem;color:var(--muted-foreground)}
/* t278u /reviews: Google review wall */
.zr{max-width:72rem;margin:0 auto;padding:1rem 1.25rem 4rem}
.zr-sum{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center;margin:0 auto 3rem;padding:1.75rem 1.25rem;border:1px solid var(--border);border-radius:1.25rem;background:color-mix(in oklab,var(--card) 85%,transparent);max-width:34rem}
.zr-ex{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.zr-stars{display:inline-flex;gap:2px}
.zr-rate{margin:0;font-size:1rem;color:var(--muted-foreground);display:flex;align-items:center;gap:.4rem}
.zr-rate b{color:var(--foreground);font-size:1.15rem}
.zr-gword{font-weight:600;font-size:1.15rem;letter-spacing:-.01em;background:#fff;border-radius:.4rem;padding:.05rem .4rem}
.zr-gword b{font-weight:600}
.zr-acts{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:.6rem}
.zr-h{margin:0 0 1.25rem;font-size:clamp(1.4rem,2.6vw,1.9rem);text-align:center}
.zr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem;margin-bottom:1rem}
.zr-grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
.zr-card{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-radius:1rem;border:1px solid var(--border);background:color-mix(in oklab,var(--card) 92%,transparent)}
.zr-top{display:flex;align-items:center;gap:.75rem}
.zr-top>div{flex:1;min-width:0}
.zr-av{width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;font-weight:700;background:#3538F5;color:#fff;flex:none}
.zr-card--client .zr-av{background:color-mix(in oklab,#3538F5 35%,var(--card))}
.zr-name{margin:0;font-weight:600}
.zr-when{margin:0;font-size:.8rem;color:var(--muted-foreground)}
.zr-text{margin:0;line-height:1.65;color:color-mix(in oklab,var(--foreground) 88%,transparent);flex:1}
.zr-src{font-size:.85rem;text-decoration:underline;text-underline-offset:.2em;color:var(--muted-foreground)}
.zr-note{margin:0 0 3rem;text-align:center;font-size:.85rem;color:var(--muted-foreground)}
.zr-end{text-align:center;margin-top:3rem;padding:2rem 1.25rem;border-radius:1.25rem;border:1px solid var(--border)}
.zr-end h2{margin:0 0 .5rem;font-size:clamp(1.3rem,2.4vw,1.7rem)}.zr-end p{margin:0 0 1.1rem;color:var(--muted-foreground)}
.zv-still picture,.zv-shot .zv-frame img{display:block;width:100%}
.zv-still img{display:block;width:100%;height:auto;object-fit:contain;background:#0b0e1c}
.zv[data-v="seo-edit"] video,.zv[data-v="seo-edit"] img{aspect-ratio:16/9}
@media(max-width:699px){.zv[data-v="seo-edit"][data-m] video,.zv[data-v="seo-edit"][data-m] img{aspect-ratio:9/16}}
.zh-seo-edit .zv{max-width:60rem;margin:0 auto}
/* t274u #2 case study dissection */
.zc5-pg{display:grid;gap:1.4rem;align-items:start;padding:2rem 0;border-top:1px solid rgba(255,255,255,.08)}
.zc5-pg:first-of-type{border-top:0}
.zc5-shots{display:grid;grid-template-columns:1.597fr .462fr;gap:.9rem;align-items:start}
.zc5-shots.zc5-solo{grid-template-columns:1fr}
.zc5-d,.zc5-m{margin:0;border-radius:.8rem;overflow:hidden;background:#0b0e1c;box-shadow:0 1.2rem 2.4rem -1.4rem rgba(0,0,0,.7)}
.zc5-m{border-radius:1.1rem;border:.3rem solid #05070f}
.zc5-d img,.zc5-m img{display:block;width:100%;height:auto}
.zc5-k{font-weight:700;letter-spacing:.12em;opacity:.6;margin:0 0 .3rem}
.zc5-txt h3{margin:0 0 .3rem}
.zc5-u{font-size:.9rem;opacity:.75;word-break:break-all}
.zc5-txt .zc4-leg{margin-top:1rem}
@media(min-width:900px){.zc5-pg{grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:2.4rem}.zc5-txt{position:sticky;top:6rem}}
html:not([data-zh-cur="on"]) [role=dialog][aria-label="Main navigation"].zm > div.zh-cur-m{display:none!important}
.zh-ind-go .zh-jp{margin-left:.3em}
.zr .zr-card{width:auto;margin:0;min-width:0}.zr .zr-card blockquote{display:block;-webkit-line-clamp:unset;overflow:visible}.zr .zr-grid:not(.zr-grid--4){max-width:50rem;margin-left:auto;margin-right:auto}
.zc5-why{margin:.2rem 0 .5rem;font-size:.95rem;line-height:1.5}.zc5-why b{font-weight:700}

/* t292u #21: the live chat launcher replaces the floating WhatsApp dock */
.zh-float-dock{display:none!important}
/* t296u: the mobile menu ran two 0.5 s animations back to back (overlay slide, then the panel after a 0.5 s delay), so it looked like it loaded twice and took about 1 s.
   Same slide-in style, now overlay and panel move together: visible in about 60 ms, settled by about 300 ms. */
@media (max-width:767px){
 .zh-nav-overlay{transition:transform .26s cubic-bezier(.2,.8,.2,1) .12s,visibility 0s linear .38s!important}
 .zh-nav-overlay.is-open{transition:transform .26s cubic-bezier(.2,.8,.2,1) 0s,visibility 0s linear 0s!important}
 [role=dialog][aria-label="Main navigation"].zm{transition:opacity .2s ease .03s,visibility 0s linear 0s,transform .27s cubic-bezier(.2,.8,.2,1) .03s!important}
 [role=dialog][aria-label="Main navigation"].zm.translate-x-full{transition:opacity .2s ease 0s,visibility 0s linear .26s,transform .24s cubic-bezier(.4,0,.6,1) 0s!important}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){.zh-nav-overlay,.zh-nav-overlay.is-open,[role=dialog][aria-label="Main navigation"].zm,[role=dialog][aria-label="Main navigation"].zm.translate-x-full{transition:none!important}}

/* t296u: persistent discount pill, bottom left, clear of the chat bubble */
.zh-code-chip{left:max(12px,env(safe-area-inset-left))!important;right:auto;bottom:max(16px,env(safe-area-inset-bottom))!important;transform:translateY(150%)!important;display:flex;align-items:center;gap:.55rem;padding:.4rem .4rem .4rem .45rem!important;max-width:min(calc(100vw - 104px),26rem)!important;border:1px solid rgba(34,197,94,.35);border-radius:999px;font-size:.8rem;line-height:1.25;z-index:2147481000!important}
.zh-code-chip.is-in{transform:none!important;opacity:1}
.zh-code-chip__b{flex:none;width:34px;height:34px;border-radius:50%;border:0;background:#16a34a;color:#fff;font:inherit;font-size:.72rem;cursor:pointer;padding:0}
.zh-code-chip__t{min-width:0}.zh-code-chip__t small{display:block;color:#a3a8c7;font-size:.72rem}
.zh-code-chip__x{flex:none;width:28px;height:28px;border-radius:50%;border:0;background:rgba(255,255,255,.08);color:#fff;font-size:1rem;cursor:pointer}
.zh-code-chip.is-min{padding:0!important;border:0;background:transparent!important;box-shadow:none!important}
.zh-code-chip.is-min .zh-code-chip__t,.zh-code-chip.is-min .zh-code-chip__x{display:none}
.zh-code-chip.is-min .zh-code-chip__b{box-shadow:0 .6rem 1.4rem -.5rem rgba(0,0,0,.7)}
.zh-pop--ok .zh-ok__tick{width:56px;height:56px;margin:0 auto .6rem;border-radius:50%;background:#16a34a;color:#fff;display:grid;place-items:center;font-size:1.6rem}
.zh-pop--ok h2,.zh-pop--ok .zh-pop__sub{text-align:center}.zh-ok__code{font-family:ui-monospace,Menlo,monospace;letter-spacing:.04em;color:#86efac}

/* t298: reels */
.zh-freel{margin:0}
.zh-freel__frame{position:relative;max-width:360px;margin:0 auto;aspect-ratio:9/16;border-radius:1.25rem;overflow:hidden;background:#0b0f26;box-shadow:0 1.5rem 3rem -1.5rem rgba(0,0,0,.6);border:1px solid var(--border)}
.zh-freel__frame video,.zh-freel__frame img{width:100%;height:100%;object-fit:cover;display:block;cursor:pointer}
.zh-freel__snd{position:absolute;right:.75rem;bottom:.75rem;width:40px;height:40px;border-radius:50%;border:0;background:rgba(10,13,32,.72);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}
.zh-freel__snd.is-on .zh-freel__x{display:none}
.zh-freel__snd:focus-visible{outline:2px solid #8b8ef9;outline-offset:2px}
.zh-freel figcaption{max-width:360px;margin:.75rem auto 0;font-size:.85rem;color:var(--muted-foreground);text-align:center}
.zh-freel figcaption a{color:var(--foreground);text-decoration:underline;text-underline-offset:2px}
.zf-card--ig .zf-card__av--ig{display:grid;place-items:center;background:linear-gradient(135deg,#f58529,#dd2a7b 50%,#8134af);color:#fff;border-radius:50%}
.zf-card--ig .zf-card__av--ig{height:2.75rem}
.zh-freel__cap{position:absolute;left:50%;bottom:4.2rem;transform:translateX(-50%);margin:0;max-width:84%;width:max-content;padding:.32rem .7rem;border-radius:.55rem;background:rgba(10,13,32,.8);color:#fff;font:600 .98rem/1.3 inherit;font-family:inherit;text-align:center;letter-spacing:.01em;pointer-events:none;box-shadow:0 .4rem 1rem -.4rem rgba(0,0,0,.6)}
.zh-freel__frame video::cue{opacity:0}
@media (max-width:767px){.zh-freel__cap{font-size:.92rem;bottom:3.9rem}}
/* t302: /contact */
.zc .zc-h{margin:0 0 .4rem}
.zc-lead{color:var(--muted-foreground);margin:0 0 1.25rem;max-width:42rem}
.zc-lead a,.zc-fine a,.zc-faq a,.zc-nap a,.zc-revl a,.zc-link{color:var(--foreground);text-decoration:underline;text-underline-offset:3px}
.zc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr));gap:.85rem}
.zc-card{display:flex;align-items:center;gap:.85rem;text-decoration:none;color:inherit;transition:transform .2s,border-color .2s}
.zc-card:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--primary) 50%,var(--border))}
.zc-card:focus-visible{outline:2px solid #8b8ef9;outline-offset:3px}
.zc-ic{flex:none;width:2.75rem;height:2.75rem;border-radius:.8rem;display:grid;place-items:center;background:color-mix(in oklab,var(--primary) 18%,transparent);color:#c7c9ff}
.zc-ic--wa{background:rgba(37,211,102,.14);color:#4ade80}
.zc-t{display:grid;gap:.1rem;min-width:0}.zc-t b{font-size:1rem}.zc-t small{color:var(--muted-foreground);font-size:.85rem;overflow-wrap:anywhere}
.zc-arr{margin-left:auto;color:var(--muted-foreground)}
.zc-start{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1.25rem}
.zc-start h2{margin:0 0 .25rem;font-size:clamp(1.2rem,2.4vw,1.5rem)}.zc-start p{margin:0;color:var(--muted-foreground)}
.zc-two{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem;align-items:start}
.zc-formwrap h2,.zc-nap h2{margin:0 0 .35rem;font-size:1.35rem}
.zc-form{display:grid;gap:.8rem}
.zc-form label{display:grid;gap:.3rem;font-size:.9rem;font-weight:600}
.zc-form input,.zc-form textarea{width:100%;border:1px solid var(--border);background:var(--background);color:var(--foreground);border-radius:.75rem;padding:.75rem .85rem;font:inherit;font-size:16px;font-weight:400}
.zc-form input:focus,.zc-form textarea:focus{outline:none;border-color:#8b8ef9;box-shadow:0 0 0 3px rgba(139,142,249,.25)}
.zc-form .mk-btn{justify-self:start}
.zc-msg{margin:0;min-height:1.2em;font-size:.92rem}.zc-fine{margin:0;font-size:.8rem;color:var(--muted-foreground)}
.zc-side{display:grid;gap:1rem}
.zc-nap p{margin:0 0 .6rem;line-height:1.6}.zc-areas{font-size:.92rem;color:var(--muted-foreground)}
.zc-map{margin:.6rem 0;border-radius:.8rem;overflow:hidden;border:1px solid var(--border);aspect-ratio:16/10;background:var(--card)}
.zc-map iframe{width:100%;height:100%;border:0;display:block}
.zc-stars{margin:0 0 .4rem;font-weight:700}.zc-stars span{color:#fbbf24;letter-spacing:.1em}
.zc-rev blockquote{margin:0 0 .4rem;font-size:1.02rem;line-height:1.5}
.zc-who{margin:0 0 .6rem;color:var(--muted-foreground);font-size:.88rem}
.zc-revl{margin:0;display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem}
.zc-faqs{display:grid;gap:.6rem;max-width:48rem}
.zc-faq{border:1px solid var(--border);border-radius:.9rem;padding:.9rem 1.1rem;background:var(--card)}
.zc-faq summary{cursor:pointer;font-weight:600}.zc-faq p{margin:.6rem 0 0;color:var(--muted-foreground);line-height:1.6}
@media (max-width:767px){.zc-two{grid-template-columns:1fr}.zc-start .mk-btn{width:100%}.zc-form .mk-btn{justify-self:stretch}}
/* t316 (#28): mobile menu CTAs, one close X, hero CTA pair as real buttons */
[role=dialog][aria-label="Main navigation"].zm .zm-cta{display:grid;gap:10px;margin:22px 0 4px}
[role=dialog][aria-label="Main navigation"].zm .zm-cta a{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;width:100%;height:48px!important;font-size:15px!important;font-weight:600!important;text-decoration:none}
[role=dialog][aria-label="Main navigation"].zm .zm-cta .zm-cta__s{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.28)!important;box-shadow:none!important}
[role=dialog][aria-label="Main navigation"].zm .zm-cta .zm-cta__s i{display:inline-flex;width:16px;height:16px}
[role=dialog][aria-label="Main navigation"].zm .zm-cta .zm-cta__s svg{width:16px;height:16px}
html.zm-open button.hamburger{opacity:0!important;pointer-events:none!important}
html.zm-open .zhl-launch,html.zm-open .zhl-peek,html.zm-open .zh10-pill{visibility:hidden!important}
a.zh-hero-2nd{border:1px solid color-mix(in oklab,currentColor 32%,transparent)!important;background:transparent}
@media (max-width:767px){a.zh-hero-2nd,a.zh-hero-2nd~a,.zh-hero-2nd{display:inline-flex!important}a.zh-hero-2nd,a[data-slot=button][href="/start"]:has(+ a.zh-hero-2nd){height:44px!important;padding:0 1.15rem!important;font-size:15px!important}}
/* t317 (#29): /contact main action is Talk to Zachary (live chat) */
.zc-hero-ctas{display:flex;flex-direction:column;align-items:center;gap:12px}
.zc-hero-2{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
button.zc-talk{cursor:pointer;gap:.55rem;min-width:220px;border:0}
.zc-livewrap{padding-top:8px!important;padding-bottom:8px!important}
.zc-live{max-width:560px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 22px!important}
.zc-live .zc-h{margin:.5rem 0 0}
.zc-live .zc-lead{margin:0 0 .6rem}
.zc-live__ph{position:relative;width:72px;height:72px}
.zc-live__ph img{width:72px;height:72px;border-radius:50%;object-fit:cover;display:block}
.zc-live__ph i{position:absolute;right:2px;bottom:2px;width:14px;height:14px;border-radius:50%;background:#22c55e;border:2px solid var(--background,#0b0f2a)}
.zc-live__fine{margin:.5rem 0 0;font-size:.8rem;opacity:.75}
/* t318 (#30): one animated arrow hero size on every page (matches home) */
h1 .zh-arrow svg.flip,.hero-text .zh-arrow svg.flip.flip{width:32px!important;height:32px!important;min-width:0!important;min-height:0!important;display:inline-block!important;vertical-align:middle!important}
@media (min-width:768px){h1 .zh-arrow svg.flip,.hero-text .zh-arrow svg.flip.flip{width:48px!important;height:48px!important}}
/* t322 (#32): short 50% pop-up + site-wide offer pill */
.zh-pop--short .zh-pop__card{width:min(100%,21rem);text-align:center;padding:1rem 1.3rem 1.4rem}
.zh-pop--short .zh-pop__top{justify-content:flex-end}
.zh-pop--short h2{font-size:1.65rem;line-height:1.15;margin:.1rem 0 .3rem}
.zh-pop--short .zh-pop__sub{margin:0 0 1rem}
.zh-pop--short .zh-pop__go{justify-content:center}
.zh-pop--short .zh-claim{min-width:12rem;min-height:44px;font-size:1rem;cursor:pointer}
.zh-pop--short .zh-ok__tick{width:56px;height:56px;margin:.2rem auto .6rem;border-radius:50%;background:#16a34a;color:#fff;display:grid;place-items:center;font-size:1.6rem}
.zh-offer-pill .zh-code-chip__b{background:var(--accent,#3538f5)}
.zh-offer-pill.is-claimed .zh-code-chip__b{background:#16a34a}
.zh-offer-pill a.zh-code-chip__t{color:#fff;text-decoration:none}
.zh-offer-pill a.zh-code-chip__t:hover b{text-decoration:underline;text-underline-offset:3px}
.zh-offer-pill__c{flex:none;border:0;border-radius:999px;padding:.45rem .8rem;background:#fff;color:#0b1020;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap}
.zh-offer-pill.is-min .zh-offer-pill__c{display:none}
/* t322: on phones the chat hello bubble sits over the bottom-left pill for its 15 s; lift the pill above it meanwhile */
@media (max-width:700px){body:has(.zhl-teaser:not([hidden])) .zh-offer-pill,body:has(.zhl-peek:not([hidden])) .zh-offer-pill{bottom:calc(max(16px,env(safe-area-inset-bottom)) + 96px)!important}}
.zh-offer-pill{transition:bottom .25s ease,transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
/* t323: Claim 50% button on the offer pages */
.zh-claim-cta,.mk-btn.zh-claim-cta{cursor:pointer;font-weight:600}
button.zh-claim-cta{border:0;font:inherit}
.zh-claim-cta.is-claimed::before{content:"\2713";margin-right:.4rem;color:#16a34a;font-weight:700}
.zh-pop--short.is-claimed .zh-pop__body{padding-top:.4rem}
.zh-page-hero .flex-row:has(.zh-claim-cta){flex-wrap:wrap;justify-content:center}
