@font-face{font-family:Manrope;src:url('/static/fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:Cormorant;src:url('/static/fonts/CormorantGaramond.ttf') format('truetype');font-weight:300 700;font-display:swap}
:root{--ink:#263b3d;--muted:#757a74;--cream:#f6f3ed;--paper:#fdfbf7;--line:#dedfd7;--accent:#9d815d;--focus:#537c79}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif;font-size:13px;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:4px}input{accent-color:var(--ink)}[hidden]{display:none!important}
.site-header{height:92px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.wordmark{display:flex;gap:12px;align-items:center;font-size:17px;letter-spacing:3.5px;font-weight:500}.brand-star{font-size:35px;line-height:1;color:var(--accent)}.brand-second{font-weight:300}.prototype-label{font-size:9px;letter-spacing:1.8px;color:var(--muted)}.prototype-label span{margin:0 6px}
.studio{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);max-width:1600px;margin:auto;align-items:start}.art-panel{background:var(--cream);padding:44px 7% 28px;position:sticky;top:0;text-align:center;min-height:calc(100vh - 92px)}.eyebrow{font-size:9px;letter-spacing:2.2px;font-weight:650;color:var(--accent)}h1,h2{font-family:Cormorant,serif;font-weight:400;letter-spacing:-.6px}h1{font-size:44px;margin:10px 0 6px;line-height:1.07}.art-intro p,.controls-intro p{font-size:12px;color:var(--muted);line-height:1.8;margin:0}.preview-stage{max-width:390px;margin:28px auto 0}.artwork{display:block;position:relative;border:0;padding:0;width:100%;aspect-ratio:3/4;background:#101f2c;box-shadow:0 20px 35px -15px #23333847,0 1px 3px #13273224;overflow:hidden;transition:box-shadow .2s}.artwork:hover{box-shadow:0 23px 40px -12px #23333855}.artwork img{width:100%;height:auto;display:block}.artwork:disabled{opacity:1}.initial-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#e8e1d4;font-size:12px}.loading-star{font-size:48px;animation:twinkle 1.7s ease-in-out infinite}@keyframes twinkle{50%{opacity:.3}}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;margin-top:17px;font-size:10px;color:var(--muted)}.live-state:before{content:'';display:inline-block;width:5px;height:5px;background:#78918a;border-radius:50%;margin-right:7px}.live-state.busy:before{background:var(--accent);animation:twinkle .9s infinite}.text-button{border:0;background:none;padding:0;color:var(--ink);font-size:10px}.text-button span{margin-left:5px;font-size:15px}.format-note{color:var(--muted);font-size:10px;margin:25px 0 0;letter-spacing:.2px}.format-note span{padding:0 8px}
.controls{padding:47px 12% 36px 11%;max-width:650px}.controls-intro{margin-bottom:30px}h2{font-size:39px;line-height:1.1;margin:9px 0 11px}.form-section{border:0;padding:0;margin:0 0 27px;min-width:0}.form-section legend{padding:0;margin-bottom:18px;font-size:13px;font-weight:650;display:flex;align-items:center;gap:10px}.step{font-size:9px;letter-spacing:.6px;color:var(--accent);font-weight:500}.palette-options{display:flex;gap:25px}.palette{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;cursor:pointer;font-size:10px;color:var(--muted)}.palette input{position:absolute;opacity:0;width:40px;height:40px}.swatch{width:34px;height:34px;border-radius:50%;border:1px solid #183b3520;position:relative}.swatch.midnight{background:#101f2c}.swatch.forest{background:#1d332f}.swatch.ivory{background:#f2ede3}.palette input:checked+.swatch:after{content:'';position:absolute;inset:-5px;border:1px solid var(--accent);border-radius:50%}.palette input:focus-visible+.swatch{outline:2px solid var(--focus);outline-offset:5px}.palette:has(input:checked){color:var(--ink)}.field{margin-bottom:16px;min-width:0}.field label{display:block;font-size:11px;font-weight:550;margin-bottom:7px}.field input{width:100%;border:1px solid var(--line);border-radius:5px;height:44px;padding:0 12px;color:var(--ink);background:#fffefa;transition:border-color .15s}.field input:hover{border-color:#b8c1b8}.field input:focus{border-color:var(--focus);outline:1px solid var(--focus);outline-offset:0}.field-note{font-size:9px;color:var(--muted);line-height:1.6;margin:7px 0 0;display:block}.field-pair{display:grid;grid-template-columns:1.25fr 1fr;gap:14px}.field-pair input{min-width:0}.optional{font-size:9px;font-weight:400;color:var(--muted);margin-left:4px}.input-wrap{position:relative}.input-wrap input{padding-left:36px}.place-icon{position:absolute;top:10px;left:12px;font-size:19px;pointer-events:none;color:var(--accent)}.location-field{position:relative}#city-results{position:absolute;z-index:5;top:66px;left:0;right:0;margin:0;padding:5px;list-style:none;max-height:270px;overflow:auto;background:#fffefa;border:1px solid var(--line);border-radius:5px;box-shadow:0 10px 28px #2333381a}#city-results li{padding:10px;border-radius:3px;cursor:pointer}#city-results li:hover,#city-results li[aria-selected=true]{background:var(--cream)}#city-results strong{display:block;font-size:12px;font-weight:550}#city-results small{font-size:9px;color:var(--muted)}.switch-label{display:flex;align-items:center;position:relative;cursor:pointer;font-size:11px;gap:12px}.switch-label>span:first-child{flex:1}.switch-label input{position:absolute;right:0;width:34px;height:22px;opacity:0}.switch-track{width:31px;height:18px;border-radius:12px;background:#c5ccc5;position:relative;pointer-events:none}.switch-track:after{position:absolute;content:'';width:12px;height:12px;top:3px;left:3px;background:#fff;border-radius:50%;transition:transform .15s}.switch-label input:checked+.switch-track{background:#3f625b}.switch-label input:checked+.switch-track:after{transform:translateX(13px)}.switch-label input:focus-visible+.switch-track{outline:2px solid var(--focus);outline-offset:3px}.text-section{border-top:1px solid var(--line);padding-top:24px;margin-bottom:21px}.text-section legend{float:left;width:100%}.text-section .field{clear:both}.download-button{width:100%;display:flex;justify-content:space-between;align-items:center;height:49px;padding:0 18px;border:0;border-radius:5px;color:#fffaf1;background:#2c4843;font-size:12px;font-weight:550;transition:background .2s}.download-button:hover:not(:disabled){background:#1c3632}.download-button>span:last-child{font-size:22px;font-weight:300}.download-note{font-size:9px;color:var(--muted);text-align:center;line-height:1.7;margin:10px 0}.studio-note{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);margin-top:23px;padding-top:15px;color:var(--muted);font-size:9px;line-height:1.7}.studio-note>span{font-size:24px;color:var(--accent)}.form-error{padding:12px;background:#faf0e9;color:#853d2e;border:1px solid #e6c7b5;border-radius:4px;font-size:11px;line-height:1.7;margin-bottom:15px}.time-choice{background:#f3eee2;padding:12px;margin-bottom:16px;border-radius:4px;font-size:11px;line-height:1.6}.time-choice p{margin-top:0}.time-choice label{display:block;margin:8px 0}.time-choice input{margin-right:8px}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:25px 5.5%;font-size:9px;letter-spacing:1.2px;color:var(--muted)}footer span:last-child{letter-spacing:0}
dialog{border:0;padding:0;background:transparent;max-width:90vw;max-height:94vh;overflow:visible}dialog::backdrop{background:#152328d9;backdrop-filter:blur(4px)}dialog img{display:block;width:auto;height:min(89vh,1100px);max-width:90vw;object-fit:contain}.zoom-close{position:absolute;top:7px;right:7px;border:1px solid #ffffff4d;border-radius:50%;width:35px;height:35px;font-size:24px;background:#182b31bd;color:white}
@media(min-width:1450px){.preview-stage{max-width:440px}.controls{padding-top:58px}.art-panel{padding-top:52px}}
@media(max-width:900px){.site-header{height:74px;padding:0 5%}.wordmark{font-size:14px;letter-spacing:2px}.brand-star{font-size:29px}.prototype-label{font-size:8px;letter-spacing:1px}.studio{grid-template-columns:1fr 1fr}.art-panel{padding:35px 7%;min-height:0;top:0}.controls{padding:35px 8%}h1{font-size:35px}h2{font-size:32px}.art-intro p{font-size:11px}.preview-stage{margin-top:24px}.field-pair{gap:8px}.field input{padding:0 9px}.prototype-label span{margin:0 3px}}
@media(max-width:650px){.site-header{height:65px}.prototype-label{font-size:7px}.studio{display:flex;flex-direction:column}.art-panel{position:relative;width:100%;padding:29px 25px 23px}.eyebrow{font-size:8px;letter-spacing:1.7px}h1{font-size:37px}.preview-stage{max-width:260px;margin-top:22px}.art-intro p{font-size:11px}.format-note{margin-top:16px;font-size:9px}.preview-toolbar{margin-top:13px}.controls{max-width:500px;width:100%;margin:auto;padding:30px 26px}.controls-intro{margin-bottom:24px}h2{font-size:35px}.form-section{margin-bottom:26px}.field input{font-size:16px}.field label{font-size:12px}.field-pair{grid-template-columns:1.2fr 1fr;gap:12px}.download-button{height:52px;font-size:13px}footer{font-size:8px;gap:20px;padding:21px 26px}.studio-note{font-size:10px}.download-note,.field-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.input-wrap input{padding-left:36px}.retry-button{margin:0 0 18px;text-decoration:underline;font-size:12px}
.swatch{pointer-events:none}
