:root{--ink:#202628;--ink-soft:#5d6665;--paper:#f4f1eb;--surface:#fffaf4;--rose:#754852;--rose-soft:#d9b6b2;--line:rgba(32,38,40,.16);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Outfit',system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.5}.order-header{display:flex;justify-content:space-between;align-items:center;max-width:1100px;margin:auto;padding:28px 28px}.brand{font:600 1.45rem var(--serif)}.brand em{font-weight:500}.back-link{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--ink)}.order-layout{display:grid;grid-template-columns:.76fr 1.24fr;gap:clamp(50px,9vw,130px);max-width:1100px;margin:auto;padding:64px 28px 110px}.order-intro{position:sticky;top:42px;align-self:start}.eyebrow{margin:0 0 16px;color:var(--rose);font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.order-intro h1{margin:0;font:500 clamp(3.1rem,6vw,5.8rem)/.88 var(--serif);letter-spacing:-.045em}.order-intro h1 em{color:var(--rose);font-style:italic}.order-intro>p:not(.eyebrow){max-width:34ch;color:var(--ink-soft);margin:26px 0 0}.promise{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.promise span{padding:7px 11px;border:1px solid var(--line);border-radius:999px;font-size:.68rem;font-weight:600}.order-form{background:var(--surface);padding:clamp(24px,4vw,46px);border:1px solid var(--line);box-shadow:0 22px 60px rgba(65,46,43,.1)}fieldset{margin:0;padding:0 0 34px;border:0;border-bottom:1px solid var(--line)}fieldset+fieldset{padding-top:34px}legend{font:600 2rem var(--serif);letter-spacing:-.02em}.helper,.field-note{display:block;color:var(--ink-soft);font-size:.75rem}.helper{margin:-2px 0 18px}label{display:block;margin-top:18px;font-size:.78rem;font-weight:600}input:not([type="radio"]):not([type="checkbox"]),textarea{display:block;width:100%;margin-top:8px;border:1px solid var(--line);border-radius:8px;padding:12px 13px;background:#fffdf9;color:var(--ink);font:400 .9rem var(--sans);outline:none}textarea{min-height:150px;resize:vertical;line-height:1.6}input:focus,textarea:focus{border-color:var(--rose);box-shadow:0 0 0 3px rgba(117,72,82,.12)}input[type="file"]{padding:10px}.field-note{margin-top:6px;font-weight:400}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-options label{margin:0}.theme-options input{position:absolute;opacity:0}.theme-options span{display:block;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fffdf9;cursor:pointer;transition:transform .35s cubic-bezier(.32,.72,0,1),border-color .35s cubic-bezier(.32,.72,0,1),background .35s cubic-bezier(.32,.72,0,1)}.theme-options span:hover{transform:translateY(-2px)}.theme-options input:checked+span{border-color:var(--rose);background:#f3e4df;box-shadow:inset 0 0 0 1px var(--rose)}.theme-options strong,.theme-options small{display:block}.theme-options strong{font:600 1.18rem var(--serif)}.theme-options small{margin-top:3px;color:var(--ink-soft);font-size:.7rem;font-weight:400}.consent{display:flex;gap:10px;align-items:flex-start;font-weight:400}.consent input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--rose);flex:none}.submit-button{width:100%;min-height:52px;margin-top:32px;border:0;border-radius:999px;background:var(--rose);color:#fff8f2;font:700 .82rem var(--sans);letter-spacing:.04em;cursor:pointer;transition:transform .35s cubic-bezier(.32,.72,0,1),background .35s cubic-bezier(.32,.72,0,1)}.submit-button:hover{transform:translateY(-2px);background:#623a44}.submit-button:active{transform:scale(.98)}.form-status{min-height:1.6em;margin:14px 0 0;color:var(--rose);font-size:.82rem}footer{display:flex;justify-content:space-between;gap:20px;max-width:1100px;margin:auto;padding:28px;color:var(--ink-soft);font-size:.72rem}footer span:first-child{font:600 1rem var(--serif);color:var(--ink)}@media(max-width:780px){.order-header{padding:22px 20px}.order-layout{grid-template-columns:1fr;gap:44px;padding:38px 20px 80px}.order-intro{position:static}.order-intro h1{font-size:clamp(3rem,15vw,5rem)}.order-form{padding:24px 20px}.theme-options,.two-col{grid-template-columns:1fr}footer{display:block;padding:24px 20px 34px}footer span{display:block;margin-top:6px}}
