:root{--paper: #f6f2ea;--paper-deep: #efe9dd;--card: #fffdf9;--ink: #191510;--ink-soft: #4a4237;--muted: #7a7263;--faint: #a89f8e;--rule: #e4ddd0;--rule-firm: #d4cbb9;--accent: #c8452e;--accent-dark:#a8371f;--accent-wash:#fbeee9;--good: #2f6b4f;--warn: #9a6b12;--serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, system-ui, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--shadow-sm: 0 1px 2px rgba(25, 21, 16, .05);--shadow-md: 0 4px 16px rgba(25, 21, 16, .07);--shadow-lg: 0 18px 48px rgba(25, 21, 16, .14);--r-sm: 4px;--r: 8px;--r-lg: 14px;--bar-h: 58px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent);color:#fff}h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.01em;margin:0}.wrap{max-width:1220px;margin:0 auto;padding:0 28px}.wrap-narrow{max-width:860px;margin:0 auto;padding:0 28px}.label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--muted)}.rule{height:1px;background:var(--rule);border:0;margin:0}.topbar{position:sticky;top:0;z-index:60;height:var(--bar-h);display:flex;align-items:center;gap:22px;background:#f6f2eaeb;-webkit-backdrop-filter:saturate(1.4) blur(8px);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--rule);padding:0 28px}.brand{display:flex;align-items:center;gap:9px;font-family:var(--serif);font-size:19px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:none;border:0;padding:0}.brand svg{display:block}.nav{display:flex;gap:4px;margin-left:6px}.nav button{background:none;border:0;cursor:pointer;padding:7px 12px;border-radius:var(--r-sm);font-size:14px;color:var(--ink-soft)}.nav button:hover{background:var(--paper-deep)}.nav button.on{color:var(--ink);font-weight:600;background:var(--paper-deep)}.spacer{flex:1}.pressline{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);padding:5px 11px;border:1px solid var(--rule);border-radius:999px;background:var(--card)}.dot{width:7px;height:7px;border-radius:50%;background:var(--faint);flex:none}.dot.live{background:var(--accent);animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.32}}.chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule-firm);background:var(--card);border-radius:999px;padding:5px 12px 5px 6px;cursor:pointer;font-size:13px}.chip:hover{border-color:var(--faint)}.avatar{width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-size:11px;font-weight:700;letter-spacing:.02em}.badge{font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--paper-deep);color:var(--muted)}.badge.paid{background:var(--accent);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--rule-firm);background:var(--card);border-radius:var(--r);padding:9px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:background .14s,border-color .14s,transform .06s}.btn:hover:not(:disabled){background:var(--paper-deep)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.btn.ink{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn.ink:hover:not(:disabled){background:#000}.btn.ghost{border-color:transparent;background:none}.btn.ghost:hover:not(:disabled){background:var(--paper-deep)}.btn.big{padding:13px 24px;font-size:15.5px}.btn.sm{padding:6px 11px;font-size:13px}.btn.danger{color:var(--accent)}.field{display:block;margin-bottom:18px}.field>.flabel{display:flex;align-items:baseline;gap:8px;font-size:13.5px;font-weight:600;margin-bottom:6px}.field .hint{font-size:12.5px;color:var(--muted);font-weight:400;line-height:1.4}.req{color:var(--accent);font-size:15px;line-height:1}input[type=text],input[type=email],input[type=password],textarea,select{width:100%;background:var(--card);border:1px solid var(--rule-firm);border-radius:var(--r);padding:10px 12px;outline:none;transition:border-color .14s,box-shadow .14s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}textarea{resize:vertical;min-height:76px;line-height:1.5}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:none;cursor:pointer;padding-right:30px}.selwrap{position:relative}.selwrap svg{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--muted)}.seg{display:inline-flex;border:1px solid var(--rule-firm);border-radius:var(--r);overflow:hidden;background:var(--card)}.seg button{background:none;border:0;cursor:pointer;padding:8px 14px;font-size:13.5px;color:var(--ink-soft);border-right:1px solid var(--rule)}.seg button:last-child{border-right:0}.seg button.on{background:var(--ink);color:var(--paper);font-weight:600}.seg button:disabled{opacity:.4;cursor:not-allowed}.seg.wide{display:flex;width:100%}.seg.wide button{flex:1}.hero{padding:74px 0 54px}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}.hero h1{font-size:clamp(38px,5.1vw,62px);line-height:1.03;letter-spacing:-.022em;margin-bottom:20px}.hero h1 em{font-style:italic;color:var(--accent)}.hero .lede{font-size:18px;color:var(--ink-soft);max-width:30em;margin-bottom:26px}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero-note{font-size:13px;color:var(--muted);margin-top:16px}.specimen{position:relative}.specimen .plate{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-md)}.specimen .art{aspect-ratio:1;display:grid;place-items:center;background:var(--checker);border-radius:var(--r);margin-bottom:16px;overflow:hidden}.specimen .art{position:relative}.specimen .art img{position:absolute;top:6%;right:6%;bottom:6%;left:6%;width:88%;height:88%;object-fit:contain}.specimen .cap{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.specimen .cap h3{font-size:18px}.specimen .cap p{margin:3px 0 0;font-size:12.5px;color:var(--muted)}:root{--checker: repeating-conic-gradient(#f0ebe1 0% 25%, #fffdf9 0% 50%) 50% / 14px 14px}.gallery{padding:18px 0 70px}.gallery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}.gallery-head h2{font-size:28px}.gallery-head p{margin:6px 0 0;color:var(--muted);font-size:14.5px;max-width:46em}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{background:var(--card);border:1px solid var(--rule-firm);border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer;color:var(--ink-soft)}.filters button:hover{border-color:var(--faint)}.filters button.on{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:600}.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.tile{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;display:flex;flex-direction:column;text-align:left;padding:0;transition:border-color .16s,box-shadow .16s,transform .16s}.tile:hover{border-color:var(--rule-firm);box-shadow:var(--shadow-md);transform:translateY(-2px)}.tile .art{aspect-ratio:1;background:var(--checker);display:grid;place-items:center;position:relative;overflow:hidden}.tile .art img{position:absolute;top:8%;right:8%;bottom:8%;left:8%;width:84%;height:84%;object-fit:contain;transition:transform .3s ease}.tile:hover .art img{transform:scale(1.045)}.tile .over{position:absolute;inset:auto 0 0 0;padding:26px 12px 11px;background:linear-gradient(to top,rgba(25,21,16,.72),transparent);color:#fff;font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .18s}.tile:hover .over{opacity:1}.tile .cap{padding:12px 14px 14px;border-top:1px solid var(--rule)}.tile .cap .t{font-family:var(--serif);font-size:15.5px;line-height:1.25}.tile .cap .m{display:flex;align-items:center;gap:7px;margin-top:5px}.swatch{width:8px;height:8px;border-radius:2px;flex:none}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:56px 0}.step .n{font-family:var(--serif);font-size:30px;color:var(--accent);line-height:1;margin-bottom:10px}.step h3{font-size:18px;margin-bottom:6px}.step p{margin:0;color:var(--ink-soft);font-size:14.5px}.band{background:var(--paper-deep);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.plan{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column}.plan.featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.plan .flag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--accent);margin-bottom:8px}.plan h3{font-size:20px}.plan .price{font-family:var(--serif);font-size:34px;margin:8px 0 2px}.plan .price span{font-size:14px;color:var(--muted);font-family:var(--sans)}.plan .cr{font-size:13.5px;color:var(--muted);margin-bottom:14px}.plan ul{list-style:none;padding:0;margin:0 0 18px;flex:1}.plan li{display:flex;gap:9px;font-size:13.5px;padding:4px 0;color:var(--ink-soft)}.plan li svg{flex:none;margin-top:3px;color:var(--good)}.studio{display:grid;grid-template-columns:236px 1fr 336px;gap:26px;padding:26px 0 60px;align-items:start}.panel{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:20px}.panel+.panel{margin-top:18px}.panel h3{font-size:17px;margin-bottom:3px}.panel .sub{font-size:13px;color:var(--muted);margin:0 0 16px}.recipes{display:flex;flex-direction:column;gap:4px}.recipes button{display:flex;align-items:center;gap:11px;text-align:left;background:none;border:1px solid transparent;border-radius:var(--r);padding:9px 10px;cursor:pointer;width:100%}.recipes button:hover{background:var(--card);border-color:var(--rule)}.recipes button.on{background:var(--card);border-color:var(--rule-firm);box-shadow:var(--shadow-sm)}.recipes .rt{font-weight:600;font-size:14.5px}.recipes .rd{font-size:12px;color:var(--muted);line-height:1.3}.rbar{width:3px;align-self:stretch;border-radius:2px;flex:none}.assist{background:var(--paper-deep);border:1px dashed var(--rule-firm);border-radius:var(--r);padding:14px;margin-bottom:20px}.assist .row{display:flex;gap:8px;margin-top:9px}.assist input{flex:1}.cost{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--rule);border-radius:var(--r);background:var(--paper-deep);margin-bottom:14px;font-size:13.5px}.cost strong{font-weight:700}.cost .free{color:var(--good);font-weight:600}.disclosure{border-top:1px solid var(--rule);margin-top:6px;padding-top:12px}.disclosure summary{cursor:pointer;font-size:13px;color:var(--muted);list-style:none;display:flex;align-items:center;gap:6px}.disclosure summary::-webkit-details-marker{display:none}.disclosure pre{margin:10px 0 0;padding:12px;background:var(--paper-deep);border-radius:var(--r);font-family:var(--mono);font-size:11.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:var(--ink-soft);max-height:220px;overflow:auto}.job{border:1px solid var(--rule);border-radius:var(--r);padding:13px 14px;margin-bottom:10px;background:var(--card)}.job.failed{border-color:#e6c3bb;background:#fdf5f3}.job .jh{display:flex;align-items:center;justify-content:space-between;gap:10px}.job .jt{font-weight:600;font-size:14px}.job .js{font-size:12.5px;color:var(--muted);margin-top:3px}.track{height:3px;background:var(--paper-deep);border-radius:2px;margin-top:10px;overflow:hidden}.track i{display:block;height:100%;background:var(--accent);border-radius:2px;transition:width .6s linear}.track.indet i{width:34%;animation:slide 1.5s ease-in-out infinite}@keyframes slide{0%{margin-left:-34%}to{margin-left:100%}}.jobshots{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin-top:11px}.jobshots img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--checker);border-radius:var(--r-sm);border:1px solid var(--rule);cursor:pointer}.libbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:20px 0 18px}.search{position:relative;flex:1;min-width:200px;max-width:340px}.search input{padding-left:34px}.search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:14px;padding-bottom:70px}.cell{position:relative;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;cursor:pointer;padding:0;text-align:left;transition:border-color .14s,box-shadow .14s}.cell:hover{border-color:var(--rule-firm);box-shadow:var(--shadow-sm)}.cell.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-wash)}.cell .art{aspect-ratio:1;background:var(--checker);display:grid;place-items:center}.cell .art{position:relative}.cell .art img{position:absolute;top:7%;right:7%;bottom:7%;left:7%;width:86%;height:86%;object-fit:contain}.cell .cap{padding:9px 11px;border-top:1px solid var(--rule);font-size:13px}.cell .cap .t{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell .cap .m{font-size:11.5px;color:var(--muted);margin-top:2px}.star{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;border:0;background:#fffdf9e6;display:grid;place-items:center;cursor:pointer;color:var(--faint);opacity:0;transition:opacity .14s}.cell:hover .star,.star.on{opacity:1}.star.on{color:var(--accent)}.selbar{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:70;display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--paper);border-radius:999px;padding:9px 12px 9px 18px;box-shadow:var(--shadow-lg);font-size:13.5px}.selbar .btn{background:#ffffff1f;border-color:transparent;color:var(--paper)}.selbar .btn:hover:not(:disabled){background:#ffffff38}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1915106b;z-index:80;animation:fade .18s ease}@keyframes fade{0%{opacity:0}}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(460px,100vw);background:var(--paper);z-index:81;overflow-y:auto;border-left:1px solid var(--rule);box-shadow:var(--shadow-lg);animation:slidein .22s cubic-bezier(.2,.8,.3,1)}@keyframes slidein{0%{transform:translate(28px);opacity:.4}}.drawer .dh{position:sticky;top:0;background:var(--paper);z-index:2;display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--rule)}.drawer .dh h3{font-size:17px;flex:1}.drawer .db{padding:20px}.bigart{aspect-ratio:1;background:var(--checker);border:1px solid var(--rule);border-radius:var(--r);display:grid;place-items:center;margin-bottom:16px}.bigart{position:relative}.bigart img{position:absolute;top:5%;right:5%;bottom:5%;left:5%;width:90%;height:90%;object-fit:contain}.meta{border-top:1px solid var(--rule)}.meta div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--rule);font-size:13px}.meta div span:first-child{color:var(--muted)}.meta div span:last-child{text-align:right}.actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0}.actions .btn{width:100%}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:22px;background:#19151070;animation:fade .16s ease}.modal .box{background:var(--paper);border-radius:var(--r-lg);width:min(460px,100%);max-height:88vh;overflow-y:auto;box-shadow:var(--shadow-lg);border:1px solid var(--rule);animation:pop .18s cubic-bezier(.2,.8,.3,1)}.modal .box.wide{width:min(900px,100%)}@keyframes pop{0%{transform:scale(.97);opacity:.5}}.modal .bh{padding:20px 22px 0}.modal .bh h3{font-size:21px}.modal .bh p{color:var(--muted);font-size:14px;margin:6px 0 0}.modal .bb{padding:20px 22px}.modal .bf{padding:0 22px 20px;display:flex;gap:9px;justify-content:flex-end}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--rule);margin-bottom:18px}.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:9px 13px;cursor:pointer;font-size:14px;color:var(--muted);margin-bottom:-1px}.tabs button.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.note{padding:11px 14px;border-radius:var(--r);font-size:13.5px;border:1px solid var(--rule);background:var(--paper-deep);color:var(--ink-soft)}.note.bad{background:#fdf2ef;border-color:#eccec5;color:#8c2f1c}.note.good{background:#eff6f1;border-color:#cbe0d3;color:#245c42}.toasts{position:fixed;right:20px;bottom:20px;z-index:95;display:flex;flex-direction:column;gap:9px;align-items:flex-end}.toast{background:var(--ink);color:var(--paper);border-radius:var(--r);padding:11px 15px;font-size:13.5px;box-shadow:var(--shadow-lg);max-width:360px;animation:rise .2s ease;display:flex;gap:10px;align-items:flex-start}.toast.bad{background:#8c2f1c}.toast button{background:none;border:0;color:inherit;opacity:.6;cursor:pointer;padding:0}@keyframes rise{0%{transform:translateY(8px);opacity:0}}.empty{text-align:center;padding:70px 20px;color:var(--muted)}.empty h3{font-size:20px;color:var(--ink);margin-bottom:8px}.empty p{margin:0 auto 18px;max-width:34em}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}footer{border-top:1px solid var(--rule);padding:34px 0 46px;color:var(--muted);font-size:13px}footer .fr{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer a{color:var(--ink-soft)}@media (max-width: 1080px){.studio{grid-template-columns:1fr 320px}.studio .recipes-col{grid-column:1 / -1}.recipes{flex-direction:row;overflow-x:auto;padding-bottom:4px}.recipes button{min-width:168px}.plans{grid-template-columns:repeat(2,1fr)}}@media (max-width: 860px){.wrap,.wrap-narrow{padding:0 18px}.topbar{padding:0 18px;gap:12px}.nav button{padding:7px 9px;font-size:13.5px}.hero{padding:44px 0 34px}.hero-grid{grid-template-columns:1fr;gap:34px}.specimen{order:-1}.steps{grid-template-columns:1fr;gap:22px;padding:38px 0}.studio{grid-template-columns:1fr}.wall{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.drawer{width:100vw}.pressline .txt{display:none}}@media (max-width: 560px){.plans{grid-template-columns:1fr}.brand span{display:none}}
