*{box-sizing:border-box}html,body{margin:0;background:var(--cream);color:var(--ink);font-family:Geist,system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}img,video{display:block;max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}label.v3-btn{cursor:pointer}.du-hero-pill{justify-self:start}.hc{--pass: #3F7A3C;--warn: #B7791F;--fail: #B4432F;background:var(--cream);color:var(--ink);padding-block:clamp(72px,9vw,140px)}.hc-inner{max-width:1480px;margin-inline:auto;padding-inline:clamp(20px,4vw,56px)}.hc-head{display:grid;gap:16px;margin-bottom:clamp(32px,4vw,48px)}.hc-head h2{font-family:var(--f-display);font-weight:600;font-size:clamp(36px,4.6vw,64px);line-height:1;letter-spacing:-.03em;margin:0;max-width:18ch}.hc-head p{margin:0;max-width:56ch;color:var(--warm-800)}.hc-drop{display:grid;place-items:center;text-align:center;gap:14px;min-height:clamp(260px,30vw,380px);padding:40px 24px;background:var(--cream-soft);border:1.5px dashed var(--warm-400);border-radius:18px;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.hc-drop:hover,.hc-drop.over,.hc-drop:focus-within{background:#e2dbcb;border-color:var(--ink)}.hc-drop.over{transform:scale(1.005)}.hc-drop strong{font-family:var(--f-display);font-weight:600;font-size:clamp(26px,3vw,40px);letter-spacing:-.02em;line-height:1.05}.hc-drop>span:not(.v3-btn){color:var(--warm-800)}.hc-start{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(20px,2.4vw,36px);align-items:stretch}@media(max-width:900px){.hc-start{grid-template-columns:1fr}}.hc-samples{display:grid;align-content:start;gap:14px}.hc-samples h3{font-family:var(--f-display);font-weight:600;font-size:22px;letter-spacing:-.01em;margin:0}.hc-samples p{margin:0;color:var(--warm-800);font-size:16px}.hc-sample-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hc-sample{display:grid;gap:8px;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit;color:var(--ink)}.hc-sample img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:12px;background:var(--cream-soft);transition:transform .25s cubic-bezier(.2,.8,.2,1)}.hc-sample:hover img,.hc-sample:focus-visible img{transform:translateY(-4px)}.hc-sample span{font-size:15px;font-weight:600}.hc-privacy{display:flex;gap:10px;align-items:center;margin:16px 0 0;font-size:16px;color:var(--warm-800)}.hc-privacy:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--pass);flex:none}.hc-err{margin:16px 0 0;color:var(--fail)}.hc-bench{display:none;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(28px,3vw,48px);align-items:start;margin-top:clamp(32px,4vw,48px)}.hc-bench.on{display:grid}.hc-bench{scroll-margin-top:96px}@media(max-width:900px){.hc-bench.on{grid-template-columns:1fr}.hc-bench aside{order:-1}}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.tab{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;border-radius:999px;border:0;cursor:pointer;background:var(--cream-soft);color:var(--ink);transition:background .15s,color .15s}.tab:hover{background:#e2dbcb}.tab[aria-selected=true]{background:var(--ink);color:var(--cream)}.stage{position:relative;background:var(--ink-soft, #141414);border-radius:18px;overflow:hidden;aspect-ratio:4 / 3.4;touch-action:none;cursor:grab}.stage.dragging{cursor:grabbing}.stage canvas{display:block;width:100%;height:100%}.busy{position:absolute;inset:0;display:grid;place-items:center;color:var(--cream);background:#0a0a0a8c;font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.busy[hidden]{display:none}.zoom{display:flex;align-items:center;gap:14px;margin-top:16px}.zoom label{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--warm-600)}.zoom input{flex:1;accent-color:var(--ink)}.hint{font-size:16px;color:var(--warm-800);margin:8px 0 0}.export{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.export .size{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;color:var(--warm-600)}.mocks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.mock{background:#fff;border-radius:14px;padding:14px;display:flex;gap:10px;align-items:center;min-width:0}.mock canvas{flex:none;border-radius:50%;background:var(--cream-soft)}.mock.sq canvas{border-radius:22%}.mock .lines{min-width:0}.mock b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mock i{display:block;font-style:normal;font-size:13px;color:var(--warm-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:560px){.mocks{grid-template-columns:1fr}}.score{background:var(--ink);color:var(--cream);border-radius:18px;padding:clamp(24px,3vw,36px)}.score .v3-label{color:var(--accent)}.score .num{font-family:var(--f-display);font-weight:600;font-size:clamp(72px,8vw,112px);line-height:.9;letter-spacing:-.04em;margin-top:12px}.score .num small{font-size:22px;letter-spacing:0;margin-left:6px;color:var(--warm-400)}.score .verdict{color:#f2eee6db;margin:14px 0 0;font-size:18px;line-height:1.45}.meter{height:6px;background:#2a2826;border-radius:6px;margin-top:20px;overflow:hidden}.meter i{display:block;height:100%;width:0;background:var(--accent);border-radius:6px;transition:width .7s cubic-bezier(.2,.8,.2,1)}.checks{list-style:none;margin:8px 0 0;padding:0}.checks li{display:grid;grid-template-columns:22px 1fr;gap:2px 10px;padding:12px 0}.checks .dot{width:10px;height:10px;border-radius:50%;margin-top:8px}.checks .pass .dot{background:var(--pass)}.checks .warn .dot{background:var(--warn)}.checks .fail .dot{background:var(--fail)}.checks .skip .dot{background:transparent;box-shadow:inset 0 0 0 1.5px var(--warm-400)}.checks b{font-weight:600;font-size:17px}.checks b em{font-style:normal;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-left:10px;color:var(--warm-600)}.checks p{grid-column:2;margin:0;color:var(--warm-800);font-size:16.5px;line-height:1.5}.upsell{margin-top:16px;padding:18px 20px;background:var(--cream-soft);border-radius:14px;font-size:16.5px;color:var(--warm-800)}.upsell a{color:var(--ink);font-weight:600}.du-compare-table td.is-us{white-space:nowrap}@media(max-width:400px){.du-compare-table thead th,.du-compare-table tbody th,.du-compare-table tbody td{padding-inline:12px}}.bd{margin-top:24px;padding:22px;background:var(--cream-soft);border-radius:18px;display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:22px;align-items:center}.bd[hidden]{display:none}@media(max-width:560px){.bd{grid-template-columns:1fr}}.bd-body{display:grid;gap:12px}.bd h3{font-family:var(--f-display);font-weight:600;font-size:24px;letter-spacing:-.015em;line-height:1.15;margin:0}.bd canvas{width:100%;aspect-ratio:1;border-radius:14px;background:#c9c7c3}.bd p{margin:0;font-size:16px;color:var(--warm-800)}.bd .v3-btn{justify-self:start}.bd-choices{display:flex;flex-wrap:wrap;gap:8px}.bd-chip{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:10px 14px;border-radius:999px;border:0;cursor:pointer;background:#e2dbcb;color:var(--ink)}.bd-chip[aria-checked=true]{background:var(--ink);color:var(--cream)}.hc-credits{max-width:1480px;margin:0 auto;padding:0 clamp(20px,4vw,56px) 48px;font-size:13px;color:var(--warm-600);background:var(--cream)}.hc-credits a{color:inherit}@media(prefers-reduced-motion:no-preference){.rise.wait{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i, 0) * 80ms)}.rise.wait.in{opacity:1;transform:none}.du-included-figure.wait img{transform:scale(1.06);transition:transform 1.6s cubic-bezier(.2,.8,.2,1)}.du-included-figure.wait.in img{transform:none}.v3-btn,.tab{transition:transform .15s,background .15s,color .15s}.v3-btn:active,.tab:active{transform:scale(.97)}}
