.hp-root{--max:1120px;background:var(--canvas);color:var(--ink);font-family:var(--font-body);min-height:100dvh;font-size:1rem;line-height:1.65;overflow-x:clip}.hp-root .t-label{color:var(--quiet)}:is(.hp-root,.pin-root) .hp-nav{z-index:200;background:var(--canvas);border-bottom:1px solid var(--line);position:sticky;top:0}:is(.hp-root,.pin-root) .hp-nav-row{box-sizing:content-box;max-width:var(--max);align-items:center;margin:0 auto;padding:0 clamp(24px,5vw,64px);display:flex}:is(.hp-root,.pin-root) .hp-nav-row--top{justify-content:space-between;height:56px}:is(.hp-root,.pin-root) .hp-nav-row--pages{border-top:1px solid var(--line);height:42px}:is(.hp-root,.pin-root) .hp-nav-links{scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:stretch;gap:26px;height:100%;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}:is(.hp-root,.pin-root) .hp-nav-links::-webkit-scrollbar{display:none}:is(.hp-root,.pin-root) .hp-nav-links li{flex:none;display:flex}:is(.hp-root,.pin-root) .hp-nav-links a{font-family:var(--font-display);letter-spacing:.03em;color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;font-size:.8125rem;font-weight:600;text-decoration:none;display:flex}:is(.hp-root,.pin-root) .hp-nav-links a:hover{color:var(--ink)}:is(.hp-root,.pin-root) .hp-nav-links a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}:is(.hp-root,.pin-root) .hp-nav-cta{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;background:var(--accent);color:var(--on-accent);border-radius:var(--r-sm);white-space:nowrap;padding:9px 18px;font-size:.75rem;font-weight:700;text-decoration:none}:is(.hp-root,.pin-root) .hp-nav-cta:hover{opacity:.85}:is(.hp-root,.pin-root) .hp-nav-cta[aria-current=page]{opacity:.7}:is(.hp-root,.pin-root) .hp-nav-tag{font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);opacity:.6;margin-left:12px;margin-right:auto;font-weight:700}:is(.hp-root,.pin-root) .hp-nav-right{align-items:center;gap:16px;display:flex}:is(.hp-root,.pin-root) .hp-nav-toggle{border-radius:var(--r-sm);width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}:is(.hp-root,.pin-root) .hp-nav-toggle:hover{color:var(--ink);background:rgba(var(--accent-rgb),.08)}.hp-root .hero{box-sizing:content-box;max-width:var(--max);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,80px);margin:0 auto;padding:40px clamp(24px,5vw,64px) clamp(40px,5vh,64px);display:grid}@media (width<=780px){.hp-root .hero{grid-template-columns:1fr;min-height:auto;padding-top:32px}.hp-root .hero-visual{order:1;margin-top:8px}}.hp-root .hero-eyebrow{margin-bottom:20px}.hp-root .hero-h1{font-family:var(--font-body);letter-spacing:-.025em;text-wrap:balance;color:var(--ink);margin-bottom:20px;font-size:clamp(2rem,2.8vw + .75rem,3.25rem);font-weight:700;line-height:1.08}.hp-root .hero-glyph{vertical-align:-.08em;width:.74em;height:.74em;color:var(--accent);margin:0 0 0 .12em;display:inline-block}.hp-root .hero-glyph svg{width:100%;height:100%;display:block}.hp-root .hero-desc{color:var(--muted);max-width:40ch;margin-bottom:52px;font-size:1rem;line-height:1.7}.hp-root .hero-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.hp-root .hero-visual{flex-direction:column;justify-self:end;align-items:flex-start;gap:14px;max-width:440px;margin-top:46px;display:flex}.hp-root .hero-scene{border-radius:var(--r-lg);width:100%;height:auto;box-shadow:var(--shadow-float);display:block}.hp-root .hero-caption{color:var(--muted);margin:0;font-size:.9375rem;line-height:1.6}@media (width<=780px){.hp-root .hero-visual{justify-self:stretch;max-width:none;margin-top:0}}.hp-root .btn-primary:hover{opacity:.87;transform:translateY(-1px)}.hp-root .btn-link{font-family:var(--font-display);color:var(--muted);align-items:center;gap:6px;font-size:.875rem;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.hp-root .btn-link:hover{color:var(--ink)}.hp-root .btn-link .arr{transition:transform .15s;display:inline-block}.hp-root .btn-link:hover .arr{transform:translate(4px)}.hp-root .btn-ghost{min-height:44px;font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.04em;border:1.5px solid var(--line);color:var(--ink);border-radius:var(--r-pill);background:var(--surface-solid);white-space:nowrap;justify-content:center;align-items:center;padding:0 22px;font-weight:700;text-decoration:none;transition:border-color .2s,transform .1s;display:inline-flex}.hp-root .btn-ghost:hover{border-color:rgba(var(--accent-rgb),.22);transform:translateY(-1px)}.hp-root .concept{background:var(--surface-solid);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(56px,7vw,96px) clamp(24px,5vw,64px)}.hp-root .concept-inner{max-width:var(--max);grid-template-columns:5fr 7fr;align-items:start;gap:clamp(48px,8vw,120px);margin:0 auto;display:grid}@media (width<=680px){.hp-root .concept-inner{grid-template-columns:1fr;gap:48px}}.hp-root .concept-quote{font-family:var(--font-body);letter-spacing:-.02em;color:var(--accent);text-wrap:balance;font-size:clamp(1.5rem,3vw + .5rem,2.25rem);font-weight:700;line-height:1.1}.hp-root .concept-quote-tr{font-family:var(--font-body);color:var(--quiet);letter-spacing:0;margin-top:12px;font-size:clamp(.8rem,1.5vw,.9375rem);font-style:italic;font-weight:400;display:block}.hp-root .concept-body{flex-direction:column;gap:20px;padding-top:6px;display:flex}.hp-root .concept-body p{color:var(--muted);max-width:46ch;font-size:1.0625rem;line-height:1.72}.hp-root .concept-body p strong{color:var(--ink);font-weight:400}.hp-root .concept-pull{border-top:1px solid var(--line);max-width:46ch;margin-top:8px;padding:18px 0 0}.hp-root .concept-pull p{font-family:var(--font-body);color:var(--ink);max-width:none;font-size:.9375rem;font-style:italic;font-weight:400;line-height:1.55}.hp-root .scenes{box-sizing:content-box;max-width:var(--max);margin:0 auto;padding:clamp(48px,6vw,88px) clamp(24px,5vw,64px)}.hp-root .scene-grid{grid-template-columns:repeat(4,1fr);gap:clamp(8px,1.5vw,16px);display:grid}.hp-root .scene-tile.scene-tile--wide{aspect-ratio:auto;grid-column:span 2}.hp-root .scene-tile.scene-tile--wide img{object-position:center 45%}@media (width<=900px){.hp-root .scene-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.hp-root .scene-grid{grid-template-columns:repeat(2,1fr)}}.hp-root .scene-tile{aspect-ratio:4/5;border:1px solid var(--line);border-radius:var(--r-md);background:var(--canvas-deep);color:var(--ink);cursor:pointer;align-items:flex-end;margin:0;padding:0;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.hp-root .scene-tile:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.hp-root .scene-tile img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.hp-root .scene-tile-title{z-index:1;width:100%;font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.02em;color:var(--white);text-align:left;background:linear-gradient(transparent, var(--backdrop));padding:40px 14px 12px;font-weight:700;position:relative}.hp-root .scene-tile--pending{cursor:default;color:var(--quiet);flex-direction:column;justify-content:center;align-items:center;gap:10px}.hp-root .scene-tile--pending:hover{box-shadow:none;transform:none}.hp-root .scene-tile--pending .scene-tile-title{width:auto;color:var(--quiet);text-align:center;background:0 0;padding:0}.hp-root .scene-dialog{border-radius:var(--r-lg);background:var(--surface-solid);color:var(--ink);box-shadow:var(--shadow-float);border:0;width:min(92vw,560px);max-height:92svh;padding:0;overflow:hidden}.hp-root .scene-dialog::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(6px)}.hp-root .scene-figure{margin:0;position:relative}.hp-root .scene-figure img{object-fit:cover;width:100%;height:auto;max-height:70svh;display:block}.hp-root .scene-figure figcaption{padding:16px 20px 20px}.hp-root .scene-figure figcaption strong{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-weight:700;display:block}.hp-root .scene-figure figcaption p{font-size:var(--fs-md);color:var(--ink);margin:0;line-height:1.5}.hp-root .scene-nav,.hp-root .scene-close{background:var(--backdrop);width:38px;height:38px;color:var(--white);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:12px}.hp-root .scene-close{right:12px}.hp-root .scene-nav{top:50%;transform:translateY(-50%)}.hp-root .scene-nav--prev{left:12px}.hp-root .scene-nav--next{right:12px}@media (prefers-reduced-motion:reduce){.hp-root .scene-tile{transition:none}}.hp-root .section-head{margin-bottom:clamp(28px,4vw,44px)}.hp-root .section-title{font-family:var(--font-body);letter-spacing:-.02em;color:var(--ink);margin-top:10px;font-size:clamp(1.5rem,3vw + .5rem,2.25rem);font-weight:700}.hp-root .haptic-label{margin-bottom:14px}.hp-root .haptic-app-badge{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1.5px solid rgba(var(--accent-rgb),.22);border-radius:var(--r-sm);white-space:nowrap;flex-shrink:0;margin-top:1px;padding:3px 7px;font-size:.5625rem;font-weight:700}.hp-root .haptic-corridor-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:20px 20px 0;overflow:hidden}.hp-root .haptic-corridor-label{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--quiet);margin-bottom:8px;font-size:.625rem;font-weight:700}.hp-root .haptic-corridor-svg{width:calc(100% + 40px);height:auto;margin:0 -20px;display:block}.hp-root .haptic-states{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:4px;display:grid}.hp-root .haptic-state{border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:5px;padding:14px 8px 16px;display:flex}.hp-root .haptic-state:last-child{border-right:none}.hp-root .haptic-wave{width:60px;height:22px;color:var(--accent);display:block}.hp-root .haptic-state-label{font-family:var(--font-display);letter-spacing:.07em;color:var(--ink);font-size:.625rem;font-weight:700}.hp-root .haptic-state-desc{color:var(--quiet);letter-spacing:.02em;font-size:.625rem}.hp-root .how{background:var(--surface-solid);border-top:1px solid var(--line);padding:clamp(48px,6vw,88px) clamp(24px,5vw,64px)}.hp-root .how-inner{max-width:var(--max);margin:0 auto}.hp-root .how-steps{grid-template-columns:repeat(3,1fr);gap:clamp(32px,5vw,64px);margin-top:clamp(36px,4vw,52px);display:grid}@media (width<=680px){.hp-root .how-steps{grid-template-columns:1fr;gap:44px}}.hp-root .how-step{flex-direction:column;gap:10px;display:flex}.hp-root .how-formats{border-top:1px solid var(--line);margin-top:clamp(28px,4vw,44px);padding-top:20px}.hp-root .how-formats summary{cursor:pointer;font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);-webkit-tap-highlight-color:transparent;align-items:center;gap:6px;padding:4px 0;font-weight:700;list-style:none;display:inline-flex}.hp-root .how-formats summary::-webkit-details-marker{display:none}.hp-root .how-formats summary:after{content:"+";font-size:1rem;font-weight:400;line-height:1}.hp-root .how-formats[open] summary:after{content:"−"}.hp-root .how-formats summary:hover{color:var(--ink)}.hp-root .how-works{flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.hp-root .how-works li{border:1px solid var(--line);border-radius:var(--r-pill);color:var(--muted);white-space:nowrap;padding:4px 10px;font-size:.75rem}.hp-root .how-num{font-family:var(--font-display);letter-spacing:-.03em;color:var(--muted);opacity:.7;-webkit-user-select:none;user-select:none;font-size:3rem;font-weight:700;line-height:1}.hp-root .how-step-line{background:var(--accent);width:20px;height:1.5px;margin:4px 0}.hp-root .how-h3{font-family:var(--font-body);color:var(--ink);letter-spacing:-.01em;font-size:1.0625rem;font-weight:600}.hp-root .how-body{color:var(--muted);max-width:36ch;font-size:.9375rem;line-height:1.65}.hp-root .code-pill{font-family:var(--font-mono);background:rgba(var(--accent-rgb),.08);color:var(--accent);border-radius:var(--r-sm);padding:1px 5px;font-size:.8125rem}.hp-root .how-inline-link{color:var(--accent);text-underline-offset:2px;font-weight:600;text-decoration:underline;transition:opacity .15s}.hp-root .how-inline-link:hover{opacity:.75}.hp-root .trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px clamp(24px,5vw,64px)}.hp-root .trust-inner{max-width:var(--max);grid-template-columns:repeat(5,auto);justify-content:space-between;align-items:center;gap:14px 16px;margin:0 auto;display:grid}@media (width<=1000px){.hp-root .trust-inner{flex-wrap:wrap;justify-content:flex-start;gap:14px 32px;display:flex}}.hp-root .trust-item{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--quiet);white-space:nowrap;align-items:center;gap:8px;font-size:.6875rem;font-weight:600;display:flex}.hp-root .trust-pip{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px}.hp-root .cta-section{text-align:center;background:var(--surface-solid);padding:clamp(96px,13vw,176px) clamp(24px,5vw,64px);position:relative;overflow:hidden}.hp-root .cta-bg{pointer-events:none;opacity:.04;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hp-root .cta-bg svg{width:min(70vw,500px);height:min(70vw,500px)}.hp-root .spin{transform-box:view-box;transform-origin:50%;animation:20s linear infinite hp-spin}.hp-root .cta-arrow{fill:var(--accent)}@keyframes hp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.hp-root .spin{animation:none}.hp-root .btn-primary:hover,.hp-root .btn-ghost:hover{transform:none}.hp-root .btn-link .arr{transition:none}}.hp-root .cta-inner{z-index:2;flex-direction:column;align-items:center;gap:20px;display:flex;position:relative}.hp-root .cta-h2{font-family:var(--font-body);letter-spacing:-.025em;color:var(--ink);text-wrap:balance;max-width:16ch;font-size:clamp(2rem,5vw + .5rem,4rem);font-weight:700;line-height:1.06}.hp-root .cta-sub{color:var(--muted);max-width:42ch;font-size:1.0625rem;line-height:1.65}.hp-root .cta-btns{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}:is(.hp-root,.pin-root) .hp-footer{border-top:1px solid var(--line);padding:32px clamp(24px,5vw,64px)}:is(.hp-root,.pin-root) .hp-footer-inner{max-width:var(--max);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;margin:0 auto;display:flex}:is(.hp-root,.pin-root) .hp-footer-mark{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--quiet);font-size:.75rem;font-weight:700}:is(.hp-root,.pin-root) .hp-footer-claim{color:var(--quiet);font-size:.8125rem;font-style:italic}:is(.hp-root,.pin-root) .hp-footer-brand{flex-wrap:wrap;align-items:center;gap:16px;display:flex}:is(.hp-root,.pin-root) .hp-footer-links{flex-wrap:wrap;justify-content:flex-end;gap:20px;display:flex}@media (width<=640px){:is(.hp-root,.pin-root) .hp-footer-links{justify-content:flex-start}}:is(.hp-root,.pin-root) .hp-footer-links a{font-family:var(--font-display);letter-spacing:.06em;color:var(--quiet);font-size:.75rem;font-weight:600;text-decoration:none;transition:color .15s}:is(.hp-root,.pin-root) .hp-footer-links a:hover{color:var(--muted)}.hp-root .ap-hero{max-width:var(--max);margin:0 auto;padding:40px clamp(24px,5vw,64px) clamp(24px,4vw,48px)}.hp-root .ap-h1{font-family:var(--font-body);letter-spacing:-.025em;text-wrap:balance;color:var(--ink);margin:0 0 20px;font-size:clamp(2rem,3vw + .75rem,3.25rem);font-weight:700;line-height:1.08}.hp-root .ap-lead{color:var(--muted);max-width:52ch;margin:0 0 18px;font-size:1.0625rem;line-height:1.7}.hp-root .ap-meta{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);margin:0;font-size:.6875rem}.hp-root .ap-hero-pic{max-width:var(--max);margin:0 auto clamp(40px,6vw,72px);padding:0 24px}.hp-root .ap-hero-pic img{border-radius:var(--r-lg);border:1px solid var(--line);width:100%;height:auto;box-shadow:var(--shadow-card);display:block}.hp-root .ap-hero-pic figcaption{font-family:var(--font-body);letter-spacing:-.02em;text-wrap:balance;color:var(--ink);margin:20px 0 0;font-size:clamp(1.375rem,1.5vw + .75rem,2rem);font-weight:700;line-height:1.2}.hp-root .ap-blocks{max-width:var(--max);margin:0 auto;padding:0 24px clamp(48px,7vw,96px)}.hp-root .ap-block{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,96px);padding:clamp(40px,6vw,80px) 0;display:grid}.hp-root .ap-block--text{grid-template-columns:minmax(0,1fr)}.hp-root .ap-block--text .ap-text{max-width:62ch}.hp-root .ap-text .t-label{margin-bottom:14px}.hp-root .ap-h2{font-family:var(--font-body);letter-spacing:-.02em;text-wrap:balance;color:var(--ink);margin:0 0 16px;font-size:clamp(1.375rem,2vw + .5rem,1.875rem);font-weight:700;line-height:1.15}.hp-root .ap-text p{color:var(--muted);max-width:58ch;margin:0 0 14px;line-height:1.7}.hp-root .ap-text p strong{color:var(--ink);font-weight:600}.hp-root .ap-text .rt-intro{margin-bottom:6px}.hp-root .ap-text .rt-list{max-width:58ch;color:var(--muted);gap:4px;margin:0 0 14px;padding:0 0 0 1.1em;line-height:1.6;display:grid}.hp-root .ap-text .rt-list li::marker{color:var(--accent)}.hp-root .ap-text .rt-list li strong{color:var(--ink);font-weight:600}.hp-root .ap-text .rt-key{font-family:var(--font-display);letter-spacing:-.005em;color:var(--ink);border-left:3px solid var(--accent);max-width:40ch;margin:18px 0;padding-left:14px;font-size:1.125rem;font-weight:700;line-height:1.4}.hp-root .ap-text p:last-child{margin-bottom:0}.hp-root .ap-shot{justify-content:center;margin:0;display:flex}.hp-root .ap-shot img{border-radius:var(--r-lg);width:min(100%,220px);height:auto;box-shadow:var(--shadow-float);border:1px solid var(--line);display:block}.hp-root .ap-nots{gap:8px;max-width:58ch;margin:18px 0 0;padding:0;list-style:none;display:grid}.hp-root .ap-nots li{color:var(--muted);padding-left:22px;line-height:1.6;position:relative}.hp-root .ap-nots li:before{content:"";background:var(--accent);opacity:.55;border-radius:50%;width:8px;height:8px;position:absolute;top:.7em;left:0}.hp-root .ap-block--taps{grid-template-columns:minmax(0,1fr)}.hp-root .ap-block--taps .ap-text{max-width:62ch}.hp-root .ap-taps{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:clamp(20px,4vw,56px);margin:8px 0 0;display:flex}.hp-root .ap-tap{flex-direction:column;align-items:center;gap:12px;width:min(100%,220px);display:flex}.hp-root .ap-tap-num{background:var(--accent);width:30px;height:30px;color:var(--canvas);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:inline-flex}.hp-root .ap-tap-num--result{color:var(--accent);border:2px solid var(--accent);background:0 0}.hp-root .ap-tap--icon{width:auto}.hp-root .ap-tap--icon img{border-radius:var(--r-lg);width:96px;height:96px;box-shadow:var(--shadow-float);display:block}@media (width>=781px){.hp-root .ap-tap--icon img{margin-bottom:62px}}.hp-root .ap-tap-shot{width:100%;display:block;position:relative}.hp-root .ap-tap-shot img{border-radius:var(--r-lg);width:100%;height:auto;box-shadow:var(--shadow-float);border:1px solid var(--line);display:block}.hp-root .ap-tap-ring{aspect-ratio:1;border:3px solid var(--accent);width:17%;box-shadow:var(--shadow-float);border-radius:50%;position:absolute;top:55.7%;left:27%;transform:translate(-50%,-50%)}.hp-root .ap-tap-ring:after{content:"";background:var(--accent);opacity:.55;border-radius:50%;position:absolute;inset:26%}.hp-root .ap-tap-label{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;font-size:.6875rem}.hp-root .ap-block--get{border-bottom:1px solid var(--line)}.hp-root .ap-block--why{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hp-root .ap-block--why .ap-text{max-width:52ch}.hp-root .ap-why{margin:0}.hp-root .ap-why img{border-radius:var(--r-lg);border:1px solid var(--line);width:100%;height:auto;box-shadow:var(--shadow-card);display:block}@media (width<=900px){.hp-root .ap-block--why{grid-template-columns:minmax(0,1fr)}.hp-root .ap-block--why .ap-why{order:-1}}.hp-root .ap-close-lines{color:var(--ink);gap:6px;max-width:40ch;font-size:1.125rem;line-height:1.5;display:grid}.hp-root .ap-close-claim{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:22px 0 18px;font-size:1.375rem;font-weight:700}.hp-root .ap-close-actions{margin:0 0 12px}.hp-root .ap-close-sub{color:var(--quiet);font-size:var(--fs-sm)}.hp-root .hw-block{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hp-root .hw-block .ap-text{max-width:56ch}.hp-root .hw-num{min-width:2.2em;color:var(--quiet);display:inline-block}.hp-root .hw-figure{margin:0}.hp-root .hw-figure svg{width:100%;max-width:480px;height:auto;margin:0 auto;display:block;overflow:visible}.hp-root .hw-figure--corridor .haptic-corridor-card{max-width:420px;margin:0 auto}.hp-root .hw-figure--strip svg{max-width:420px}.hp-root .hw-figure--icon img{border-radius:var(--r-lg);width:min(100%,176px);height:auto;box-shadow:var(--shadow-float);margin:0 auto;display:block}.hp-root .hw-tech{margin-top:18px;padding-top:14px}.hp-root .hw-tech p{margin-top:12px}.hp-root .hw-rows{grid-template-columns:64px minmax(0,1fr);align-items:start;gap:20px;max-width:480px;margin:0 auto;display:grid}.hp-root .hw-pin{width:56px;height:56px}.hp-root .hw-rows dl{gap:8px;margin:0;display:grid}.hp-root .hw-rows dl div{border-bottom:1px solid var(--line);gap:2px;padding-bottom:8px;display:grid}.hp-root .hw-rows dt{font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--quiet);font-weight:700}.hp-root .hw-rows dd{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink);overflow-wrap:anywhere;margin:0}@media (width<=900px){.hp-root .hw-block{grid-template-columns:minmax(0,1fr)}}@media (width<=780px){.hp-root .ap-block{grid-template-columns:minmax(0,1fr);gap:28px}.hp-root .ap-shot img{width:min(100%,260px)}}.hp-root .ap-glyph{flex-direction:column;align-items:center;gap:18px}.hp-root .ap-glyph-ring{aspect-ratio:1;background:var(--surface-solid);border:1px solid var(--line);width:clamp(180px,22vw,240px);box-shadow:var(--shadow-float);color:var(--accent);border-radius:50%;place-items:center;display:grid}.hp-root .ap-glyph-ring svg{width:38%;height:auto}.hp-root .ap-glyph figcaption{color:var(--quiet);text-align:center;text-wrap:balance;max-width:24ch;font-size:.875rem}.hp-root .how-body{margin-bottom:18px}.hp-root .concept-body p{margin-bottom:1.5em}.hp-root .hero-caption{line-height:1.6}.hp-root .how-shot{margin:6px 0 0}.hp-root .how-shot img{aspect-ratio:390/660;object-fit:cover;object-position:top;border-radius:var(--r-md);border:1px solid var(--line);width:min(100%,250px);height:auto;display:block}.hp-root .ov{border-top:1px solid var(--line);padding:clamp(48px,6vw,88px) clamp(24px,5vw,64px)}.hp-root .ov-inner{max-width:var(--max);margin:0 auto}.hp-root .ov-intro{max-width:60ch;color:var(--muted);text-wrap:pretty;margin:14px 0 0;font-size:1.0625rem;line-height:1.65}.hp-root .ov-grid{grid-template-columns:repeat(2,1fr);gap:clamp(28px,4vw,48px);display:grid}.hp-root .ov-card{flex-direction:column;gap:10px;display:flex}.hp-root .ov-visual{background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--r-lg);justify-content:center;align-items:center;gap:18px;height:380px;padding:clamp(18px,3vw,32px);display:flex;overflow:hidden}.hp-root .ov-visual img{border-radius:var(--r-md);display:block}.hp-root .ov-card--send .ov-visual img,.hp-root .ov-card--app .ov-visual img,.hp-root .ov-card--sheet .ov-visual img{aspect-ratio:390/560;object-fit:cover;object-position:top;border:1px solid var(--line);width:auto;max-width:100%;height:100%}.hp-root .ov-card--print .ov-visual{flex-direction:column}.hp-root .ov-card--print .ov-visual img{width:auto;max-width:100%;max-height:calc(50% - 9px);box-shadow:var(--shadow-card)}.hp-root .ov-card--physical{grid-column:1/-1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;column-gap:clamp(28px,4vw,48px);display:grid}.hp-root .ov-card--physical .ov-visual{grid-row:1/span 6}.hp-root .ov-card--physical .ov-visual img{width:100%;height:auto;max-height:100%}.hp-root .ov-card--website{grid-column:1/-1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;column-gap:clamp(28px,4vw,48px);display:grid}.hp-root .ov-card--website .ov-visual{grid-row:1/span 6;height:auto}.hp-root .ov-banner{width:100%;display:block}.hp-root .ov-banner svg{width:100%;height:auto;display:block}.hp-root .ov-banner--tall{max-width:360px;display:none}.hp-root .door{border-top:1px solid var(--line);padding:clamp(48px,6vw,88px) clamp(24px,5vw,64px)}.hp-root .door-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,56px);display:grid}.hp-root .door-figure{display:block}.hp-root .door-figure img{border:1px solid var(--line);border-radius:var(--r-lg);width:100%;height:auto;box-shadow:var(--shadow-card);display:block}.hp-root .door-text{flex-direction:column;gap:12px;display:flex}.hp-root .door-list{color:var(--ink);margin:0;padding-left:1.2rem;font-size:1rem;line-height:1.65}@media (width<=780px){.hp-root .door-inner{grid-template-columns:1fr}}.hp-root .ov-alt{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.hp-root .ov-kicker{margin-top:8px}.hp-root .ov-h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:clamp(1.375rem,2.2vw,1.75rem);font-weight:700;line-height:1.15}.hp-root .ov-h3 a{color:var(--ink);text-decoration:none}.hp-root .ov-h3 a:hover{text-underline-offset:4px;text-decoration:underline}.hp-root .ov-body{color:var(--ink);text-wrap:pretty;margin:0;font-size:1rem;line-height:1.65}.hp-root .ov-example{color:var(--muted);margin:0;font-size:.9375rem;line-height:1.6}.hp-root .ov-link{margin-top:2px;font-weight:600}.hp-root .ov-more{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:16px;margin-top:clamp(28px,4vw,44px);padding-top:clamp(24px,3vw,32px);display:grid}.hp-root .ov-more-card{border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);gap:4px;padding:18px 20px;text-decoration:none;transition:background .12s;display:grid}.hp-root .ov-more-card:hover{background:rgba(var(--accent-rgb),.06)}.hp-root .ov-more-card strong{font-family:var(--font-display);font-size:1.0625rem}.hp-root .ov-more-card span{color:var(--muted);font-size:.9375rem;line-height:1.55}@media (width<=780px){.hp-root .ov-grid,.hp-root .ov-more{grid-template-columns:1fr}.hp-root .ov-visual{height:320px}.hp-root .ov-card--physical,.hp-root .ov-card--website{display:flex}.hp-root .ov-card--physical .ov-visual{grid-row:auto}.hp-root .ov-card--website .ov-visual{grid-row:auto;height:auto}}@media (width<=560px){.hp-root .ov-banner--wide{display:none}.hp-root .ov-banner--tall{display:block}}.hp-root .ap-hero,.hp-root .ap-hero-pic,.hp-root .ap-blocks{box-sizing:content-box;padding-inline:clamp(24px,5vw,64px)}.hp-root .trust-note{max-width:var(--max);color:var(--muted);margin:22px auto 0;padding:0;font-size:.9375rem;line-height:1.7}.hp-root .ap-corridor{display:block}.hp-root .ap-corridor .haptic-corridor-card{max-width:340px;margin:0 auto}@media (width<=520px){:is(.hp-root,.pin-root) .hp-nav-row{padding:0 16px}:is(.hp-root,.pin-root) .hp-nav-row--top{height:52px}:is(.hp-root,.pin-root) .hp-nav-right{gap:10px}:is(.hp-root,.pin-root) .hp-nav-tag{display:none}:is(.hp-root,.pin-root) .hp-nav-cta{padding:8px 12px;font-size:.6875rem}:is(.hp-root,.pin-root) .hp-nav-langs{margin-left:8px;font-size:.6875rem}:is(.hp-root,.pin-root) .hp-nav-links{gap:20px}.hp-root .cta-btns{flex-direction:column;align-items:stretch}.hp-root .cta-btns .btn-primary,.hp-root .cta-btns .btn-ghost{width:100%}}.hp-root .concept-figure{max-width:320px;margin:40px 0 0}.hp-root .concept-figure svg{width:100%;height:auto;display:block;overflow:visible}.hp-root .concept-figure figcaption{color:var(--quiet);max-width:34ch;margin-top:10px;font-size:.8125rem;line-height:1.55}.hp-root .concept-figure-pulse{transform-origin:56px 210px;animation:2.8s ease-out infinite cf-pulse}@keyframes cf-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@media (prefers-reduced-motion:reduce){.hp-root .concept-figure-pulse{opacity:0;animation:none}}@media (width<=680px){.hp-root .concept-figure{margin-top:28px}}:is(.hp-root,.pin-root) .hp-nav-langs{font-family:var(--font-display);letter-spacing:.06em;color:var(--quiet);white-space:nowrap;align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:inline-flex}:is(.hp-root,.pin-root) .hp-nav-langs a{color:var(--quiet);text-decoration:none;transition:color .15s}:is(.hp-root,.pin-root) .hp-nav-langs a:hover,:is(.hp-root,.pin-root) .hp-nav-langs .is-current{color:var(--ink)}:is(.hp-root,.pin-root) .hp-nav-langs-sep{opacity:.5;margin:0 6px 0 0}
