:root{--ink:#402923;--muted:#735952;--rose:#c46a6c;--petal:#eba5a3;--light:#f5cac4;--paper:#fffdfb;--line:#ead3ca;--panel:#fff8f4}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:linear-gradient(145deg,#fffefd,#fff7f3 45%,#fbe4de);font:16px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;left:12px;top:-100px}.skip:focus{top:12px;background:var(--paper);padding:12px;z-index:10}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}header{max-width:1200px;margin:auto;padding:12px 32px}header>a:not(.site-logo){text-decoration:none;font-size:14px}.theme-toggle{border:1px solid var(--line);border-radius:30px;background:var(--panel);color:var(--ink);padding:10px 18px;min-height:44px}main{max-width:1200px;margin:auto;padding:10px 32px 64px}.intro{text-align:center;margin:10px auto 36px}.eyebrow,.step-count{font-size:11px;letter-spacing:2px;color:var(--muted)}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-1px}h1{font-size:clamp(38px,5.4vw,62px);margin:14px 0}h1 em{color:var(--rose)}.intro>p:last-child{color:var(--muted);margin-top:18px}.studio-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:36px;align-items:start}.design-preview{position:sticky;top:20px;background:linear-gradient(150deg,#fffdfb,#fbe9e5);border:1px solid var(--line);border-radius:28px;padding:24px;text-align:center}.tree-art{height:280px}.tree-art svg{height:100%;width:100%;max-width:240px}.preview-label{font:italic 20px Georgia;margin:12px 0 5px}.preview-note{font-size:10px;color:var(--muted);margin:0 0 24px}.design-preview dl{text-align:left;margin:0}.design-preview dl>div{padding:12px 0;border-top:1px solid var(--line)}dt{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}dd{margin:4px 0 0;font-family:Georgia;font-size:16px}.quote-note{font-size:12px;color:var(--muted);line-height:1.7;margin:20px 0 0}.design-form{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:28px 32px 32px;box-shadow:0 12px 40px #b46b6010}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:32px}.steps button{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:transparent;font-size:11px;color:var(--muted);padding:6px 0;min-height:56px}.steps span{border:1px solid var(--line);border-radius:50%;width:28px;height:28px;display:grid;place-content:center}.steps [aria-current=step]{color:var(--ink);font-weight:600}.steps [aria-current=step] span{background:var(--light);border-color:var(--petal)}h2{font-size:32px;margin:8px 0 12px}h2:focus{outline:none}.step-count{margin:0 0 10px}.step-hint{font-size:14px;color:var(--muted);margin:0 0 24px}fieldset{border:0;padding:0;margin:24px 0}legend{font-size:14px;font-weight:600;margin-bottom:12px}.choices{display:grid;gap:10px}.size-grid,.style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choices label{position:relative;cursor:pointer}.choices input{position:absolute;top:16px;left:14px;accent-color:var(--rose);width:17px;height:17px;z-index:1}.choices span{display:flex;flex-direction:column;justify-content:center;min-height:87px;border:1px solid var(--line);border-radius:16px;padding:15px 12px 15px 41px;transition:background .15s,border .15s}.choices b{font:18px Georgia;line-height:1.25}.choices small{font-size:11px;color:var(--muted);margin-top:5px}.choices input:checked+span{border-color:var(--rose);background:#fceae5;box-shadow:inset 0 0 0 1px var(--rose)}.choices input:focus-visible+span{outline:3px solid var(--rose);outline-offset:3px}.style-grid span{padding-top:44px;min-height:125px}.style-grid .swatches{position:absolute;left:42px;top:17px;display:flex;gap:5px}.swatches i{width:18px;height:18px;border-radius:50%;border:1px solid #40292326}.decor-grid span{min-height:74px}.field{display:flex;flex-direction:column;gap:7px;font-size:13px;margin:18px 0}.field small{font-size:11px;color:var(--muted)}.optional{color:var(--muted);font-size:11px;font-weight:400}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);min-height:48px;padding:12px;font-size:15px}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:.85}.field textarea{resize:vertical;min-height:95px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-row .field{margin:6px 0 14px}details{border-top:1px solid var(--line);padding:16px 0}summary{font-size:13px;cursor:pointer;min-height:30px}.touches{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.touches label{font-size:13px}.touches input,.consent input{accent-color:var(--rose)}.upload-field{position:relative;display:flex;flex-direction:column;gap:8px;border:1px dashed var(--rose);background:var(--panel);border-radius:16px;padding:24px;text-align:center}.upload-field input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-field:focus-within{outline:3px solid var(--rose);outline-offset:3px}.upload-action{font-family:Georgia;font-size:20px}.upload-copy{font-size:12px;color:var(--muted)}.upload-limits,.upload-status{font-size:10px;color:var(--muted)}.upload-status.error,.field-error,.form-message.error{color:#962b39}.upload-status{pointer-events:none}.previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.previews figure{margin:0;min-width:0}.previews img{width:100%;height:90px;object-fit:cover;border-radius:10px}.previews figcaption{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-photo{font-size:11px!important;padding:6px 10px!important;min-height:35px!important}.review{background:var(--panel);border-radius:16px;padding:8px 18px}.review p{font-size:13px;border-bottom:1px solid var(--line);padding:9px 0;margin:0;display:flex;justify-content:space-between;gap:16px}.review p:last-child{border:0}.review b{font-weight:500;text-align:right}.scope-note{font-size:11px;color:var(--muted);line-height:1.7}.consent{display:flex;gap:12px;align-items:start;font-size:12px;margin:22px 0}.consent input{width:18px;height:18px;flex-shrink:0;margin-top:2px}.trap{position:absolute;left:-9999px}.form-actions{display:flex;gap:12px;justify-content:space-between;margin-top:20px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;border-radius:28px;padding:12px 22px;text-decoration:none;border:1px solid var(--line);font-size:14px}.primary{background:linear-gradient(120deg,var(--light),var(--petal));color:var(--ink);border-color:var(--petal);margin-left:auto}.secondary{background:transparent;color:var(--ink)}.primary:hover{background:var(--petal)}.form-message{font-size:13px;min-height:0;margin:15px 0 0}.form-message:empty{display:none}footer{text-align:center;padding:30px 20px 40px;background:linear-gradient(130deg,#fff8f4,#fbe9e5)}footer>p{font:italic 26px Georgia;color:var(--rose)}footer>div{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin:20px 0}footer a{font-size:13px;min-height:44px;display:flex;align-items:center}footer small{font-size:11px;color:var(--muted)}#success{padding:30px 0}#success p{color:var(--muted)}#success .primary{margin:18px 0 0}html[data-theme=dark]{--ink:#fae8df;--muted:#d8bdb3;--rose:#e8a6a3;--paper:#2e2423;--panel:#372a29;--line:#664b47}html[data-theme=dark] body{background:linear-gradient(145deg,#251c1c,#382727)}html[data-theme=dark] .design-preview,html[data-theme=dark] footer{background:linear-gradient(130deg,#362928,#4b3332)}html[data-theme=dark] .choices input:checked+span{background:#553a3b}html[data-theme=dark] .primary{color:#402923}.field-error:empty{display:none}
@media(max-width:900px){.studio-layout{grid-template-columns:260px minmax(0,1fr);gap:20px}.design-preview{padding:18px}.tree-art{height:220px}.design-form{padding:24px}.choices b{font-size:16px}main{padding-left:20px;padding-right:20px}}
@media(max-width:700px){main{padding:0 18px 36px}.intro{margin:12px 0 25px}.intro h1 br{display:none}.intro h1{font-size:37px}.eyebrow{font-size:10px}.studio-layout{display:flex;flex-direction:column;gap:20px}.design-preview{position:static;width:100%;display:grid;grid-template-columns:90px 1fr;gap:0 15px;padding:15px 18px;text-align:left}.tree-art{grid-column:1;grid-row:1/4;height:130px}.preview-label{font-size:17px;margin:5px 0}.preview-note{font-size:9px;margin:0}.design-preview dl{display:flex;flex-wrap:wrap;gap:8px 16px}.design-preview dl>div{border:0;padding:8px 0}dt{font-size:9px}dd{font:12px Arial}.quote-note{display:none}.design-form{width:100%;padding:20px;border-radius:22px}.steps{margin-bottom:24px;gap:4px}.steps button{font-size:10px}h2{font-size:29px}.step-hint{font-size:13px}.style-grid b{font-size:16px}.choices small{font-size:10px}.field-row{grid-template-columns:1fr}.field-row .field{margin:6px 0}.form-actions{gap:8px}.primary,.secondary{font-size:13px;padding:12px 17px}.touches{font-size:12px}footer>div{display:grid;gap:0}.previews{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
