
:root{--cream:#f4f1eb;--ink:#1c1b18;--gold:#b68b50;--line:#e5dfd5;--muted:#736f67}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 Roboto,Arial,sans-serif}header{height:102px;display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:auto;border-bottom:1px solid var(--line)}.logo{width:113px;height:70px;object-fit:contain}nav{display:flex;gap:34px;font-size:14px}a{color:inherit;text-decoration:none}.head-actions{display:flex;align-items:center;gap:26px;font-size:14px}.pill{border:1px solid var(--gold);border-radius:30px;padding:12px 23px;color:#8a632e}.layout{max-width:1240px;margin:60px auto 56px;display:grid;grid-template-columns:470px 1fr;gap:76px}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:700;color:#96713d;margin:0 0 19px}h1{font:500 58px/1.08 'Playfair Display',Georgia,serif;letter-spacing:-1.8px;margin:0 0 24px}h1 em{font-weight:500;color:#a47a40}.intro{max-width:420px;font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:28px}.photo{width:470px;height:294px;object-fit:cover;border-radius:12px}.caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:1px;margin:14px 0 28px;color:#80776b}.trust{display:flex;gap:20px;padding-bottom:25px;border-bottom:1px solid var(--line);font-size:12px;color:#625e56}.trust span:before{content:'✓';color:#a37b43;margin-right:7px}.next{padding-top:25px}h3{font:500 25px/1.3 'Playfair Display',Georgia,serif;margin:0 0 15px}.next p{display:flex;gap:12px;font-size:13px;color:var(--muted);margin:12px 0}.num{display:inline-grid;place-items:center;width:23px;height:23px;border:1px solid #d8c8ae;border-radius:50%;font-size:11px;color:#95703b;flex-shrink:0}.direct{margin-top:27px;padding-top:23px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.direct a{display:block;font-size:21px;margin-top:4px;color:var(--ink)}form{background:#fff;border:1px solid var(--line);border-radius:17px;padding:34px 36px;box-shadow:0 12px 45px #31220b06}h2{font:500 30px/1.2 'Playfair Display',Georgia,serif;margin:0 0 7px}.helper{font-size:12px;color:var(--muted);margin:0 0 22px}.services{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:23px}.service{height:55px;border:1px solid #e5dfd6;border-radius:8px;display:flex;align-items:center;padding:10px 12px;gap:10px;font-size:12px;line-height:1.35}.check{width:16px;height:16px;border:1px solid #d8cfc1;border-radius:4px;flex-shrink:0}.selected{background:#f7f2e9;border-color:#b68b50}.selected .check{background:var(--gold);border-color:var(--gold);color:white;text-align:center;font-size:11px}.field{display:block;margin-bottom:18px}label,.label{font-size:13px;font-weight:600;display:block;margin-bottom:7px}.optional{font-weight:400;color:#8b857d;font-size:11px}.required{color:#a37b43}input,textarea{font:13px Roboto,Arial,sans-serif;display:block;width:100%;border:1px solid #e2dcd2;border-radius:7px;padding:13px 14px;background:#fdfcfb;color:#403a32}input{height:46px}textarea{height:92px;resize:none}input::placeholder,textarea::placeholder{color:#999188}.row{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.contact-options{display:flex;gap:8px;margin-bottom:10px}.contact-option{font-size:12px;padding:7px 16px;border:1px solid #e3ddd3;border-radius:6px}.contact-option.active{background:#f7f2e9;border-color:var(--gold);color:#8c652d}.upload{display:flex;align-items:center;gap:13px;border:1px dashed #cdbda5;background:#fcfaf6;border-radius:8px;padding:14px 17px;margin:20px 0}.upload-icon{font-size:23px;color:#a17b42}.upload strong{display:block;font-size:12px;font-weight:500}.upload small{font-size:11px;color:#8b8479}.reassurance{text-align:center;font-size:11px;color:#81796f;margin:17px 0 12px}.submit{width:100%;border:0;background:var(--gold);color:white;border-radius:28px;padding:16px;font-size:14px;font-weight:600;display:flex;justify-content:center;gap:30px}.privacy{font-size:10px;color:#999186;text-align:center;margin:12px 0 0}.privacy u{text-underline-offset:2px}footer{border-top:1px solid var(--line);max-width:1240px;margin:auto;padding:24px 0;display:flex;justify-content:space-between;font-size:11px;color:#8b8275}.preview{color:#aa895a;letter-spacing:1.5px;font-size:9px}
@media(max-width:700px){header{margin:0 22px;height:82px}.logo{width:86px;height:58px}nav,.head-actions .phone{display:none}.pill{font-size:11px;padding:9px 15px}.layout{margin:30px 20px;display:flex;flex-direction:column;gap:25px}h1{font-size:43px}.intro{font-size:14px;margin-bottom:18px}.photo,.caption,.trust,.next,.direct{display:none}form{padding:24px 20px}h2{font-size:26px}.service{font-size:11px;padding:9px;gap:8px}.row{grid-template-columns:1fr;gap:0}footer{margin:0 20px;padding:20px 0;gap:20px;font-size:9px}.preview{font-size:8px}.eyebrow{font-size:10px}}
.address-block{margin:0 0 20px;padding:19px 18px 0;border:1px solid #e5dfd5;border-radius:10px;min-width:0}.address-block legend{font-size:14px;font-weight:600;padding:0 7px}.address-note{font-size:12px;color:#736b5f;line-height:1.65;margin:0 0 17px}.address-note strong{display:block;color:#79603c;font-weight:600;margin-bottom:3px}.address-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.65fr) minmax(0,.9fr);gap:12px}.address-row input{min-width:0}@media(max-width:700px){.address-block{padding:16px 13px 0}.address-row{grid-template-columns:1fr 1fr;gap:0 12px}.address-row .field:first-child{grid-column:1/-1}.address-note{font-size:12px}}.upload{align-items:flex-start}.upload small{display:block;line-height:1.65;margin-top:5px}.upload-invite{display:inline-flex;gap:18px;align-items:center;margin-top:12px;padding:8px 13px;border:1px solid #d8c8ae;background:white;border-radius:6px;font-size:12px;color:#896330}.upload .upload-reassurance{font-size:10px;margin-top:9px}
/* Functional controls preserve the approved concept. */
input{min-height:48px}textarea{resize:vertical;min-height:100px}.service{cursor:pointer;margin:0;font-weight:400;height:auto;min-height:55px}.service input{appearance:none;display:block;width:17px;height:17px;min-height:17px;padding:0;flex-shrink:0;border:1px solid #9e9383;border-radius:4px;background:white}.service input:checked{appearance:auto;accent-color:var(--gold)}.service:has(:checked),.contact-option:has(:checked){background:#f7f2e9;border-color:#b68b50}.contact-option{cursor:pointer;display:flex;gap:7px;align-items:center;margin:0;font-weight:400}.contact-option input{width:14px;height:14px;min-height:14px;padding:0;margin:0;accent-color:var(--gold)}.upload-invite{cursor:pointer}.file-input{position:absolute;width:1px;height:1px;min-height:0;opacity:0;padding:0;overflow:hidden}.file-input:focus-visible{outline:none}.upload:has(.file-input:focus-visible){outline:3px solid #806033;outline-offset:4px}.photo-list{list-style:none;margin:0;padding:0}.photo-list li{display:flex;gap:12px;align-items:center;margin:12px 0;padding:12px;background:var(--cream);border-radius:8px}.photo-list img{width:48px;height:48px;object-fit:cover}.photo-info{flex:1;min-width:0}.photo-info strong{display:block;font-size:12px;overflow-wrap:anywhere!important}.photo-info small{font-size:11px;color:#625e56}.photo-placeholder{font-size:10px}.photo-remove{min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:6px;background:white;font-size:23px;cursor:pointer}.upload-error,.quote-status{padding:14px;border:1px solid #923726;border-radius:7px;background:#fff5f1;color:#76281b;font-size:14px}.quote-status[data-type=success]{background:#edf5ec;color:#284d2a;border-color:#496b40}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.submit{color:#1c1b18;cursor:pointer;min-height:50px}.submit:disabled{opacity:.65;cursor:wait}:focus-visible{outline:3px solid #806033;outline-offset:3px}.privacy a{text-decoration:underline}.optional,.privacy,.helper,.caption{color:#686157}.layout>section,form{min-width:0}#custom-html-r{scroll-margin-top:24px}.address-row input{width:100%}[hidden]{display:none!important}@media(min-width:701px) and (max-width:1280px){header,footer{margin-inline:30px}.layout{margin-inline:30px;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:40px}.photo{max-width:100%;height:auto}nav{gap:18px}}@media(hover:hover) and (pointer:fine){.service:hover,.contact-option:hover{border-color:var(--gold)}}.submit:active{transform:scale(.97);transition:transform 140ms cubic-bezier(.23,1,.32,1)}@media(prefers-reduced-motion:reduce){.submit:active{transform:none}}

.contact-option{position:relative;justify-content:center;white-space:nowrap;min-height:44px}.contact-option input{position:absolute;width:1px;height:1px;min-height:0;opacity:0;pointer-events:none}.contact-option:has(:focus-visible){outline:3px solid #806033;outline-offset:3px}@media(max-width:700px){.contact-option{padding:9px 12px;flex:1;font-size:12px}.contact-options{gap:7px}}
