:root{--paper:#e7dcc8;--paper-2:#f6f1e6;--ink:#1c1915;--ink-soft:#4e463c;--pine:#1b3d30;--rule:#cbbfa8;--white:#fffdf8;--signal:#8d2e22;--mark:#f0c14a;--serif:"Fraunces", "Iowan Old Style", Palatino, Georgia, serif;--sans:"Figtree", "Avenir Next", "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:17px;line-height:1.5}*{box-sizing:border-box}body{background:linear-gradient(var(--pine), var(--pine)) left / 12px 100% no-repeat, var(--paper);min-height:100vh;margin:0}img{max-width:100%}a{color:var(--pine)}a:hover{color:#0e2820}code{font-family:var(--mono);font-size:.92em}.wrap{width:min(1120px,100% - 36px);margin-inline:auto}.skip{background:var(--white);color:var(--ink);z-index:5;padding:8px 12px;position:absolute;top:-40px;left:12px}.skip:focus{top:12px}.masthead{border-bottom:1px solid var(--ink);background:#f6f1e6e0}.masthead-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.brand{font-family:var(--serif);letter-spacing:-.03em;color:var(--ink);font-size:1.35rem;font-weight:650;text-decoration:none}nav{flex-wrap:wrap;gap:14px;display:flex}nav a{color:var(--ink);font-size:.92rem;font-weight:600;text-decoration:none}nav a:hover{text-decoration:underline}.hero{padding:36px 0 8px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:700}.eyebrow.light{color:#d7e4dc}h1,h2,h3{font-family:var(--serif);letter-spacing:-.03em;font-weight:560;line-height:1.05}h1{max-width:16ch;margin:0 0 16px;font-size:clamp(2.2rem,5vw,4.1rem)}h2{margin:0 0 12px;font-size:clamp(1.7rem,3vw,2.4rem)}h3{margin:0 0 8px;font-size:1.35rem}.lede{max-width:62ch;font-size:1.12rem}.preview-flag{border-left:4px solid var(--mark);background:var(--paper-2);max-width:70ch;padding:12px 14px}.band{padding:28px 0}.adhesive-band{background:var(--pine);color:#f6f1e6;margin-top:12px;padding:42px 0}.adhesive-band h2{max-width:16ch}.adhesive-band p{max-width:62ch}.designer{grid-template-columns:1fr;gap:22px;display:grid}.preview-col{position:static}.how-simple{gap:10px;margin:0;padding:0;list-style:none;display:grid}.how-simple li{background:var(--paper-2);border:1px solid var(--ink);gap:6px;padding:14px 16px;display:grid}.how-simple strong{font-family:var(--serif);letter-spacing:-.03em;font-size:1.7rem}.style-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.style-grid .choice{align-items:center;min-height:88px}.found-box{border:1px solid var(--pine);background:#e7f0ea;gap:6px;padding:12px;display:grid}.found-box p{margin:0}.found-box a{overflow-wrap:anywhere}.extra{border:1px solid var(--rule);background:var(--white);padding:10px 12px}.extra summary{cursor:pointer;font-weight:700}.extra .field{margin-top:10px}.preview-col h3{margin-bottom:12px}.design-form,.choice,.addon,.summary,.fact-group,.faq details,.narrow{background:var(--paper-2)}.design-form{border:1px solid var(--ink);gap:16px;padding:18px;display:grid}.field,fieldset{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}legend,.field>label,label.field{font-size:.95rem;font-weight:700}input[type=text],input[type=url],input[type=email],input:not([type]),input[type=file]{font:inherit;border:1px solid var(--ink);background:var(--white);width:100%;color:var(--ink);border-radius:2px;padding:11px 12px}input[type=color]{border:1px solid var(--ink);background:var(--white);width:72px;height:40px;padding:0}.hint{color:var(--ink-soft);margin:0;font-size:.92rem}.hint.ok{color:var(--pine)}.choice-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.choice,.addon{border:1px solid var(--rule);cursor:pointer;align-items:flex-start;gap:10px;padding:10px;display:flex}.choice.on,.addon.on{border-color:var(--pine);box-shadow:inset 3px 0 0 var(--pine)}.choice span,.addon span{gap:2px;display:grid}.choice small,.addon small{color:var(--ink-soft)}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{justify-items:center;gap:4px;font-size:.82rem;font-weight:600;display:grid}.swatch input{accent-color:var(--pine)}.chip{border:1px solid var(--ink);width:36px;height:36px;display:block}.swatch.on .chip{outline:3px solid var(--mark);outline-offset:2px}.custom-color{margin-top:8px}.summary{border:1px dashed var(--ink);gap:4px;padding:12px;display:grid}.summary p{margin:0}.primary{font:inherit;background:var(--pine);color:#f6f1e6;cursor:pointer;border:0;padding:14px 16px;font-weight:700}.design-form .primary{width:100%}.primary:disabled{opacity:.6;cursor:wait}.text-button{font:inherit;color:var(--signal);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-weight:700}.error{color:var(--signal);margin:0;font-weight:650}.notice{border:1px solid var(--ink);background:#efe4c4;margin:0;padding:10px 12px}mark.verify{background:var(--mark);color:var(--ink);padding:0 .2em;font-weight:750}.preview-stack{justify-items:center;gap:18px;display:grid}.card-figure{width:min(100%,520px);margin:0}.card-figure figcaption{letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:.78rem;font-weight:700}.card{aspect-ratio:1.586;background:var(--white);border-radius:14px;width:100%;overflow:hidden;box-shadow:0 16px 30px #281c0c29}.face{background:var(--white);height:100%;color:var(--ink);grid-template-columns:1fr auto;gap:8px;padding:14px;display:grid}.face.letterhead{border-top:12px solid var(--ink-color)}.face.jobsite{background:var(--ink-color);color:#f6f1e6}.face.ticket{background:linear-gradient(var(--paper-2), var(--paper-2)) padding-box;box-shadow:inset 0 0 0 2px var(--ink-color);border-radius:8px;height:calc(100% - 16px);margin:8px}.face.panel{grid-template-columns:30% 1fr;gap:0;padding:0}.rail{background:var(--ink-color);color:#f6f1e6;place-items:center;padding:10px;display:grid}.initials{font-family:var(--serif);margin:0;font-size:1.6rem}.panel-main{align-content:space-between;gap:6px;padding:12px;display:grid}.face-copy{align-self:start;min-width:0}.lockup{gap:4px;min-width:0;display:grid}.logo{object-fit:contain;background:#fff;width:64px;height:36px}.logo.light{width:70px;height:48px}.biz{font-family:var(--serif);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:1.25rem;line-height:1.05}.biz.ghost{opacity:.45}.tap{align-items:center;gap:6px;margin:8px 0 0;font-size:.82rem;font-weight:700;display:flex}.nfc{flex:none;width:18px;height:18px}.kicker{letter-spacing:.14em;text-transform:uppercase;grid-column:1/-1;margin:0;font-size:.68rem;font-weight:700}.qr-plate{color:var(--ink);background:#fff;place-self:end;padding:4px}.qr-svg svg,.qr-svg{width:72px;height:72px}.qr-svg svg{width:72px;height:72px;display:block}.qr-fallback{background:#efeae0;width:72px;height:72px}.qr-path{font-family:var(--mono);letter-spacing:0;margin:2px 0 0;font-size:.62rem}.face.back{background:#f4ecdc;height:100%;display:block;position:relative}.peel{background:linear-gradient(135deg, transparent 49%, var(--ink-color) 50%);width:58px;height:58px;position:absolute;bottom:0;right:0}.adhesive-title{font-family:var(--serif);letter-spacing:-.03em;margin:6px 0;font-size:1.7rem;line-height:.95}.back-copy{max-width:28ch;margin:0 0 6px;font-size:.82rem}.back-copy.fine{color:var(--ink-soft)}.brandline{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700;position:absolute;bottom:12px;left:14px}.fact-group{border:1px solid var(--rule);margin-top:12px;padding:14px 16px}.fact-group dl{gap:8px;margin:0;display:grid}.fact-group div{grid-template-columns:minmax(140px,34%) 1fr;gap:10px;display:grid}dt{font-weight:700}dd{margin:0}.steps{gap:8px;max-width:68ch;margin:0;padding-left:1.2rem;display:grid}.faq{gap:8px;display:grid}.faq details{border:1px solid var(--rule);padding:10px 14px}.faq summary{cursor:pointer;font-weight:700}.faq p{max-width:70ch;margin:8px 0 0}.site-footer{border-top:1px solid var(--ink);color:var(--ink-soft);padding:22px 0 40px}.narrow{border:1px solid var(--ink);max-width:720px;margin:28px auto;padding:22px}.status-list{gap:8px;display:grid}.status-list div{grid-template-columns:120px 1fr;display:grid}:focus-visible{outline:3px solid var(--pine);outline-offset:2px}@media (width<=860px){.choice-grid,.fact-group div,.status-list div{grid-template-columns:1fr}body{background:var(--paper)}h1{max-width:none}.hero{padding-top:22px}}@media (width>=800px){.how-simple{grid-template-columns:repeat(3,1fr)}.style-grid{grid-template-columns:repeat(4,1fr)}.preview-stack{grid-template-columns:1fr 1fr;align-items:start}}
