.std-section{scroll-margin-top:var(--anchor-offset);background:var(--page);padding:clamp(3.5rem,7vw,6rem) 1.25rem}.std-inner{gap:clamp(1.75rem,3vw,2.5rem);max-width:68rem;margin:0 auto;display:grid}.std-head{text-align:center;max-width:40rem;margin:0 auto}.std-kicker{font:600 .72rem/1.4 var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);margin:0 0 .6rem}.std-title{font-family:var(--font-display);color:var(--wine);text-wrap:balance;margin:0;font-size:clamp(2.1rem,4.2vw,2.8rem);font-weight:300;line-height:1.2}.std-title em{font-style:italic}.std-arrow{border:1px solid rgb(var(--wine-rgb) / .25);background:var(--paper-bright);width:44px;height:44px;color:var(--wine);font:400 1.6rem/1 var(--font-display);cursor:pointer;border-radius:50%;flex:none;place-items:center;transition:background .2s;display:grid}.std-arrow:hover{background:rgb(var(--wine-rgb) / .07)}.std-arrow:focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px}.std-maker{grid-template-columns:minmax(0,26rem) minmax(0,27.5rem);justify-content:center;align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.std-form{gap:1.1rem;display:grid}.std-names{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.std-field{gap:.4rem;min-width:0;display:grid}.std-field>span{font:600 .72rem/1.3 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--wine)}.std-names input{box-sizing:border-box;width:100%;min-width:0;font:400 1rem/1.3 var(--font-ui);color:var(--ink);border:1px solid rgb(var(--wine-rgb) / .2);border-radius:var(--r-md);background:#ffffffa6;outline:none;padding:.85rem 1rem;transition:border-color .2s,box-shadow .2s}.std-names input:focus{border-color:rgb(var(--wine-rgb) / .5);box-shadow:0 0 0 3px rgb(var(--wine-rgb) / .08)}.std-names input[aria-invalid=true]{border-color:var(--danger)}.std-error{font:400 .8rem/1.4 var(--font-ui);color:var(--danger)}.std-date-placeholder{height:calc(4.88rem + 2px)}.std-photo{align-items:center;gap:.85rem;display:flex}.std-photo-thumb,.std-photo-empty{border-radius:var(--r-md);object-fit:cover;border:1px solid rgb(var(--wine-rgb) / .2);flex:none;width:3.5rem;height:3.5rem}.std-photo-empty{background:linear-gradient(135deg, transparent 47%, rgb(var(--wine-rgb) / .18) 47% 53%, transparent 53%), #ffffff8c}.std-photo-btn{border-radius:var(--r-pill);border:1px solid rgb(var(--wine-rgb) / .35);min-height:44px;color:var(--wine);font:500 .88rem/1 var(--font-ui);cursor:pointer;background:0 0;padding:.6rem 1.2rem}.std-photo-btn:hover{background:rgb(var(--wine-rgb) / .06)}.std-download{border-radius:var(--r-pill);background:var(--wine);min-height:50px;color:var(--ivory);font:600 .9rem/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:0;margin-top:.4rem;transition:background .2s}.std-download:hover{background:var(--wine-deep)}.std-download:disabled{opacity:.7;cursor:progress}.std-download:focus-visible,.std-photo-btn:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px}.std-hint{text-align:center;font:400 .82rem/1.5 var(--font-ui);color:var(--muted);margin:-.35rem 0 0}.std-hint.is-alert{color:var(--danger)}.std-preview{width:100%;margin:0}.std-stage{align-items:center;gap:.75rem;display:flex}.std-canvas-wrap{touch-action:pan-y;flex:1;min-width:0;max-width:21rem;margin:0 auto;position:relative}.std-design-name{font:400 .85rem/1.4 var(--font-ui);color:var(--muted);justify-content:center;align-items:baseline;gap:.5rem;margin-top:.9rem;display:flex}.std-design-name b{color:var(--wine);font-size:.95rem;font-weight:600}.std-canvas{aspect-ratio:9/16;background:rgb(var(--wine-rgb) / .06);width:100%;height:auto;box-shadow:0 18px 44px rgb(var(--ink-rgb) / .18);border-radius:14px;display:block}.std-preview-note{text-align:center;font:400 .9rem/1.5 var(--font-ui);color:var(--muted);place-items:center;padding:1rem;display:grid;position:absolute;inset:0}@media (max-width:860px){.std-maker{grid-template-columns:minmax(0,1fr);justify-items:center}.std-preview{order:-1;width:min(26rem,100%)}.std-stage{gap:.5rem}.std-arrow{width:40px;height:40px}.std-form{width:100%;max-width:30rem}}@media (max-width:420px){.std-names{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.std-arrow,.std-download{transition:none}}
