.home{--night:#fbfaff;--night-2:#ffffff;--line:rgb(76 29 149/0.1);--soft:oklch(0.5 0.02 286);--glow:#7c3aed;--ink:oklch(0.22 0.04 286);--ease-out-soft:cubic-bezier(0.22,1,0.36,1);background:var(--night);color:var(--ink);overflow-x:clip}.btn-glass,.btn-primary{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem;padding-inline:1.75rem;border-radius:.9rem;font-size:.9375rem;font-weight:700;white-space:nowrap;transition:transform .25s var(--ease-out-soft),box-shadow .3s,background-color .2s}.btn-primary{background-color:#6d28d9;color:white}.btn-primary:hover{background-color:#5b21b6}.btn-glass{background:white;color:var(--ink);box-shadow:inset 0 0 0 1px rgb(76 29 149/.14)}.btn-glass:hover{box-shadow:inset 0 0 0 1px rgb(76 29 149/.32)}.btn-glass:focus-visible,.btn-primary:focus-visible{outline:2px solid var(--glow);outline-offset:3px}.glass{border-radius:1.5rem;background:rgb(255 255 255/.78);box-shadow:inset 0 0 0 1px rgb(76 29 149/.09)}.text-light{color:#6d28d9}.eyebrow{font-size:.875rem;font-weight:500;color:var(--glow)}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .85rem;border-radius:999px;font-size:.8125rem;font-weight:600;color:#5b21b6;background:white;box-shadow:inset 0 0 0 1px rgb(124 58 237/.2)}.hero-promises{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.8125rem;color:var(--soft)}.hero-promises li{display:flex;align-items:center;gap:.45rem;white-space:nowrap}.studio{border:1px solid rgb(76 29 149/.1);border-radius:1.75rem;background:white}.stage,.studio{overflow:hidden}.stage{background-color:#f4f4f6}.hero{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' fill='none' stroke='%232a1f46' stroke-opacity='0.07'%3E%3Crect x='8.5' y='8.5' width='7' height='7' rx='1'/%3E%3Crect x='37.5' y='37.5' width='4' height='4' rx='0.5'/%3E%3C/svg%3E");background-size:56px 56px;background-position:top}.hero:before{content:"";position:absolute;inset:auto 0 0 0;height:30%;z-index:-1;background:linear-gradient(transparent,var(--night));pointer-events:none}.stage-floor{position:absolute;left:48%;bottom:7%;width:34%;height:9%;border-radius:50%;background:rgb(30 20 50/.16);filter:blur(18px);translate:-50% 0;scale:calc(.6 + var(--closed, 1) * .4) 1;transition:opacity .5s}.stage-floor.opacity-100{opacity:calc((var(--closed, 1) - .55) * 2.2)}.stage-check{position:absolute;inset-inline-start:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#5b21b6;background:rgb(255 255 255/.8);box-shadow:inset 0 0 0 1px rgb(124 58 237/.18);backdrop-filter:blur(8px);pointer-events:none}.stage-check-warn{color:var(--destructive);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--destructive) 30%,transparent)}.segmented{display:flex;flex:none;gap:.25rem;padding:.25rem;border-radius:.8rem;background:rgb(255 255 255/.6);box-shadow:inset 0 0 0 1px rgb(76 29 149/.08);backdrop-filter:blur(8px)}.segmented button{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .8rem;border-radius:.6rem;font-size:.75rem;font-weight:600;color:var(--soft);cursor:pointer;transition:background-color .2s,color .2s}.segmented button.on{background:white;color:#6d28d9;box-shadow:0 1px 3px rgb(76 29 149/.15)}.btn-chip:focus-visible,.cat-tile:focus-visible,.segmented button:focus-visible,.tpl:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.btn-chip{display:inline-flex;flex:none;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:.65rem;font-size:.8125rem;font-weight:700;color:#5b21b6;background:rgb(237 233 254);cursor:pointer;transition:background-color .2s}.btn-chip:hover{background:rgb(221 214 254)}.btn-chip-off{color:var(--soft);background:transparent;box-shadow:inset 0 0 0 1px rgb(76 29 149/.16)}.btn-chip-off:hover{background:rgb(245 243 255)}.hero-bleed{fill:rgb(124 58 237/.06)}.hero-glue{fill:url(#glue-hatch)}.hero-preview svg{width:100%;height:100%}.legend{display:inline-block;width:1rem;border-top:1.5px solid #1d4ed8}.legend-fold{border-top:1.5px dashed #dc2626}.cat-tile{position:relative;display:flex;min-height:7.5rem;align-items:flex-end;justify-content:space-between;gap:.5rem;overflow:hidden;padding:1rem 1.1rem;border-radius:1.25rem;background:white;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s,transform .3s var(--ease-out-soft)}.cat-tile:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px rgb(124 58 237/.3),0 20px 40px -28px rgb(76 29 149/.5)}.cat-art{position:absolute;top:.6rem;inset-inline-end:.6rem;width:55%;height:70%;opacity:.5;transition:opacity .3s}.cat-tile:hover .cat-art{opacity:1}.tpl{display:block;overflow:hidden;border-radius:1.25rem;background:var(--night);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s,transform .3s var(--ease-out-soft)}.tpl:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px rgb(124 58 237/.3),0 24px 44px -30px rgb(76 29 149/.5)}.tpl-media{position:relative;aspect-ratio:1;background:#f6f6f8}.step-dot{display:grid;width:2.75rem;height:2.75rem;place-items:center;border-radius:.9rem;font-size:1.125rem;font-weight:900;color:white;background:linear-gradient(180deg,#8b5cf6,#6d28d9);box-shadow:0 10px 22px -10px rgb(124 58 237/.7)}.size-range{-webkit-appearance:none;appearance:none;width:100%;height:1.5rem;background:linear-gradient(#7c3aed,#7c3aed) 0 /var(--fill,50%) 3px no-repeat,linear-gradient(rgb(76 29 149/.12),rgb(76 29 149/.12)) 0 /100% 3px no-repeat;cursor:ew-resize;touch-action:pan-y}.size-range::-webkit-slider-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;border-radius:999px;background:white;box-shadow:inset 0 0 0 5px #7c3aed;transition:transform .15s}.size-range::-moz-range-thumb{width:1.25rem;height:1.25rem;border:0;border-radius:999px;background:white}.size-range:active::-webkit-slider-thumb{transform:scale(1.2)}.size-range:focus-visible{outline:2px solid var(--glow);outline-offset:2px}.neon-cut,.neon-fold{fill:none;vector-effect:non-scaling-stroke}.neon-cut{stroke:#1d4ed8;stroke-width:1.2px}.neon-fold{stroke:#dc2626;stroke-width:1px;stroke-dasharray:5 3}.neon-sheet{fill:#ffffff;transition:fill .4s}.spot svg{border-radius:1rem}.spot{position:relative;overflow:hidden;border-radius:1.75rem;background:var(--night-2);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s}.spot:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(22rem circle at var(--x,50%) var(--y,50%),rgb(124 58 237/.08),transparent 70%);transition:opacity .35s}.spot:hover:before{opacity:1}.spot:hover{box-shadow:inset 0 0 0 1px rgb(124 58 237/.3),0 24px 44px -32px rgb(76 29 149/.5)}.contours path{fill:none;stroke:#1d4ed8;stroke-width:1.2px;vector-effect:non-scaling-stroke;opacity:.22;animation:contour 4.2s ease-in-out infinite;animation-delay:calc(var(--i) * .32s)}@keyframes contour{0%,45%,to{opacity:.22}20%{opacity:1}}.plates{position:relative;height:12rem;margin-top:3rem;transform:perspective(900px) rotateX(58deg) rotate(-38deg);transform-style:preserve-3d}.plate{position:absolute;inset:12% 22%;display:flex;align-items:flex-end;padding:.5rem .7rem;border-radius:.6rem;font-size:.625rem;font-weight:700;color:#5b21b6;background:rgb(255 255 255/.7);box-shadow:inset 0 0 0 1px rgb(124 58 237/.45);transform:translateZ(calc(var(--i) * 26px));transition:transform .6s var(--ease-out-soft)}.spot:hover .plate{transform:translateZ(calc(var(--i) * 48px))}.paper{position:relative;z-index:1;color:var(--ink)}.qa{border-radius:1rem;background:#f8f7fb;padding-inline:1.25rem;transition:background-color .2s}.qa:hover,.qa[open]{background:#f3effd}.qa summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.05rem;cursor:pointer;list-style:none;font-size:.9375rem;font-weight:700;line-height:1.7}.qa summary::-webkit-details-marker{display:none}.qa summary:after{content:"";flex:none;width:.8rem;height:.8rem;background:linear-gradient(#6d28d9,#6d28d9) 50% /100% 2px no-repeat,linear-gradient(#6d28d9,#6d28d9) 50% /2px 100% no-repeat;transition:transform .25s var(--ease-out-soft)}.qa[open] summary:after{transform:rotate(45deg)}.qa summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.contours path{animation:none}}