@font-face{font-family:"Instrument Serif";src:url(/fonts/serif-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(/fonts/serif-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/inter-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/inter-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/mono-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/mono-500.woff2) format("woff2");font-weight:500;font-display:swap}
:root{--vinyl:#0f0f10;--label:#ff7a2f;--sleeve:#f3f0e8;--groove:#1c1c1f;--dust:#8e8b85;--rule:#2a2a2e;--wax:#3a1d0f;
--serif:"Instrument Serif","Playfair Display",Georgia,serif;--sans:Inter,"SF Pro Text",system-ui,sans-serif;--mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,monospace;
--kit-accent:#ff7a2f;--kit-on-accent:#0f0f10}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{background:var(--vinyl);color:var(--sleeve);-webkit-text-size-adjust:100%}
body{margin:0;font:400 16px/1.5 var(--sans);min-height:100vh;display:flex;flex-direction:column}
a{color:var(--label);text-underline-offset:3px}
a:hover{color:#ff9a5f}
img,video,canvas{display:block;max-width:100%}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;margin:0 0 16px}
h2,.h2{font-size:48px;line-height:1.05}
.h3,h3{font-size:32px;line-height:1.1}
em{font-style:italic}
.display{font-size:88px;line-height:.95;margin-bottom:16px}
.display em{color:var(--label)}
.mono{font:400 12px/1.4 var(--mono);letter-spacing:.04em}
.dust{color:var(--dust)}
.small{font-size:14px}
.label{font:500 12px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--dust);margin:0 0 8px}
.err{color:#ff8f6b;font-size:14px;margin:4px 0 0;min-height:0}
.err:empty{display:none}
:focus-visible{outline:2px solid var(--label);outline-offset:2px}

.top{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--rule)}
.brand{display:flex;align-items:center;gap:12px;color:var(--sleeve);text-decoration:none;font:400 28px/1 var(--serif)}
.brand img{width:32px;height:32px;border-radius:4px;background:#fff}
.top nav{display:flex;gap:24px;font-size:14px}
.top nav a{color:var(--sleeve);text-decoration:none}
.top nav a:hover{color:var(--label)}
.top nav{align-items:center}.signout{margin:0}.signout button{background:none;border:0;padding:0;color:var(--dust);font:inherit;cursor:pointer}.signout button:hover{color:var(--label)}
main{flex:1;width:100%;margin:0 auto;padding:40px 24px 96px}
main.narrow{max-width:1040px}
main.wide{max-width:1320px}
.foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:24px;border-top:1px solid var(--rule);font-size:14px;color:var(--dust)}

/* buttons */
.btn,.kit .kit-btn,.kit button{font:500 16px/1 var(--sans);padding:14px 24px;border-radius:999px;border:1px solid var(--rule);background:transparent;color:var(--sleeve);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn:hover,.kit button:hover{border-color:var(--sleeve)}
.btn.primary,.kit .kit-btn.primary,.kit button.primary{background:var(--label);color:var(--vinyl);border-color:var(--label)}
.btn.primary:hover,.kit button.primary:hover{background:#ff8c4a;color:var(--vinyl)}
.btn.primary:active,.kit button.primary:active{background:var(--wax);color:var(--sleeve)}
.btn.big{width:100%;padding:18px 24px;font-size:18px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.linkbtn{background:none;border:0;padding:0;color:var(--label);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.chip{display:inline-block;font:500 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:var(--label);color:var(--vinyl)}

/* forms */
label{display:grid;gap:6px;font-size:14px;font-weight:500}
.opt{font-weight:400;color:var(--dust)}
input,textarea,select{font:400 16px/1.4 var(--sans);padding:12px 14px;border:1px solid var(--rule);border-radius:8px;background:var(--vinyl);color:var(--sleeve);width:100%}
input:focus,textarea:focus,select:focus{border-color:var(--label);outline:none}
input[aria-invalid=true]{border-color:#ff8f6b}
input[type=date]{color-scheme:dark}
input[type=color]{padding:2px;height:40px;width:56px;cursor:pointer}
fieldset{border:0;margin:0;padding:0;display:grid;gap:16px}

/* builder */
.builder{display:grid;grid-template-columns:minmax(340px,440px) 1fr;gap:40px;align-items:start}
.controls{display:grid;gap:16px}
.lede{color:var(--dust);margin:0;max-width:420px}
.example-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px;border:1px solid var(--rule);border-radius:8px;padding:12px}
.example-bar[hidden]{display:none}
.steps{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--rule)}
.steps button{width:100%;background:none;border:0;border-bottom:2px solid transparent;color:var(--dust);font:500 13px/1.3 var(--sans);padding:12px 4px;cursor:pointer;text-align:left;display:grid;gap:2px}
.steps button .mono{color:inherit}
.steps button[aria-current=step]{color:var(--sleeve);border-bottom-color:var(--label)}
.steps button.done .mono{color:var(--label)}
.drop{position:relative;display:grid;gap:4px;border:1px dashed #44444a;border-radius:8px;padding:20px;cursor:pointer;background:var(--groove)}
.drop:hover,.drop.over{border-color:var(--label)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.drop-t{font:400 24px/1.1 var(--serif)}
.drop-s{font:400 13px/1.4 var(--mono);color:var(--dust);overflow-wrap:anywhere}
.drop.has .drop-s{color:var(--sleeve)}
.bar{height:2px;background:var(--rule);margin-top:8px;overflow:hidden}
.bar span{display:block;height:100%;width:0;background:var(--label);transition:width .2s}
.wave-wrap{border:1px solid var(--rule);border-radius:8px;background:var(--groove);touch-action:none;cursor:grab}
.wave-wrap canvas{width:100%;height:96px}
.hook-row{display:flex;justify-content:space-between;align-items:center;font-size:14px}
input[type=range]{padding:0;accent-color:var(--label);border:0;background:none}
.styles{display:grid;gap:8px}
.style-opt{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:12px;width:100%;text-align:left;border:1px solid var(--rule);border-radius:8px;padding:10px 12px;cursor:pointer;background:transparent;color:var(--sleeve);font:400 14px/1.4 var(--sans)}
.style-opt strong{font-weight:500;font-size:16px}
.style-opt:hover{border-color:var(--sleeve)}
.style-opt[aria-checked=true]{border-color:var(--label);background:var(--groove)}
.style-opt small{display:block;color:var(--dust);font-size:14px}
.swatch{width:44px;height:44px;border-radius:4px;background:#333 center/cover}
.swatch[data-style=grain]{background:linear-gradient(135deg,#3b2a18,#c77b36 60%,#1a1410)}
.swatch[data-style=neon]{background:radial-gradient(circle at 50% 50%,#ff7a2f 0 30%,#3b1a6b 60%,#07070a)}
.swatch[data-style=tape]{background:repeating-linear-gradient(0deg,#1a1a1d 0 3px,#2e3440 3px 5px),#222}
.swatch[data-style=minimal]{background:linear-gradient(#f3f0e8,#f3f0e8) padding-box;box-shadow:inset 0 0 0 12px #f3f0e8;background-color:#0f0f10}
.swatch[data-style=collage]{background:linear-gradient(8deg,#ebe6da 0 40%,#0f0f10 40% 70%,#ff7a2f 70%)}
.accent-row{display:flex;justify-content:space-between;align-items:center}
.accent{grid-template-columns:auto auto;align-items:center;gap:12px}
.step-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
#draft{display:grid;gap:0}
.step-count{margin:0 0 16px}
.step-nav #nextBtn{margin-left:auto}
.load-ex{font-size:14px;color:var(--dust);margin:0}

.stage{position:sticky;top:24px;display:grid;gap:16px}
.stage-row{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:16px;align-items:end}
.stage-row.two{grid-template-columns:1fr 1fr}
.tile{margin:0;display:grid;gap:8px}
.tile canvas{width:100%;border-radius:4px;background:var(--groove)}
.t916 canvas{aspect-ratio:9/16}
.t11 canvas{aspect-ratio:1/1}
.tile figcaption{display:flex;justify-content:space-between;gap:8px;font-size:13px;flex-wrap:wrap}
.player{display:grid;grid-template-columns:64px auto 1fr;gap:16px;align-items:center;background:var(--groove);padding:12px 16px 12px 12px;border-radius:0}
.play{width:64px;height:64px;border-radius:999px;border:0;background:var(--label);color:var(--vinyl);cursor:pointer;display:grid;place-items:center}
.play:hover{background:#ff8c4a}.play:active{background:var(--wax);color:var(--sleeve)}
.player-meta{display:grid;gap:2px;min-width:0}
.player-meta strong{font:400 22px/1.1 var(--serif);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.scrub{height:3px;background:var(--rule);position:relative}
.scrub span{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--label)}
.buybar{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:16px 0}
.price{font:400 32px/1 var(--serif)}
.buy-act{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}

/* sections */
.whats,.faq{margin-top:96px}
.files-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}
.file{margin:0;display:grid;gap:8px}
.file .media{background:var(--groove);border-radius:4px;overflow:hidden}
.file video,.file img,.file canvas{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:4px;background:var(--groove)}
.file.sq video,.file.sq img,.file.sq canvas{aspect-ratio:1/1}
.file.p45 video,.file.p45 img,.file.p45 canvas{aspect-ratio:4/5}
.file figcaption{display:grid;gap:2px;font-size:14px}
.faq{max-width:760px}
.faq details{border-top:1px solid var(--rule);padding:16px 0}
.faq details:last-child{border-bottom:1px solid var(--rule)}
.faq summary{cursor:pointer;font:400 24px/1.2 var(--serif);list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";color:var(--label);font-family:var(--sans)}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--dust);margin:12px 0 0;max-width:640px}

/* review */
.review{display:grid;grid-template-columns:1fr minmax(340px,460px);gap:64px;align-items:start}
.rv-preview{position:sticky;top:24px;display:grid;gap:12px;max-width:620px}
.rv-side h1 em{color:var(--sleeve)}
.rv-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0 0 24px;font-size:14px}
.rv-dl dt{color:var(--dust)}.rv-dl dd{margin:0;overflow-wrap:anywhere}
.deliver{list-style:none;padding:0;margin:0 0 16px;border-top:1px solid var(--rule)}
.deliver li{display:grid;gap:2px;padding:10px 0;border-bottom:1px solid var(--rule);font-size:14px}
.rv-form{display:grid;gap:16px;margin-top:24px;max-width:none}
.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--rule);padding-top:16px}

/* customer area (kit) in the sleeve style */
.kit{max-width:1040px}
.kit h1{font:400 48px/1.05 var(--serif);margin-bottom:8px}
.kit h2{font:400 32px/1.1 var(--serif);margin:40px 0 16px}
.kit .muted{color:var(--dust);opacity:1}
.kit label{font-weight:500}
.kit input,.kit textarea,.kit select{border-color:var(--rule);background:var(--vinyl)}
.kit .kit-card{background:var(--groove);border:1px solid var(--rule);border-radius:8px;padding:16px}
.kit .kit-card strong{font:400 24px/1.1 var(--serif);font-style:italic}
.kit .kit-card:hover{border-color:var(--label)}
.kit .pill{border-color:var(--label);color:var(--label);font:500 11px/1.6 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.kit .timeline li .dot{border-color:var(--dust)}
.kit .timeline li.done .dot,.kit .timeline li.now .dot{background:var(--label);border-color:var(--label)}
.kit .notice{border-color:var(--rule);background:var(--groove);border-radius:8px}
.kit .msg{border-left-color:var(--rule)}.kit .msg.business{border-left-color:var(--label)}
.kit .files li{border-bottom-color:var(--rule)}
.kit table th,.kit table td{border-bottom-color:var(--rule)}
.kit nav button{color:var(--dust)}
.kit .err{color:#ff8f6b}
.dk-order{display:grid;gap:24px;margin:0 0 24px}
.ord-head{display:flex;gap:24px;align-items:center}
.ord-cover{width:120px;height:120px;object-fit:cover;border-radius:4px}
.ord-date{font:400 32px/1.1 var(--serif);margin:4px 0}
.ord-head p{margin:0}
.panel{background:var(--groove);border:1px solid var(--rule);border-radius:8px;padding:16px;display:grid;gap:8px}
.panel p{margin:0}
.meter{height:4px;background:var(--rule)}.meter span{display:block;height:100%;background:var(--label);transition:width .6s}
.set-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.set-head h2{margin:0!important}
.set .files-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-top:16px}
.changes{margin-top:24px;border-top:1px solid var(--rule);padding-top:16px}
.changes summary{cursor:pointer;font:400 24px/1.2 var(--serif)}
.changes summary .mono{font-family:var(--mono);font-size:12px;color:var(--label)}
.changes form{margin-top:16px}
.countdowns{list-style:none;padding:0;margin:16px 0;border-top:1px solid var(--rule)}
.countdowns li{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--rule)}
.countdowns em{font:400 24px/1.1 var(--serif);font-style:italic}
.filter{display:inline-grid;grid-template-columns:auto 220px;align-items:center;gap:8px;margin-bottom:16px}

@media (max-width:1100px){
  .builder{grid-template-columns:1fr}
  .stage{position:static;order:-1}
  .buybar{order:0}
  .files-grid{grid-template-columns:repeat(3,1fr)}
  .review{grid-template-columns:1fr;gap:40px}
  .rv-preview{position:static}
}
@media (max-width:640px){
  main{padding:24px 16px 64px}
  .display{font-size:44px}
  h2,.h2,.kit h1{font-size:36px}
  .stage-row{grid-template-columns:1fr 1fr;gap:12px}
  .stage-row .t11{grid-column:1/-1;max-width:320px;justify-self:center;width:100%}
  .files-grid{grid-template-columns:1fr 1fr;gap:16px}
  .player{grid-template-columns:56px 1fr}
  .play{width:56px;height:56px}
  .scrub{grid-column:1/-1}
  .buybar{position:sticky;bottom:0;background:var(--vinyl);z-index:2;padding:12px 0}
  .buy-act,.buy-act .btn{width:100%}
  .buybar .dust{display:block;font-size:13px}
  .steps button{font-size:12px}
  .steps button .mono{font-size:12px}
  .ord-head{gap:16px}.ord-cover{width:88px;height:88px}
  .top{padding:12px 16px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
